Chapter 1, Getting Started with ROS, covers the installation of ROS on various platforms, including desktop systems, virtual machines, Linux containers, and ARM-based embedded boards.
Chapter 2, ROS Architecture and Concepts – I, explains the core concepts of ROS and how to work with the ROS framework.
Chapter 3, ROS Architecture and Concepts – II, discusses the advanced concepts of ROS, such as parameter serve, actionlib, pluginlib, nodelets, and Transform Frame (TF).
Chapter 4, ROS Visualization and Debugging Tools, discusses the various debugging and visualization tools available in ROS, such as gdb, valgrind, rviz, rqt, and rosbag.
Chapter 5, Accessing Sensors and Actuators through ROS, discusses interfacing hardware components, such as sensors and actuators, with ROS. It also covers interfacing sensors using I/O boards such as Arduino and Raspberry Pi.
Chapter 6, ROS Modeling and Simulation, introduces modeling of physical robots and simulation of virtual environments using Gazebo. Modeling of mobile robots and robotic arms is discussed.
Chapter 7, Mobile Robot in ROS, discusses one of the most powerful features of ROS—the Navigation Stack—which enables a mobile robot to move autonomously.
Chapter 8, The Robotic Arm in ROS, explains how to create and configure a MoveIt! package for a manipulator robot and perform motion planning and grasping.
Chapter 9, Micro Aerial Vehicle in ROS, introduces the Micro Aerial Vehicle (MAV) simulation framework (RotorS) to perform research and development on MAVs, which also includes autonomous navigation framework along with ORB SLAM and PTAM.
Chapter 10, ROS-Industrial (ROS-I), discusses the ROS-Industrial package, which comes with a solution to interface with and control industrial robot manipulators. We use its powerful tools, such as MoveIt!, Gazebo, and RViz. This chapter also discusses the future of ROS-Industrial: hardware support, capabilities, and applications.