Programming for Robotics (ROS) Course 1
Channel: Robotic Systems Lab: Legged Robotics at ETH Zürich
Date: 2017-02-20

The slides are available here:
https://www.ethz.ch/content/dam/ethz/special-interest/mavt/robotics-n-intelligent-systems/rsl-dam/ROS2017/lecture1.pdf

The recording of this course is part of the Programming for Robotics (ROS) Lecture at ETH Zurich:
http://www.rsl.ethz.ch/education-students/lectures/ros.html

Lecturers:
Péter Fankhauser, Dominic Jud, Martin Wermelinger

Course 1 covers following topics:
– ROS architecture & philosophy
– ROS master, nodes, and topics
– Console commands
– Catkin workspace and build system
– Launch-files
– Gazebo simulator

About the course:
This 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 architecture: Master, nodes, topics, messages, services, parameters and actions
– Console commands: Navigating and analyzing the ROS system and the catkin workspace
– Creating ROS packages: Structure, launch-files, and best practices
– ROS C++ client library (roscpp): Creating your own ROS C++ programs
– Simulating with ROS: Gazebo simulator, robot models (URDF) and simulation environments (SDF)
– Working with visualizations (RViz) and user interface tools (rqt)
– Inside ROS: TF transformation system, time, bags