Introduction to Coding Education Using an Interactive ALTINO Robot
Jaeson Pyeon1, Suk Bum Kang2, Jin Hyun Kim2, and Se Young Jeong2
1 Taejon Christian International School
77 Yongsan 2-ro, Yuseong-gu,
2 Saeon Co., Inc.
#512 Intelligent Robot Engineering Center, 35 Techno 9-ro, Yuseong-gu,
Technology has developed rapidly and is changing at the fastest pace in our society. Recently robots appear more and more frequently in our daily lives as well. It is also well-known that new interactive devices and methods will make the learning process more efficient. Those new interactive devices and methods in the learning process of programming would improve student participation and improve communication and programmable mobile robots. In addition, a new teaching method using robots can enhance the attitude to robot programming and programming concepts. In this paper, the authors reviewed the importance of coding education using interactive devices such as robots and introduced a coding robot called Altino. This paper also explained common problems that typically occur in a traditional classroom environment when teaching coding for beginners and recommended a potential solution.
Keywords-component; Altino; Autonomous Car; Coding Robot; Block Coding; Scratch
Technology has developed rapidly and is changing at the fastest pace in our society, and a new generation must learn the evolution of these technologies in order to solve many future technical problems . Recently robots appear more and more frequently in our daily lives, and robotics is a very popular field. It is therefore increasingly important to introduce the basic knowledge of robots to children . It is also well-known that new interactive devices and methods will make the learning process more efficient. Those new devices and methods in the learning process of programming would improve student participation and improve communication among them, and make the programing learning process more concrete, practical, and fun . In addition, programmable mobile robots and a new teaching method using robots can enhance the attitude to robot programming and programming concepts .
Alvarez and Larranaga reported that most students have a high sense of accomplishment in programming proficiency, but lack algorithm design skills . They performed two years of experimentation using the Lego robot and about 100 college students reported satisfactory results in motivation and awareness of the learning process. For many students this course is the first contact for programming issues . Both students and teachers are in a difficult process with high failure rates and dropout rates and there are a significant number of repeat students. Generally, students believe that this programing course will be very difficult .
Alvarez and Larranaga found that nearly 100% of new students want to learn programming using robots. 62% of students wanted to use robots in more classes or other courses, and 70% wanted to use robots after school . Seventy percent of students found that using robots would help increase their knowledge, and 65% of students answered that using robots has helped them understand the condition statements. When students use robots, the course becomes more interesting and exciting, and they want to study programming using robots after school .
2. Configuration of Altino Robot
The driving unit of the Altino robot is composed of one steering motor and two rear wheels. The display unit includes two front lights, two rear lights, two leftward lights, two rightward lights, two brakes, an 8x8 Dot-matrix, and a buzzer. The sensor is composed of 6 sets of Infrared (IR) sensors for detecting obstacles (front: 3 sets / rear: 1 set / side: 1 set), steering control variable resistance, 3 axis acceleration sensor, 3 axis geomagnetic sensor, 3 axis gyro sensor, ambient light sensor, remote control receiver, battery detection sensor, two rear motor torque sensors, and one steering motor torque sensor. A detailed product features including sensors and modules are shown in Figure 1.
Fig. 1 Altino Product Features: Sensors and Modules
3. Early Coding Education Using an Altino Robot
3.1. Altino Orchestra App: Remote Controller
The user need to download an application named “Orchestra” from App stores. There are three options included in the Orchestra App. One of the options focuses on a remote control function. The users can use this app that can steer the robot. This app has a feature used in automobiles and allows you to experience auto light on, side alarm, ABS, UDC, emergency braking, emergency light, and cruise control.
The user can experience various functions used in control and automobiles directly using the app even before the user starts learning software coding. Later, the user can learn how to control the Altino robot using software languages such as Scratch, Android, Python, C language, etc. This will make the learners instill confidence that they can perform the same job using software languages without a remote control app. The graphic user interface of the app is structured as shown in Figure 2.
Fig. 2 Remote Control App for Altino
3.2. Altino Orchestra App: Block Coding “Crayon”
Another option included in the Orchestra App focuses on learning block coding. Through these Apps that can be used in preschool to elementary grades, the user can understand the sequential concept of the program. It is programmable with one second intervals, and can control speed, steering direction, sound, light, and 8x8 dot matrix. The faster the speed, the longer the distance traveled for 1 second, and the slower the speed, the shorter the distance. Various problem solving missions such as return destination using sequential processing only and L-shaped passage mission can be performed. A screenshot of Crayon User Interface of Altino Block Coding App is shown in Figure 3.
Fig. 3 Screenshot of Altino Block Coding App Crayon User Interface
3.3. Altino Orchestra App: Scratch Block Coding
Scratch block coding is also included in the Orchestra App. Using Scratch block coding, the user can control the Altino robot and make it drive autonomously. Programing languages that are typically learned on PCs can be easily learned using Altino robots with fun. By using blocks that can control Altino in Scratch, users can enjoy the scratch program while moving Altino. The blocks used in Scratch are made identical to the function names used in the C language so that students can easily access the C language. A screenshot of Scratch block coding user interface is show in Figure 4.
Fig. 4 Screenshot of Altino Robot Scratch Block Coding User Interface
4. Coding Education: Traditional vs. Interactive Coding Robot
In the previous section, tools for early coding education using Altino coding robot is introduced. However, Altino robot can also be used for intermediate and advanced level programing users. Altino C language programing is designed for providing an interest and fun by demonstrating the movement of the coding robot while the students are learning the C language program. Through the functions of Altino robot such as Go, Steering, Sound, Light, Display, DisplayLine, Displayon, Displayoff, and Sensor, you can learn the C language and make the function a header file so that students can make modifications. In addition, image processing education can be done using Python, Android app programing, Arduino scratches, or Raspberry Pie.
4.1. Traditional Coding Education
Traditionally, software engineers have learned coding in college using the traditional method of coding education such as a large classroom environment and the lack of personalized feedback. They also hardly used any type of interactive mobile devices helping them understand how the programing commands work with the tangible devices. However, in these days, young generations are generally so good at dealing with high-tech mobile devices and continuously exposed to new technologies day after day. Those young generations will frequently get bored in the traditional classroom environment teach coding without using and tangible devices which can interact with what they are learning in class.
Based on the author’s experiences in the classroom methods of teaching programing languages, the traditional teaching method without using hands-on devices frequently failed to maintain the student’s attention and enhance their learning in both Korea and the United States.
While taking a computer science course teaching Java and Python in high school in the United States, it was found that some students were dozing off during class. Sometimes, the students were discouraged by the difficult homework problems. Students reported that they felt that these problems weren’t applicable to real life and they were more like brain puzzles meant to trick them. This lead to a disinterest in the class and some students soon found it to be one of their hardest classes. In this situation, students will ultimately be left with the feeling that they have no desire to continue studying programing languages.
4.2. Coding Education with an Interactive Robot Altino
On the other hand, using an interactive coding robot such as Altino is extremely helpful for the students who got easily bored in the traditional classroom environment. For example, students who had the opportunity to learn coding using the Altino, an educational robot focused on taking a fun approach to coding immediately found the experience coding with the robot to be entertaining as they could see the tangible results of their work.
It was also easier for them to correct their mistakes since they could observe the functions of the robot car and in doing so, figure out what was wrong with their approach. Even though they still found coding to be difficult and had moments where they were frustrated with some of the challenging missions, they frequently felt more willing to come back and tackle the problem the next day.
In conclusion, the Altino is an effective coding education tool because it provides people with an entertaining, hands on coding experience. In contrast with the traditional school curriculum, students frequently felt more engaged using the Altino and felt that it was easier to self-study coding. Furthermore, there is always room to grow and implement more advanced programs as the robot car has numerous functions that can be used in various different ways.
5. Conclusions and Future Work
From various literatures, robots are an important part for teaching software. It may be a hard task to select which one to use for what purposes. In this perspective, Altino is a well recommended coding robot for various purposes and various learners such as from preschool to college students. Frequently, students express their difficulty in learning programing languages. However, utilizing the Altino robot in the programing language curriculum, students can learn the programing languages with more interest and fun.
We will conduct case studies and surveys on students in future studies. In the case study, the authors will divide students into two groups and compare the differences between the performances of the students. For one group, the students will be taught a programing language using block coding and the other group learns the programing language in a traditional way to quantify the effectiveness of robot-based coding training and gain useful information in a new software education system.
 V. Gónzalez, F. R. Cañadillas, R. Pérula-martínez, M. A. Salichs, and C. Balaguer, “A Review on How to Easily Program Robots at High School” Chapter 10, ROBOCITY16. Robots for Citizens, Madrid, Spain, May 26-27, 2016.
 R. Vilches, and Í. Martínez, M. L. González, J. Crespo, and R. Barber, “Mobile Robotics Teaching Using Arduino and ROS,” Proceedings of ICERI2014 Conference, 17th-19th November 2014, Seville, Spain. 2014.
 A. Pásztor, R. Pap-Szigeti, and E. Török, “Mobile Robots in Teaching Programming for IT Engineers and its Effects,” International Journal of Advanced Computer Science and Applications (IJACSA), Vol. 4, No. 11, 2013.
 A. Ainhoa and M. Larranaga, “Experiences Incorporating Lego Mindstorms Robots in the Basic Programming Syllabus: Lessons Learned,” J Intell Robot Syst 81:117-129, Springer Science+Business Media Dordrecht, February 2015.