同一个模型,不同框架,未必是同一个关节顺序

URDF 本身不定义关节顺序,每个框架按自己的规则排:Isaac Gym 深度优先,Isaac Sim / Isaac Lab 广度优先,Gazebo 同层还要按关节名字母序,PyBullet 连 fixed 关节一起编号。

同一个四足 URDF,两种导入顺序
Isaac Gym / MuJoCo    (DFS) : FL_hip, FL_thigh, FL_calf, FR_hip, FR_thigh, …
Isaac Sim / Isaac Lab (BFS) : FL_hip, FR_hip,   RL_hip,  RR_hip, FL_thigh, …

把 Isaac Gym 训好的策略搬到 Isaac Lab 或实机上,关节向量就会静默错位 —— 不报错,机器人直接抽搐。MJCF 也躲不掉:body 树定死了关节顺序,但 <actuator>data.ctrl)是另一个向量。

这个页面把 URDF / MJCF 在各框架里的关节顺序并列排开:一致显示绿色,对不上就标红到具体哪一格,并生成可直接粘贴的索引重映射数组。文件只在你的浏览器里解析。

1. 载入 URDF / MJCF

文件完全在你的浏览器本地解析,不会上传到任何服务器。

拖拽 .urdf / .xml 文件到这里,或点击选择文件 URDF(.urdf)或 MuJoCo MJCF(.xml),自动识别;xacro 需先展开
示例:

各框架的顺序规则

这些规则决定了上面的计算结果。点击展开查看依据、注意事项、运行时核对命令,以及各框架根节点四元数的获取方式与分量顺序。