Inertial measurement units (IMUs) are fundamental for attitude control of drones. With the advancements in micro-electro-mechanical systems (MEMS) fabrication processes, size, power consumption, and price of these sensors have reduced significantly and attracted many new applications. However, this came at the expense of sensors requiring frequent recalibration, as they are highly contaminated with systematic errors. This paper presents a novel method to jointly calibrate the accelerometer, gyroscope, and magnetometer triad in a MEMS IMU without additional equipment. Opportunistic zero change in velocity and position updates, and inclination updates were used in conjunction with relative orientation updates from magnetometers in a robust batch least-squares adjustment. Solutions from the proposed self-calibration were compared to existing calibration methods. Empirical results suggest that the new method is robust against magnetic distortions and can achieve performance similar to a specialized calibration that uses a more accurate (and expensive) IMU as reference. The jointly estimated accelerometer and gyroscope calibration parameters can deliver a more accurate dead-reckoning solution than the popular multi-position calibration method (i.e., 54% improvement in orientation accuracy) by recovering the gyroscope scale error and other systematic errors. In addition, it can improve parameter observability as well as reduce calibration time by incorporating dynamic data with static orientations. The proposed calibration was also applied on-site pre-mission by simply waving the sensor by hand and was able to improve the orientation tracking accuracy by 73%.
This is an open access article distributed under the Creative Commons Attribution License
which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited