 Robot Operating System 2 (ROS2) targets distributed real-time systems  . Especially in tight real-time control loops , latency in data processing and communication can lead to instabilities. As ROS2 encourages splitting of the data-processing pipelines into several modules, it is important to understand the latencyimplications of such modularization . In this paper, we investigate the end-to-end latency of ROS2 data-processing pipeline with different Data Distribution Service (DDS) middlewares. In addition, we profile the ROS2 stack and point out latency bottlenecks. Our findings indicate that end-to-end latency strongly depends on the used DDS middleware. Moreover, we show that ROS2 can lead to 50\% latency overhead compared to using low-level DDS communications. Our results imply guidelines for designing modular ROS2 architectures and indicate possibilities for reducing the ROS2 overhead.
The Robot Operating System 2 (ROS2) targets distributed real-time systems and is widely used in the robotics community . Especially in these systems , latency in data processing and communication can lead to instabilities. Though being highly configurable with respect to latency, ROS2 is often used with its default settings . In this paper, we investigate the end-to-end latency of ROS2 for distributed systems with default settings and different Data Distribution Service (DDS) middlewares. In addition, we profile the ROS2 stack and point out latency bottlenecks. Our findings indicate that end-to-end latency strongly depends on the used DDS middleware. Moreover, we show that ROS2 can lead to 50\% latency overhead compared to using low-level DDS communications. Our results imply guidelines for designing distributed ROS2 architectures and indicate possibilities for reducing the ROS2 overhead.
A
The
A
and is widely used in the robotics community
R
tight real-time control loops
these systems
R
As
Though being highly configurable with respect to latency,
R
encourages splitting of the data-processing pipelines into several modules, it is important to understand the latencyimplications of such modularization
is often used with its default settings
R
data-processing pipeline with
for distributed systems with default settings and
R
modular
distributed