URDF 转 XML 配置指南
安装 MuJoCo Playground 后,涉及三维模型导入。SolidWorks 导出的文件多为 URDF 格式,但 MuJoCo 仿真主要支持 XML 文件。
MuJoCo 官方提供了转换脚本,需下载 MuJoCo 工程文件(注意与 MuJoCo Playground 不同)。
1. MuJoCo 工程文件下载
https://mujoco.org/download/mujoco210-linux-x86_64.tar.gz
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/.mujoco/mujoco210/bin
2. 在 URDF 文件中添加配置
<mujoco><compiler meshdir="../meshes/" balanceinertia="true" discardvisual="false"/></mujoco>
meshdir: STL 网格文件存放地址balanceinertia="true": 启用惯量平衡(仿真更真实)discardvisual="false": 保留视觉几何体(可视化更好)
注意: 需与 <link> 平级,直接写在最上面。
3. 转换命令
cd ~/.mujoco/mujoco210/bin
./compile /path/to/model.urdf /path/to/model.xml
可直接写 URDF 文件的绝对地址,以及保存 XML 文件存放的绝对地址。
若需仿真验证 XML 文件转化是否成功,可执行:
./simulate /path/to/model.xml
4. 在 XML 文件中添加执行器(Actuator)
Actuator 可理解为电机。MuJoCo 较为严谨,每一个关节都需要指定 Actuator 才能有动力,而非像 Legged Gym 封装的一样直接输入活动关节数目。
Actuator 有多种格式,可设置位置模式、力矩模式、速度模式以及 General 通用格式等。此处仅介绍 Position 设置方法。
<actuator>
<position class="hexapod" name="RF_HAA" joint="RF_HAA"/>
<position class="hexapod" name="RF_HFE" joint="RF_HFE"/>
<position = name= joint=/>
<position = name= joint=/>
<position = name= joint=/>
<position = name= joint=/>
<position = name= joint=/>
<position = name= joint=/>
<position = name= joint=/>
<position = name= joint=/>
<position = name= joint=/>
<position = name= joint=/>
<position = name= joint=/>
<position = name= joint=/>
<position = name= joint=/>
<position = name= joint=/>
<position = name= joint=/>
<position = name= joint=/>
</actuator>


