Papers
Topics
Authors
Recent
Search
2000 character limit reached

Multi-Contact Geometric Yaw Correction

Updated 26 February 2026
  • Multi-contact geometric yaw correction is a method that leverages fixed geometric relationships among multiple stance contacts to constrain and correct yaw drift.
  • It fuses joint-torque-based contact selection, forward kinematics, and inertial measurements to provide a robust, drift-free heading update mechanism.
  • The approach enhances state estimation in challenging environments, proving effective across various robotic platforms in GPS-denied and visually impaired conditions.

Multi-contact geometric yaw correction is a method for constraining and correcting the yaw (heading) estimate of legged robots using geometric relationships between multiple stance contacts, leveraging only proprioceptive sensing. This approach directly counters the unbounded yaw drift that arises in dead-reckoned state estimators relying on IMU integration. By exploiting the fixed geometry imposed by multiple stationary contacts, the estimator fuses information from joint-torque-based contact selection, forward kinematics, and inertial measurements, yielding a robust heading update mechanism that does not require exteroceptive sensing such as cameras or LiDAR (Sun et al., 19 Feb 2026). Additionally, related geometric mechanics formulations provide a theoretical framework for quantifying yaw changes due to discrete contact switching, further informing the design and correctness of yaw correction strategies (Prasad et al., 2023).

1. Motivation and Problem Statement

Legged robot odometry based solely on IMU and joint sensors suffers from unconstrained heading (yaw) drift. While roll and pitch remain observable through gravity alignment in the IMU, the absence of absolute heading information allows the yaw estimate to wander unboundedly, accumulating integration errors over time. During phases where two or more feet are in fixed stance, their world-frame locations, recorded at touchdown, must remain stationary if there is no foot slip. The geometric relationships (relative vectors) between these fixed contact points form a drift-free reference, providing a direct cue to correct heading drift.

In such systems, the availability of multiple, reliable stance contacts creates geometric constraints that can be formalized mathematically and exploited algorithmically to achieve robust, drift-suppressing yaw correction (Sun et al., 19 Feb 2026).

2. Mathematical Formulation of Multi-Contact Geometric Yaw Correction

Let FW\mathcal F_W denote the world frame and FB\mathcal F_B the robot's body frame. At time tkt_k, the estimated pose is (pWB,k, RWB,k)(\mathbf p_{WB,k},\,\mathbf R_{WB,k}), with orientation

RWB,k=Rz(ψk)Ry(θk)Rx(ϕk),\mathbf R_{WB,k} = R_z(\psi_k) R_y(\theta_k) R_x(\phi_k),

where ψk\psi_k is yaw, θk\theta_k pitch, ϕk\phi_k roll.

Define the contact set at tkt_k:

Ck={i:contact detected for leg i}.\mathcal C_k = \{ i : \text{contact detected for leg } i \}.

For each FB\mathcal F_B0,

  • FB\mathcal F_B1: body-frame foot position via kinematics,
  • FB\mathcal F_B2: world-frame footfall position, fixed during stance.

For all unordered pairs FB\mathcal F_B3:

  • Body-frame vector: FB\mathcal F_B4,
  • World-frame vector: FB\mathcal F_B5.

Tilt compensation removes roll/pitch from the body-frame vector:

FB\mathcal F_B6

FB\mathcal F_B7

Project both vectors onto the FB\mathcal F_B8-plane. The instantaneous yaw aligning FB\mathcal F_B9 to tkt_k0 is

tkt_k1

Aggregate pairwise yaw estimates using the circular mean:

tkt_k2

The yaw error is tkt_k3, and the correction is applied via a bounded gain tkt_k4:

tkt_k5

The gain tkt_k6 increases with contact stability, reaching unity in prolonged four-foot stance and returning to a minimal base value tkt_k7 when contacts are intermittent.

3. Contact Detection and Wrench-Based Selection

Reliable detection of stance contacts is critical. For each leg tkt_k8, the contact force in the body frame is estimated from joint torques:

tkt_k9

where (pWB,k, RWB,k)(\mathbf p_{WB,k},\,\mathbf R_{WB,k})0 is the (pWB,k, RWB,k)(\mathbf p_{WB,k},\,\mathbf R_{WB,k})1 geometric Jacobian and (pWB,k, RWB,k)(\mathbf p_{WB,k},\,\mathbf R_{WB,k})2 the measured joint torques.

Transform the force to the world frame:

(pWB,k, RWB,k)(\mathbf p_{WB,k},\,\mathbf R_{WB,k})3

A leg is declared in contact if its vertical force surpasses a threshold: (pWB,k, RWB,k)(\mathbf p_{WB,k},\,\mathbf R_{WB,k})4. An entering contact updates the touchdown world location and triggers height correction.

This judicious selection of contacts ensures geometric constraints are anchored to genuine, load-bearing stance events, avoiding the corruption of the geometry by transient or unreliable contacts (Sun et al., 19 Feb 2026).

4. Algorithmic Implementation and Gain Scheduling

