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

基于接触约束输入的MultiBodyPlant建模方法问询

关于Drake中MultiBodyPlant建模带表面速度接触系统的实现疑问

我提交了一份支持传送带(通用表面速度)仿真的PR,可通过输入端口控制传送带速度。现希望使用MultiBodyPlant类建模包含接触及接触切向速度的系统,以用于雅可比矩阵计算、优化与控制等工作。

此类系统可通过Stewart-Trinkle或Anitescu公式建模,例如Stewart-Trinkle公式的约束如下:

系统动力学:

q_{k+1} = q_k + Δt v_{k+1},            (1)
v_{k+1} = v_k + Δt M^{-1}(q_k) (
B u_k - C(q_k, v_k)
+ J_n(q_k)^T λ_n^k
+ J_t(q_k)^T λ_t^k
)        (2)

互补条件:

0 ≤ γ_k ⊥ μ λ_n^k - E_t λ_t^k ≥ 0,        (3)
0 ≤ λ_n^k ⊥ φ(q_k) + J_n(q_k)(q_{k+1} - q_k) ≥ 0,        (4)
0 ≤ λ_t^k ⊥ E_t^T γ_k + J_t(q_k)v_{k+1} + u_c ≥ 0,       (5)

其中q_k和v_k为广义位姿/速度,u_k为输入,λ_n、λ_t为法向/切向接触力。

在该范式中建模表面速度时,需在关联切向接触力λ_t^k与速度J_t(q_k)v_{k+1}的互补约束(公式(5))中添加偏置表面速度u_c。

数学上可通过扩展输入向量u_k并将B中对应列置零实现,但我不清楚如何在Drake中以MultiBodyPlant(MbP)建模该系统:

  • 添加执行器需添加关节、父子连杆等,会直接影响系统动力学
  • 若为MbP添加自定义输入向量变量,会与树结构断开,自动微分将失效(du_c/dx=0?)

特此问询:Drake中是否存在符合其设计规范的实现方式?

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 07:43:14