From 2 November 2020, the autumn semester 2020 will take place online. Exceptions: Courses that can only be carried out with on-site presence.
Please note the information provided by the lecturers via e-mail.

151-0662-00L  Programming for Robotics - Introduction to ROS

SemesterSpring Semester 2017
LecturersM. Hutter
Periodicityyearly recurring course
Language of instructionEnglish
CommentNumber of participants limited to 70.

This course targets senior Bachelor students as well as Master students focusing on Robotics, Systems, and Control. Priority is given to people conducting a project work in the field.


AbstractThis course gives an introduction to the Robot Operating System (ROS) including many of the available tools that are commonly used in robotics. With the help of different examples, the course should provide a good starting point for students to work with robots. They learn how to create software including simulation, to interface sensors and actuators, and to integrate control algorithms.
Objective- ROS Basics: Navigating in Linux and ROS, package creation and compilation
- ROS Basics: Publisher and subscriber, services, actions
- Hardware interfaces, static and dynamic transforms
- Introduction to GAZEBO simulator, AR tag recognition
- (optional) Localization & mapping
- (optional) Navigation, ROS control
- Good practice in programming
ContentThis course consists of a guided tutorial and independent exercises with different robots (i.e. mobile robot, industrial robot arm,...). You learn how to setup such a system from scratch using ROS, how to interface the individual sensors and actuators, and finally how to implement first closed loop control systems.
Lecture notesslides, homepage
Literatureslides, homepage
Prerequisites / NoticeC++ programming basics, Linux Basics