  This article addresses the problem of dynamic on-line estimation and
compensation of hard-iron and soft-iron biases of 3-axis magnetometers under
dynamic motion in field robotics, utilizing only biased measurements from a
3-axis magnetometer and a 3-axis angular rate sensor. The proposed magnetometer
and angular velocity bias estimator (MAVBE) utilizes a 15-state process model
encoding the nonlinear process dynamics for the magnetometer signal subject to
angular velocity excursions, while simultaneously estimating 9 magnetometer
bias parameters and 3 angular rate sensor bias parameters, within an extended
Kalman filter framework. Bias parameter local observability is numerically
evaluated. The bias-compensated signals, together with 3-axis accelerometer
signals, are utilized to estimate bias compensated magnetic geodetic heading.
Performance of the proposed MAVBE method is evaluated in comparison to the
widely cited magnetometer-only TWOSTEP method in numerical simulations,
laboratory experiments, and full-scale field trials of an instrumented
autonomous underwater vehicle in the Chesapeake Bay, MD, USA. For the proposed
MAVBE, (i) instrument attitude is not required to estimate biases, and the
results show that (ii) the biases are locally observable, (iii) the bias
estimates converge rapidly to true bias parameters, (iv) only modest instrument
excitation is required for bias estimate convergence, and (v) compensation for
magnetometer hard-iron and soft-iron biases dramatically improves dynamic
heading estimation accuracy.
