Dimensional inconsistencies in code and ROS messages: A study of 5.9M lines of code

J. Ore, Sebastian G. Elbaum, Carrick Detweiler
{"title":"Dimensional inconsistencies in code and ROS messages: A study of 5.9M lines of code","authors":"J. Ore, Sebastian G. Elbaum, Carrick Detweiler","doi":"10.1109/IROS.2017.8202229","DOIUrl":null,"url":null,"abstract":"This work presents a study of robot software using the Robot Operating System (ROS), focusing on detecting inconsistencies in physical unit manipulation. We discuss how dimensional analysis, the rules governing how physical quantities are combined, can be used to detect inconsistencies in robot software that are otherwise difficult to detect. Using a corpus of ROS software with 5.9M lines of code, we measure the frequency of these dimensional inconsistencies and find them in 6% (211 / 3,484) of repositories that use ROS. We find that the inconsistency type ‘Assigning multiple units to a variable’ accounts for 75% of inconsistencies in ROS code. We identify the ROS classes and physical units most likely to be involved with dimensional inconsistencies, and find that the ROS Message type geometry_msgs::Twist is involved in over half of all inconsistencies and is used by developers in ways contrary to Twist's intent. We further analyze the frequency of physical units used in ROS programs as a proxy for assessing how developers use ROS, and discuss the practical implications of our results including how to detect and avoid these inconsistencies.","PeriodicalId":6658,"journal":{"name":"2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)","volume":"80 1","pages":"712-718"},"PeriodicalIF":0.0000,"publicationDate":"2017-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"13","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/IROS.2017.8202229","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 13

Abstract

This work presents a study of robot software using the Robot Operating System (ROS), focusing on detecting inconsistencies in physical unit manipulation. We discuss how dimensional analysis, the rules governing how physical quantities are combined, can be used to detect inconsistencies in robot software that are otherwise difficult to detect. Using a corpus of ROS software with 5.9M lines of code, we measure the frequency of these dimensional inconsistencies and find them in 6% (211 / 3,484) of repositories that use ROS. We find that the inconsistency type ‘Assigning multiple units to a variable’ accounts for 75% of inconsistencies in ROS code. We identify the ROS classes and physical units most likely to be involved with dimensional inconsistencies, and find that the ROS Message type geometry_msgs::Twist is involved in over half of all inconsistencies and is used by developers in ways contrary to Twist's intent. We further analyze the frequency of physical units used in ROS programs as a proxy for assessing how developers use ROS, and discuss the practical implications of our results including how to detect and avoid these inconsistencies.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
代码和ROS消息的维度不一致:对590万行代码的研究
这项工作提出了使用机器人操作系统(ROS)的机器人软件的研究,重点是检测物理单元操作中的不一致性。我们将讨论量纲分析,即控制物理量如何组合的规则,如何用于检测机器人软件中难以检测的不一致性。使用包含590万行代码的ROS软件语料库,我们测量了这些维度不一致的频率,并在6%(211 / 3,484)使用ROS的存储库中发现了它们。我们发现不一致类型“将多个单元分配给一个变量”占ROS代码中不一致的75%。我们确定了最有可能涉及维度不一致的ROS类和物理单元,并发现ROS消息类型geometry_msgs::Twist涉及所有不一致的一半以上,并且被开发人员以与Twist的意图相反的方式使用。我们进一步分析了ROS程序中使用的物理单元的频率,作为评估开发人员如何使用ROS的代理,并讨论了我们的结果的实际含义,包括如何检测和避免这些不一致。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Direct visual SLAM fusing proprioception for a humanoid robot Upper limb motion intent recognition using tactile sensing Soft fluidic rotary actuator with improved actuation properties Underwater 3D structures as semantic landmarks in SONAR mapping Adaptive perception: Learning from sensory predictions to extract object shape with a biomimetic fingertip
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1