Journal of Intelligent & Robotic Systems (2021) 102 :17 https://doi.org/10.1007/s10846-021-01364-8

REGULAR PAPER sBotics - Gamified Framework for Educational

Lucas Moura do Nascimento1 · Davi Souto Neri2 · Thiago do Nascimento Ferreira2 · Francinaldo de Almeida Pereira3 · Erika Akemi Yanaguibashi Albuquerque3 · Luiz Marcos Garcia Gonc¸alves3 · Sarah Thomaz de Lima Sa´ 2

Received: 12 October 2020 / Accepted: 9 March 2021 / Published online: 22 April 2021 © The Author(s), under exclusive licence to Springer Nature B.V. 2021

Abstract This paper proposes a learning framework for named sBotics, which includes a complete environment for teaching and programming skills acquisition designed for both teachers and K-12 students. Our framework has been developed using a gamified approach with the system and simulated environment developed in the Unity game engine. The main novelty of this platform is its ease-of-use combined with the flexibility to create a variety of scenarios with endless learning potential, in contrast to our evaluations where no alternatives with such characteristics were found for the K-12 range that we are targeting. Also as a contribution of our proposal, programs are treated as games that are affected by a disturbance model, which acts in the robotic system and environment variables. This model is introduced in order to approximate what happens in a real robot programming platform. Besides, it is possible for the user, throughout its use, to code in three levels of abstraction: its overly intuitive native programming language called R-Educ, BlockEduc (R-Educ version of ), and C#. Programs can be compiled and interpreted by virtual executing any given command. As for teachers, the framework API offers tools that can be employed in the assembly and customization of the learning setup. The whole platform has been built as a tool dedicated to spreading the worlds of Robotics and Programming among youngsters, as well as making them more affordable to everyone. It has been validated by our experiments and is currently being used during the novel Coronavirus pandemic by the official RoboCupJunior Rescue trials in Brazil, currently with more than a thousand competing teams (about 5 thousands students).

Keywords Robots · Learning and programming framework · Educational robotics

1 Introduction kind of activity [26, 27], or else by using electronic and mechanical components available in the market and even Educational Robotics can be drawn as a learning method- from scratch in a more cheap paradigm [4]. ology focused on stimulating students’ desire for learning Nonetheless, another way to spread and apply educa- new technologies and subjects [4]. This methodology is also tional robotics is through the use of simulated learning known to attract students’ interest with the use of investi- frameworks or environments, which, besides having the gation by inspiring their creativity, developing a scientific basic teaching capabilities, are systems that are method through constructive feedback, stimulating logical capable of reproducing real-world behaviors of a given sys- thinking, improving motor skills, and many other methods tem, replicating phenomena and sensations without physical [1, 4]. Educational Robotics methodology is traditionally implications. Nowadays, with the Covid-19 pandemic, this applied through the use of kits, bought specifically for this type of software has been gaining extreme importance, allowing kids to keep previous knowledge while gaining more abilities in programming. Therefore, this paper aims to propose sBotics, an This work is supported by CAPES under grant 001, and by CNPq educational robotics environment with a gamified simulated under grants 311640/2018-4, 154225/2020-7 and 153991/2020-8. learning framework, introducing the methods employed and  Lucas Moura do Nascimento results obtained with its application in Robocup challenges [email protected] and classrooms in Brazil. It has been developed using the Unity game engine and C# to offer solutions to some Extended author information available on the last page of the article. problems that will be further mentioned, generating a 17 Page 2 of 20 J Intell Robot Syst (2021) 102: 17 friendly and gamified teaching and learning environment autonomous systems. Actually, a complete special issue in for its users. With this tool, students are able to customize Robotics in Education has been published at the Journal of and program virtual robots and test their knowledge through Intelligent & Robotic Systems [13]. As such, we verified the use of simulations. Additionally, students are capable of its applicability with students from Brazilian Robotics editing and sharing the virtual environment in their desired Olympiad (BRO) [3]andRoboCup Brasil (about 1200 manner. participants) that have used it in 2020, during the pandemic Although Brazil has numerous investments in technol- time, in order to build and program their virtual robots, ogy, the workforce for this area needs to be increased with and submit it for competition, which ran online. The incentives to qualify laborers, in order to match many job W-Educ site running at Natalnet Associate Labs’ server opportunities, new technologies, techniques, and products in (provided by the Federal University of Rio Grande do Norte the country. Another application is the insertion of more stu- Computing Division) [14] has had more than 40 thousand dents in this field (STEAM) without the need of importing program compilations, by the previously-mentioned virtual kits for the assembly of educational robots, which discour- participants of BRO. ages public and private schools to use this powerful teaching Hence, the sBotics platform allows the complete simula- and learning methodology, underexposing students to this tion of every stage of the Brazilian trials of RoboCupJunior area [2, 4]. Rescue Line A, which has been the practical component of Regarding the difficulties of Educational Robotics’ the Brazilian Robotics Olympiad [3] for over a decade. This insertion in schools, this simulator helps to assist students competition is included in the Brazilian selectives for the in the development of their knowledge, without the need for World RoboCupJunior as an incentive for schools to invest high-cost equipment such as the aforementioned setups. It in the Educational Robotics methodology. In this work case, is capable of supplying the user’s needs without depending the use of computers for simulation instead of robotics kits on physical components. However, if a student or teacher may foster educational institutions to adopt said method- already possesses robotics kits, the simulation is still useful ology, as most schools already have computer laboratories due to its similarities to real-world scenarios, meaning that and almost no additional structural costs would be needed. it is possible to test different types of problem-solving Due to the pandemic of the new coronavirus, sBotics was strategies without damaging the robots physically while also selected and is being officially used as an alternative tool accelerating the algorithm’s development cycle. so that the practical component of the Brazilian Robotics Besides, the gamified simulator framework proposed Olympiad could successfully take place in 2020, in a simu- has an extremely attractive interface. Further, as the main lated manner (and through the Internet). We noticed that by contribution, the main goal of gamification is to not foster producing a realistic simulation environment with random the existing and shared feeling in the robotics development disturbances in all of the environment variables, including community that if the simulation succeeded once it is sensor errors, every trial of rescue would be different from doomed to succeed in every other attempt [11, 12]. Breaking the previous one, even with the same setup maintenance. with this premise, we propose an implementation that This approximates this model from the real competition, includes an environment randomization with the generation where the students have severe problems due to light and of more realistic objects and scenarios. This allows real- other factors, mainly after training in a controlled environ- world problems and real-world unexpected issues to be ment. Results demonstrating the main impressions of users present, demanding from the users greater attention in the in the run-up to the 2020 Brazilian Robotics Olympiad will writing of algorithms and preparing them for the problems also be presented in this paper. and difficulties that will be faced when handling real robots Actually, the work and results reported in this paper have in real situations. been achieved after the previous version of this work [5]. Despite being developed mainly for the educational The simulators’ first pre-release was completed after several robotics use case, our proposal also contributes for months of development. After that initial work was done and applications in the several domains of Robotics as presented at the 2019 Latin American Robotics Symposium, human-robot interaction, human-machine interfaces and the development team collected feedback from users to interaction, and also on social and service robotics, which provide a lot more novelties, depicted here. Just recently, in is also the case here. People and researchers from these April 2020, with the pandemic in course, it was suggested topic-areas would benefit from our gamified framework by RoboCup Brasil Trustees to be used as the official and also from having an online interface, carrying out all simulator for RoboCupJunior regionals in Brazil for that programming and testing through the web, which previously year. We note that it has even been displayed as a powerful demanded real robots. So, this paper provides a cutting tool in other robotics conventions in Brazil besides BRO, edge technology that has been developed and applied to such as the Brazilian National Robotics Exhibition. So the build, design, model and test complex engineering and current version of the work is a further improvement of the J Intell Robot Syst (2021) 102: 17 Page 3 of 20 17 first one in several aspects, mainly in the disturbance model, screen. He then built a mechanical turtle to allow a more which is introduced to approximate the programming of realistic interpretation for the children. From his paradigm, what happens in a real robot programming environment. Educational Robotics has evolved and been settled as So this work improves the other one [5] and proposes a complete methodology aiming to present challenges, this tool as a more general framework that can be used constantly, to students giving incentives to reflect and elsewhere for teaching robotics or making robotics virtual formulate ideas on how to solve such obstacles. According tournaments. The case of RoboCupJunior at the BRO is to Miranda [30], there are several ways to apply educational described here as a use case, nonetheless, it can be used robotics in schools, and a proposal is that a robotics class for other purposes, such as training and learning robotics can be divided into four moments: through Educational Robotics. Actually, a Latin American 1. The problematization: a moment in which the chal- network on Educational Robotics (FOCORE) intends to use lenges are presented to the students. The problem and this framework in a broader project for bringing Educational the knowledge to be worked on are exposed, which may Robotics through the Internet to excluded individuals from involve multidisciplinary or social themes, compatible the region [6]. with the level of knowledge of the group of students. 2. Exploring potential solutions: step at which students 2 Background Theory reflect possible solutions to the problem, sharing their ideas with other students, and discussing the best way to solve the challenge. Despite the visible expansion in the usage of technologies 3. Development of theoretical solutions: after preparing in society’s daily life, mainly in the educational field, this the solution proposal, this moment is to put into practice growth happens unhurriedly. Although many schools have what was discussed, by assembling robots and coding introduced new technologies, many teaching and learning algorithms for the created prototype. habits remain unchanged. Classes in science and technology 4. Analysis of results: it is the moment when it is evaluated laboratories follow a strict pattern, with predetermined whether the solution they developed solves the problem classes where students follow a linear approach to learning, presented. In this stage, the student reflects, alone or instead of exploring concepts [29]. In counter-position, in a group, if he has reached the objectives or if it according to Miranda [30], there is an interest to insert is necessary to return to the second stage for a new new Information and Communication Technology (I.C.T.) interaction. in the academic field, aiming to improve the learning environment in the most productive way for students. Throughout the search for solutions, tutees test their prac- Mainly, technology has been used in virtual classrooms as a tical knowledge, providing logical thinking and theoretical way for teaching [31]. Hence our greater proposal should be comprehension stimuli, denoting the protagonism of stu- a little discussed regarding its pedagogical aspects in light dents in the formation of information [27]. Actually, Zilli of these technology-assisted learning. In fact, on previous [40] reports that educational robotics develops, in students, work we provided a critical reflection on the contributions skills such as logical reasoning, interpersonal relationships, of educational robotic, either as an active methodology use of concepts learned in different areas of knowledge, for different purposes [4, 26] or helping as a technology- research, understanding, critical capacity, problem-solving based method in the teaching-learning process in public schematics through mistakes and successes, representation, schools [32]. Besides, Educational Robotics, which is one of and communication, among others. these technologies used for learning has recently expanded to a whole new field of research in Science. So a brief 2.2 Programming Environments for Educational introduction to this pretty new field with its main theories is Robotics necessary here. The use of virtual environments is a reality in several fields, 2.1 Issues on Educational Robotics including virtual laboratories for education in science, technology, and engineering [35, 36]. Mainly, the use Educational Robotics and its related methodologies have of this technology has been applied to assist students originated from Seymour Papert’s work. He is a researcher in the visualization of concepts related to mechatronics from the Massachusetts Institute of Technology (MIT), who and to provide immediate graphical feedback during has been a pioneer in the creation of technologies for the learning process [37]. Modular interactive teaching the use of robotics for educational purposes [33]. Papert packages called Virtual Learning System (VLS) have created a programming language named LOGO, at first been proposed to be used by people with little prior used to program geometric shapes of a turtle on a computer computer science knowledge in the field of Mechanical and 17 Page 4 of 20 J Intell Robot Syst (2021) 102: 17

