Steady-State (Cruise-Lag) Pose-Error Floor

Statement

For the coordinated control law tracking a moving reference at constant cruise, the stacked
outer-loop pose error
(notation.md) does not decay to zero: it settles to a non-zero standing offset
, the cruise-lag floor. When the error-rate Jacobian
is invertible,

\tilde{\boldsymbol{x}}_{ss}=-\big(\boldsymbol{J}_{\tilde{x}}^\top\breve{\boldsymbol{K}}\big)^{-1}\Big[\breve{\boldsymbol{C}}\,\breve{\boldsymbol{v}}_d+\big(\boldsymbol{C}_c+\breve{\boldsymbol{D}}\,\breve{\boldsymbol{G}}_{v_c}\big)\dot{\tilde{\boldsymbol{x}}}_c\Big]. \tag{final.tex eq x_ss / current_sota eq 4.14}

This is the equilibrium of the working closed-loop attitude+EE block (eq 4.12). The floor is set by
the proportional restoring term balancing two
forcing terms: the cruising arm’s Coriolis force ,
and the CoM coupling .

Coriolis-only idealization. If the CoM is tracked perfectly (),
the coupling term drops and the floor reduces to

\tilde{\boldsymbol{x}}_{ss}=-\big(\boldsymbol{J}_{\tilde{x}}^\top\breve{\boldsymbol{K}}\big)^{-1}\breve{\boldsymbol{C}}\,\breve{\boldsymbol{v}}_d. \tag{current_sota eq 4.14, Coriolis-only limit}

The operational metric is the magnitude of the EE-position part,
(current_sota §7), which under finite-difference
feedforward settles near and is predicted to drop toward this analytic floor once
the analytic acceleration feedforward (current_sota §5.6) replaces the finite-differenced demand. Ours:
this floor formula and its cruise-lag interpretation are the project’s reading of the Giordano closed loop,
not a result stated in the paper (which analyzes the regulator, eq 4.15-4.16).

Assumptions

  • Steady state along the reference: , so when
    exists the velocity matches the demand, ,
    and (by differentiating ) the inertial acceleration
    terms ,
    and the velocity-error damping
    all cancel from eq 4.12. What survives is the algebraic balance
    .
  • invertible: requires the error-rate
    Jacobian
    nonsingular (attitude errors away from the quaternion singular set) and SPD.
  • Non-zero forcing at the operating point: (the arm is
    cruising), so . A floor exists only
    because the controller is asked to track motion, not hold a setpoint — at rest the regulator
    (eqs 4.15-4.16) drives .
  • Circumcentroidal reduction in force: the attitude+EE block (,
    reduced) is the relevant subsystem, the CoM having decoupled — see
    circumcentroidal_decoupling. The hat/breve distinction is
    load-bearing here: in eq 4.14 is the reduced Coriolis, not
    the full .

Why the CoM-coupling term is kept

The Coriolis-only limit assumes perfect CoM tracking, .
In practice the inner CoM loop is held off equilibrium by residual forcing: the measured CoM error
settles near , not zero. The CoM error obeys the homogeneous damped second-order
system
(eq 4.9), but with a small standing the coupling
term
remains a genuine (if small) contributor to the EE floor, so it is retained in eq 4.14.

Proof sketch

No dedicated proof yet (Phase-D deepening home). The floor formula is used in
derate_impedance_vs_speed.md (the
relocation under impedance
softening) and referenced in threshold_derivation.md;
a dedicated generated/math/steady_state_error_floor.md write-up is planned for Phase D.

  1. Start from the project’s working control equation (current_sota eq 4.12), the expanded closed loop
    for the reduced attitude+EE block with damping-on-error and acceleration feedforward.
  2. Impose . Through the rate map (eq 4.3),
    ,
    conclude at steady state (when
    exists), cancelling the inertial and velocity-error damping terms.
  3. Solve the residual algebraic balance for , giving eq 4.14.
  4. Specialize for the Coriolis-only idealization; bound
    the kept coupling term from the measured CoM error.

The deepening (sensitivity of to , the
-derate relocation
under impedance softening, and the analytic-FF floor prediction) is Phase D work.

Source / provenance

  • Literature: giordano2019coordinated supplies the closed-loop
    structure (eqs 22, 26-31, 34) and the regulator stability result (eqs 36-38). The paper analyzes the
    regulator (setpoint), where ; it does not state a cruise-lag
    floor. Regime: Giordano 2019 is a free-flying (thrusters + arm, actuated base) formulation —
    the same regime as ours; this is not a free-floating result.
  • Ours: the steady-state floor (eq 4.14), its cruise-lag reading, the
    retention of the CoM-coupling term against the measured CoM error, and the
    analytic-FF floor prediction are the project’s own contributions, built on the project’s working
    control equation (current_sota eq 4.12, final.tex eq 34b).
  • Builds on circumcentroidal_decoupling (the reduced
    block in which eq 4.14 lives).

Caveats

  • Breaks where is singular (large attitude errors, quaternion
    singular set): the inversion fails and
    no longer follows. The formula is a small-error,
    on-reference statement.
  • Distinct from singularity collapse. The cruise-lag floor is a controller-stiffness phenomenon, not
    a kinematic-singularity one. Near a circumcentroidal singularity the relevant object is
    and the floor can relocate under the impedance derate
    (, current_sota §6.3) — the
    arm goes slack rather than driving toward the singular direction. That relocation is a separate
    analysis (singularity-handling layer).
  • Coriolis-only is optimistic. It assumes perfect CoM tracking; the kept coupling term is the honest
    correction for the off-equilibrium inner loop. Quantifying its contribution is Phase D.
  • Operational floor vs analytic floor. The measured is under
    finite-difference feedforward; the analytic floor of eq 4.14 is the predicted limit under the
    analytic acceleration feedforward (current_sota §5.6). The gap closure is unverified pending the
    Phase D deepening.

Implementation (sims wiki)

External — into the code wiki via the sims_wiki/ symlink (resolves in Obsidian, not GitHub).