Problem
Online magnetometer calibration is critical for GNSS-denied navigation. However, heading estimation and magnetic calibration states are coupled: errors in yaw can be incorrectly absorbed as hard-iron biases or scale-factor distortions. This coupling often causes recursive filters to diverge or settle into self-consistent but incorrect states under large initial attitude errors.
Approach
- Celestial Aiding: Fused polarisation-camera bearing cues (generated using physically consistent sky models via PySkyLumos) to provide an independent celestial heading vector.
- State Partitioning: Implemented a Rao-Blackwellised Particle Filter (RBPF) where non-Gaussian attitude hypotheses are sampled via particles, while the remaining 32-dimensional conditional states (including calibration parameters) are recursively updated using per-particle Unscented Kalman Filters (UKFs).
- Adaptive Admission Gate: Formulated an online consistency check based on circular heading dispersion and innovation residuals. Magnetometer calibration updates are deferred during large attitude transients and only admitted once the celestial cue has concentrated the heading.
Key Highlights
- Convergence Target: Evaluate convergence behaviour across Monte Carlo simulations with large initial heading offsets.
- Decoupled Ambiguity: Resolve the yaw-calibration coupling to allow reliable online estimation of hard-iron and scale-factor parameters.
- Planned Validation: Compare heading stability and calibration accuracy across simulated GNSS-denied route scenarios and flight profiles during extended optical blockages.