
Introduction to Mobile Robotics
Apply
Field of studies
- Robotics
- Technology and Traffic
Type of education
- Open University
Academic level
- Bachelor Level Studies - EQF 6
Teaching language
- English
Campus
- Online
Teaching format
- Online Learning
Objective
Introduction to Mobile Robotics is a hands-on introductory course where you learn programming by controlling a real robot remotely. You will write simple Python code and immediately see the results as a small "moon rover" robot moves on a lunar-themed track in HAMK’s robotics lab (Riihimäki campus).
The hardware is real – the rover sits on a camera-monitored track and responds to each line of code you send. This beginner-friendly course (no prior coding experience needed) focuses on practical learning: you start with basic movements and gradually take on more complex tasks like reading sensors and guiding the robot through a course. By the end, you will understand how motors work, how sensors perceive the environment, and how control logic can make a robot move with purpose.
In short, you’ll learn core robotics concepts in a fun, interactive way, and see how your software code translates into real-world robot actions.
Content
The course covers fundamental topics in programming and robotics, introduced step by step. Key topics and modules include:
- Introduction to mobile robots and remote labs: Getting familiar with the robot platform, the remote laboratory environment, and the lunar themed test track.
- Robot motion and navigation basics: Controlling forward backward and rotational movement, combining commands into routes, and navigating between way points.
- Programming foundations for robotics: Using Python variables basic data types functions loops and conditionals to define robot behavior.
- Structured robot control with functions and lists: Creating reusable movement functions, storing routes and waypoints in lists, and iterating over them to execute systematic navigation patterns such as patrols and grid based surveys.
- Sensors and robot perception: Reading data from the line sensor and color sensor, understanding sensor arrays and thresholds, and detecting features on the track.
- Decision making and reactive behavior: Using conditional logic to make decisions based on sensor input.
- Autonomous line following: Implementing simple autonomous behaviors where the robot continuously reads sensors and adjusts motor output.
- Data handling logging and debugging: Collecting mission data, formatting status messages, logging robot actions, and handling errors.
- Integrated robot missions and final project: Combining movement sensors control logic and feedback into a complete navigation mission.
Throughout these topics, the emphasis is on learning by doing – each concept is tied to a practical task with the robot, so you immediately apply what you learn.
Schedule
The course is structured into seven sections that follow the progression from manual control to autonomous mobile robotics missions. Each section combines work with real robot hardware and Python based control logic.
Section 1. Manual Control and Python Basics
You get familiar with the remote robotics lab, the robot hardware, and the lunar themed test track. You manually drive the robot forward, backward, and turn using basic commands. You learn how to run Python scripts, import the robot library, use parameters, and write simple sequential programs that directly control robot movement.
Section 2. Loops, Functions, and Structured Navigation
You make the robot perform repeated patrol routes and structured navigation tasks. You create your own movement functions, use loops to repeat actions, and store routes and way points in lists. The focus is on building reusable robot behaviors rather than single commands.
Section 3. Sensors and Basic Perception
You work with the robot’s line sensor and color sensor to understand how the robot perceives its environment. You read sensor values, process them using thresholds, and make simple decisions based on sensor input. LEDs are used as visual feedback to show sensor states and robot decisions.
Section 4. Complex Maneuvers and Multiple Sensors
You program the robot to perform more complex motion patterns such as arcs and combined maneuvers. You use data from multiple sensors at the same time and combine sensor input with movement logic. You also work with robot objects and structured code to keep programs clear and maintainable.
Section 5. Autonomous Line Following
You build an autonomous line following robot using simple control logic. The robot continuously reads sensor data and adjusts motor output while moving. You improve the behavior by testing different sensor interpretations, movement parameters, and logic structures to achieve smoother and more reliable navigation.
Section 6. Error Handling, Logging, and Debugging
You run longer robot missions where unexpected sensor values or software errors may occur. You learn how to read error messages, use try except blocks, log robot actions, and debug programs by analyzing robot behavior and terminal output.
Section 7. Integration and Final Mission
You design and execute a final mobile robotics mission that integrates movement, sensors, decision making, and feedback. You plan the mission structure, organize your code, and run a complete navigation task similar to a certification style test for a mobile robot navigation system.
Teaching methods
This is an eLearning course, that you can do in your own pace. All materials and excercises can be found from the online learning platform. During the course you will learn to control a real mobile robot that is situated in HAMK's Riihimäki campus. You can see how your program works by following the robot via a video camera.
Learning material
You will be provided with comprehensive learning materials through an online platform. These resources include:
- Online platform access: All programming is done through a browser-based interface on the OnDroid platform (ondroid.org). This platform connects you to the remote robot. You write and run code online, and the robot’s live camera feed lets you see the results instantly. (No software installation is required on your computer.)
- Instructional videos: Each module features short, clear video tutorials that introduce new concepts and demonstrate how to perform the robot tasks.
- Guides and examples: Step-by-step lesson texts and example code are provided for each topic. These guides explain the programming concepts and show sample code for controlling the robot, which you can study and modify.
- Assignments and exercises: There are practical exercises with every lesson. After learning a concept, you’ll complete a small coding task (for example, making the robot move a certain pattern or read a sensor value). The platform provides instant feedback on your code – you can immediately see if your approach works by observing the robot’s behavior, and you can adjust your code accordingly.
All learning materials are in English, and they are designed to be clear and accessible for beginners.
Class schedule
The required amount of time to complete the course varies according to your personal qualities and prior knowledge. The estimated workload for a student, who is not familiar with mobile robots and programming is about 80 hours. You may study in your own pace, but we recommend that you proceed in the order that is outlined in the online learning environment.
Cooperation with the business sector
The course is developed and will be implemented with a robotics company RobotX Oy.
Additional info
You can register for the study module of the Open UAS on the HAMK website. Please note, that enrolling for open studies requires a Finnish personal identity number.
The Open UAS tuition fee is 15 euros/credit, and you must pay the fee in full when registering. Registrations are binding, so please note the cancellation conditions of the Open UAS. More information about Open UAS studies, registration and fees can be found at https://www.hamk.fi/avoin
Evaluation criteria
1-5
Terms and conditions,
Open UAS
By registering for the training, you accept the cancellation policy.
- Cancellations must always be notified by email to studentservices@hamk.fi (Please note that during the summer and Christmas holidays, processing may be delayed).
- Cancellations can be made free of charge at least 14 days before the start of the course.
- No refund will be made if you are less than 14 days away from the start of your studies, fail to arrive for your studies or interrupt the studies you have started.
- If you are selected as a degree student before you start your open university studies, you may be entitled to a full or partial refund of the tuition fee. In this case, please make your withdrawal as soon as possible by e-mail to studentservices@hamk.fi.
- HAMK may cancel your studies, for example, due to low enrolment. Other changes (e.g. changes in timetable, teachers or places) are also possible.
Contact information
Ask about registration and practical arrangements: openuas@hamk.fi
For more information on the content of the studies, please contact the course teacher. Staff email addresses are firstname.lastname(at)hamk.fi