外观
踩坑GitHub google-deepmind/mujoco_menagerie4 个月前
MuJoCo Apollo模型stand关键帧ctrl值超出actuator范围致仿真初始状态异常
本文由 AI 根据公开内容整理,可能有误,请以原文为准:[Bug Report] Apptronik Apollo stand keyframe contains position controls outside actuator ctrlrange(GitHub google-deepmind/mujoco_menagerie #287)
状态:有绕过办法
问题
在MuJoCo 3.8.0中加载apptronik_apollo.xml时,stand关键帧内l_elbow_fe、r_shoulder_ie、r_shoulder_fe、l_hip_aa四个执行器的ctrl值超出声明的ctrlrange(最大超限0.858)。MuJoCo未报错但静默钳位控制信号,导致仿真初始姿态与关键帧定义不一致。
环境
MuJoCo 3.8.0,仓库google-deepmind/mujoco_menagerie,commit affef0836947b64cc06c4ab1cbf0152835693374,文件apptronik_apollo.xml与scene.xml。
解决办法
- 使用提供的Python脚本遍历model.nkey与model.nu,检查model.key_ctrl是否满足actuator_ctrlrange约束并定位违规项。
- 打开apptronik_apollo.xml,找到<keyframe>标签下name为stand的关键帧定义。
- 将l_elbow_fe的ctrl值从1.033修正至[-2.61799, 0.174533]范围内。
- 将r_shoulder_ie的ctrl值从-0.477修正至[-0.471239, 0.471239]范围内。
- 将r_shoulder_fe的ctrl值从1.033修正至[-2.18166, 0.610865]范围内。
- 将l_hip_aa的ctrl值从-0.4修正至[-0.218166, 0.741765]范围内。
- 保存XML后重新加载模型,验证stand关键帧初始状态是否符合预期且无静默钳位。
讨论原作者:@mujoco-debugger 等,版权归原作者所有。
来源
本页事实对应的公开页面,以原文为准。