Evaluation of a Low-Cost MEMS IMU for Indoor Positioning System
Md. Galib Hasan1, Md. Kamrul Hasan2, Ragib Ahsan3, Tania Sultana4, R. C. Bhowmik5
1Md. Galib Hasan, EEE, Pabna University of Science & Technology, Pabna, Bangladesh.
2Md. Kamrul Hasan, Embedded System, SinePulse GmbH, Munich, Germany.
3Ragib Ahsan, Game Development, Playdom, Dhaka, Bangladesh.
4Tania Sultana, Commercial Operation, DESCO, Dhaka, Bangladesh.
5R. C. Bhowmik, Mathematics, Pabna University of Science & Technology, Pabna, Bangladesh.
Manuscript received on September 11, 2013. | Revised Manuscript received on September 15, 2013. | Manuscript published on September 25, 2013. | PP: 1-5 | Volume-1, Issue-11, September 2013. | Retrieval Number: K04800911113/2013©BEIESP
Open Access | Ethics and Policies | Cite | Mendeley
© The Authors. Published By: Blue Eyes Intelligence Engineering and Sciences Publication (BEIESP). This is an open access article under the CC BY-NC-ND license (http://creativecommons.org/licenses/by-nc-nd/4.0/)
Abstract: Indoor Positioning Systems (IPS) have gained popularity for their potential application to track people in risky environments or in rescue missions. This paper looks at how an Arduino combined with a foot-mounted inertial measuring unit (IMU) can be used to provide absolute positioning despite the presence of drift in the inertial unit. The IMU we have used contains a tri-axis accelerometer, a tri-axis gyroscope and a tri-axis magnetometer. The orientation was calculated using quaternion output from the IMU which uses gyroscope with drift correction performed by referencing the earth’s gravity for pitch and roll and the geomagnetic field from magnetometer for heading. Acceleration signal outputted by the IMU is doubly integrated with time that yields the travelled distance. During the preceding time instants, the position information becomes increasingly untrustworthy and the validity of the position updates decays. So, we used a smoother algorithm based Kalman filter for better estimation accuracy in position estimation. A second method for distance measurement was implemented which uses an algorithm that measures the distance traveled by counting the number of steps. The step length determination was made by an algorithm that takes the angle between legs made by the accelerometer and gyroscope. Experiments were conducted on different scenarios and the results were compared which indicate that the typical positioning accuracy is below 5% for both methods. Issues and proposed improvements to the system are also discussed in this work.
Keywords: IPS, IMU, Kalman Filter, Arduino, Quaternion.