Offline Positioning System using IMU
Indoor positioning system using Inertial Measurement Unit (IMU) sensors for GPS-denied environments.
Demo Video
Overview
This project tackles the challenge of accurate indoor positioning where GPS signals are unavailable. Using an Inertial Measurement Unit (IMU) with accelerometer, gyroscope, and magnetometer sensors, the system performs dead-reckoning navigation through sensor fusion algorithms.
The implementation focuses on minimizing drift through advanced filtering techniques and regular calibration procedures. The system provides real-time position and orientation tracking suitable for indoor robotics, navigation aids, and location-based services.
Electrical Design
The system uses a 9-DOF IMU sensor (MPU-9250) interfaced with an Arduino microcontroller via I2C communication. The sensor provides tri-axis accelerometer, gyroscope, and magnetometer data at 100Hz sampling rate. Power management ensures stable operation with noise filtering on the supply lines.
The compact circuit design allows for integration into wearable or mobile platforms. Additional components include a battery management system for portable operation and LED indicators for system status.
Software Architecture
The software implements an Extended Kalman Filter (EKF) for sensor fusion, combining accelerometer data for position estimation with gyroscope data for orientation tracking. The magnetometer provides heading reference to prevent cumulative yaw drift.
The Python processing pipeline reads sensor data over serial connection, applies calibration matrices, runs the EKF algorithm, and outputs position/orientation estimates. The system includes automatic drift detection and correction mechanisms, as well as configurable noise parameters for different environments.
Results & Achievements
Testing showed position accuracy within 5% error over 10-meter traversals, with orientation tracking accurate to within 2 degrees. The system successfully operated for 30+ minute sessions with minimal drift accumulation. Performance metrics demonstrate its suitability for indoor robot navigation and personal tracking applications.
Future enhancements include integrating visual odometry for drift correction and implementing zero-velocity updates (ZUPT) for stationary detection.