The ring-buffer ROS2 executor: a novel approach for real-time ROS2 Space applications

Pablo Ghiglino, Guillermo Sarabia
{"title":"The ring-buffer ROS2 executor: a novel approach for real-time ROS2 Space applications","authors":"Pablo Ghiglino, Guillermo Sarabia","doi":"10.1109/SCC57168.2023.00021","DOIUrl":null,"url":null,"abstract":"ROS2 (Robot Operating System Version 2) is an open-source software framework and suite of libraries that facilitates robotics application development and multi-core processing. ROS2 is becoming the de-facto standard for autonomous robotics application and recently. On the other hand, with the support of NASA and Blue Origin, Space-ROS -a Space applications specialized implementation of ROS2- is also starting to be used for Space autonomous applications, like landers and space robotics. ROS was designed to simplified and reduce the development time and effort required to write robotics applications and ROS2 kept this focus plus the main goal of enabling real-time robotics. In the initial design of ROS2, processing performance was given low priority, and, while an effort has been made to increase processing performance, it is not uncommon to face long latency in receiving sensor data or even non-negligible data losses. The research presented here shows a ROS2 executor implemented based on a lock-free ring-buffer that can not only increase by significantly the data processing rate with respect to the built-in ROS2 executors, but also reduce the processing consumption substantially. Successful performance results of this novel ring-buffer ROS2 executor are presented here and validated in several Space computers and the de-facto real-time benchmarking standard: the Raspberry Pi4 with Real-time Linux as operating system.","PeriodicalId":258620,"journal":{"name":"2023 IEEE Space Computing Conference (SCC)","volume":"23 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2023-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2023 IEEE Space Computing Conference (SCC)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SCC57168.2023.00021","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

ROS2 (Robot Operating System Version 2) is an open-source software framework and suite of libraries that facilitates robotics application development and multi-core processing. ROS2 is becoming the de-facto standard for autonomous robotics application and recently. On the other hand, with the support of NASA and Blue Origin, Space-ROS -a Space applications specialized implementation of ROS2- is also starting to be used for Space autonomous applications, like landers and space robotics. ROS was designed to simplified and reduce the development time and effort required to write robotics applications and ROS2 kept this focus plus the main goal of enabling real-time robotics. In the initial design of ROS2, processing performance was given low priority, and, while an effort has been made to increase processing performance, it is not uncommon to face long latency in receiving sensor data or even non-negligible data losses. The research presented here shows a ROS2 executor implemented based on a lock-free ring-buffer that can not only increase by significantly the data processing rate with respect to the built-in ROS2 executors, but also reduce the processing consumption substantially. Successful performance results of this novel ring-buffer ROS2 executor are presented here and validated in several Space computers and the de-facto real-time benchmarking standard: the Raspberry Pi4 with Real-time Linux as operating system.
环缓冲ROS2执行器:实时ROS2空间应用的新方法
ROS2 (Robot Operating System Version 2)是一个开源软件框架和库套件,用于促进机器人应用程序开发和多核处理。ROS2正在成为自主机器人应用的事实上的标准。另一方面,在美国国家航空航天局和蓝色起源的支持下,Space- ros——专门实现ROS2的空间应用——也开始用于空间自主应用,如着陆器和空间机器人。ROS旨在简化和减少编写机器人应用程序所需的开发时间和工作量,ROS2保持了这一重点,并实现了实时机器人技术的主要目标。在ROS2的初始设计中,处理性能被给予了较低的优先级,虽然已经努力提高处理性能,但在接收传感器数据时面临长延迟甚至不可忽略的数据丢失的情况并不少见。本文的研究展示了一个基于无锁环缓冲区实现的ROS2执行器,与内置的ROS2执行器相比,它不仅可以显著提高数据处理速率,还可以大大降低处理消耗。本文介绍了这种新型环形缓冲ROS2执行器的成功性能结果,并在几台Space计算机和事实上的实时基准测试标准(使用实时Linux作为操作系统的Raspberry Pi4)中进行了验证。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信