
Learn Python by programming a real mobile robot. Start with movement commands, then use variables, functions, loops and lists to plan the robot's actions. Use line sensors and conditional logic to build a line follower, and improve its performance with proportional steering and adaptive speed.
Work through 21 activities in five blocks using a browser-based remote laboratory.
The robot laboratory at Karamalmi Campus
The physical robot used in this course is located at Metropolia University of Applied Sciences, Karamalmi Campus, in Espoo, Finland. You access the laboratory remotely through Moodle, so you can program the robot without travelling to the campus.
When you select Verify on robot, your program runs on the real robot in this laboratory. Use the camera recording and program output to observe its behaviour. Test in simulator provides a separate browser-based environment for practising your code.

A camera frame from a recorded robot run in the Metropolia course. This is the physical laboratory, not the simulator.
Jezero Rover Exploration. Develop the software for a research rover on the Metropolia teaching arena, inspired by exploration of Jezero crater on Mars. The black line, coloured zones and checkpoints are training markers; the robot senses surface contrast, not mineral composition.
- Teacher: Toni Spännäri
- Teacher: Dmitrii Spivak