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

Differential Inverse Kinematics Integrator适配浮动机械臂失败求助

Drake版本:Dockerhub最新版(1.14.0)Python 3.8,操作系统:Ubuntu 20.04

Differential逆运动学积分器LeafSystem要求位置数与速度数相等,且二者均需与机械臂模型(plant)的位置数和速度数一致(对应代码行:123、124、128)。当使用浮动机械臂模型时,会引入浮动四元数关节表示浮动部件。但浮动四元数关节的位置用XYZ坐标加四元数表示(共7个状态),速度用XYZ坐标加RPY角表示(共6个状态),这会导致向量维度不匹配错误,具体报错如下:

Traceback (most recent call last): 

  File "./scripts/diki_floating_isolated.py", line 352, in <module> 

    main() 

  File "./scripts/diki_floating_isolated.py", line 298, in main 

    diki = DIKI(plant, model, euler_integr_time_step, tip_frame) 

  File "./scripts/diki_floating_isolated.py", line 139, in __init__ 

    self.builder.Connect(self.diki_derivative.get_output_port(), self.desired_system_state.get_input_port(1)) 

RuntimeError: DiagramBuilder::Connect: Mismatched vector sizes while connecting output port dudt of System discrete_derivative (size 14) to input port u1 of System multiplexer (size 13) 

若手动调整信号维度以匹配,会触发如下错误:

Failure at multibody/inverse_kinematics/differential_inverse_kinematics.cc:128 in DoDifferentialInverseKinematics(): condition 'num_positions == num_velocities' failed.

我们尝试在流程中拦截机械臂状态,进行四元数与RPY角的相互转换,但任何状态修改都会违反积分器对位置和速度数量的要求。

请问是否有我们遗漏的推荐解决方案?我们的目标是在浮动iiwa机械臂上使用Differential Inverse Kinematics Integrator。


内容的提问来源于stack exchange,提问作者Ahmed Fayed

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 04:28:23