Kies de Nederlandse taal
Course module: 202200108
Software Development for Robotics
Course info
Course module202200108
Credits (ECTS)5
Course typeCourse
Language of instructionEnglish
Contact J.F. Broenink
Contactperson for the course J.F. Broenink
Examiner J.F. Broenink
Academic year2022
Starting block
Application procedureYou apply via OSIRIS Student
Registration using OSIRISYes
After completing this course, the students are able to write programs in an object-oriented manner. More specifically:
  • develop practical experience (C++) in object orientation, data structures, algorithm efficiency, and multithreading
  • develop essential experience with modern robot-software libraries (e.g., ROS2) and model-driven code generation
  • design, develop, test, and evaluate robot-control software using the mentioned libraries and tool
This course has two parts:
  • Part I: Generic software concepts: on software concepts such as object-oriented programming, data structures, algorithm efficiency, and multithreading.
  • Part II: Component-based software development for robot control: on writing software for controlling robots, using a combination of robot-software libraries (ROS2) and model-driven robot-software development (i.e., automatically generated code), to be implemented on a simulated robotic system.
Homework assignments yield hands-on experience for both parts. Weekly tutoring sessions are scheduled for support with the homework assignments. The programming language used in this course is C++.

Students work in teams of two on 5 weekly assignments and 1 larger, final assignment, which are all graded. The final grade is a weighted average of these grades.
The lectures and weekly assignments are the same as the Programming 2 for EE course (part of module 7b, Network Systems). The final assignment is larger and different than the one in the EE course.

Entry Requirement
Cannot be taken next to 202200109 Advanced Software Development for Robotics. 
Assumed previous knowledge
• Basic programming knowledge in a C-like language (variables, functions, loops, pointers)
Participating study
Master Embedded Systems
Participating study
Master Biomedical Engineering
Participating study
Master Robotics
Required materials
P.J. Deitel & H.M. Deitel, (2017), C++ how to program, International Edition, 10e, Pearson Education, ISBN: 978-1292153346.
Recommended materials
Instructional modes


Self study with assistance

Self study without assistance


Kies de Nederlandse taal