ROSpec: A Domain-Specific Language for ROS-Based Robot Software
Paulo Canelas, Bradley R. Schmerl, Alcides Fonseca, Christopher Steven Timperley
摘要
Component-based robot software frameworks, such as the Robot Operating System (ROS), allow developers to quickly compose and execute systems by focusing on configuring and integrating reusable, off-the-shelf components. However, these components often lack documentation on how to configure and integrate them correctly. Even when documentation exists, its natural language specifications are not enforced, resulting in misconfigurations that lead to unpredictable and potentially dangerous robot behaviors. In this work, we introduce ROSpec, a ROS-tailored domain-specific language designed to specify and verify component configurations and their integration. ROSpec’s design is grounded in ROS domain concepts and informed by a prior empirical study on misconfigurations, allowing the language to provide a usable and expressive way of specifying and detecting misconfigurations. At a high level, ROSpec verifies the correctness of argument and component configurations, ensures the correct integration of components by checking their communication properties, and checks if configurations respect the assumptions and constraints of their deployment context. We demonstrate ROSpec’s ability to specify and verify components by modeling a medium-sized warehouse robot with 19 components, and by manually analyzing, categorizing, and implementing partial specifications for components from a dataset of 182 misconfiguration questions extracted from a robotics Q&A platform.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper1
问问它们各自怎么用它它引用的顶会 Paper13
- Grammar Prompting for Domain-Specific Language Generation with Large Language ModelsBailin Wang, Zi Wang, Xuezhi Wang, Yuan Cao 等NeurIPS 2023 · 被引用 138 次
- Robotics software engineering: a perspective from the service robotics domainSergio García, Daniel Strüber, Davide Brugali, Thorsten Berger 等FSE 2020 · 被引用 76 次
- Test-case prioritization for configuration testingRunxiang Cheng, Lingming Zhang, Darko Marinov, Tianyin XuISSTA 2021 · 被引用 34 次
- Static detection of silent misconfigurations with deep interaction analysisJialu Zhang, Ruzica Piskac, Ennan Zhai, Tianyin XuOOPSLA 2021 · 被引用 30 次
- Flux: Liquid Types for RustNico Lehmann, Adam T. Geller, Niki Vazou, Ranjit JhalaPLDI 2023 · 被引用 29 次
相关 Paper
- Understanding Misconfigurations in ROS: An Empirical Study and Current ApproachesPaulo Canelas, Bradley R. Schmerl, Alcides Fonseca, Christopher Steven TimperleyISSTA 2024 · 被引用 2 次
- ROSCallBaX: Statically Detecting Inconsistencies in Callback Function Setup of Robotic SystemsSayali Kate, Yifei Gao, Shiwei Feng, Xiangyu ZhangFSE 2025 · 被引用 2 次
- Koord: a language for programming and verifying distributed robotics applicationRitwika Ghosh, Chiao Hsieh, Sasa Misailovic, Sayan MitraOOPSLA 2020 · 被引用 17 次
- ROSInfer: Statically Inferring Behavioral Component Models for ROS-based Robotics SystemsTobias Dürschmid, Christopher Steven Timperley, David Garlan, Claire Le GouesICSE 2024 · 被引用 3 次
- RoboFuzz: fuzzing robotic systems over robot operating system (ROS) for finding correctness bugsSeulbae Kim, Taesoo KimFSE 2022 · 被引用 32 次