Manufacturing Engineering [37], and Mechatronics [36]. the system being considered [16]. They have the advantage Learning evaluation is generally done using laboratory of replacing the need for some physical elements required reports, questionnaires, and quizzes, such as kahoots [15]. to perform some desired activity, as well as aiding the Nevertheless, visual interaction is a key in these systems learning process by reducing obstacles present in real- and is still considered a challenge nowadays, because of world situations that obstruct experiments and tests. Once the necessity of an online, real-time system, to get full we are confident that the simulation results accurately and visualization and realism in virtual reality interactivity. precisely reproduce the outcomes of analogous experiments Hence, we notice that, in these contexts, educational with real hardware, exploring the parameter space can robotics goes beyond the real environment, standing out be significantly easier and faster than performing similar from the hardware components. In other words, a robot must experiments in reality. be visualized not only mechanically, with its components A simulator applied to the field of robotics is a software originating from a robotics kit, but one also should be able program capable of virtually reproducing the version of one to see its presence in software. A robot is generally coupled or more real robots with their models and behaviors [1, 38]. with a programmable logic controller, which allows the These simulations allow the user to have contact in real-time editing of its commands by coding algorithms [27]. with the virtualized environment, and to have the possibility Thus, there is a need of using programs that assist in to perform actions similar to those that could be done the coding of the robots’ algorithms, and this software, in a real space [25]. It commonly provides development which can be called the programming environment, allows flexibility and extensive testing capability of the algorithm commands to be written (or structured) and compiled under different environments and many robot configurations for the device’s native machine language. Besides, these [12], facilitating the implementation and testing of specific programming applications must also enable the compiled situations, boosting progress, and accelerating the algorithm codes to be sent to the assembled robot, which must be able development cycle [17]. to execute the commands [19]. With the use of simulators for robotics, events and In the Educational Robotics context, there are two types physical limitations that happen when using real robots can of categories for the programming environments. Web be discarded. According to Pedrosa [1], such factors are: environments have a functional architecture that in general – Easy testing of new algorithms, as there will be no follows the client-server model and the computational cost time wasted collecting the robot from the test area and is requested from the server and not from the local machine, subsequent connection to a computer to change the code; allowing any device connected to the web via a browser – Prevent damage to the actual robot components at the to be used to program robots. The second category is the time of the tests, since they will not be repeatedly used; desktop environments, in which one needs to install the – They usually are not as expensive as real robots; software on the local machine [19]. – The batteries of the real robots are preserved since they On the basis of the platform proposed in this work are not used in the tests; we make use of W-Educ [19], which is a complete web – Ease in the development and testing of new robot environment whose goal is to assist the teaching-learning models; process of Educational Robotics activities. Namely, it – Different components can be easily added or removed allows several robotic platforms to be programmed with the for testing; use of a single language, called R-Educ [41]. The latest – Ease the tests of several robots, as in a real environment version of this language is the one currently in use in the test group may need to have multiple prototypes; our solution. Through R-Educ, our users are able to write – Ease in the creation of the environment that will be used programs in Portuguese, that are later translated, via W- by the robot, since in the simulation equipment parts Educ, into C# code that is internally responsible for running can be easily added, while in the real environment they the simulations. need to be transported and organized. 2.3 Simulated Learning Frameworks for Robotics We notice that the use of simulators, despite all its advantages, does not provide students with the chance of Simulators are computational systems that mimic the developing motor coordination and stimulating creativity behavior of some real event with which users can interact necessary for the moment of physical assembly. Although [42]. Nevertheless, such behaviors are simplified when not always offering the best simulation of reality, efforts are compared to the real events and these simplifications are needed to create more accurate models and behaviors for acceptable or even desirable depending on the specifics of simulators [1]. J Intell Robot Syst (2021) 102: 17 Page 5 of 20 17

3 State of the Art 3.2 Open Roberta

A large number of works can be found in the literature Open Roberta Lab is a programming environment that describing simulators for Robotics [21–24, 28]. Out of enables children and teenagers or any other age group to them, we selected the works that resemble the sBotics program different types of robot or micro-controller systems simulator main characteristics to compose the state of (e.g. Lego Mindstorms, Arduino, and many others) [9]. A the art, that is, we focused on specific simulator projects major goal of the Open Roberta project is to work on a for Educational Robotics. Some of which are associated software platform dissemination for a scalable, education- with the team’s experience in Educational Robotics, which friendly, cloud-based, and open source. served as the basis for determining the presence of some The Open Roberta laboratory uses the approach of visual features and characteristics on this project. Furthermore, all programming, making it more accessible, especially for of these selected simulators are in the class of deterministic beginners with no experience, to learn how to code. As a simulation models, where there is no variation in the cloud-based programming environment, no installation is environment caused by the simulator [18]. In this way, needed as it only requires a web browser. As of version they might be able to do a good job of simulating what 1.3.0, Open Roberta Lab started offering a simulation is expected, however they fail to simulate the unexpected environment for the codes to be programmed in it. The variables of the real world [12]. We notice that the better the simulation takes place in a two-dimensional environment, model of the simulated environment the fewer changes are making it possible to program a robot with wheels and two needed to migrate the structure of the algorithm from the motors. Besides, the available robot has ultrasonic, touch, simulated robot to the real robot. and color sensors. The return values of each sensor can be verified through codes and are presented for viewing on a 3.1 S-Educ virtual display.

