Contact Jacobian
接触雅可比AdvancedThe matrix that maps joint velocities to contact-point velocities, and contact forces back into joint torques.
The contact Jacobian is the Jacobian matrix specialized to a contact point, usually written J_c(q). It's used in two directions. First, v_c = J_c(q)·q̇ gives the contact-point velocity from the joint (including floating-base) velocity q̇; a foot that isn't slipping means J_c·q̇ = 0. Second, its transpose converts a contact force λ into the corresponding generalized forces at each joint, appearing in the dynamics equation M(q)·q̈ + C(q,q̇)·q̇ = τ_g(q) + B·u + J_cᵀ·λ (M is the mass matrix, C the Coriolis and centrifugal terms, τ_g the gravity term, and B·u the motor input). Physics engines use a more general version of the same idea, the constraint Jacobian — the MuJoCo documentation describes it as mapping joint-space motion into constraint space. Both whole-body control and simulated contact solving depend on it.
ExampleDuring a quadruped's stance phase, the controller first plans the ground-reaction force each supporting foot should provide, then multiplies it by the transpose of that leg's contact Jacobian to get the torques the hip and knee joints should output — a common approximation that ignores the leg's own mass.
- Also called
- Constraint Jacobian
- Related
- Jacobian Matrix · Contact Force · Ground Reaction Force (GRF) · Whole-Body Control · Contact Force Optimization (Force Distribution) · Floating Base
- Sources
- Underactuated Robotics(Tedrake): Multi-Body Dynamics 一章 (Chinese)
MuJoCo 文档: Computation (Chinese)