Shoe mounted Inertial Measurement Units (IMU) are often used for indoor pedestrian navigation systems. The presence of a zero velocity condition during the stance phase enables Zero Velocity Updates (ZUPT) to be applied regularly every time the user takes a step. Most of the velocity and attitude errors can be estimated using ZUPTs. However, good heading estimation for such a system remains a challenge. This is due to the poor observability of heading error for a low cost Micro-Electro-Mechanical (MEMS) IMU, even with the use of ZUPTs in a Kalman filter. In this paper, the same approach is adopted where a MEMS IMU is mounted on a shoe, but with additional constraints applied. The three constraints proposed herein are used to generate measurement updates for a Kalman filter, known as ‘Heading Update’, ‘Zero Integrated Heading Rate Update’ and ‘Height Update’.
The first constraint involves restricting heading drift in a typical building where the user is walking. Due to the fact that typical buildings are rectangular in shape, an assumption is made that most walking in this environment is constrained to only follow one of the four main headings of the building. A second constraint is further used to restrict heading drift during a non-walking situation. This is carried out because the first constraint cannot be applied when the user is stationary. Finally, the third constraint is applied to limit the error growth in height. An assumption is made that the height changes in indoor buildings are only caused when the user walks up and down a staircase. Several trials were shown to demonstrate the effectiveness of integrating these constraints for indoor pedestrian navigation. The results show that an average return position error of 4·62 meters is obtained for an average distance of 1557 meters using only a low cost MEMS IMU.