如何获得将外力映射到广义力的矩阵?
How to get the matrix that maps external forces to generalized forces?
给定一个多体工厂,我需要找到将外力 lambda 转换为广义力的矩阵。 IE。以下等式中的 Phi(取自 Scott Kuindersma、Frank Permenter 和 Russ Tedrake 的 An Efficiently Solvable Quadratic Program for Stabilizing Dynamic Locomotion)。
我的猜测是,我需要先将相应的力添加到多体工厂中的相关物体中
left_foot_contact_force = plant.AddForceElement(plant.GetModelInstanceByName("l_foot"))
right_foot_contact_force = plant.AddForceElement(plant.GetModelInstanceByName("r_foot"))
但是,我不太确定如何继续获取矩阵 Phi。我怀疑我需要使用 CalcForceElementsContribution()
但不知道如何使用结果 MultibodyForce
来获得矩阵 Phi.
如果 λ 是在连接到物体 B 的点 Q 处施加的接触力,以世界坐标系表示,则该矩阵 Φ 是雅可比矩阵。您可以使用 CalcJacobianTranslationalVelocity as
计算雅可比矩阵
J = plant.CalcJacobianTranslationalVelocity(context, JacobianWrtVariable.kV, plant.GetBodyByName("l_foot"), p_BQ, plant.world_frame(), plant.world_frame())
其中p_BQ
是Q点在脚架上测量和表示的位置
若λ为摩擦锥在Q
点的边的权重(即接触力为f = ∑ᵢ λᵢeᵢ 其中eᵢ为摩擦锥在[=12=的第i条边) ],在世界坐标系中测量和表达),则矩阵 Φ 为 Φᵀ = Jᵀ*E 其中 E = [e₁, ..., eₘ] (即假设线性摩擦锥在点 [=12 处有 m 条边=],我们将这些摩擦锥边水平串联起来得到矩阵E
).
这里我展示了如何计算单个点的 Φ。如果你有多个接触点,那么你可以分别计算每个点的 Φ,然后将它们连接在一起。
给定一个多体工厂,我需要找到将外力 lambda 转换为广义力的矩阵。 IE。以下等式中的 Phi(取自 Scott Kuindersma、Frank Permenter 和 Russ Tedrake 的 An Efficiently Solvable Quadratic Program for Stabilizing Dynamic Locomotion)。
我的猜测是,我需要先将相应的力添加到多体工厂中的相关物体中
left_foot_contact_force = plant.AddForceElement(plant.GetModelInstanceByName("l_foot"))
right_foot_contact_force = plant.AddForceElement(plant.GetModelInstanceByName("r_foot"))
但是,我不太确定如何继续获取矩阵 Phi。我怀疑我需要使用 CalcForceElementsContribution()
但不知道如何使用结果 MultibodyForce
来获得矩阵 Phi.
如果 λ 是在连接到物体 B 的点 Q 处施加的接触力,以世界坐标系表示,则该矩阵 Φ 是雅可比矩阵。您可以使用 CalcJacobianTranslationalVelocity as
计算雅可比矩阵J = plant.CalcJacobianTranslationalVelocity(context, JacobianWrtVariable.kV, plant.GetBodyByName("l_foot"), p_BQ, plant.world_frame(), plant.world_frame())
其中p_BQ
是Q点在脚架上测量和表示的位置
若λ为摩擦锥在Q
点的边的权重(即接触力为f = ∑ᵢ λᵢeᵢ 其中eᵢ为摩擦锥在[=12=的第i条边) ],在世界坐标系中测量和表达),则矩阵 Φ 为 Φᵀ = Jᵀ*E 其中 E = [e₁, ..., eₘ] (即假设线性摩擦锥在点 [=12 处有 m 条边=],我们将这些摩擦锥边水平串联起来得到矩阵E
).
这里我展示了如何计算单个点的 Φ。如果你有多个接触点,那么你可以分别计算每个点的 Φ,然后将它们连接在一起。