The method's workflow is summarized in the following steps:

  1. IMU and Joint Data Acquisition: Read roll (pWB,k, RWB,k)(\mathbf p_{WB,k},\,\mathbf R_{WB,k})5, pitch (pWB,k, RWB,k)(\mathbf p_{WB,k},\,\mathbf R_{WB,k})6, gyro yaw rate; read joint angles (pWB,k, RWB,k)(\mathbf p_{WB,k},\,\mathbf R_{WB,k})7, torques (pWB,k, RWB,k)(\mathbf p_{WB,k},\,\mathbf R_{WB,k})8.
  2. Contact Detection: For each leg, compute (pWB,k, RWB,k)(\mathbf p_{WB,k},\,\mathbf R_{WB,k})9 and RWB,k=Rz(ψk)Ry(θk)Rx(ϕk),\mathbf R_{WB,k} = R_z(\psi_k) R_y(\theta_k) R_x(\phi_k),0; if RWB,k=Rz(ψk)Ry(θk)Rx(ϕk),\mathbf R_{WB,k} = R_z(\psi_k) R_y(\theta_k) R_x(\phi_k),1, register contact and, upon touchdown, record RWB,k=Rz(ψk)Ry(θk)Rx(ϕk),\mathbf R_{WB,k} = R_z(\psi_k) R_y(\theta_k) R_x(\phi_k),2 with height correction.
  3. Yaw Correction (when RWB,k=Rz(ψk)Ry(θk)Rx(ϕk),\mathbf R_{WB,k} = R_z(\psi_k) R_y(\theta_k) R_x(\phi_k),3):
    • If all legs are in contact, ramp RWB,k=Rz(ψk)Ry(θk)Rx(Ï•k),\mathbf R_{WB,k} = R_z(\psi_k) R_y(\theta_k) R_x(\phi_k),4 from a small value RWB,k=Rz(ψk)Ry(θk)Rx(Ï•k),\mathbf R_{WB,k} = R_z(\psi_k) R_y(\theta_k) R_x(\phi_k),5 to RWB,k=Rz(ψk)Ry(θk)Rx(Ï•k),\mathbf R_{WB,k} = R_z(\psi_k) R_y(\theta_k) R_x(\phi_k),6 over RWB,k=Rz(ψk)Ry(θk)Rx(Ï•k),\mathbf R_{WB,k} = R_z(\psi_k) R_y(\theta_k) R_x(\phi_k),7;
    • Otherwise, reset the ramp and set RWB,k=Rz(ψk)Ry(θk)Rx(Ï•k),\mathbf R_{WB,k} = R_z(\psi_k) R_y(\theta_k) R_x(\phi_k),8.
    • Compute all unordered pairwise yaw estimates RWB,k=Rz(ψk)Ry(θk)Rx(Ï•k),\mathbf R_{WB,k} = R_z(\psi_k) R_y(\theta_k) R_x(\phi_k),9 and aggregate by the circular mean to obtain ψk\psi_k0.
    • Update yaw: ψk\psi_k1.
  4. Fallback: When less than two contacts, retain ψk\psi_k2, and no update is applied.
  5. Proceed with Standard Estimation: Use ψk\psi_k3 as the current yaw for the rest of the estimator update (Sun et al., 19 Feb 2026).

This procedure achieves a dynamic tradeoff: conservatism during intermittent contacts (limit overcorrection) and aggressive correction in stable, full support.

5. Relation to Geometric Mechanics of Contact-Switching Gaits

The geometric mechanics formalism for contact-switching systems generalizes yaw correction to hybrid shape-spaces and discrete contact transitions. A hybrid configuration space ψk\psi_k4, with ψk\psi_k5 a continuous shape and ψk\psi_k6 the set of active contacts, yields a local connection ψk\psi_k7 mapping shape velocities to body twist. Upon switching from contact mode ψk\psi_k8 to ψk\psi_k9, the yaw difference is encoded by:

θk\theta_k0

Accrued yaw over a cycle of θk\theta_k1 switches is then:

θk\theta_k2

This framework, detailed in (Prasad et al., 2023), provides theoretical guarantees for aggregate rotational effects due to discrete gait transitions, offering planning and analysis tools for optimizing net yaw or analyzing residual drift in gaits involving nonholonomic contact switching.

6. Quantitative Performance and Efficacy

Empirical evaluation on four robot platforms demonstrates the efficacy of multi-contact geometric yaw correction in proprioceptive odometry (Sun et al., 19 Feb 2026). Key results include:

Platform Loop Length (m) Loop-Closure Error (m; %) Vertical Error (m)
Astrall A 200 0.1638 (0.08%) 0.219
Astrall B 200 0.2264 (0.11%) 0.199
Astrall C 700 7.68 (1.1%) 0.540
Unitree Go2 EDU 120 2.2138 (1.8%) < 0.1

During prolonged static stance, IMU-based yaw drift is effectively arrested, and heading remains locked. When IMU yaw integration is disabled entirely, kinematics-only heading retains residual errors of approximately θk\theta_k3 per closed turn (short steps) and θk\theta_k4 (long steps), demonstrating graceful degradation. This confirms the robustness of the multi-contact geometric principle for maintaining heading consistency under realistic proprioceptive-only conditions.

7. Significance and Applications

Multi-contact geometric yaw correction provides a robust solution for purely-proprioceptive legged state estimation. Its reliance on internal sensing enables drift suppression without exteroceptive aids, increasing reliability in visually degraded or GPS-denied environments. The method demonstrates compatibility with a range of platforms, including bipeds, quadrupeds, and wheel-legged robots, and is lightweight enough for real-time deployment. The fusion of wrench-based contact selection, kinematics, and geometric averaging further ensures resilience to transient contact fluctuations and offers a modular ingredient for advanced SLAM and navigation systems in legged robots (Sun et al., 19 Feb 2026). The theoretical connection to geometric mechanics yields pathways for systematic gait optimization targeting precise rotational outcomes (Prasad et al., 2023).

Definition Search Book Streamline Icon: https://streamlinehq.com
References (2)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to Multi-Contact Geometric Yaw Correction.