Real-time control architecture based on Xenomai using ROS packages for a service robot

Raimarius Delgado, Bum Jae You, Byoung Wook Choi

Research output: Contribution to journalArticlepeer-review

34 Scopus citations

Abstract

This paper proposes a real-time (RT) control architecture based on Xenomai, an RT embedded Linux, to control a service robot along with non-real-time (NRT) robot operating system (ROS) packages. Most software, including device drivers and ROS, are developed to operate under the standard Linux kernel that does not provide RT guarantees. Standard Linux system calls in an RT context stimulates mode switching, resulting in non-deterministic responses and stability problems such as priority inversion and kernel panic. This paper overcomes such issues through a communication interface between RT and NRT tasks, termed cross-domain datagram protocol. The proposed architecture supports priority-based scheduling of multiple tasks while exposing an interface compatible with the original ROS packages. Moreover, it enables standard device driver operation inside RT tasks without developing RT device drivers that requires significant amount of development time. Feasibility is proven by implementation on a Raspberry Pi 3, a low-cost open embedded hardware platform, and conducted various experiments to analyze its performance and applied it to a service robot using ROS navigation packages. The results indicate that the proposed architecture can effectively provide an RT environment without stability issues when utilizing ROS packages and standard device drivers.

Original languageEnglish
Pages (from-to)8-19
Number of pages12
JournalJournal of Systems and Software
Volume151
DOIs
StatePublished - May 2019

Keywords

  • Cross-domain datagram protocol
  • Real-time control architecture
  • Robot operating system
  • Service mobile robots
  • Xenomai

Fingerprint

Dive into the research topics of 'Real-time control architecture based on Xenomai using ROS packages for a service robot'. Together they form a unique fingerprint.

Cite this