Budget-based real-time Executor for Micro-ROS

05/12/2021
by   Jan Staschulat, et al.
0

The Robot Operating System (ROS) is a popular robotics middleware framework. In the last years, it underwent a redesign and reimplementation under the name ROS 2. It now features QoS-configurable communication and a flexible layered architecture. Micro-ROS is a variant developed specifically for resource-constrained microcontrollers (MCU). Such MCUs are commonly used in robotics for sensors and actuators, for time-critical control functions, and for safety. While the execution management of ROS 2 has been addressed by an Executor concept, its lack of real-time capabilities make it unsuitable for industrial use. Neither defining an execution order nor the assignment of scheduling parameters to tasks is possible, despite the fact that advanced real-time scheduling algorithms are well-known and available in modern RTOS's. For example, the NuttX RTOS supports a variant of the reservation-based scheduling which is very attractive for industrial applications: It allows to assign execution time budgets to software components so that a system integrator can thereby guarantee the real-time requirements of the entire system. This paper presents for the first time a ROS 2 Executor design which enables the real-time scheduling capabilities of the operating system. In particular, we successfully demonstrate the budget-based scheduling of the NuttX RTOS with a micro-ROS application on an STM32 microcontroller.

READ FULL TEXT

page 1

page 3

research
12/07/2015

Real-Time scheduling: from hard to soft real-time systems

Real-time systems are traditionally classified into hard real-time and s...
research
03/03/2019

RT-Gang: Real-Time Gang Scheduling Framework for Safety-Critical Systems

In this paper, we present RT-Gang: a novel real-time gang scheduling fra...
research
05/16/2022

Analyzing FreeRTOS Scheduling Behaviors with the Spin Model Checker

FreeRTOS is a real-time operating system with configurable scheduling po...
research
11/20/2018

Optimizing System Quality of Service through Rejuvenation for Long-Running Applications with Real-Time Constraints

Reliability, longevity, availability, and deadline guarantees are the fo...
research
12/05/2019

Probabilistic Dynamic Hard Real-Time Scheduling in HPC

Industry 4.0 is changing fundamentally the way data is collected, stored...
research
06/02/2023

Constraint-Guided Test Execution Scheduling: An Experience Report at ABB Robotics

Automated test execution scheduling is crucial in modern software develo...
research
12/21/2021

A Solution to the Generalized ROS Hardware IO Problem – A Generic Modbus/TCP Device Driver for PLCs, Sensors and Actuators

The Robot Operating System (ROS) provides a software framework, and ecos...

Please sign up or login with your details

Forgot password? Click here to reset