The first sight of CoderZ gave me the impression that it was teaching some simple operations of turning and moving, as well as math calculation, especially when I do the activities in its trial lesson CoderZ Adventure with LEGO Education Spike Prime. If that is the case, the difference between cyber robotics and physial one does not need to be analyzed here. However, after finishing all the self-paced projects in the module Cyber Robotics 101 Remastered and Code Farm, I would have to say that my view has changed in certain degree.
Differences in the Three Modules
What I subscribed is Parant Package, which consists of three modules: Cyber Robotics 101 Remastered, The New CodeZ Adventure with LEGO Spike Prime, and Code Farm. Among them, the second module “New CoderZ Adventure with LEGO Spike Prime” is targeted to children of 4th to 6th grades. This module is special since in certain degree, it is not learning how to control a robot, but more focusing on mathematical operations and angle calculations. For example, “turn left” block represents turning left 90 degrees. “turn left 60 degrees” block represents turning left 60 degrees accurately. You do not need to tweak those values for the cybler robot, nor worry about the influence of virtual surrounding environment, just ensure your calculation of forward steps and directions are correct. In this perspective, if we replace the Spike Prime model with any other cartoon characterics, it would work perfectly. Some 4th grade students tried those activities and their response was “pretty easy”. Therefore, I would say it even works for grade 2th students.
For the other two modules: Cyber Robotics 101 Remastered and Code Farm, they are similar in certain degree. Both of them use a LEGO MindStorms EV3 model, which is the sample model you could find in the LEGO MindStorms Home(or Classroom) App. Both of them simulate controlling a real LEGO EV3 model in a real world. Their coding blocks are pretty similar to those we use to control the physial LEGO models, so my analysis in this post will focus on these two modules.
The biggest diffence between the above two modules is how to control the robot’s direction and speed. Code Farm module uses left motor and right motor speed. When the motors’ speed is different, the robot will turn either left (left motor’s speed is lower) or right (right motor speed is lower). When both motors’ speed is the same, the robot will move forward straight. It is similar to the block “start motors at … … % speed” in LEGO MindStorms Home(or Classroom) App. Robotics 101 Remastered uses steering method to control robot. Correspondingly, it is similar to the block “start moving (steering angle)” block in the LEGO MindStorms app. Both methods work for me. Actually it all depends on which method you get used to and prefer to use.
The second major difference between the above two modules is the difficulty level. Code Farm module is simpler since its LEGO model does not contain a front arm. Meanwhile, its activities are simpler. While for LEGO MindStorms 101 Remastered, some of its challenging mission activities are a bit touch. It needs more tweaking and trial to make the robot work stably in the virtual environment. Frankly, it spent me several hours to solve all of those challenging tasks. Considering that Code Farm is targeted to grade 5th and 6th students, while LEGO MindStorms 101 Remastered is for grade 5th to 9th strudents, such an arrangement is pretty reasonable.
Now let’s take a look at those lessons within each module. Code Farm module consists of 9 lessons, while Robotics 101 consists of 15 lessons. Each lesson focuses on different topics. They all start from the basic functions, such as steering motors to move forth and back, or turn left and right. In this process, students get to learn how to use its blockly language. Basically those coding blocks are very similar to the block language used in LEGO MindStorms EV3 App. Therefore, there is no problem to understand and use them in a short time.
Common Features of CodeZ Cyber Robotics and Physical Robots
If we compare CodeZ with LEGO MindStorms EV3 robots, we could find the following common features.
1. Both need tweaking the parameters to get expected results
Take LEGO MindStorms 101 Remastered module of CodeZ as an example. If we want the robot turn for a certain degree, one method is to use “duration” parameter in the block. We need to tweak this parameter several times to get a suitable turnning degree.
The other method is to use gyro sensor. At the beginning, “reset gyro”, after the program calls the block “drive power… direction…steering… “, wait till the gyro sensor angle reach a certain value. Assuming we want the robot turn left 90 degrees, you could see that instead of waiting for the gyro sensor angle <= -90 degrees, we use gyro sensor angle <= -87. It is because we have to consider the robot turning speed and signal delaying as well. This tweaking is just like the things we need to do when controlling the real LEGO MindStorms robot.
2. Both need to consider the interference with the surrounding environment
For the cyber robotics, when its body or front arm touches the green box, the cow or any other parts in the environment, the robot might become a bit stucked. This is just like the physical robot in the real scenario. In order to solve this issue, we need to minior adjust the position of the robot. For example, in the following example, when the robot touches the fence, it needs to retrieve a bit, and then turn, otherwise, it is blocked by the fence and could not turn properly.
3. Both need to have sensors and motors work together
No matter it is cyber robotics or physical robot, when handling the challenging tasks, we need to utilize the sensors sensibly to better control the motors. A good point about the codeZ is that we could check the sensors data in real time, which allows us to debug the code conveniently. The only weakness for this functionality is the font size being too small, so we have to use window magnifier to see it clearly.
Difference between CoderZ Cyber Robotics and Real Robots
1. Cyber robotics gets less affected by environment
In the real physical world, if the program drives the robot in a straight line, the robot will alienate from its original route more or less, after running for some distance. It might be caused by the unevenness of the ground, slippering surface, unbalanced running speed of motor or the sensor inaccuracy. Therefore, continuing monitoring the movement of the robot is necessary in the real world.
However, for cyber robotics, once you tweak the turning direction or turning duration properly, everything will be under control. I would not say that cyber robotics algorithm is fully immune to the fluctuation of virtural environment parameters, it just means that compared to physical environment, there are much less uncontrolled environmental parameters.
Therefore, controlling cyber robotics is simpler than controlling a physical robot. It is a good news for beginners.
2. Cyber robotics will not consider the motor’s power limitation
In real scenario of LEGO MindStorms EV3, if the robot drives forward by setting low motor speed, the motor is not powerful enough to drive the vehicle. However, in cyber robotics, you could set motor speed as low as 1. Such a difference makes it easier to control the cyber robotics direction with gyro sensor.
You might wonder why the program needs to set such a low motor speed. It is necessary in certain scenarios. For example, in using gyro sensor to control turning angle, even the motor speed is as low as 8, we should consider the influence of motor running speed and signal delaying on the gyro sensor. For example, when motor power is 3, if we want the robot turn right for 90 degees, we could just call “wait for gyro sensor angle >=90”. However, if motor power is 8, instead of calling “wait for gyro sensor angle >=90”, we need to call “wait for gyro sensor angle >= 87”. This value difference is used to compensate for the motor turning speed and signal delaying.
In the physical world, usually the motor power will be at least 30 or more. We need to tweak a different value for the gyro sensor’s angle to ensure that turning degree is close to 90 degrees.
3. Cyber robotics surroundings are easier to be controlled
In codeZ LEGO MindStorms 101 Remastered, all the obstacles are either green boxes or red boxes. All the scoring points are green apples. In Code Farm, all the obstacles are either cows or some fruits. The program does not need to consider the other parameters, such as roughness of the ground surface, the data error of ultrasonic sensor, color sensor and gyro sensor or the ambient light change. Generally, the environmental variables are much less complicated than that for real robots.
4. No need to build LEGO model for cyber robotics
In current codeZ modules, users could not use their own LEGO models. They need to use the existing LEGO EV3 model or LEGO Spike Prime models specified by the codeZ platform. For the veteran players, it would be a pity because playing robot is not just for route planning, but also for the fun of building a model from a scratch. However, for many beginners, such a setting reduces the difficulty and helps them climb the learning curve quickly.
In summary, although the experience of running codeZ cyber robotics is different from controlling a real LEGO robot, it does offer some advantages, including:
- Provides an affordable method to learn robot route planing and controlling.
- The task-centered method allows students to concentrate on practicing required coding skills.
- Easier to reset the virtual robot environment.
Most children still prefer the real robots in physical world, which gives them a concrete image of LEGO robot and allows them experience the interaction between program and robot models. In our coding and robotics club, I would be more than happy to use coderZ as an assistant tool for our physical robot workshop. It would be a perfect collaboration between cyber and physical robotics.
Note: All the analysis articles are copyright products of http://www.thecodingfun.com. Anyone re-posting them should credit author and original source. Anyone using them for commercial purposes or translating them into other languages should notify TheCodingFun and get confirmation first. All Rights Reserved.