DEVELOPING LESSON PLANS FROM BOOKS' MATERIALS
By C. N. Thai
My PLAY700 and DREAM II books were written with the “individual user at home” in mind thus the flow of the book materials follows the “logic” of subject matters (i.e. self-contained Chapters as much as possible). When I used the same materials for my face-to-face training sessions such as WRE, MMR and SAUGA, I had to “slice and dice” them differently as the issues of session time lengths and classroom dynamics need to be included in the actual “lesson plans”.
The WRE and MMR sessions are weekend short courses where the training time periods are quite limited, so I choose the PLAY700 platform as the teaching platform as it requires the least robot-building skills from the students. The SAUGA is a week-long Summer Camp, thus I choose the DREAM II platform which is more expandable and subsequently requires more robot-building skills. Recently I volunteer at a local middle school to teach robotics, using the PLAY700 kit, as an extra-curricular activity lasting an hour per week throughout the school year. I am still working on the details of these weekly lessons, but I am sure that they will be different from the ones I use for the WRE sessions, even though the same robot platform (PLAY700) is used for both activities.
As an illustration of the instructional approach I used for my various face-to-face training sessions, I’ll use the example of the WRE weekend short course which lasts two days. For each day, the morning session is from 8:30 AM to Noon, and after lunch the afternoon session is from 1 PM to 3:45 PM.
I teach the WRE short course at the UGA’s GA Center in a Computer Lab with a maximum of 16 Windows PCs – one PC per student. I use my own Windows laptop along with a Samsung Android tablet (to illustrate mobile Apps such R+m.TASK V.2 and R+m.PLAY700). Each student has their own PLAY700 kit and they can bring their own smartphones or tablets to try out the mobile features. The GA Center provides the USB BT-410 dongles to allow their PCs to connect to the student’s PLAY700 kit via the included BT-410 receiver. Below are details of the instructional plan used, where all figures, sections, and videos refer to the ones provided in the PLAY700 book, while other materials and example codes refer to the WRE PPT slides:
1) Getting acquainted with PLAY700 system:
(A different presentation of the materials shown in the book’s Chapter 1 and Chapter 2)
a) CM-50 Controller and its built-in sensors and actuators (Slides 3-5).
b) Three ways to program/operate ROBOTIS robots (Slides 6-8).
c) Introduce “Sense-Think-Act” Paradigm via Slides 9-14 and Section 1.2.
d) Hands-on practice with the hardware (Slides 15-20) while building “BasicBot” (Video 2.1 and Fig. 2.1).
2) Learning to use the MANAGER tool with “BasicBot”:
(As “MANAGER” only works with Windows OS, this activity applies to students only if they have access to a Windows PC, if not the instructor can go through this section as a demonstration-only activity or skip it completely if students only have access to mobile devices during training).
a) Demonstrating MANAGER tool (Slides 21-22, Video 2.3 and Section 2.2).
3) Learning to use the TASK V.2 tool with “Spinning Top”:
(Please note that the PC and Mobile interfaces for the TASK V.2 tool are slightly different, although they have the same functionality. Thus, if students are using mobile devices, I would “SideSynch” my Samsung tablet to my Windows laptop, and then teach the entire short course out of the tablet).
a) Students build “Spinning Top” robot (Slides 23-24, Video 2.7 and Section 2.3).
b) Combining Learning about the TASK IDE (Slides 25-29) and about Sequence Control Programming (Slide 30, Videos 3.1 to 3.5, and Section 3.1). TASK Programs are created from scratch in this section.
c) “Sense-Think-Act” paradigm revisited, and “drill-down” to Reactive Control Approach via Condition/Action Table and Sensor/Actuator Table (Slides 31-33 and Section 1.2).
d) Learning about Programming Robot Action Sequences (with no Sensor Feedback) and Program Modularization via Functions (Slides 34-38, Videos 3.6 to 3.8 and Section 3.2). “P_Maneuvers1.tskx” is provided to students who are then guided to create the next programs “P_Maneuvers2.tskx” through “P_Maneuvers4.tskx”.
4) Learning about Autonomous Behavior (Part 1):
(From this section forward, students are provided with example codes illustrating the algorithms being discussed).
a) First Complete “Sense-Think-Act” example using the IR Center Sensor (Slides 40-42, Video 3.9 and Section 3.3.1). For face-to-face training, the book’s example “IR-based-Maneuvers.tskx” is shown in two steps “P_IRC-based-Maneuvers_1.tskx” (using Parallel IFs) and “P_IRC-based-Maneuvers_2.tskx” (using IF-ELSE-IF).
(On Day 1, usually we reach lunch time around this spot and the students take a 1-hour lunch break).
b) The same “Spinning Top” robot is now renamed “Avoider” to showcase the Second Complete “Sense-Think-Act” example using the Left and Right IR Sensors via programs “P_Avoider-1tskx” to “P_Avoider-4b.tskx” (Slides 43-50, Videos 3.11 to 3.15 and Section 3.4). This section also illustrates the effects of using different programming structures (IF-ELSE-IF, Parallel IFs with Default Action, Parallel LOOPs with Default Action) on the resulting run-time behaviors of the same physical robot.
c) Next using a maze, the student can explore and figure out why the “Avoider” codes can help this “Obstacle-Avoiding” Robot navigate through a maze (Slides 51-52).
5) Learning about Remote Control Behavior (Part 1) – still using Avoider Robot:
a) Learn how to use the flag “Remocon Data Received” and how to process the received Remocon packet “Remocon RXD”, when the user pushes only 1 button at a time via the Virtual RC-100 Controller (Slides 53-57, programs "P_RC_Basics1.tskx” and “P_RC_Basics2.tskx”, Video 3.19 and Section 3.6.1).
b) Next the students are presented with RC Programming Challenge 1 (Slide 58).
c) If some students finish Challenge 1 early, they are directed to take on Challenge 2 next (Slide 59).
d) Also, for early-finishers possessing compatible mobile devices, the instructor would show them how to pair their bots with their mobile devices and how to use the 3 versions of the “Mobile” Virtual Controller: Buttons, Joy Stick and Tilt Sensor (Slide 60).
e) Before the Day-1 class ends, students are shown different wheel designs for a CarBot that they are encouraged to work on at home (Video 5.1). The main criterion is that no part should block the NIR Sensor array (Slide 61). This CarBot will be used for Day 2 training.
6) Learning about Remote Control Behavior (Part 2) – using CarBot:
a) RC with Multiple Buttons, requiring knowledge how to filter out specific information about the button(s) of interest to the program designer (Slides 65-67, Video 3.20 and Section 3.6.1).
b) The program “P_RC-MultiDirectionsSpeeds.tskx” allows the user to combine Directional Buttons (such as “U” & “R” at the same time to obtain a wider right turn with the robot) or to change the robot’s speed via pressing on Buttons “1” or “3” on the fly (Slides 68-69, Video 3.21 and Section 3.6.2).
7) Autonomous Line Tracking & Obstacle Avoidance – using CarBot:
a) Evaluation of NIR Sensors responses to an 8-track course (Slides 70-71 and Section 3.7).
b) Design of Line Following algorithm based on results from previous step a), yielding the solution “P_LineFollower.tskx” (Slide 72) and students check out its run-time performances on several black-track designs (Slide 73 and Video 3.27).
c) Adding “Obstacle Avoidance” capability to this solution to obtain “P_LineFollower_ObstacleAvoider.tskx” (Slides 74-75, Video 3.27 and Section 3.7). Students check out its run-time performances on several black-track designs (Slide 76).
8) Student Build Competition Robot,
while Instructor demonstrates the 4-bar Linkage Concept to obtain “walking” robots (Slides 78-86, Videos 5.2 to 5.6).
(Usually, on Day 2, we reach lunch time around this spot and the students take a 1-hour lunch break).
9) Student continue building and testing their Competition Robot,
while the instructor shows the remaining students how to pair their bots with their mobile devices and how to use the 3 versions of the “Mobile” Virtual Controller: Buttons, Joy Stick and Tilt Sensor (Slide 60).
10) Sumo Bot Competition among student robots:
a) Individual-combat elimination tournament.
b) Team-based competition.
c) Battle Royale where all robots participate and the last bot still operational wins!