Summary
This chapter has described ROS interfaces for a number of external devices used for robot control. The advantages of ROS extend to these types of interfaces, as it is evident in the common method and message structure used across similar devices. For game controllers, a custom interface was created using an Xbox 360 controller for the Turtlesim simulation. The buttons and axes for the Xbox 360 controller were mapped so that we could select a button and axes to use for Turtlesim control. A Python script was shown that caused the turtle to move when a joystick was moved or a certain button was pressed.
Android devices can also provide a common ROS interface for controlling robots. We looked at some instructions for installing the software and tools to set up a ROS-Android development environment. We also looked at the key terminology for Android development.
Embedded systems such as the Arduino and Raspberry Pi are often used for controlling robots and interfacing to sensors. ROS nodes...