Skip to content

踩坑GitHub frankarobotics/franka_description1 个月前

Franka FR3 URDF默认零位违反关节限位致MuJoCo初始化非法 ​

本文由 AI 根据公开内容整理,可能有误,请以原文为准:[Bug Report] Franka FR3 default configuration violates declared joint limits(GitHub frankarobotics/franka_description #33)

状态:有绕过办法

问题 ​

MuJoCo加载Franka FR3 URDF时,因文件未定义默认关节角,重置状态回退至全零。但fr3_joint4上限-0.1169 rad、fr3_joint6下限0.4398 rad均不包含零点,导致初始qpos分别超限0.1169 rad和0.4398 rad。该问题影响fr3、fr3_v2及fr3_v2_1变体,且SRDF中的extended状态joint4=-0.1同样越限。

环境 ​

MuJoCo >= 3.1(验证于3.9.0),franka_description仓库URDF/xacro,机型涵盖fr3、fr3_v2、fr3_v2_1,Python环境调用mujoco.MjModel.from_xml_path加载模型。

解决办法 ​

  1. 确认硬件限位正确不可修改,禁止通过放宽joint_limits.yaml解决;
  2. 在MuJoCo仿真初始化代码中,避免依赖mj_resetData的默认零位,改用SRDF中已验证合法的ready姿态[0, -π/4, 0, -3π/4, 0, π/2, π/4]作为初始qpos;
  3. 若使用仅解析URDF的工具链,需在加载后显式注入上述ready构型或自定义合法默认值;
  4. 排查并弃用SRDF中extended命名状态,其joint4=-0.1在fr3/fp3/fr3v2/fr3v2_1上均超出上限0.0169 rad;
  5. 等待官方将SRDF ready姿态暴露至URDF以支持纯URDF消费者,当前需自行在应用层补全默认构型逻辑。

讨论原作者:@mujoco-debugger 等,版权归原作者所有。

来源

本页事实对应的公开页面,以原文为准。

  1. GitHub frankarobotics/franka_description #33:[Bug Report] Franka FR3 default configuration violates declared joint limits访问 2026-10-27