S-Educ is a simulated environment specially developed 3.3 USARSim for teaching in educational robotics [25]. It is part of the group of projects developed by the Natalnet Laboratories USARSim - Urban Search and Rescue Simulation [12] at UFRN, in the Northeast region of Brazil, that aim to was created both as a research and an education tool. It improve teaching through educational robotics. This tool is, in essence, a for search and rescue enables the assembly of the virtual robot, offering options missions. Initially, it was focused on simulating wheeled for construction, such as actuators, sensors, and various robots, but with the constant growth of its userbase, it has parts. As well as robots on different bases, like a car-type several options as aquatic robots, humanoids, and more robot with wheels or tracks. customization options through components for the assembly In addition to the simulation environment, it has of virtual robots, such as actuators and sensors. a programming environment enabling visual or textual By using this simulator, the user can select ready-made programming. Another feature of S-Educ is the possibility scenarios or assemble his own, besides also allowing the to send the program developed and tested in the virtual robot program developed in the simulator to be sent to a real to a real robot. The programming of a robot is done by using robot. The focus was initially on competitions, such as the the RoboEduc programming environment [26]. Although RoboCup Rescue Simulation League. they work independently, there is a partnership between both development teams. 3.4 Robot Virtual Worlds The S-Educ project started with the proposal of simulating environments in two dimensions, however, Robot Virtual Worlds is a simulator that allows students to the evolution of the system has also made possible learn how to code. It simulates two and three-dimensional more realistic three-dimensional simulations. S-Educ was environments with models of commercially better-known developed aiming to be simple and easy to use, as it had robots, such as Vex, Lego, and Tetrix [10]. The language mainly as it had mainly children as its target audience. Even that is used to program these robots is RobotC, which is also so, it is also capable of serving more complex activities, capable of being compiled and sent, without changes by the as it allows multiple robots. It has also been used as a corresponding real robots. This tool, unfortunately, is not tool for classes on programming languages taught by their freely available to the public, requiring a paid subscription authors [25]. for its use. 17 Page 6 of 20 J Intell Robot Syst (2021) 102: 17

3.5 Virtual Laboratory for Robotics (VLR) execution in simulation twice and with the same parameters values produces exactly the same simulated robot motion. The Virtual Laboratory for Robotics (VLR) [34, 35] Notice that this would not be exactly true in a real robot, due possesses all the necessary features of a virtual laboratory: to problems as slippery ground and others. user interface, simulator, and visualization. It was developed On the other hand, the simulator proposed in this work to prove the feasibility of the concept and make a does not allow programming real robots in itself. That is, step towards full e-learning in technical disciplines. by default the platform works only with gamified robots Mechatronics and Robotics are understood as a symbiosis that exist solely for the developed platform. However, the of Mechanical and Electrical Engineering. use of real robots can be accomplished through the use The tool uses laboratory exercises increasing the of some other tool. Furthermore, as a contribution of this complexity of a potential e-learning system, which is work, sBotics reproduces near real-world problems in its used as basis for developing the software-based laboratory arenas and robots by randomizing errors in the environment exercises. The tool substitutes the physical lab by emulating and sensors variables a little differently for each execution. its full dynamics. This includes mathematical modeling This makes the results for each running different from the of differential equations to calculate dynamics and also previous ones even using the same environment and robot providing data that would be measured on a physical variables values in different runs. system, coming out with a complete simulated system. Notice that this always happens in a real environment where the user faces the problem of having the same program producing different results due to the environment 4 The sBotics Proposal and sensor noise, which produces systematic and non systematic errors [39]. So this feature approximates the user The aforementioned state of the art simulators have unique of the real running, and, once there, he/she will have fewer characteristics. However, as a common feature all of issues to be solved since he/she has already dealt with most them allow the programming of one or more real robots. of the problems in the simulator. Besides, as said above, the Nonetheless, most of them are built for the training of programming carried out in the simulator in the languages programming itself without the need of a real robot, not BlockEduc [41] and R-Educ can be used in real robots, attempting on making the environment variables more using the W-Educ tool, which are by definition outside realistic (physically based). Thus, running a program this proposal context as they are previous developments

Fig. 1 Flowchart of the platform’s usability J Intell Robot Syst (2021) 102: 17 Page 7 of 20 17

