Explorer: Travel movements
The lesson teaches how the eXperiBot moves, executes driving commands, and implements programs correctly.

Learn how to tell your eXperiBot where to go, how fast, and how long to drive.
Learning goals
Overall learning objective (overarching)
Students develop a functional program that allows the eXperiBot to navigate through space in a targeted manner. They use appropriate motor commands, perform various driving maneuvers, and understand the importance of clear and precise statements for programming.
Knowledge-related learning goals (cognitive)
Students will be able to…
name the motor control commands of the eXperiBot and describe their effects.
explain the technical terms “statement” and “sequence” and give an example of each from robot programming.
explain the importance of precise instructions for the correct execution of a program.
Skill-related learning goals (procedural)
Students will be able to…
create their own control program that allows the eXperiBot to follow a specified path safely and purposefully.
Plan, test, and revise a sequence of statements to identify and correct typical errors (e.g., incorrect order, inappropriate repetitions).
Use motor control commands so that the robot performs various driving maneuvers (e.g., turning, cornering, stopping, and evading).
Attitude-related learning goals (affective)
Students…
show perseverance and remain motivated when they fail by reflecting on and improving their programs.
work cooperatively in teams, give constructive feedback, and use it to optimize their programs.
Prior learning
The learners…
know that people program robots to perform tasks by running programs,
are familiar with the term “program” and its meaning,
are familiar with the term “algorithm”,
are familiar with the programming environment of the eXperiBot Blockly app.
Ideally, the following lesson should be completed in advance:
First steps (introduction to the programming environment).
Lesson planning
The lesson introduces the programming concepts of statements and sequences.
Introduction (approx. 10 minutes)
Method: Class discussion in plenary session
Phase 1: Discussion about robots in everyday life (5 minutes)
Stimulus question: Where do we encounter robots in everyday life?
Give examples: household robots, industrial robots, and service robots.
Work out together: Robots take on tasks that relieve humans.
Phase 2: Clarify the operating principle (3 minutes)
Guiding principle: Robots are programmed so that they can perform tasks.
Clarify: Without a program, there is no movement.
Relation to everyday life: How does a robot have to be programmed so that it can move around the room?
Phase 3: Introduction to the “Travel movements” lesson (2 minutes)
Formulate the task: Create a program that allows the eXperiBot to move around the room.
Independent study of the lesson (approx. 25 minutes)
Method: Independent programming on the robot
Learners complete the tasks in their preferred working method—step by step or independently—and at their own pace, depending on how many tasks they can complete.
The 25-minute time limit assumes that all students will meet the minimum requirements. They should complete all tasks, and they can tackle any additional tasks depending on their pace and the time available.
Suggested key questions for classroom discussion
Define the terms “statement” and “sequence” in your own words.
A statement is a single command that the robot executes (e.g., “Motor drive forward”).
The program executes statements sequentially. Several statements in sequence are called a sequence.
Learners should find their own words to show their understanding.
Give examples of statements and sequences from your Blockly program.
Learners give examples of statements, for example:
Learners give examples of a sequence, for example:
Learners should recognize and explain the difference between individual statements and a Sequence.
Explain why different sequences of statements result in different movements of the eXperiBot.
The order determines the sequence: if the turn comes before the stop, the robot will turn in the wrong place. An incorrect order will result in unexpected behavior.
Understand the logical structure of algorithms.
Apply your knowledge: Where do robots need a fixed sequence of statements in everyday life?
Serving robots in restaurants, warehouse robots, vacuum cleaner robots.
They require fixed procedures to work reliably and not forget any steps.
Apply what you have learned to real-life contexts to illustrate its relevance.
Ideas for classroom discussions
Comparison: humans vs. robots
Stimulus question:
How do humans and robots differ in the way they perform tasks?
Discussion points:
Humans can react flexibly, while robots strictly follow their programming. What happens when a robot does not understand a statement?
Objective:
To illustrate why precise programming is necessary
Error analysis and debugging
Stimulus question:
What happens when a statement is missing or in the wrong order?
Teacher activities:
Show an incorrect Blockly code to illustrate this.
Discussion points:
What happens when a statement is missing?
How can you recognize errors in the program?
How can you systematically fix errors?
Why is debugging an important skill?
Objective:
To understand the importance of sequence and debugging processes.
Safety aspects in robotics
Stimulus question:
Why is correct sequencing particularly critical for industrial robots?
Discussion points:
What are the risks of incorrect programming?
What safety mechanisms are there?
Objective:
To illustrate the relevance of programming for safety.
Creative extension
Stimulus question:
How could a robot recognize that the sequence is incorrect?
Discussion points:
How could a robot recognize that the sequence is incorrect?
What role do sensors play?
How do conditions (if queries) help?
Objective:
Outlook on more complex control structures (conditions, loops).
Model solutions
Unit 1
No program code is required for this unit. You must simply prepare the eXperiBot for operation, which means:
Assemble the eXperiBot completely
Establish a connection to the app
Unit 2
You can customize the values for time, speed, degree, and radius individually.
Solution file to download and import into the eXperiBot Blockly app.
Bonus units
We do not provide suggested solutions for these units because they require individual approaches. You can immediately see whether your solution is correct in the eXperiBot’s movement.
As a general rule, control the eXperiBot using only blocks from the “Motor” category.
Lesson contents
Unit 1
Connect your eXperiBot to the app.
Proceed as follows:
Switch on your eXperiBot.
Then press the “Connect” button at the top right of the screen. Follow the instructions to connect your eXperiBot to the app.



