Navigation with IMU and Magnetometer

Overview

This report explores navigation techniques using an IMU and magnetometer for tasks such as calibration, yaw estimation, forward velocity estimation, and trajectory analysis. Calibration addressed hard and soft iron distortions, while complementary filtering enhanced the reliability of yaw estimation. Integration methods were utilized for velocity and position estimations, revealing challenges and limitations in dead reckoning.

Key Sections

1. Magnetometer Calibration

Calibration was performed to correct hard and soft iron distortions. Hard iron errors arise from nearby magnetic materials, while soft iron errors stem from ferromagnetic components in the car. Corrections involved fitting an ellipse to raw magnetometer data and applying transformations (rotation and scaling) to convert the ellipse into a circle.

2. Yaw Estimation

Yaw estimation was achieved using a complementary filter combining low-frequency magnetometer data with high-frequency gyroscope data. This method proved more reliable than using either source independently. The complementary filter’s output closely matched the IMU's Kalman-filtered yaw data.

3. Forward Velocity Estimation

Forward velocity was calculated from GPS data and integrated acceleration. Bias correction involved identifying stationary periods and applying adjustments to acceleration data. Challenges included handling noise, jerks, and gravitational effects on slopes.

4. Y Acceleration

Y acceleration was estimated by combining gyroscope angular velocity with corrected X velocity. High-frequency noise in accelerometer readings was mitigated using a low-pass filter, resulting in a more accurate estimate matching gyroscope data.

5. Trajectory Estimation

Trajectories were compared between GPS data and estimates derived from forward velocity integration. Errors in velocity propagated into displacement, with the estimated trajectory drifting from the GPS trajectory over time. Accuracy was reliable within 2 meters for approximately 10 seconds.

Conclusion

The report demonstrates the effectiveness and challenges of sensor fusion techniques in navigation. While complementary filtering and bias correction improved estimates, inherent limitations of accelerometer noise and integration errors highlight areas for further improvement. Observed performance aligns with expected device specifications.

View Driver Files on GitLab