Cartesian Impedance Control of Redundant and Flexible-Joint Robots — Ch. 3: The Rigid Body Case
Authors: Ott · Year: 2008 · Venue: Springer Tracts in Advanced Robotics (STAR 49), monograph chapter
Raw: md
Summary
This chapter develops the classical theory of Cartesian impedance control for rigid-body (non-flexible-joint) serial manipulators, building on Hogan’s impedance concept and Khatib’s Operational Space Formulation. It treats two regimes: (i) full impedance shaping including the apparent inertia (which requires feedback of the external force), and (ii) impedance control without inertia shaping, which avoids force feedback at the cost of a position-dependent, time-varying closed-loop inertia. It then addresses how to design the damping matrix for that position-dependent inertia (via simultaneous diagonalization), how to handle kinematic and representation singularities, and how the choice of Cartesian coordinates (especially the orientation parameterization) shapes the stiffness behavior.
Key Claims
- For the non-redundant case (
m = n) with non-singular Jacobian, the joint-space modelM(q)q̈ + C(q,q̇)q̇ + g(q) = τ + τ_exttransforms exactly into a task-space modelΛ(x)ẍ + μ(x,ẋ)ẋ + F_g(x) = F_τ + F_extwithΛ = J^{-T} M J^{-1}(Eq. 3.10) and a specificμ(Eq. 3.11) that preserves the skew-symmetry ofΛ̇ − 2μ(Lemma 3.2). This is the operational-space inertia. - Full impedance shaping (closed loop
Λ_d ẍ̃ + D_d ẋ̃ + K_d x̃ = F_ext, Eq. 3.8) generically requires measured external-force feedback (control law Eq. 3.14 contains the term(Λ Λ_d^{-1} − I) F_ext). Forces acting on the robot body (not the tool/sensor) are not shaped correctly. - Choosing the desired inertia equal to the natural Cartesian inertia,
Λ_d = Λ(x)(Eq. 3.15), removes the need for force feedback; the controller (Eq. 3.18) reduces to a gravity-compensated PD+ law in task coordinates. - The no-inertia-shaping closed loop (Eq. 3.16) is uniformly globally asymptotically stable for free motion (
F_ext = 0) whenK_d, D_d ≻ 0and the Cartesian coordinates are globally valid (Proposition 3.4), and is a passive map fromF_exttoẋin the regulation case (Proposition 3.5). - Because
Λ(x)is position-dependent and non-diagonal, a constant diagonalD_dis a poor damping choice; instead use generalized eigenvalue / simultaneous-diagonalization designD_d(x_0) = 2 Q^T diag(ξ_i √λ^Λ_{K,i}) Qwith damping factorsξ_i ∈ [0,1](quasi-static “double-diagonalization”, Eqs. 3.19–3.21). - Stiffness
K_dmust be constant for Proposition 3.4 to hold; damping may be position-dependentD_d(x)without breaking stability/passivity. - Two singularity types are distinguished: representation singularities (artifacts of the minimal SO(3)/SE(3) chart, removable only by a non-minimal parameterization e.g. unit quaternions) and kinematic singularities (intrinsic to the arm; the body Jacobian loses rank). Near a kinematic singularity the desired impedance is “distorted” and the robot may “get stuck” because the feedforward term vanishes.
- Singularity avoidance is implemented by superposing a second impedance from a manipulability potential
V_m(q)built onm_kin(q) = √det(J J^T)(Eqs. 3.22–3.24); the avoidance is generic (no need to enumerate singular configurations in advance) but can create a spurious local minimum near the singularity.
Method
Rigid-body model (Eq. 3.1): M(q)q̈ + C(q,q̇)q̇ + g(q) = τ + τ_ext, with joint torques τ (not motor torques) as the control input. Task map x = f(q), analytical Jacobian J(q) = ∂f/∂q, ẋ = J q̇, ẍ = J q̈ + J̇ q̇ (Eqs. 3.2–3.3). Analysis is restricted to a region Q̄^p where σ_min(J) > σ_0 > 0 and f is one-to-one (Eqs. 3.6–3.7), guaranteeing bounded Cartesian-inertia eigenvalues (Property 3.3). Power duality: τ_ext = J^T F_ext, so τ_ext^T q̇ = F_ext^T ẋ.
The operational-space transform (substituting q̈ = J^{-1}(ẍ − J̇ q̇) and pre-multiplying by J^{-T}) yields Eq. 3.12. The full-shaping control law is Eq. 3.14; the no-shaping law is Eq. 3.18. Damping design uses Lemma 3.6 (simultaneous diagonalization of a SPD matrix A and symmetric B: Q^T Q = A, B = Q^T B_0 Q). Singularity avoidance adds −∂V_m/∂q to the impedance torque via the superposition-of-impedances principle (Eq. 3.24).
Orientation/stiffness: end-effector pose h_st(q) ∈ SE(3) from the product-of-exponentials formula; error frame h_dt = h_sd^{-1} h_st (Eq. 3.25). Translational stiffness can be referred to base/desired/tool frame depending on which translational error coordinate is chosen (Eq. 3.26). Rotational stiffness via modified Euler angles (tφ_td = φ(R_td), robust to π/2 error for RPY) or via the unit-quaternion vector part, x̃_r := 2 ε_dt, which is singularity-free on SO(3). When x̃ is not a simple difference x − x_d, the model is reformulated with J_x(q,t) = ∂x̃/∂q and a feedforward velocity v_t(q,t) = −∂x̃/∂t (substitutions J → J_x, ẋ_d → −v̇_t), expressible via the body Jacobian J^b(q) (Eq. 3.27).
Regime: This is a fixed-base (or implicitly grounded) terrestrial serial manipulator — neither free-flying nor free-floating. There is no floating base, no momentum conservation, and gravity g(q) is present and explicitly compensated. The transferable content is the operational-space inertia structure, the skew-symmetry/passivity machinery, the position-dependent damping design, and the singularity treatment — all of which carry over to the manipulator subsystem of a free-flying space robot once J, M, Λ are replaced by their generalized (coupled base+arm) counterparts.
Relevance to thesis
The operational-space inertia Λ = J^{-T} M J^{-1} and the skew-symmetry of Λ̇ − 2μ are exactly the structural facts that generalize to a free-flying space manipulator when one uses the generalized Jacobian and the full (base + arm) mass matrix; the passivity-based PD+ stability argument (Props 3.4–3.5) is a clean template for a Cartesian end-effector tracking/compliance controller on our 6-DOF-base platform. The damping-design method (simultaneous diagonalization against a configuration-dependent inertia) is directly relevant because a space manipulator’s task-space inertia is strongly configuration- and base-coupling-dependent. The singularity discussion is important: a free-flying arm additionally suffers dynamic singularities (configuration-dependent coupling), so the manipulability-potential avoidance idea and the representation-vs-kinematic distinction are starting points, though m_kin = √det(J J^T) must be re-derived with the generalized Jacobian. The quaternion-based singularity-free orientation stiffness is reusable verbatim for end-effector attitude control.
Connections
Topics: operational_space_formulation · cartesian_impedance_control · kinematic_singularity · manipulability_measure
Key Equations / Quotes
"" (Eq. 3.12)
"" (Eq. 3.10)
Lemma 3.2: “The matrix
Λ̇(x) − 2μ(x,ẋ)… is skew symmetric for allx ∈ Q̄_c^pand allẋ ∈ ℝ^m.” (p. 32)
No-inertia-shaping closed loop: "" (Eq. 3.16)
“The second type of singularities, the kinematic singularities, however, cannot be avoided. They are inherently connected to the kinematic structure of the manipulator… From a mathematical point of view the kinematic singularities are the singularities of the body Jacobian.” (p. 38)
Manipulability potential:
V_m(q) = k_s (m_kin(q) − m_0)^2form_kin ≤ m_0, else0(Eq. 3.23), withm_kin(q) = √det(J(q)J(q)^T)(Eq. 3.22), andτ = τ_c − ∂V_m/∂q(Eq. 3.24).
Damping design:
D_d(x_0) = 2 Q(x_0)^T diag(ξ_i √λ^Λ_{K,i}) Q(x_0),ξ_i ∈ [0,1](p. 37).
Open Questions
- The singularity-avoidance superposition can create a local minimum of the combined potential near a singular configuration where the robot “could get stuck” (p. 40). The chapter does not give conditions guaranteeing the desired equilibrium remains the unique minimum.
- Proposition 3.4 assumes the Cartesian coordinates are globally valid (
Q̄_c^p = ℝ^n), which is impossible for any minimal SO(3) chart; the global-stability claim is therefore contingent on the (acknowledged) idealization and a non-minimal parameterization is only sketched. - The quasi-static damping design neglects the Coriolis/centrifugal term
μ; the chapter asserts stability is unaffected (sinceD_d ≻ 0) but gives no transient-performance bound under fast motion whereμis non-negligible. - Extension to the redundant case is explicitly deferred to the next chapter and is not addressed here.