In general, when we are developing complex robotics systems, not all resources are available all the time because of the cost or time required for preparing and performing experiments. Therefore, it is good practice to record the data of the experiment session for later analysis.
However, the process of saving experiment data and reproducing the experiment offline for development and analysis is not trivial. The ROS development environment provides powerful tools, also known as rosbag, to address such problems. This enables us to reproduce the experiment offline, with its real conditions on the robot such as the latency of transmitting messages being efficient, with a high bandwidth, and in an adequate and organized manner.
In this section, we will discuss how to use these ROS tools to save and playback data that is stored in bag files, a...