LearnBlock: A Robot-Agnostic Educational Programming Tool

Education is evolving to prepare students for the current sociotechnical changes. An increasing effort to introduce programming and other STEM-related subjects into the core curriculum of primary and secondary education is taking place around the world. The use of robots stands out among STEM initia...

Full description

Bibliographic Details
Main Authors: Pilar Bachiller-Burgos, Ivan Barbecho, Luis V. Calderita, Pablo Bustos, Luis J. Manso
Format: Article
Language:English
Published: IEEE 2020-01-01
Series:IEEE Access
Subjects:
Online Access:https://ieeexplore.ieee.org/document/8986589/
_version_ 1818664476320202752
author Pilar Bachiller-Burgos
Ivan Barbecho
Luis V. Calderita
Pablo Bustos
Luis J. Manso
author_facet Pilar Bachiller-Burgos
Ivan Barbecho
Luis V. Calderita
Pablo Bustos
Luis J. Manso
author_sort Pilar Bachiller-Burgos
collection DOAJ
description Education is evolving to prepare students for the current sociotechnical changes. An increasing effort to introduce programming and other STEM-related subjects into the core curriculum of primary and secondary education is taking place around the world. The use of robots stands out among STEM initiatives, since robots are proving to be an engaging tool for learning programming and other STEM-related contents. Block-based programming is the option chosen for most educational robotic platforms. However, many robotics kits include their own software tools, as well as their own set of programming blocks. LearnBlock, a new educational programming tool, is proposed here. Its major novelty is its loosely coupled software architecture which makes it, to the best of our knowledge, the first robot-agnostic educational tool. Robot-agnosticism is provided not only in block code, but also in generated code, unifying the translation from blocks to the final programming language. The set of blocks can be easily extended implementing additional Python functions, without modifying the core code of the tool. Moreover, LearnBlock provides an integrated educational programming environment that facilitates a progressive transition from a visual to a general-purpose programming language. To evaluate LearnBlock and demonstrate that it is platform-agnostic, several tests were conducted. Each of them consists of a program implementing a robot behaviour. The block code of each test can run on several educational robots without changes.
first_indexed 2024-12-17T05:33:21Z
format Article
id doaj.art-2b727dfdb0ab4a099db7ae250753e407
institution Directory Open Access Journal
issn 2169-3536
language English
last_indexed 2024-12-17T05:33:21Z
publishDate 2020-01-01
publisher IEEE
record_format Article
series IEEE Access
spelling doaj.art-2b727dfdb0ab4a099db7ae250753e4072022-12-21T22:01:41ZengIEEEIEEE Access2169-35362020-01-018300123002610.1109/ACCESS.2020.29724108986589LearnBlock: A Robot-Agnostic Educational Programming ToolPilar Bachiller-Burgos0https://orcid.org/0000-0003-0690-7749Ivan Barbecho1Luis V. Calderita2https://orcid.org/0000-0003-0784-4102Pablo Bustos3Luis J. Manso4Department of Computer and Communication Technology, Robotics and Artificial Vision Laboratory (RoboLab), University of Extremadura, Cáceres, SpainResearch and Development Department, Mobbeel Solutions, Cáceres, SL., SpainDepartment of Computer and Communication Technology, Robotics and Artificial Vision Laboratory (RoboLab), University of Extremadura, Cáceres, SpainDepartment of Computer and Communication Technology, Robotics and Artificial Vision Laboratory (RoboLab), University of Extremadura, Cáceres, SpainSchool of Engineering and Applied Science, Aston University, Birmingham, U.K.Education is evolving to prepare students for the current sociotechnical changes. An increasing effort to introduce programming and other STEM-related subjects into the core curriculum of primary and secondary education is taking place around the world. The use of robots stands out among STEM initiatives, since robots are proving to be an engaging tool for learning programming and other STEM-related contents. Block-based programming is the option chosen for most educational robotic platforms. However, many robotics kits include their own software tools, as well as their own set of programming blocks. LearnBlock, a new educational programming tool, is proposed here. Its major novelty is its loosely coupled software architecture which makes it, to the best of our knowledge, the first robot-agnostic educational tool. Robot-agnosticism is provided not only in block code, but also in generated code, unifying the translation from blocks to the final programming language. The set of blocks can be easily extended implementing additional Python functions, without modifying the core code of the tool. Moreover, LearnBlock provides an integrated educational programming environment that facilitates a progressive transition from a visual to a general-purpose programming language. To evaluate LearnBlock and demonstrate that it is platform-agnostic, several tests were conducted. Each of them consists of a program implementing a robot behaviour. The block code of each test can run on several educational robots without changes.https://ieeexplore.ieee.org/document/8986589/Educational toollearning programmingrobot-agnosticsoftware architecture
spellingShingle Pilar Bachiller-Burgos
Ivan Barbecho
Luis V. Calderita
Pablo Bustos
Luis J. Manso
LearnBlock: A Robot-Agnostic Educational Programming Tool
IEEE Access
Educational tool
learning programming
robot-agnostic
software architecture
title LearnBlock: A Robot-Agnostic Educational Programming Tool
title_full LearnBlock: A Robot-Agnostic Educational Programming Tool
title_fullStr LearnBlock: A Robot-Agnostic Educational Programming Tool
title_full_unstemmed LearnBlock: A Robot-Agnostic Educational Programming Tool
title_short LearnBlock: A Robot-Agnostic Educational Programming Tool
title_sort learnblock a robot agnostic educational programming tool
topic Educational tool
learning programming
robot-agnostic
software architecture
url https://ieeexplore.ieee.org/document/8986589/
work_keys_str_mv AT pilarbachillerburgos learnblockarobotagnosticeducationalprogrammingtool
AT ivanbarbecho learnblockarobotagnosticeducationalprogrammingtool
AT luisvcalderita learnblockarobotagnosticeducationalprogrammingtool
AT pablobustos learnblockarobotagnosticeducationalprogrammingtool
AT luisjmanso learnblockarobotagnosticeducationalprogrammingtool