Basics 2 Desktop Course

General info

Age groupFor students aged 10 years or older
PrerequisitesBasic computer skills and RoboMind Basics 1 Course
Materials Presentations for each week (PDF), presentation notes for the teacher (PDF), exercises for each week (PDF), hints with the exercises for the teacher (PDF), movies (MP4), maps with the exercises (MAP), script examples with the exercises (IROBO), and solutions of all the exercises for the teacher.
Duration7 complete lessons which take about 1.0-1.5 hours each. Exercises can be done at own pace, of course.
CT goal levelThe Basics 2 level will be reached after successful completion of all lessons in the course
ICT Curriculum UK: KS2,3 POS: 1.3 (a and b) 2.2 (b and c), 2.4 (a, b, and c), Computing programs of Study.
Please have a look at our Curriculum pages for more detailed information.

Goal

The aim is to gain insight into logic, automation, robotics and how a large problem can be solved by breaking it up into smaller pieces which can be solved more easily. These are main components of Computational Thinking which is an important skill students should have in order to be prepared for their future. By programming a virtual robot and in combination with the presentations included in the lessons they will gain direct insight into the operation of technical appliances as they are all around us.

These lessons introduce procedures and the use of randomness as a way to solve automation problems. In addition repeat loops and conditional statements are rehearsed and extended. The "if ... else ..." construct is extended to "if ... else if ... else". Conditions are extended to multiple conditions of the form "If (A and B) ...". Several quizzes have been added to the presentations to train the use of such constructs and to make sure everyone really understands it. To this end there is the "if-else” quiz in the presentation with Lesson 1, the "if-else-if” quiz in the presentation with Lesson 2, and the "if-this-and-that” quiz in the presentation with Lesson 5.

Overall Lessons 1 and 2 repeat and extend knowledge as acquired with the RoboMind course "Basics 1". Then procedures are introduced in Lesson 3, 4, and 5, each time from a different perspective. The aim is make students familiar with procedures, to show them how procedures can be used, and why and when procedures can be useful. Finally, in Lesson 6 and 7, the concept of randomness is introduced as a strategy to solve automation problems.

During the last lesson (Lesson 7, "Repairing roads") the students do a kind of 'masterpiece'. The problem is not very difficult, but involves using all they learned in the previous lessons. That is: procedures and double conditions and the randomness automation strategy.

General structure of the lessons

Every lesson starts with a short multimedia presentation in the classroom which highlights some aspects of what robots do and what their role is in society. In addition a brief explanation is given about the programming instructions used in the exercises and why these could be useful. This part takes about 15-20 minutes.

Next, the students will work for themselves with the virtual robot ‘Robo’ in RoboMind. They will be asked to let Robo do tasks as set out in the exercises. There should be no more than two students behind each computer.

It is important to let the students solve the problems mostly by themselves. Robo is a virtual robot, so you can try as often as you want, and you can never do wrong. This part takes about 45 minutes.

The more exercises a student finishes, the better. However, it does not matter for the series of lessons if not all exercises have been completed. For quick learners, we provide additional exercises toward the end of the programming activity, such that the smart ones do not get bored.

Content of the lessons

Lesson Content
More tracking and tracing This first lesson starts with some general repetition of using repeat loops and conditions. The robot has to follow a trail of white dots in several maps to get to the beacon. This scheme is then extended to a trail with white and black dots where the robot has to go a different direction. The final exercises are to follow a trail which is encoded with two white dots. The encoding is a sort of secret and students are to apply double conditions of the type if (A and B) … to solve it. This can be quite tricky and is only meant for the most advanced students.
Searching in mazes This lesson is about how to find beacons in an arbitrary maze. The students learn that if you keep the wall to your right hand side you will always find the beacon sooner or later. They will program this strategy themselves during the exercises. First they are asked to write down what the robot should do in every possible situation. Then they will slowly extend their program by adding new situations (conditions) to it in every next exercise. The structure of the program is already given to a large extent as the aim is mainly to train using if ... else if ... else ... structures and the associated conditions. For the most advanced students there is a final exercise where they will have to solve a maze with obstacles in it.
A secret language In this lesson procedures are introduced for the first time. Students are asked to make procedures which encode how to write the letters for 'A', 'P', and ‘L’ in a sort of secret language. They are then asked to let Robo write words with it. Writing in a secret language allows the procedures to be much simpler so they can concentrate on the use of procedures rather than on the contents. Otherwise it is also more fun  Writing words shows that procedures are very handy for sequencing. Otherwise it shows that you will only have to create a procedure once and from then on can reuse them any time. The overall aim is the introduction of the procedure and to show how it might be useful.
Drawing portraits In this lesson we will first make a robot portrait and then a whole series of portraits if there is any time left. In order to efficiently (re)use a procedure in sequences, it is important that you decide how the procedure ends: in what relative position and orientation should the robot be after the procedure has finished? It is important and necessary for the students to understand this in order to successfully solve the exercises. For the fastest there is again an additional exercise which is to create a new procedure that uses procedures itself and encodes drawing one complete robot portrait. With this procedure a whole series of robot portraits can then be drawn (a complete robot family portrait if you like).
Reading barcodes The task is to read the barcode from products on the conveyor belt in the supermarket. The barcode tells Robo what product it is and where to put it back. This is a somewhat different lesson in the sense that the whole program is already given. Only the procedure "putProductBack" is to be modified. Both the recognition of the barcode (double condition) and the put-back location have to be adjusted. This is done step-by-step with one new product introduced each time. The aim is to teach students how to read and understand a larger program in such a way that they are able to adjust it. At the same time they will see an example of how procedures can be used. For the fastest there is the possibility to make a mess of things in Robo’s supermarket ...
Vacuum cleaning In this lesson the notion of randomness is introduced as a strategy to solve automation problems. First randomness is explained and students are asked to make a sort of die with RoboMind. Students are asked to play dice with Robo several times and to write down how many eyes are thrown. This way they will get a little bit of insight into the concept of randomness. They will then use this to program Robo to find a beacon which is located in an arbitrary place. They will look at the number of steps it takes to find the beacon if they repeatedly run the program on the same map and see if this is always the same (no). Finally they are asked to automatically cleanup beacons with Robo which are randomly scattered on a large carpet. As an extra exercise the fastest students are asked to modify their program so that Robo will not collide with the wall anymore.
Repairing roads This is the this last lesson where student will do their ‘masterpiece’. The goal is to mark/repair holes in the road by placing beacons on top of them. The beacons and holes are randomly distributed. To solve the problem two procedures have to be programmed for finding and placing the beacons. Random search is needed to do this correctly. In addition double conditions are necessary to check that a hole does not already have a beacon on top. When successful, students will be able to let Robo automatically mark all holes with beacons.