首页> 外文期刊>Frontiers in Robotics and AI >The iCub Software Architecture: Evolution and Lessons Learned
【24h】

The iCub Software Architecture: Evolution and Lessons Learned

机译:iCub软件体系结构:演进和经验教训

获取原文
获取外文期刊封面目录资料

摘要

The complexity of humanoid robots is increasing with the availability of new sensors, embedded CPUs and actuators. This wealth of technologies allows researchers to investigate new problems like whole-body force control, multi-modal human-robot interaction and sensory fusion. Under the hood of these robots, the software architecture has an important role: it allows researchers to get access to the robot functionalities focusing primarily on their research problems, it supports code reuse to minimize development and debugging, especially when new hardware becomes available. But more importantly it allows increasing the complexity of the experiments that can be implemented before system integration becomes unmanageable and debugging draws more resources than research itself. In this paper we illustrate the software architecture of the iCub humanoid robot and the software engineering best practices that have emerged driven by the needs of our research community. We describe the latest developments at the level of the middleware supporting interface definition and automatic code generation, logging, ROS compatibility and channel prioritization. We show the robot abstraction layer and how it has been modified to better address the requirements of the users and to support new hardware as it became available. We also describe the testing framework we have recently adopted for developing code using a test driven methodology. We conclude the paper discussing the lessons we have learned during the past eleven years of software development on the iCub humanoid robot.
机译:随着新型传感器,嵌入式CPU和执行器的推出,类人机器人的复杂性也在增加。如此众多的技术使研究人员能够研究新问题,例如全身力控制,多模式人机交互和感觉融合。在这些机器人的幕后,软件体系结构起着重要作用:它使研究人员能够访问主要针对他们的研究问题的机器人功能,它支持代码重用以最大程度地减少开发和调试,尤其是在有新硬件可用时。但是更重要的是,它允许增加实验的复杂性,而这种复杂性可以在系统集成变得难以管理并且调试比研究本身消耗更多资源之前进行。在本文中,我们说明了iCub人形机器人的软件体系结构以及由我们研究社区的需求驱动而出现的软件工程最佳实践。我们在支持界面定义和自动代码生成,日志记录,ROS兼容性和通道优先级的中间件级别上描述了最新的发展。我们将展示机器人抽象层以及如何对其进行修改,以更好地满足用户的需求并在新硬件可用时为其提供支持。我们还将描述我们最近采用的测试框架,该框架用于使用测试驱动的方法来开发代码。在本文的结尾,我们讨论了过去11年在iCub人形机器人上进行软件开发时所学到的经验教训。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号