Nonlinear Observer Design for GNSS and IMU Integration
MetadataShow full item record
In order to efficiently control an unmanned vehicle, knowledge about the position, velocity and attitude (orientation) is needed. This thesis address this problem, and designs a navigation system for local navigation using low-cost sensors. Two loosely coupled GNSS/IMU integration filters are developed using a direct state estimation approach. The first is a quaternion based multiplicative extended Kalman filter (MEKF). A multiplicative filter differs from the usual EKF in how the attitude is represented, which is done by a quaternion product. The filter avoids the singular covariance matrix caused by the constraint on the quaternion. Two versions of the filter are developed: one using the q-method to get a measurement of the attitude; and one using vector measurements directly. The second is a nonlinear observer, termed HuaMahony. It is derived by combining two nonlinear algorithms proposed by Mahony et al. and Hua. The resulting nonlinear observer is able to estimate the linear acceleration as well as gyro bias. The nonlinear observer is written on an EKF-like discrete-time corrector-predictor formulation.Both the multiplicative extended Kalman filter and the nonlinear observer are tested and verified through simulations and experimental data. Tests are carried out to examine how different disturbances affects the estimates and to compare the performance results. Simulation results shows an average dynamic accuracy of <0.5 deg RMS for the attitude estimates, for both observers. The results from the experimental tests shows an average roll, pitch and yaw accuracy of (0.3 0.3 2.0) and (0.8 0.7 4.4) deg RMS for the MEKF and HuaMahony observer respectively, where it has been assumed that the Xsens MTi-G built-in EKF estimates are the true values. An advantage of the MEKF is quicker convergence from initial errors, while an advantage of the HuaMahony observer is less computational load. Results show that the HuaMahony is three times faster than the MEKF when it comes to execution time.