You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu20.04下运行Drake工具包Atlas示例出现警告及崩溃如何解决

问题根因说明

你遇到的崩溃是Drake的MultibodyPlant离散更新求解器收敛失败导致的,前面的碰撞组忽略、固定关节传动跳过、多接触几何提示都属于预警类信息,不是直接导致崩溃的原因。崩溃触发时仿真时长为0.498s,当前使用的离散更新周期为1ms,求解器无法在当前步长下解析系统动态特性,通常由碰撞突变、接触配置复杂或控制器增益过高引发。

可行解决方法
  • 调小离散更新周期
    当前使用的1ms步长无法满足求解精度要求,可将构造MultibodyPlant时传入的时间步长参数下调,比如改为0.5ms(0.0005s)甚至0.1ms(0.0001s)。C++代码示例:MultibodyPlant<double> plant(0.0005);,Python代码示例:plant = MultibodyPlant(time_step=0.0005)
  • 降低控制器增益
    如果你使用了自定义的Atlas关节控制器,先将PD增益下调20%~50%测试。离散求解器对控制输入采用显式处理,高增益很容易引发数值振荡导致收敛失败。
  • 切换为连续仿真模式
    构造MultibodyPlant时将时间步长设为0,即可启用连续模型,求解器会自动适配步长保证收敛稳定性,唯一的缺点是仿真运行速度会低于离散模式,算力消耗更高。
额外排查建议
  • 可以先临时关闭脚部的接触检测运行仿真,如果不再崩溃,说明是接触求解复杂度太高导致的问题,可以进一步优化碰撞体配置或者调整接触求解参数。
  • 检查Atlas模型URDF/SDF文件中的碰撞几何定义,避免出现重叠的碰撞体,降低接触求解的计算压力。

内容的提问来源于stack exchange,提问作者Dmitriy Ogureckiy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 20:24:01