PHYSFRAME: type checking physical frames of reference for robotic systems
Sayali Kate, Michael Chinn, Hongjun Choi, Xiangyu Zhang, Sebastian G. Elbaum
Abstract
A robotic system continuously measures its own motions and the external world during operation. Such measurements are with respect to some frame of reference, i.e., a coordinate system. A nontrivial robotic system has a large number of different frames and data have to be translated back-and-forth from a frame to another. The onus is on the developers to get such translation right. However, this is very challenging and error-prone, evidenced by the large number of questions and issues related to frame uses on developers' forum. Since any state variable can be associated with some frame, reference frames can be naturally modeled as variable types. We hence develop a novel type system that can automatically infer variables' frame types and in turn detect any type inconsistencies and violations of frame conventions. The evaluation on a set of 180 publicly available ROS projects shows that our system can detect 190 inconsistencies with 154 true positives. We reported 52 to developers and received 18 responses so far, with 15 fixed/acknowledged. Our technique also finds 45 violations of common practices.
• Software and its engineering → Abstract data types; Software defect analysis.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 8e02e56b-5f33-44b2-b6a0-331518d71e27Cited by top-tier papers3
- SA4U: Practical Static Analysis for Unit Type Error DetectionMax Taylor, Johnathon Aurand, Feng Qin, Xiaorui Wang et al.ASE 2022 · 5 citations
- ROSInfer: Statically Inferring Behavioral Component Models for ROS-based Robotics SystemsTobias Dürschmid, Christopher Steven Timperley, David Garlan, Claire Le GouesICSE 2024 · 3 citations
- Understanding Misconfigurations in ROS: An Empirical Study and Current ApproachesPaulo Canelas, Bradley R. Schmerl, Alcides Fonseca, Christopher Steven TimperleyISSTA 2024 · 2 citations
Related papers
- ROSCallBaX: Statically Detecting Inconsistencies in Callback Function Setup of Robotic SystemsSayali Kate, Yifei Gao, Shiwei Feng, Xiangyu ZhangFSE 2025 · 2 citations
- Geometry types for graphics programmingDietrich Geisler, Irene Yoon, Aditi Kabra, Horace He et al.OOPSLA 2020 · 4 citations
- Cyber-Physical Inconsistency Vulnerability Identification for Safety Checks in Robotic VehiclesHongjun Choi, Sayali Kate, Yousra Aafer, Xiangyu Zhang et al.CCS 2020 · 22 citations
- Nalin: learning from Runtime Behavior to Find Name-Value Inconsistencies in Jupyter NotebooksJibesh Patra, Michael PradelICSE 2022 · 14 citations
- Guarding the Lifeline: A First Look and Automated Defect Diagnosis for ROS Central IndexWeijie Sun, Huiyan Wang, Ying Wang, Chang XuISSTA 2026
