IEEE Access (Jan 2020)
Real-Time Characteristics of ROS 2.0 in Multiagent Robot Systems: An Empirical Study
Abstract
Due to its ease of use and flexibility, the robot operating system (ROS) is increasingly becoming the most popular middleware for robot applications, even in multiagent systems. Since ROS 1.0 does not satisfy real-time requirements, ROS 2.0 was developed, and it improved the communication stack with the real-time data distribution service (DDS) protocol. However, the actual performance level to be expected is still unknown and can largely depend on the operating system and the kernel being used, the DDS distribution, and the overall software load of the system. In this article, we present an empirical study that evaluates the real-time performance of ROS 2.0 in both the system and communication software layers. In the system layer, the deterministic behavior of the ROS 2.0 nodes is thoroughly observed with regard to whether the tasks are schedulable and can function within the specified temporal deadline. In the communication layer, special attention is devoted to the rate of data loss and the overall latency of messages between nodes. Experiments are performed in various working conditions; for example, the system load is increased to define the real-time performance of the tasks. For reference, the results are compared with the those from the traditional ROS variation. Moreover, we implement a multiagent service robot system to verify the suitability of ROS 2.0 for real-world applications. Our results show that the application of ROS 2.0 is more suitable than that of ROS 1.0 in terms of real-time performance.
Keywords