[19]. Nevertheless, these tools can be used together, in the the side-effect of requiring an internet connection for same computer facilitating tests in real robots. The details programming. However, considering that requests to the of our proposal will be presented in the next paragraphs, API only occur in relevant instances, this connection does introduced by Fig. 1, that shows all of the possible user not necessarily have to be reliable or quick, and it can still interactions within the simulator and can be used to better be accessed in remote communities across the country. illustrate its usability. Lastly, for user programming, we have agreed that a There is a variety of ways to create a simulator that compiler would have to inject the written code while the demonstrates some desired motion behavior. Some of application is running. This is a more challenging task than them are free and other ones come as packages of some it was primarily considered to be, which is solved in this authoring tools. In this work, we first need to create an work through an authentication workflow after opening the environment. Junaid Kayani (https://readwrite.com/author/ simulator, to be discussed later. Therefore, with the methods junaid-kayani/) compiled seven types of high-level software and the tools chosen, the development of the program to tools that can be used to create realistic 3D outside implement the devised architecture could start. environments: Vue d’Esprit, Terragen, DEM Earth, World With the above ideas in mind, a system architecture was Machine, Large 3D Terrain Generator (L3DT), TerraRay, devised for sBotics that can be seen in Fig. 2. It has three and Bryce. Another branch of low and high-level tools, at main modules: the Scenario Editing and Generation that least some 20 of them (https://mashable.com/2008/07/10/ will be further detailed, the Programming Interface,andthe tools-for-3d-creation/), exists that is suggested for creating Testing Area that will be explained next. These modules 3D graphics and environments. However, we are interested interact with each other seamlessly through the graphical not only in the environment and robots’ construction interface giving the impression that the whole application is itself but also in controlling the animation of the created a single entity. environments and robots with commands programmed by the students and with the possibility of causing disturbances 4.1 Testing Area on both. This suggests that using a tool based on low-level computer graphics techniques, for gaming, would be a good The robot selection and construction is possible in the idea. Actually, in the approach employed here, we make use testing area, where it is allowed to change the robot of a game engine, as this kind of tool offers much more actuators, the robot itself, and the environment by adding resources and tutorials for developers. The chosen engine is checkpoints to the arena. Here it is also possible to execute the Unity3D, one of the most used in the development of 3D the program and adjust the initial and current positions animation tools and games [7]. of the robot and components in the environment. An For the communication with the W-Educ platform, an example of the main differences between each possible API (Application Programming Interface) is used [8], with robot configuration is shown in Table 1.

Fig. 2 Each section with its functions and interactions 17 Page 8 of 20 J Intell Robot Syst (2021) 102: 17

Table 1 Comparison between robots

Robot Sensors (input) Output Sensor refresh rate

– Color Ultrasonic Touch LED Buzzer –

3 3 1 1 2 48ms

6 4 1 1 2 92ms

5 3 1 1 2 76ms

3 2 1 1 3 32ms

6 3 1 1 1 76ms

The difference in each robot’s mass is important to very similar due to having related backend mechanics, but the user, to be present in a challenge, because in order very different due to their intended use and return value to have accuracy and precision in a machine one has to types. sacrifice speed, and vice-versa, in general. With this simple A color sensor can be set as a single-pixel camera, with way for robot selection, code execution, and programming the capability of capturing the pixel related to a surface in experience, paired with a complete arena editing module, it front of it in the simulated 3D environment to process the is possible to emulate many robotic competitions and also perceived hue, checking whether or not it’s superior to the being a powerful tool for teaching and learning in schools color-calibration value. For instance, having a color with and colleges alike. the values of Red: 200, Green: 185, and Blue: 26 under the sensor will make it check if each value surpasses the 4.1.1 Sensors aforementioned calibration value (by default 63), this will return “true” on red and green and return “false” on blue, The robots in the simulator have virtual components prompting the user the color yellow as it is graphically the that work as input or output to user-written code. These mixture of red and green. segments vary from simple LED lights for outputting data The light sensor, on the other hand, simulates a 5x5 to complex ultrasonic sensors, capable of capturing the pixel camera, whose values are greyscaled using Rec. 601 distance of any given object in its immediate periphery. The Luma [20] and its light value stored and averaged to return behavior of the sensors in the platform is efficient, light, as an integer to the user. Using the same example as above, and easy to understand, as it uses simple physical concepts after greyscaling that same pixel the sensor would have to to produce the desired real-world operation. The first process 24 more pixels to create an average to send to the category of sensors to be discussed are the most used, light- user the luminance value between 0 (complete darkness) capturing ones. These being the light and color sensors, and 100 (absolute brightness). The C# code employed to J Intell Robot Syst (2021) 102: 17 Page 9 of 20 17 create this grayscaling behavior for each pixel can be seen 4.1.2 Outputs in Listing 1. The next category of elements is the output components. It is possible to encounter in this category motors, buzzers, RGB LED light, and three virtual LCD screens. These output components when programmed by the user can respectively move the robot, play a sound, emit light in any given color, and display some text. Output elements are useful for the to accompany the progress of their program without relying on vague ideas of the code’s execution. By default, each robot has two motors at its bases, and each engine can be manipulated together or independently through its specific functions. In every movement function, it is necessary to determine the force to be used. Forces can The next sensor in the category of sight is the ultrasonic vary from -300 to 300 for movements outside the robot axis sensor, capable of detecting objects at a certain distance. Its and from -1000 to 1000 for movements on the rotation axis. functionality consists of a series of ray casts, as shown in Fig. 3, in a triangular shape (mimicking the propagation of 4.2 Creating Arenas and Scenarios sound in an open space) that returns a value once one of the rays hits an object. If any given ray goes too far its return There are many different scenarios in which this simulator is discarded considering that in a real-world scenario simple can be used regarding educational robotics and tournaments. ultrasonic sensors are not capable of perceiving distances One example is the usage of the platform to teach geography greater than a couple of meters. by displaying a map and demanding a student to go from The last category of sensors, although fixed regardless place A to place B on it (Fig. 4). of the robot, is crucial for gathering its surroundings. These Such flexibleness is achieved by an intricate arena components are mostly simple data that can have enormous creation system, allowing the creation of complex arenas for implications in the user’s code. This category includes touch many different uses. sensors capable of perceiving whether or not an object is in contact with said part; a compass capable of returning 4.2.1 BRO Arena Generation angular positions of the robot; a heat sensor able to get the temperature in the robot’s virtual setting; and an inclination This is the main scenario of the simulator and the one which sensor to receive the perceived inclination of the robot. has the most dedicated features. The Brazilian Robotics Notice that other sensors could be defined and used as Olympiad is an annual Brazilian nation-wide robotics necessary for some new challenges. tournament for K-12 students based on the RoboCupJunior Rescue Line A [3], and it is very important for hundreds of thousands of young Brazilians all over the country. Although a G20 world power, Brazil is still a country very much influenced by its staggering poverty and inequality rates, which impose challenges for Brazilians mostly in rural parts of the country or in poverty-ridden areas to pursue the field of robotics and participate in the BRO. This simulator intends to provide many Brazilians with that opportunity that would otherwise take years to reach such regions. The RoboCupJunior Rescue Line A arena consists of a path that the competitor’s robot has to follow to find a room with victims (named the rescue area) where the robot has to enter and save. An BRO-type arena is generated by procedurally filling a 6x3 grid with pre-defined tiles, that algorithmically find where to place the next piece until the end of the grid, where the rescue area can be found. By providing a coordinate for each tile slot in the grid it Fig. 3 Ultrasonic’s ray casts is possible to define its limits as the zeroth and fifth columns 17 Page 10 of 20 J Intell Robot Syst (2021) 102: 17

Fig. 4 Custom arena with a map showing the platform’s capabilities of being used as a tool to teach geography to kids

and the zeroth and second rows. Starting at the coordinates competitions. One can, for instance, easily create a maze for (0,0), the generator has two options: going forward or going a labyrinth competition (seen in Fig. 7) or a blank arena for to the right. In a coordinate such as (5,0), the algorithm can image insertion (discussed in the next section). only go upwards to the final coordinate (5,2), which always It’s possible with the editor to move a purple cursor faces the rescue area’s ramp. In other words, by cleverly throughout the grid and manually choose which tile to fill storing the last movement by the script and defining its that grid coordinate. There are advanced settings to set boundaries it is possible to generate new tiles in different the robots competitors can use, simulated time of day, the directions while always going towards the final coordinates. number of victims to save, and many others. This is better illustrated in Figs. 5 and 6. Many possibilities come with the editor, such as adding heat-emitting objects (such as the litten candles seen in 4.2.2 Arena Editor Fig. 7), markers that reward or punish the user’s robot upon contact, maze walls, and many others. It is also important to Every arena can be edited without limitations. That is to note that any created arena can be exported as a code and be say that everything the procedural generator can generate imported into another computer. the editor can recreate. This is important for the adaptability of the platform, which can be used in all sorts of robotic 4.2.3 Image Insertion

There is also the possibility of adding images to an arena, which can vary in size, from a single tile to the entire grid. There is also the possibility of adding maps, geometric shapes, artworks, and any picture. Such feature makes the arena useful not only to robotics competitions but also to schools, that can teach many subjects traditionally thought of as incompatible with the field of robotics (Fig. 8).

4.3 Programming Environment

The user’s programming interface, shown in Fig. 9 is made to interact with W-Educ, which is another platform responsible for storing and source-to-source compiling codes [19] through an application programming interface (API), thus requiring authentication after opening the simulator. Within the coding tab, it is possible to code in three levels of abstraction: in an overly intuitive programming language (called R-Educ), in BlockEduc (R- Educ version in Blockly [43]), and C#. All languages, Fig. 5 An BRO-type arena except for the latter (which is already in the target language), J Intell Robot Syst (2021) 102: 17 Page 11 of 20 17

Fig. 6 Figure 5 with a grid, coordinates and an example tile showing its generation procedure

Fig. 7 A labyrinth-like arena

Fig. 8 sBotics being employed to create a virtual road system to teach students traffic laws 17 Page 12 of 20 J Intell Robot Syst (2021) 102: 17

Fig. 9 R-Educ programming interface with the documentation open to review

are source-to-source compiled in W-Educ to C# to be lambda Actions and Functions, since the injection of code injected in real-time in the virtual robot using a native C# at runtime occurs within the scope of another method of class called CodeCompiler. the LoaderClass. Despite this, the user has full access to the In the programming interface, a guide with the func- methods of the BotController class instantiated as bc. These tions/methods documentation for the language chosen for methods correspond to the reading, writing, and movement programming is available. One can access all previously actions of the robots. saved codes and save new codes. Export files and import edited codes in external editors with automatic updating with each external save. And also compile the code and send the code to the robot.

Besides, it is possible to convert between the pro- grammed codes from BlockEduc to R-Educ and from R- Educ to C#. This way users can learn to program in R-Educ by converting their written codes in BlockEduc or learn- ing C# from their writings in one of the other available languages. Figure 10, Listings 2,and3 show the codes to follow the line initially written in BlockEduc and automat- ically converted by the system to R-Educ and later to C#. Notice that in Algorithm 3 the code generated in C# does not allow the definition of traditional classes, constructors Fig. 10 Algorithm to follow line in Blockeduc (in Portuguese or methods. This language in sBotics allows only the use of language however that can be translated) J Intell Robot Syst (2021) 102: 17 Page 13 of 20 17

4.4 Environment Randomization uncontrolled physical effects in the fall; direction = presuposedDirection±physicalInfluence With environment randomization (ER), we are able to • create a variety of simulated environments with randomized Robot rotation functions employ approximations in properties and train a model that works across all of them. order to mimic motor clearance; Simulators often struggle to emulate real-world scenarios rotation = presupposedRotation ± randomRange such as components’ defects, assembly nuances, changes randomRange ∈ R,randomRange ∈[− , ] in temperature, lighting, and many other circumstances 1 1 • that cause different outcomes, leaving the impression to Wait functions deviate slightly in order to simulate the average user that simulators are always a perfect batteries at different charges; • environment and not necessarily applicable for situations Every robot has a minimum variable weight defined by in a non-simulated setting. This lack of realism creates a the formula: dilemma in simulated environments, where it’s desirable (15 − (weight ∗ randomRange)) calcWeight = to achieve acceptable levels of credibility with perfect 10 functioning robots while maintaining mechanisms to randomRange ∈ R,randomRange ∈[0.95, 1.02] randomize difficulties that robots face in the real world. Where weight is the fixed robot’s mass. With this predicament in mind, the application uses several techniques to achieve ER, such as the employment 4.5 Controversy on Environment Randomization of a noise-like texture in the arena, dropping the robot from a small variable height, using the game engine’s physics Some of the users have negatively reported about the to drift the robot ever-so-slightly from its path, and so on. environment randomization, as in general the expected Table 2 shows the average values for 100 readings of the behavior obtained from other traditional simulators for a distance between an object at the arena coordinates (0,3) and run is exactly the same for the same set of variables. That the robot, at 0 and 2 seconds. This in turn causes enough is, if some code produces a result, it is supposed to repeat entropy in the perceived distance for the sensors to be the same one upon a restart if the system and environment considered realistic in our standards. Notice that the initial variables do not change. Notice that this may be true in distance deviates approximately 0.43 distance units since a computer system however it does not happen in the real the robot, despite starting automatically, is not spawned world due to sensor and other errors. This disdain is found exactly in the same position. amongst the simulator’s student community, that like in the real world, have to test their robot multiple times and create 4.4.1 Techniques for Randomization a program that foresees different situations and adversities. However, we noticed that the same feeling is not shared by For the implementation of environment randomization, the educators, as this realism feature is very useful for creating following techniques are employed: easily transferable codes from the platform to real similar- – Application of a noise-like texture to the arena’s working robots. Actually, this feature makes the tool a little surface: the arena is not completely white, simulating a more close to reality. real one that is not perfectly clean. This influences the Even with the negative feedback from a few students reading of the robots’ light and color sensors, which, on the userbase, the appeal of keeping environment just like in a real environment, will vary minimally with randomization still outweighs the valid criticism of not each reading made repeatedly in the same place; being simulator-like. Not only is the platform not simulating – Random robot positioning: the restart direction in the a specific robot for it to be precise (resembling more a game same predetermined position is not always the same, that intends to emulate robotics), but every obstacle created the robot is not positioned directly in the arena but by ER can be circumvented with better-written code, and a few distance units away from the ground, suffering the depth it adds to the platform is important, as it allows

Table 2 Evaluation of the robot’s position

Reading Order Average Standard deviation Estimate reading after 2 seconds

First reading 173.4349 0.4294428973 173.4349 ± 0.4294428973 Second reading 101.9591 0.9449986318 101.9591 ± 0.9449986318 17 Page 14 of 20 J Intell Robot Syst (2021) 102: 17 users to write more intelligent programs that better adapt to several varieties of obstacles.

5 Experiments and Results

In order to validate our proposal and demonstrate the usefulness of the framework, we divide the experiments and results Section into two main parts. At first, we discuss preliminary experiments and results obtained with the previous version [5]. Then the second round of experiments shows the numbers on the usability of the system by students and competitors and its applicability on the RoboCupJunior Brasil, inside the Brazilian Robotics Olympiad (www.obr.org.br). Fig. 11 Simulator being used to instruct the best scoring students of 5.1 sBotics I - The Beta Version the practical component of the BRO

The beta version of sBotics was released after two years programming language, offered by the aforementioned plat- of development, even though it had not reached the level form. After the programmer finishes its code, it is possible of excellence planned for its first release, because it was to compile and execute the program, similar to a real robot. a need. This in turn was not an obstacle for its initial This platform has other possible applications such as the validation as a useful tool in robotic events in Brazil, such as training of judges in the BRO and courses related to the the Brazilian National Robotics Exhibition Fair (MNR) and subjects of robotics or programming logic. As said above, in the Brazilian Robotics Olympiad (BRO) itself. The BRO has the latest national round of the BRO, the simulator was used two modalities, theory and practice. In 2019, it had over 204 to train the best scoring students of the practical modality of thousand direct participants from all Brazilian states with the tournament (see Fig. 11). more than 5000 teams competing in the practical modality Besides being limited, the first version version also in the country. sBotics was designed mainly for the final had a restricted number of functions and it has been short-course for the theoretical modality of BRO. This is substantially upgraded since there in order to reach the a practical programming course that happens in parallel current level of usability, and being finally released and used with the the practical BRO modality, which is the national by RoboCupJunior Brazil as pointed next. All of the screens RoboCupJunior finals. and the algorithms were redone, and the performance The first release paper on sBotics framework was pre- enhanced, also becoming a desktop multiplatform system. sented at the Workshop of Robotics in Education [5], Nonetheless, we consider that the results of the experiments where an overview of its functioning and the experimental carried out with this first version were quite satisfactory and setup for its use in the above short course on Educational drove us to give a continuity on the project. Robotics, for teenagers, is described. Basically, the plat- form starts with the simulation, with a top bar where it 5.2 sBotics II - Current Version is possible to execute programs and a sidebar where set- tings, programming and robot placement are enabled. Using With the Covid-19 pandemics course, our initial proposal the computer keyboard and mouse the user can manipu- of sBotics was suggested by Robocup Brazil Trustees to be late the camera’s angle and position, moving around the used as the official simulator in order to making it possible arena to familiarise itself with the idea of a virtual set- to run RoboCupJunior regionals in Brazil in 2020. At this ting. One of the tabs in the sidebar is the settings, where point, as noticed above, we remark that this competition is the user can manipulate the time and format of the arena, one of the biggest RoboCupJunior trials of the world with their preferred robot and actuator. Each robot offers different thousands of teams and participants so it provides a good types of sensors for the user to manage at their own benchmark for testing our tools. It takes place in two phases, will. For the programming tab, authentication is required one being regionals and another one the finals on Brazil. for the integration with the W-Educ platform. After per- For this, we remodeled all of the simulator interfaces forming all the procedures, the user is presented with a following the formal theory on user experience (UX) black programming canvas, where it is possible to exper- metrics [44] in order to improve the user experience and iment with the several available functions in the R-Educ to make it more attractive to children and teenagers. Visual J Intell Robot Syst (2021) 102: 17 Page 15 of 20 17

Fig. 12 Robots selection

experience of this enhancement can be seen in Figs. 12 version of sBotics can be found at https://weduc.natalnet.br/ and 13. The simulated arenas have been placed in a sbotics/. virtual copy of a real environment, which is at the Natal With the official launch of the simulator by RoboCupJu- Convention Center, overlooking a postcard from the city nior regionals in Brazil, we went from approximately 170 of Natal/RN/Brazil (Fig. 14). The goal of this is to give a users with active accounts to more than 4,500 accounts. In greater idea of immersion in an environment of competition. addition, more than 18,400 clicks were made on the down- This can be easy changed for further competitions. In load link of the simulator. According to user reports, many addition, we have created more features for the robots. of these accounts are being shared between students in the Actually, the BotController class responsible for the entire same class or members of the same competition team for operation of the robot comes up from 31 methods in code sharing. Currently, we have a daily average of 10,000 the first release to 127 fully available, nowadays, to the compilations in our servers. programmer. With constant communication with teachers Additionally, for the sake of testing the environment that are using the tool we listened to their needs and previously to the official stages of the regionals, we incorporated all possible ones, such as block programming have planned and executed 2 warmups with it. These [43] in BlockEduc, a translated block language. The current pre-competitions took place on two consecutive Sundays,

Fig. 13 Arena editor 17 Page 16 of 20 J Intell Robot Syst (2021) 102: 17

Among the videos listed on youtube, more than 100 videos with tutorials, courses, and applications of the tool can be found in the classroom for various purposes. A simple search on “youtube sBotics videos” returns several results on the production of independent videos and tutorials about the use of sBotics by the community, as this one: https://www.youtube.com/watch?v=RWHLKTfAz3g. Another example of more complete tutorial can be found at the independent youtube channel (https://www.youtube. com/channel/UCoeQ3SkVxFAYR0vrIUUpPtw), starting with the number 1 video: https://www.youtube.com/ watch?v=qBixpxM2 Mk). The last one is provided by The Mecatronicaˆ Project, an independent user. We believe that these several videos plus the current users are the best val- Fig. 14 sBotics main Scene idation for our work, and we are happy to help Brazilian Robotics Olympiad community to keep competitions up with registrations taking place on the previous Friday during this hard Covid-19 pandemic time. and Saturday of each one. Table 3 shows the number of participants and their engagement on the warmups. At the end of the first warmup, several participants 6 Conclusion reported the need for other ones to occur before the official events in order to familiarize them with the new tool. In In this paper, a new Educational Robotics environment addition, errors in the scores were reported by them, in very with a gamified simulated framework is proposed to fulfill specific situations in which they missed a large number of the existing gap between students that have no access tests, to be found and corrected. One of the participants to robots and to also diversify a regular educational reported that: robotics learning environment. To do that, the Unity3D game development engine is used in combination with The competition system is super dynamic and fluid. the W-Educ environment [19] for programming through (Competitor A) the Internet and view the results immediately in a 3D Another participant said: environment shown in a desktop computer. The RoboCupJunior, which is the practical modality of Although it was run virtually it felt like I was in the the Brazilian Robotics Olympiad, is one of the greatest real competition, the emotion was the same, I was national competitions on the world, with more than 5 shaking a lot. (Competitor B) thousand teams and about 200 thousand overall (including The official regional phase of the competition will theoretical modality) participating on it. So the testbed is initially have 27 state selective events and then the best really hard and the developed framework has passe it up to players will be classified for the national finals. Each of date. these events will have 3 seats in the final event. Unlike the As a huge contribution to STEAM, the developments warm-up event that had a maximum of 147 teams registered, of this work provide a new way to expand educational the official event has so far 1162 teams with 3700 students robotics, taking into account the easy access of sBotics from all over Brazil, and will run virtually. when comparing with robotics kits especially on current The use of sBotics has not been limited to competitions social distance times. Besides, with sBotics schools with with social distance and the interruption of face-to-face low financial conditions can insert the educational robotics classes in schools across the country. The tool is being used methodology without the need for extra expenses. Since to teach programming, control, engine operation, sensors, most schools have already computers in their facilities, and other general Educational Robotics applications. several public ones in Brazil are already using it. And even for those who already have materials for Table 3 Warmup engagement numbers for Brazilian Robotics Olympics mounting or making their robots, it would be a great help in order to save the use of items that can be damaged or Round Registered Competed Valid scores for saving energy and other physical resources, in addition 1st Warm-up 133 87 84 to helping with the practicality of tests with robots. For these schools, the use of physical robots would be in 2nd Warm-up 147 103 102 the final stage of a robotics class, since the presented J Intell Robot Syst (2021) 102: 17 Page 17 of 20 17 work could replace most of the steps of the lesson in actions, which is generally neglected in traditional robotic class. simulators. Nevertheless, the high-level aspects and related Besides, through the simulator, teachers of robotics will architectures, are drawn as a future study, with which our be able to do something that was previously unfeasible for team will have time to study now. their students, due to the need for physical components, Besides, as said at the end of the State of the Art Section, which are homework. Teachers can build a simulated the programming carried out in the simulator that uses the environment, use markers to indicate students’ successes, languages BlockEduc [41] and R-Educ can be used in real and share the arena with their class to perform the activity robots only by using a different tool, the W-Educ [19], at home. which is left outside this proposal. So the integration of To this end, we believe that the sBotics framework is pol- all of these tools in order to be used together in the same ished and ready to be used by schools and individuals, to computer and environment is another future work to be help diffusion of educational robotics in an ever-connected done, thus facilitating tests in real robots. society. It is available at https://weduc.natalnet.br/sbotics/. However, this is not the end of the works on sBotics, since there are still many things for our development team Acknowledgements We would like to thank CAPES under grant to accomplish, such as enhancing the block-based pro- 001 and CNPq under grants 311640/2018-4, 154225/2020-7, and 153991/2020-8. Also, thanks to Natalnet Associate Labs (www. gramming, offline development, user-created robots and an natalnet.br) of UFRN for using their web facilities. automatic scoring system to gamify even more the platform. Although the tool is already quite complete, considering that most requests from the community have already been Author Contributions All authors have made substantial contributions developed, we indicate the need to insert more robot models to the conception or design of the work; the acquisition, analysis, with different sensor and motor positions. To this end, a or interpretation of data; the creation of new software used in the work; drafted the work or revised it critically for important intellectual module for assembling and modeling virtual robots could be content; and approved the version to be published, as described next. integrated to simulate the completion of the 3rd stage of an Conceptualization: Lucas Moura do Nascimento, Francinaldo Pereira educational robotics class, which is the moment of building Almeida, Luiz Marcos Garcia Gonc¸alves, Sarah Thomaz de Lima robots. Sa;´ Methodology: Lucas Moura do Nascimento, Francinaldo Pereira Our system downloading data show that it has already Almeida, Erika Akemi Yanaguibashi Albuquerque, Luiz Marcos Garcia Gonc¸alves, Sarah Thomaz de Lima Sa;´ Formal analysis and been downloaded from several countries in Latin America investigation: Lucas Moura do Nascimento, Davi Souto Neri, Thiago and also from outside as the United States. Thus, the do Nascimento Ferreira, Francinaldo Pereira Almeida, Erika Akemi possibility of using it in different languages such as English Yanaguibashi Albuquerque, Sarah Thomaz de Lima Sa;´ Writing and Spanish is also one of our next goals, expanding its use - original draft preparation: Lucas Moura do Nascimento, Davi Souto Neri, Thiago do Nascimento Ferreira, Francinaldo Pereira and taking more results as the ones obtained in Brazil for Almeida, Erika Akemi Yanaguibashi Albuquerque; Writing - review other places. and editing: Francinaldo Pereira Almeida, Erika Akemi Yanaguibashi Another aspect that has to be expanded upon is the impact Albuquerque, Luiz Marcos Garcia Gonc¸alves, Sarah Thomaz de of the presented platform on humans. As an autonomous Lima Sa;´ Funding acquisition: Luiz Marcos Garcia Gonc¸alves, Sarah Thomaz de Lima Sa;´ Resources: Luiz Marcos Garcia Gonc¸alves, Sarah and intelligent system (A/IS), it has to safeguard throughout Thomaz de Lima Sa;´ Supervision: Luiz Marcos Garcia Gonc¸alves, its life cycle human well-being at the individual, population, Sarah Thomaz de Lima Sa.´ In addition, all authors agree to be and societal levels [45]. As a platform developed for accountable for all aspects of the work in ensuring that questions education, human interaction optimization and its positive related to the accuracy or integrity of any part of the work are appropriately investigated and resolved. impact on society have been two of the many driving factors for development. Thus, the platform is well suited and its use is secure for literate humans of any age, Funding This work is partially supported by CAPES Brazil under although further research can be made to explore all possible grant 001, and by CNPq Brazil under grants 311640/2018-4, interactions. Beyond that, compliance with Brazilian data 154225/2020-7, and 153991/2020-8. regulations such as LGPD [46, 47] (General Law for Personal Data Protection, in Portuguese) is a priority measure taken by the development team of W-Educ, which Data Availability No data was produced for (or from) this study. currently handles personal user data for the platform. The Nevertheless, the sBotics is available at https://weduc.natalnet.br/ sbotics/ and the W-Educ interface is at https://weduc.docs.apiary.io/. robot-human interactnion aspects are important, not only for this work but for every platform, although they are Declarations not the focus of this paper. This paper has proposed a working framework, whose main focus is the realism Conflict of Interests There are no conflicts of interests nor competing of the sensors and environment feedback to the robot interests for this work. 17 Page 18 of 20 J Intell Robot Syst (2021) 102: 17

References 17. de Lima, P.V.S.G., et al.: Improving early robotics education using a line-following robot simulator. In: 2018 Latin American Robotic Symposium, 2018 Brazilian Symposium on Robotics 1. Pedrosa, E.F.: Simulated environment for robotic soccer agents. (SBR) and 2018 Workshop on Robotics in Education (WRE), Joao Master’s Dissertation, University of Aveiro, Portugal (2010) Pessoa, pp. 547–553 (2018). https://doi.org/10.1109/LARS/SBR/ 2. Becker, G.L.: Development of a simulator for an autonomous WRE.2018.00101 vehicle (in Portuguese) Final Course Conclusion Work in 18. Chebotar, Y., et al.: Closing the sim-to-real loop: adapting Computer Science. Universidade Federal de Minas Gerais, Belo simulation randomization with real world experience. In: 2019 Horizonte, Brazil (2010) International Conference on Robotics and Automation (ICRA), 3. Aroca, R., Pazelli, T., Tonidandel, F., CA Filho, A., Simoes, A., Montreal, QC, Canada, pp. 8973–8979 (2019). https://doi.org/10. Colombini, E., Burlamaqui, A., Gonc¸alves, L.: Brazilian Robotics 1109/ICRA.2019.8793789 Olympiad: A successful paradigm for science and technology 19. Thomaz, S., Fernandes, C., Pitta, R., Torres, V., Gonc¸alves, dissemination. Int. J. Adv. Robot. Syst. 13, 1–8 (2016). https://doi. L.M.: Web-based configurable and multiplatform development org/10.1177/1729881416658166 environment for educational robotics. In: 2013 16th International 4. Aroca, R.V., et al.: Increasing students’ interest with low-cost Conference on Advanced Robotics (ICAR), Montevideo, pp. 1–8 cellbots. IEEE Trans. Educ. 56(1), 3–8 (2013). https://doi.org/10. (2013). https://doi.org/10.1109/ICAR.2013.6766509 1109/TE.2012.2214782 20. Gaunt, R.: Color spaces in digital video. United States: N. p. Web 5. do Nascimento, L.M., Neri, D.S., do Nascimento, T., (1997) Yanaguibashi, E.A., Sa,´ S., Gonc¸alves, L.M.: sBotics: sim- 21. Ajwad, S.A., Asim, N., Islam, R.U., Iqbal, J.: Role and review of ulation applied for the practical component of the brazilian educational robotic platforms in preparing engineers for industry. robotics olympiad. In: 2019 Latin American Robotics Sympo- Maejo Int. J. Sci. Technol. Chiang Mai 11(1), 17–34 (2017) sium (LARS), 2019 Brazilian Symposium on Robotics (SBR) 22. Teixeira, J.V., Hounsell, M.S.: Educational robotic simulators: and 2019 Workshop on Robotics in Education (WRE), Rio a systematic literature review. Nuevas Ideas en Informatica´ Grande, Brazil, pp. 487–491 (2019). https://doi.org/10.1109/ Educativa TISE (2015) LARS-SBR-WRE48964.2019.00092 23. Koenig, N., Howard, A.: Design and use paradigms for Gazebo, 6. Fernandes, C.C., et al.: Demystifying educational robotics with an open-source multi-robot simulator. In: 2004 IEEE/RSJ FOCORE: from very low cost software and hardware technologies International Conference on Intelligent Robots and Systems to the development of new methodologies and curriculum for (IROS) (IEEE Cat. No. 04CH37566), Sendai, vol. 3, pp. 2149– continuing teacher education and teaching of brazilian basic 2154 (2004). https://doi.org/10.1109/IROS.2004.1389727 education students. In: 2020 Latin American Robotics Symposium (LARS), 2020 Brazilian Symposium on Robotics (SBR) and 24. Costa, V., Rossetti, R.J.F., Sousa, A.: Autonomous driving simu- 2020 Workshop on Robotics in Education (WRE), Natal, Brazil, lator for educational purposes. In: 2016 11th Iberian Conference pp. 1–6 (2020). https://doi.org/10.1109/LARS/SBR/WRE51543. on Information Systems and Technologies (CISTI), Las Palmas, 2020.9307032 pp. 1–5 (2016). https://doi.org/10.1109/CISTI.2016.7521461 7. Unity 3D (web site). https://unity.com/. Last accessed Oct, 11th 25. Fernandes, C.C.: S-Educ Um Simulador de Ambiente de 2020 Robotica´ Educacional em Plataforma Virtual. 2013. 83 f. Master’s 8. W-Educ API (web site). https://weduc.docs.apiary.io/.Last Dissertation, Universidade Federal do Rio Grande do Norte, Brazil accessed 2020, Oct, 11th 2020 (2013) 9. Open Roberta (web site). https://lab.open-roberta.org/.Last 26. Barrios-Aranibar, D., et al.: RoboEduc: a software for teaching accessed Oct, 11th, 2020 robotics to technological excluded children using lego prototypes. 10. Robot Virtual Worlds (web site). http://www.robotvirtualworlds. In: 2006 IEEE 3rd Latin American Robotics Symposium, com/. Last accessed Sep, 23rd 2020. Santiago, pp. 193–199 (2006). https://doi.org/10.1109/LARS. 11. Brooks, R., Mataric,´ M.: Real Robots, Real Learning Problems. 2006.334332 RobotLearning. Kluwer Academic Press, Dordrecht (1993) 27. Thomaz, S., et al.: RoboEduc: A pedagogical tool to support 12. Balakirsky, S., Carpin, S., Dimitoglou, G., Balaguer, B.: educational robotics. In: 2009 39th IEEE Frontiers in Education From simulation to real robots with predictable results: meth- Conference, San Antonio, TX, pp. 1–6 (2009). https://doi.org/10. ods and examples. In: Madhavan, R., Tunstel, E., Messina, 1109/FIE.2009.5350439 E. (eds.) Performance evaluation and benchmarking of intelli- 28. Michel, O.: Cyberbotics Ltd. WebotsTM: professional mobile gent systems. Springer, Boston (2009). https://doi.org/10.1007/ robot simulation. Int. J. Adv. Robot. Syst. (2004) 978-1-4419-0492-8 6 29. CAMPOS, Rodrigo, F.: Robotica´ Educacional no Brasil: Robotica´ 13. Curto-Diego, B., Moreno-Rodilla, V., Garc´ıa-Penalvo,˜ F.J. (eds.): Educacional no Brasil Questoes˜ em Aberto, Desafios e Perspec- Special issue: robotics in education. J. Intell. Robot. Syst. (2016) tivas Futuras. RIAEE, Sa,o˜ Paulo, vol. 12, no. 4, pp. 2108–2121 Vol. 81, Issue 1. ISSN: 0921-0296. https://link.springer.com/ (2017) journal/10846/81/1/page/1, Accessed on 13-1-2021 30. Miranda, L.C.D.: RoboFacil:ˆ Especificac¸ao˜ e Implementac¸ao˜ de 14. sBotics site at Natalnet Associate Labs, Federal University of Rio Artefatos de Hardware e Software de Baixo Custo para um um Grande do Norte. https://weduc.natalnet.br/sbotics/ (accessed on Kit de Robotica´ Educacional. Master’s dissertation, Universidade January, 13, 2021) Federal do Rio de Janeiro, Rio de Janeiro, Brazil, vol. 1, no. 1, 15. Kahoot for Schools - Quizzes and Challenges for teaching pp. 1–124 (2006) interactive lessons. https://kahoot.com/schools-u/ (accessed on 31. Olszewska, J.I.: The virtual classroom: a new cyber physical January, 13, 2021) system. In: Proceedings of IEEE World Symposium on Applied 16. Cianci, C.M., Raemy, X., Pugh, J., Martinoli, A.: Communication Machine Intelligence and Informatics, pp. 1–6 (2021) in a swarm of miniature robots: the e-puck as an educational 32. de Olivera, D.S., dos Santos Garcia, L.T., Gonc¸alves, L.M.G.: tool for S¸ahin, E., Spears, W.M., Winfield, Pol´ıticas de formac¸ao˜ continuada de professores: inovac¸ao˜ para A.F.T. (eds.), vol. 14433. Springer, Berlin. https://doi.org/10.1007/ uso da robotica´ como recurso pedagogico.´ Revista Linhas 20(43), 978-3-540-71541-2 7 (2007) 102–131 (2019). https://doi.org/10.5965/1984723820432019102 J Intell Robot Syst (2021) 102: 17 Page 19 of 20 17

33. PAPERT, S.: Constructionism A New Opportunity for Elementary Davi Souto Neri is currently an undergraduate student pursuing the Science Education. A proposal to the National Science Foundation degree of Technology in Systems Analysis and Development at the Massachusetts Institute of Technology (1986) Federal Institute of Education, Science and Technology of Rio Grande 34. Potkonjak, V., Vukobratovic,´ M., Jovanovic,´ K., Medenica, M.: do Norte (IFRN). His main interests are in Web Development, Digital Virtual Mechatronic / Robotic laboratory – A step further in Games, and Educational Robotics. He has experience with PHP, SQL, distance learning. Comput. Educ. 55(2), 465–475 (2010). https:// Ruby on Rails, Javascript, C# and Unity. doi.org/10.1016/j.compedu.2010.02.010 35. Potkonjak, V., Gardner, M., Callaghan, V., Mattila, P., Guetl, C., Petrovic,´ V.M., Jovanovic,´ K.: Virtual laboratories for education in science, technology, and engineering: A review, vol. 95, pp. 309– Thiago do Nascimento Ferreira is currently an undergraduate student 327 (2016). https://doi.org/10.1016/j.compedu.2016.02.002 in Systems Analysis and Development at the Federal Institute of 36. Petrovic,´ V.M., Nikolic,´ B., Jovanovic,´ K., Potkonjak, V.: Education, Science and Technology of Rio Grande do Norte (IFRN). Development of virtual laboratory for mechatronic systems. In: His main interests are in Programming Languages, Digital Games, and Advances in robot design and intelligent control (Proceedings of Web Services. He has experience in rogramming Languages. the 25th Conference on Robotics in Alpe-Adria-Danube Region - RAAD 2016), pp. 622–630. Springer (2016) 37. Hashemipour, M., Manesh, H.F., Bal, M.: A modular virtual real- ity system for engineering laboratory education. Comput. Appl. Eng. Educ. 19, 305–314 (2011). https://doi.org/10.1002/cae.20312 Francinaldo de Almeida Pereira holdsaaBachelorDegreein 38. Jaramillo-Botero, A., Matta-Gomez, A., Correa-caicedo, J.F., Science and Technology from Federal University of Rio Grande Perea-Castro, W.: ROBOMOSP. IEEE Robot. Autom. Mag. 13(4), do Norte (2017) and a Bachelor Degree in Computer Engineering 62–73 (2006). https://doi.org/10.1109/MRA.2006.250572 also from Federal University of Rio Grande do Norte (2019). He 39. Feng, L., Borenstein, J.: Correction of systematic odometry errors is currently an M.Sc. student at the Graduate Program in Electrical in mobile robots. In: IEEE/RSJ International Conference on and Computer Engineering from Federal University of Rio Grande do Intelligent Robots and Systems, Pittsburgh, Pennsylvania, USA, Norte. His main interests are in Web Development and Educational p. 3569 (1995). https://doi.org/10.1109/IROS.1995.525942 Robotics. 40. Zilli, S.D.R.: A Robotica´ Educacional no Ensino Fundamental: Perspectivas e Pratica.´ Master’s Dissertation, Florianopolis,´ Brazil, vol. 1, no. 1, pp. 1–89 (2004) 41. Francinaldo, A., Yanaguibashi, E.A., Silva, S.R., Sa, S.T.L., Erika Akemi Yanaguibashi Albuquerque has two Bachelor Degrees Gonc¸alves, L.M.G.: BlockEduc - a tool for visual programming of in Science and Technology from the Federal University of Rio Grande robots on dynamic environment W-Educ, vol. 1 (2017) 42. Jonassen, D.H.: Computers in the classroom: mindtools for critical do Norte (2017) and in Biomedical Engineering also from the Federal thinking, vol. 43, pp. 24–32. Prentice-Hall, Columbus (1996) University of Rio Grande do Norte (2019). She is currently an 43. Pasternak, E., Fenichel, R., Marshall, A.N.: Tips for creating M.Sc. student at the Graduate Program in Electrical and Computer a block language with blockly. In: IEEE Blocks and Beyond Engineering of UFRN (PPgEEC-UFRN) in the area of Robotics in Workshop (B&B), Raleigh, NC, vol. 2017, pp. 21–24 (2017). Education. She is also a researcher at the Natalnet Associate Labs from https://doi.org/10.1109/BLOCKS.2017.8120404 UFRN and has experience in the area of Educational Robotics and 44. Seffah, A., Donyaee, M., Kline, R.B., et al.: Usability measure- Medical Image Processing. ment and metrics: A consolidated model. Softw. Qual. J. 14, 159–178 (2006). https://doi.org/10.1007/s11219-006-7600-8 45. 7010-2020 - IEEE Recommended Practice for Assessing the Impact of Autonomous and Intelligent Systems on Human Well- Luiz Marcos Garcia Gonc¸alves holds a Doctorate in Systems and Being. Available from https://doi.org/10.1109/IEEESTD.2020. Computer Engineering (1999) from COPPE-UFRJ, Brazil, including 9084219 accesses on January, 30th, 2021 a two years PhD stage at the Laboratory for Perceptual Robotics of 46. LGPD, General Law for Personal Data Protection (web site UMASS, Amherst, MA, USA. He is Full Professor at the Computer in Brazilian Portuguese). Available at http://www.planalto.gov. Engineering Department of UFRN, Brazil. He has done researches br/ccivil 03/ ato2015-2018/2018/lei/L13709.htm. Accessed on in the several aspects of Graphics Processing including fields as January, 3rd 2021 Robotics Vision (main interest), Computer Graphics, GIS, Geometric 47. English Translation of the General Law for Personal Modelling, Animation, Image Processing, Computer Vision, and also Data Protection (LGPD, in Portuguese). Available from has several works on Robotics in Education. https://www.lgpdbrasil.com.br/wp-content/uploads/2019/06/ LGPD-english-version.pdf. Accessed on January, 3rd 2021

Publisher’s Note Springer Nature remains neutral with regard to Sarah Thomaz de Lima Sa´ has a Bachelor Degree in Computer jurisdictional claims in published maps and institutional affiliations. Engineering from the Federal University of Rio Grande do Norte (UFRN, 2011), and a M.Sc. (2013) and a Ph.D. (2016) in Electrical and Lucas Moura do Nascimento has a technician degree in Computers Computer Engineering also from UFRN. She is Associate Professor and Internet from the Federal Institute of Education, Science and at the Federal Institute of Education, Science and Technology of Rio Technology of Rio Grande do Norte (IFRN, 2018). He is currently Grande do Norte. She has been the national co-chair for Brazilian pursuing the Bachelor Degree in Information Technology at the Robotics Olympics and its state representative in Rio Grande do Federal University of Rio Grande do Norte. His main interests are Norte, and also a member of the Special Committee in Robotics of in Games and Web Development, Educational Robotics, Robotic Brazilian Computer Society. Her main interests are in Educational Perception, and Simulation Tools, including developments with PHP, Robotics, Systems Development, Embedded Systems and Information SQL, Ruby on Rails, Javascript, C# and Unity. Technologies. 17 Page 20 of 20 J Intell Robot Syst (2021) 102: 17

Affiliations

Lucas Moura do Nascimento1 · Davi Souto Neri2 · Thiago do Nascimento Ferreira2 · Francinaldo de Almeida Pereira3 · Erika Akemi Yanaguibashi Albuquerque3 · Luiz Marcos Garcia Gonc¸alves3 · Sarah Thomaz de Lima Sa´2

Davi Souto Neri [email protected] Thiago do Nascimento Ferreira [email protected] Francinaldo de Almeida Pereira [email protected] Erika Akemi Yanaguibashi Albuquerque [email protected] Luiz Marcos Garcia Gonc¸alves [email protected] Sarah Thomaz de Lima Sa´ [email protected] 1 Metropole´ Digital Institute, Universidade Federal do Rio Grande do Norte, Natal, RN, Brazil 2 Diretoria Academicaˆ de Gestao˜ e Tecnologia da Informac¸ao,˜ Instituto Federal de Educac¸ao˜ Tecnolocgica´ do Rio Grande do Norte, Natal, RN, Brazil 3 Graduate Program in Computer and Electrical Engineering, Universidade Federal do Rio Grande do Norte, Natal, RN, Brazil