The rclc Executor: Domain-specific deterministic scheduling mechanisms for ROS applications on microcontrollers: work-in-progress
Title | The rclc Executor: Domain-specific deterministic scheduling mechanisms for ROS applications on microcontrollers: work-in-progress |
Publication Type | Conference Paper |
Year of Publication | 2020 |
Authors | Staschulat, J., Lütkebohle, I., Lange, R. |
Conference Name | 2020 International Conference on Embedded Software (EMSOFT) |
Date Published | Sept. 2020 |
Publisher | IEEE |
ISBN Number | 978-1-7281-9195-9 |
Keywords | Human Behavior, human factors, microcontrollers, policy-based governance, pubcrawl, real-time operating systems, resilience, Resiliency, robot operating systems, Robotics, scheduling, security |
Abstract | Robots are networks of a variety of computing devices, such as powerful computing platforms but also tiny microcontrollers. The Robot Operating System (ROS) is the dominant framework for powerful computing devices. While ROS version 2 adds important features like quality of service and security, it cannot be directly applied to microcontrollers because of its large memory footprint. The micro-ROS project has ported the ROS 2 API to microcontrollers. However, the standard ROS 2 concepts are not enough for real-time performance: In the ROS 2 release "Foxy", the standard ROS 2 Executor, which is the central component responsible for handling timers and incoming message data, is neither real-time capable nor deterministic. Domain-specific requirements of mobile robots, like sense-plan-act control loops, cannot be addressed with the standard ROS 2 Executor. In this paper, we present an advanced Executor for the ROS 2 C API which provides deterministic scheduling and supports domain-specific requirements. A proof-of-concept is demonstrated on a 32-bit microcontroller. |
URL | https://ieeexplore.ieee.org/document/9244014 |
DOI | 10.1109/EMSOFT51651.2020.9244014 |
Citation Key | staschulat_rclc_2020 |