Reconciling {ROS} 2 with Classical Real-Time Scheduling of Periodic Tasks
The Robot Operating System 2 ({ROS} 2) is a widely used middleware that provides software libraries and tools for developing robotic systems. In these systems, tasks are scheduled by {ROS} 2 executors. Since the scheduling behavior of the default {ROS} 2 executor is inherently different from classical real-time scheduling theory, dedicated analyses or alternative executors requiring substantial changes to {ROS} 2 have been developed. In 2023, the events executor was introduced into {ROS} 2. It features an events queue and allows the possibility to make scheduling decisions immediately after a job is completed. In this paper, we show that with minor modifications of the events executor, a large body of research results from classical real-time scheduling theory becomes directly applicable to {ROS} 2. This enables analytical bounds on the worst-case response time and the end-to-end latency, outperforming bounds for the default {ROS} 2 executor in many scenarios. Our solution is easy to integrate into existing {ROS} 2 systems since it requires only minor modifications of the events executor, which is natively included in {ROS} 2. The evaluation results show that our {ROS} 2 events executor with minor modifications can have significant improvement in terms of dropped jobs, worst-case response time, end-to-end latency, and performance compared to the default {ROS} 2 executor.
- Veröffentlicht in:
Proceedings of the 31st Real-Time and Embedded Technology and Applications Symposium ({RTAS}) - Typ:
Inproceedings - Autoren:
- Jahr:
2025 - Source:
https://www.computer.org/csdl/proceedings-article/rtas/2025/434000a177/27kgSMKg28E
Informationen zur Zitierung
: Reconciling {ROS} 2 with Classical Real-Time Scheduling of Periodic Tasks, Proceedings of the 31st Real-Time and Embedded Technology and Applications Symposium ({RTAS}), 2025, 177--189, May, {IEEE} Computer Society, https://www.computer.org/csdl/proceedings-article/rtas/2025/434000a177/27kgSMKg28E, Teper.etal.2025a,
@Inproceedings{Teper.etal.2025a,
author={Teper, Harun; Bell, Oren; Günzel, Mario; Gill, Chris; Chen, Jian-Jia},
title={Reconciling {ROS} 2 with Classical Real-Time Scheduling of Periodic Tasks},
booktitle={Proceedings of the 31st Real-Time and Embedded Technology and Applications Symposium ({RTAS})},
pages={177--189},
month={May},
publisher={{IEEE} Computer Society},
url={https://www.computer.org/csdl/proceedings-article/rtas/2025/434000a177/27kgSMKg28E},
year={2025},
abstract={The Robot Operating System 2 ({ROS} 2) is a widely used middleware that provides software libraries and tools for developing robotic systems. In these systems, tasks are scheduled by {ROS} 2 executors. Since the scheduling behavior of the default {ROS} 2 executor is inherently different from classical real-time scheduling theory, dedicated analyses or alternative executors requiring substantial...}}