You’ve assembled your eXperiBot and connected it to the app—now you’re ready to go!
Unit 2
Let your eXperiBot move forward at medium speed for 2 seconds. Select the following block from the “Motor” category.
Connect this block to the “start program” block.
Test your program.


Your program tells your eXperiBot how to move.
When you tell your eXperiBot what to move, that is a statement.
A statement is a command.
The program executes statements one after the other.
Now your eXperiBot should drive through the room for longer, but slower. Change the time and speed. Then test your program.

If you want to change the time, you must enter a new number in the following programming block.
Drive your eXperiBot a short distance.
First, drive your eXperiBot forward again.
Then, have your eXperiBot make a right turn and a left turn.
After that, have your eXperiBot continue driving forward.
Complete your program. To do this, select the appropriate blocks from the “Motor” category.

Test your program.

Several instructions in succession are called a sequence.
Try out how your eXperiBot moves.
Drive fast and slow.
Drive short and long distances.
Test small and large turns.
Adjust the degree and radius in the block.
Degree: Specifies how far your eXperiBot turns. A small number means a small turn. A large number means a large turn.
Radius: Determines how tight or wide the curve is. A small radius means a tight curve. A large radius means a wide curve.

Your eXperiBot can now drive fast or slow and make large or small turns.
Bonus unit 1
Work with a partner.
Check out the code together.
Explain to each other how the eXperiBot moves.
Copy the code into your editor and run your eXperiBot.
Copy the code into the editor.
Start the program and let your eXperiBot run.

Check your result: Does your eXperiBot drive as described?
If not, change the blocks and test again.

You can read the program code of your eXperiBot and describe the statements.
Bonus unit 2
Work with a partner.
Person A: Think about how you want the eXperiBot to drive. Describe your statements to Person B.
Direction: forward or backward?
Turn: right or left?
Speed: fast or slow?
Duration: how long should it drive?
Person B: Select the appropriate blocks from the “Motor” category and drag them into the editor so that the eXperiBot can execute the statements.

Test together: Does your eXperiBot execute the statements as you planned?

If not, discuss which blocks you need to change. Then adjust the blocks and test your program again.
Now switch roles.
Person B: Think about how you want the eXperiBot to move. Describe your statements to Person A.
Person A: Find the appropriate blocks and drag them into the editor.
Test again to see if your eXperiBot is doing everything correctly.

Your eXperiBot follows your statements.
Bonus unit 3
Select a starting point and a destination point on the floor of your room. The destination point should be slightly further away from the starting point.
Place your eXperiBot at the starting point.

Think about what statements your eXperiBot needs to drive to its destination.
Select the appropriate blocks from the “Motor” category and drag them into the editor.

Start your program and test whether your eXperiBot reaches the target.

Does your eXperiBot reach the destination?
If your eXperiBot does not stop at the target, change your code. Test again until your program works and your eXperiBot reaches the target.
Check whether your eXperiBot drives long enough.
Adjust the time so that it reaches the destination.

Your eXperiBot has reached its destination.
Bonus unit 4
Work with a partner.
You will need two eXperiBots for this Unit.
Do you only have one eXperiBot? Then you can run it twice. Stop the time while running. This way you can compare the times.
Choose a starting point and a destination on the floor of your room. The destination should be further away from the starting point.

The eXperiBot race
Place your eXperiBots at the starting line and start the race.
Program your eXperiBots with the appropriate statements so that they drive from the starting line to the finish line.
Use blocks from the “Motor” category.
Test your program.

Who will win the race? Which eXperiBot is the fastest?

Your eXperiBot has completed the race!
