MEKAWIRE
进阶arXiv

慕尼黑工大与MBZUAI开源反射引擎,ROS 2控制模式切换从约210毫秒降至0.01毫秒

Jon Škerlj, Sami HaddadinTechnical University of Munich (MIRMI), Mohamed Bin Zayed University of Artificial Intelligence
30 秒速读

慕尼黑工业大学机器人研究所(MIRMI)与MBZUAI团队于10月15日发布的预印本显示,改进后的ROS 2控制器让Franka Panda机械臂在控制模式间切换平均仅需0.01毫秒,而标准ros2_control约需210毫秒;在擦桌任务中峰值加加速度从499降至155 m/s3。切换足够快,机械臂就能在1kHz控制周期内应对碰撞和关节极限,而不必触发硬件急停。

研究问题

一个兼容ROS 2的开源控制架构,能否快到让安全反射在机器人1kHz控制回路内完成,从而在危险出现时继续作业而非停机?

问题

家用和服务机器人在同一任务中需要不同控制器:快速自由运动、柔顺接触、力控以及安全恢复。标准ros2_control通过生命周期状态转换切换控制器,先停一个再启动下一个,带来延迟和抖动。实际效果是碰撞或越限往往以完全停机告终,而不是平稳应对。

既有方法

业界通常接受ros2_control的先停后切,或者写一个覆盖所有阶段的统一控制器,或者依赖商业实时系统。作者此前的multipanda_ros2多模式控制器已能在子控制器间切换,但平均耗时约1.8毫秒。

新方法

改进版多模式控制器把所有控制行为预先加载,用无锁指针替换完成切换,把中间件调用移出实时路径。其上是一个反射引擎,以状态机监测外力、关节位置和关节速度,一旦超过阈值(15牛,或距硬件极限0.2弧度、0.1弧度/秒),就在Franka自带安全层动作之前交给软阻抗或零重力模式。现有ros2_control控制器可直接作为子控制器移植。

结果

每种配置各切换100次,平均延迟分别为:ros2_control约210毫秒,原多模式控制器1.8毫秒,改进版0.01毫秒,最差情况也低于0.1毫秒。70次关节极限测试(每关节10次)中,反射触发后的平均停止距离为位置测试0.082弧度、速度测试0.080弧度,从未触及硬件极限。以0.09至0.26米/秒速度进行的30次碰撞中,平均0.122秒消除接触力。在抓取、擦拭、归位三段任务中各运行10次,总时长由14.58秒降至14.09秒,峰值加加速度由499.0降至155.4 m/s3,约低3.2倍。

局限

这是预印本,只在一台Franka Panda和只有两次切换的短任务上验证。软停止会越过设定的安全余量,需要按应用调参;刚性碰撞最初几毫秒的冲击力峰值任何反馈控制都无法削减,仍高于15牛阈值。反射功能是软件层,并非通过ISO 10218或ISO 13482认证的安全功能。

产业影响

这项结果对基于ROS 2开发服务机器人的团队,以及因安全停机重启而损失节拍的协作机器人集成商最有意义。使用ROS 2的国内协作机器人和家用机器人团队,因代码开源且兼容ros2_control,力矩控制机械臂几个月内即可试用;但要变成认证安全功能,周期要长得多。

受许可协议限制,本站不转载该论文全文,仅提供摘要和原文链接。