Robot Operating System (ROS) pp 29-50
Hands-on Learning of ROS Using Common Hardware
Enhancing the teaching of robotics with hands-on activities is clearly beneficial. Yet at the same time, resources in higher education are scarce. Apart from the lack of supervisors, there are often not enough robots available for undergraduate teaching. Robotics simulators are a viable substitute for some tasks, but often real world interaction is more engaging. In this tutorial chapter, we present a hands-on introduction to ROS, which requires only hardware that is most likely already available or costs only about 150$. Instead of starting out with theoretical or highly artificial examples, the basic idea is to work along tangible ones. Each example is supposed to have an obvious relation to whatever real robotic system the knowledge should be transfered to afterwards. At the same time, the introduction covers all important aspects of ROS from sensors, transformations, robot modeling, simulation and motion planning to actuator control. Of course, one chapter cannot cover any subsystem in depth, rather the aim is to provide a big picture of ROS in a coherent and hands-on manner with many pointers to more in-depth information. The tutorial was written for ROS Indigo running on Ubuntu Trusty (14.04). The accompanying source code repository is available at https://github.com/andreasBihlmaier/holoruch.