Next Article in Journal
Resource-Efficient Fusion with Pre-Compensated Transmissions for Cooperative Spectrum Sensing
Next Article in Special Issue
Afocal Optical Flow Sensor for Reducing Vertical Height Sensitivity in Indoor Robot Localization and Navigation
Previous Article in Journal
A Micro-Computed Tomography Technique to Study the Quality of Fibre Optics Embedded in Composite Materials
Previous Article in Special Issue
Mobile Robot Positioning with 433-MHz Wireless Motes with Varying Transmission Powers and a Particle Filter
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Quaternion-Based Unscented Kalman Filter for Accurate Indoor Heading Estimation Using Wearable Multi-Sensor System

1
School of Mechanical Science and Engineering, Huazhong University of Science and Technology, 1037 Luoyu Road, Wuhan 430074, China
2
School of Power and Mechanical Engineering, Wuhan University, 8 East Lake South Road, Wuhan 430072, China
*
Author to whom correspondence should be addressed.
Sensors 2015, 15(5), 10872-10890; https://doi.org/10.3390/s150510872
Submission received: 23 March 2015 / Revised: 30 April 2015 / Accepted: 4 May 2015 / Published: 7 May 2015
(This article belongs to the Special Issue Sensors for Indoor Mapping and Navigation)

Abstract

:
Inertial navigation based on micro-electromechanical system (MEMS) inertial measurement units (IMUs) has attracted numerous researchers due to its high reliability and independence. The heading estimation, as one of the most important parts of inertial navigation, has been a research focus in this field. Heading estimation using magnetometers is perturbed by magnetic disturbances, such as indoor concrete structures and electronic equipment. The MEMS gyroscope is also used for heading estimation. However, the accuracy of gyroscope is unreliable with time. In this paper, a wearable multi-sensor system has been designed to obtain the high-accuracy indoor heading estimation, according to a quaternion-based unscented Kalman filter (UKF) algorithm. The proposed multi-sensor system including one three-axis accelerometer, three single-axis gyroscopes, one three-axis magnetometer and one microprocessor minimizes the size and cost. The wearable multi-sensor system was fixed on waist of pedestrian and the quadrotor unmanned aerial vehicle (UAV) for heading estimation experiments in our college building. The results show that the mean heading estimation errors are less 10° and 5° to multi-sensor system fixed on waist of pedestrian and the quadrotor UAV, respectively, compared to the reference path.

1. Introduction

Autonomous indoor navigation is increasingly popular for pedestrians, mobile robots, and unmanned aerial vehicles (UAVs). The applications are not only for military purposes, but also for civil ones. The Global Position System (GPS) has a wide range of applications for navigation in land-, sea- and aviation-based fields, however, weak reception of GPS signals poses additional challenges to self-localization in indoor environments [1,2]. Therefore, it is necessary to explore the new positioning methods with better quality. For now, various techniques have been developed, such as Ultra-WideBand (UWB) communication [3], wireless local area network (WLAN) [4,5], WiFi-based [6,7,8], camera-based [9,10], ultrasonic sensors [11,12], laser-based [13], radio frequency identification (RFID) [14,15] and strapdown inertial navigation [16,17,18]. Among these techniques, inertial measurement unit (IMU)-based navigation is more competitive, owing to its independence of the existing infrastructures in buildings. This independence feature of IMU is particularly important for emergencies where there is no power supply in a building. Besides, it is convenient for strapdown inertial navigation to combine with GPS as an indoor-outdoor seamless navigation solution. The rapid development of micro-electro-mechanical system (MEMS) technology has accelerated the progress of IMUs, which have become low cost, small size, and low power consumption in recent years. However, the performance, e.g., long-term and short-term accuracy, of these low-cost MEMS IMU is limited by the complicated environment [19,20].
Accurate heading estimation plays a significant role in strapdown inertial navigation in indoor environments. The most common method is the magnetometer-based heading solution, which has been widely reported in [21,22,23,24], nevertheless, magnetometers are easily perturbed by magnetic disturbances from indoor iron structures and electronic equipment. Compensation of magnetic disturbances and magnetic perturbation detection methods for improving heading estimation are respectively demonstrated in [25,26]. With the current state of the art of MEMS technology, the accuracy of gyroscopes is not good enough for deriving heading estimation over longer terms because of their large biases and scale factors [27,28]. An effective method of minimizing drift in the heading estimation that relies solely on integration of rate signals from a gyro was examined to meet the challenges of making low-cost MEMS gyroscopes for the precise self-localization of indoor mobile robots [28,29]. Ali et al. proposed to use a Kalman filter algorithm of fusing low-cost MEMS gyroscope and magnetometer in a smartphone to obtain heading estimation with quaternion mechanization [30]. All the above works are inspirational, but regrettably, none of them has met the great challenge of heading estimation for complex indoor environments and moving carriers, even if the magnetometer calibration and restraining of gyroscope drift have been carried out.
A quaternion-based extended Kalman filter (EKF) algorithm has been proposed to improve heading determination with handheld IMUs in experiment and theory [31]. An integration algorithm using EKF was employed to reduce heading drift with a commercial IMU mounted on a shoe in indoor spaces [32]. Although these studies could offer effective heading estimations for indoor navigation, the linearization steps of EKF with the Jacobean matrix in attitude determination were not stable and accurate enough. In order to accommodate highly non-linear kinematics models related to the attitude estimation, the unscented Kalman filter (UKF) has been proved to be better solution than EKF, owing to the sigma-point approximation used in UKF [33,34]. The UKF in space applications had more robustness and accuracy than the EKF as shown in [35]. Although computational cost was a little higher than with EKF, there were new sigma-points algorithms aiming to reduce this cost in attitude determination [36]. However, those studies of UKF for attitude determination mainly focused on outdoor applications, and indoor context is equally important and more complicated. The quaternion-based Kalman filter was designed in [37] to for human body motion tracking, and the feasibility of real time human body motion tracking was validated. A novel quaternion Kalman filter was presented in [38], and the proposed filter succeeded in the particular case of high initial estimation errors whereas EKF fails to converge. A quaternion based EKF was developed for determining the orientation of a rigid body [39] and a quaternion-based indirect Kalman filter structure was used to obtain adaptive estimation of external acceleration [40]. However, the nonlinear estimations for attitude solution of the above works are weaker than UKF, which was demonstrated to be a powerful nonlinear estimation technique and had been shown to be a superior alternative to the EKF in a variety of applications [41].
To meet the requirements of accurate indoor heading estimation using a low-cost MEMS strapdown inertial navigation system, an effective method of quaternion-based UKF algorithm has been proposed. The quaternion-based UKF algorithm has the following advantages over the general Kalman filter and EKF [27,28,29,30,31,32,33,34,35,36,42,43,44,45,46]: (1) The quaternion-based orientation of an object has no singularities when the pitch angle passes through ±π/2 than Euler angles or Direction Cosine Matrix (DCM); (2) Quaternion-based matrix transformation has higher computational efficiency than Euler angles and DCM, and it is more suitable for our low cost MEMS multi-sensor system; (3) EKF models are linearized through a first order Taylor series expansion of the process/measurement models around the current state estimate, meanwhile, Jacobian matrix computation is quite complex; but UKF is second order approximation, which has capability of dealing with large and small attitude errors.
In this paper, a miniature wearable multi-sensor system is designed for accurate indoor heading estimation applied in mobile robots, indoor UAV and pedestrian navigation. The multi-sensor system is composed of low-cost MEMS devices, including one three-axis accelerometer, three single-axis gyroscopes, one three-axis magnetometer, and one microprocessor. The proposed quaternion-based UKF algorithm can make use of the complementary features of gyroscopes not affected by magnetic disturbance and magnetometers without long-term drift for heading estimation. The experiments are carried out with a multi-sensor system fixed on the waist of pedestrians and a quadrotor UAV.
This paper is organized as follows: in Section 2, the wearable multi-sensor system is described. The heading estimation multi-sensor system is discussed in Section 3. In Section 4 the proposed method comprising quaternion-based UKF algorithm is described in detail. Analysis of both experiments and results is given in Section 5. Finally, the conclusions and future work are summarized in Section 6.

2. Wearable Multi-Sensor System

The wearable multi-sensor system is a miniature strapdown inertial navigation system designed in our lab to satisfy the needs of indoor navigation for mobile robots, UAVs and pedestrians. The multi-sensor system is composed of one three-axis accelerometer, three single-axis gyroscopes and one magnetometer and one microprocessor, as shown in Figure 1, and its small size is 32 × 32 × 15 mm. In fact, our multi-sensor system can be regarded as a combination of an IMU and magnetometer. The accelerometer uses an ADXL312 made by Analog Devices Inc. (Norwood, MA, USA), and has a measurement range of ±12 g and high resolution of 2.9 mg/LSB with I2C/SPI bus for digital output. The ADXRS453 made by Analog Devices Inc. is selected for the three single-axis gyroscopes, and it is intended for industrial applications with its features of ±300°/s angular rate sensing and 16°/h bias instability. The three-axis magnetometer uses the HMC1053 from Honeywell Corp. (Morristown, NJ, USA), with a measurement range of ±6 gauss and resolution of 0.12 milligauss. We use the STM32F407 as our microprocessor, and it is based on the high-performance ARM Corte-M4 32-bit RISC core operating at a frequency of 168 MHz and 1 Mbyte of flash memory. It provides a good data calculation performance because of its ability to work with the large number of floating calculation points of the multi-sensor system.
Figure 1. Wearable multi-sensor system designed by our lab.
Figure 1. Wearable multi-sensor system designed by our lab.
Sensors 15 10872 g001
Figure 2. Transformation between NED and body coordinate system.
Figure 2. Transformation between NED and body coordinate system.
Sensors 15 10872 g002

3. Coordinate System and Heading Estimation

3.1. Coordinate Systems

The main task of a wearable multi-sensor system is to determine attitude angles which are the main navigation parameters of a body segment. The designed multi-sensor system is based on the geographical coordinate system and body coordinate system shown in Figure 2. The geographical coordinate system determines the north, east and vertical directions of the position of the body. This coordinate system is linked to the local Earth referential [47]. The orthogonal axes of N, E and D represent the axis of north, east, and upright respectively. The body coordinate system is attached to the multi-sensor system, and Xb, Yb and Zb represent the directions of its head, starboard and bottom respectively.
The body coordinate system (frame b) can be obtained from NED coordinate system (frame n) through three sequential rotation angles heading (ψ), pitch (θ) and roll (ϕ), which present the body attitude. The transformation matrix from ONED to OXbYbZb is written as:
C n b = [ cos ψ cos θ sin ψ cos θ sin θ sin ψ cos ϕ + cos ψ sin θ sin ϕ cos ψ c o s ϕ + sin ψ sin θ sin ϕ cos θ sin ϕ sin ψ sin ϕ + cos ψ sin θ cos ϕ cos ψ sin ϕ + sin ψ sin θ cos ϕ cos θ cos ϕ ]

3.2. Heading Estimation

The magnetometer is easily subject to interferences from external magnetic sources such as the steel of buildings and electronic equipment. These kinds of disturbance lead to unpredictable performance of the magnetometer, which is a major drawback of using magnetic sensors. Figure 3 is an example of a test of the magnetometer of the multi-sensor system in a corridor of our college building. There are elevators and other metallic structures in the corridor which can produce magnetic sources to perturb the magnetometer, as illustrated by the red line in Figure 3. Therefore, magnetometer-based heading estimation is not reliable.
Figure 3. Indoor magnetic field test.
Figure 3. Indoor magnetic field test.
Sensors 15 10872 g003
However, the gyroscope is not perturbed by indoor magnetic disturbances. In addition, the magnetometer-based heading is relatively stable in tests over longer hours. A new heading estimation method is proposed to make use of complementary features of gyroscopes and magnetometers, meanwhile, the quaternion-based UKF to eliminate the errors derived from the gyroscope and magnetometer is adopted. The flow chart of accurate heading estimation using quaternion-based UKF is shown in Figure 4.
Figure 4. Flow chart of quaternion-based UKF for heading estimation.
Figure 4. Flow chart of quaternion-based UKF for heading estimation.
Sensors 15 10872 g004

3.2.1. Heading Estimation Using a Magnetometer

The pitch angle and roll angle can be computed from acceleration signals and the yaw angle is determining by computing the magnetometer output [48,49]. The relationship between gravitational acceleration components ( a x , a y , a z ) in the frame b and the gravity vector in the frame n, when regardless of its acceleration of multi-senor system, can be written as:
[ a x a y a z ] = C n b [ 0 0 g ] = g [ sin θ sin ϕ cos θ cos ϕ cos θ ]
With the acceleration outputs the pitch angle and roll angle can be obtained as:
{ θ = arctan ( a x a y 2 + a z 2 ) ϕ = arctan ( a y a z )
However, the outputs of accelerometer are total accelerations, including the acceleration of the multi-senor system and the acceleration of gravity. In consideration of the multi-sensor system in indoor environments, GPS cannot be used in the acceleration measurement of the body coordinate system, meanwhile, the indoor body coordinate system is in a situation of low dynamics and motion at constant velocity. In this paper, the multi-sensor system fixed on pedestrians and quadrotors moves at a constant speed, and there is no sharp acceleration and deceleration in tests.
For heading angle computation with a magnetometer, the rotation relationship between the geomagnetic field intensity ( h x , h y , h z ) measured by the magnetometer in the frame b and the geomagnetic field intensity ( H x , H y , H z ) in the frame n could expressed as:
[ H x H y H z ] = [ cos θ sin ϕ sin θ cos ϕ sin θ 0 cos ϕ sin ϕ sin θ sin ϕ cos θ cos ϕ cos θ ] [ h x h y h z ]
Considering the local magnetic declination, the real local heading estimation based on magnetometer is:
ψ m a g = arctan ( h y cos ϕ + h z sin ϕ h x cos θ + h y sin ϕ sin θ + h z cos ϕ sin θ ) + D = arctan ( H 2 H 1 ) + D
where D is the local declination angle.

3.2.2. Heading Estimation Using a Gyroscope

Quaternion has the advantage of no singularity when the pitch is approaching 90° and higher computation efficiency than Euler angles. Quaternion is a four-dimension vector and subject to normalization, which is defined as follows:
q = [ q 0 q 1 q 2 q 3 ] T ,    q 0 2 + q 1 2 + q 2 2 + q 3 2 = 1
Quaternion-based state update model with gyroscope measurement is shown as follows:
q ˙ = 1 2 q [ 0 ω x ω y ω z ] = 1 2 [ 0 ω x ω y ω z ω x 0 ω z ω y ω y ω z 0 ω x ω z ω y ω x 0 ] [ q 0 q 1 q 2 q 3 ]
where ω x , ω y , ω z are the measurements of gyroscope.
We could provide the analytical solution of Equation (7), and the discrete form is:
q k + 1 = [ cos ( ϑ 2 ) I + sin ( ϑ 2 ) ϑ 2 A d t ] q k
where k = 1, 2,…n, A = 1 2 [ 0 ω x ω y ω z ω x 0 ω z ω y ω y ω z 0 ω x ω z ω y ω x 0 ] , ϑ = ( ω x d t ) 2 + ( ω y d t ) 2 + ( ω z d t ) 2 , and dt is sampling time.
The quaternion-based traditional matrix from NED coordinate system to body coordinate system in DCM form is written as:
C b n = [ q 0 2 + q 1 2 q 2 2 q 3 2 2 ( q 1 q 2 q 0 q 3 ) 2 ( q 1 q 3 + q 0 q 2 ) 2 ( q 1 q 2 + q 0 q 3 ) q 0 2 q 1 2 + q 2 2 q 3 2 2 ( q 2 q 3 + q 0 q 1 ) 2 ( q 1 q 3 + q 0 q 2 ) 2 ( q 2 q 3 + q 0 q 1 ) q 0 2 q 1 2 q 2 2 + q 3 2 ]  = [ C 11 C 12 C 13 C 21 C 22 C 23 C 31 C 32 C 33 ]
The reverse transformation matrix C n b can be simply obtained as the transpose of C b n . Therefore, the attitude angles based on quaternion and gyroscope in form of Euler angles is expressed as:
{ ϕ = arctan ( C 32 C 33 ) θ = arcsin ( C 31 ) ψ = arctan ( C 21 C 11 ) ψ g y r o = arctan ( 2 ( q 1 q 2 + q 0 q 3 ) q 0 2 + q 1 2 q 2 2 q 3 2 )

4. Quaternion-Based UKF

The Kalman filter is a model-based estimation technique. In this paper, the unscented Kalman filter is implemented to integrate the attitude determination from the gyroscope and magnetometer outputs through the quaternion method.

4.1. Kalman Filter Design

The state model X and measurement model Y are built respectively as follows:
X = [ q 0 q 1 q 2 q 3 ] T Y = [ ϕ θ ψ ] T
The discrete time representation of Kalman filter is shown as:
X ( n + 1 ) = F ( n ) X ( n ) + w ( n ) Y ( n ) = H [ X ( n ) ] + v ( n )
where the system matrix F and output function H[X(n)] are:
F = cos ( ϑ 2 ) I + sin ( ϑ 2 ) ϑ 2 A d t
H [ X ( n ) ] = [ arctan 2 ( q 0 q 1 + q 2 q 3 ) q 0 2 q 1 2 q 2 2 + q 3 2 arcsin 2 ( q 0 q 2 q 1 q 3 ) arctan 2 ( q 0 q 3 + q 1 q 2 ) q 0 2 + q 1 2 q 2 2 q 3 2 ]
W and v are the process noise and measurement noise, respectively. They are simplified as independent Gaussian white noise. The process noise covariance matrix and measurement noise covariance matrix are Q and R respectively.

4.2. Covariance of Process Noise and Measurement Noise

In the Kalman filter design, we consider the process noise and measurement noise as design parameters to achieve minimum for covariance of error estimation. Therefore, it is essential to determine the covariance of process noise and measurement noise. For heading estimation in this paper, the process noise derives from outputs ( ω x , ω y , ω z ) of MEMS gyroscopes, and we assume that ω x = ω ¯ x + ω ˜ x , ω y = ω ¯ y + ω ˜ y and ω z = ω ¯ z + ω ˜ z , and ω ¯ x , ω ¯ y and ω ¯ z are the mean of ω x , ω y and ω z , and ω ˜ x , ω ˜ y and ω ˜ z are deviations of ω x , ω y and ω z . The Equation (7) can be rewritten as [50]:
[ q ˙ 0 q ˙ 1 q ˙ 2 q ˙ 3 ] = 1 2 [ 0 ( ω ¯ x + ω ˜ x ) ( ω ¯ y + ω ˜ y ) ( ω ¯ z + ω ˜ z ) ( ω ¯ x + ω ˜ x ) 0 ( ω ¯ z + ω ˜ z ) ( ω ¯ y + ω ˜ y ) ( ω ¯ y + ω ˜ y ) ( ω ¯ z + ω ˜ z ) 0 ( ω ¯ x + ω ˜ x ) ( ω ¯ z + ω ˜ z ) ( ω ¯ y + ω ˜ y ) ( ω ¯ x + ω ˜ x ) 0 ] [ q 0 q 1 q 2 q 3 ]        = 1 2 [ 0 ω ¯ x ω ¯ y ω ¯ z ω ¯ x 0 ω ¯ z ω ¯ y ω ¯ y ω ¯ z 0 ω ¯ x ω ¯ z ω ¯ y ω ¯ x 0 ] [ q 0 q 1 q 2 q 3 ] + 1 2 [ q 1 q 2 q 3 q 0 q 3 q 2 q 3 q 0 q 1 q 2 q 1 q 0 ] [ ω ˜ x ( t ) ω ˜ y ( t ) ω ˜ z ( t ) ]
The right term of Equation (15) can be regarded as process noise. For the discrete system, the covariance of process noise Q is:
Q = 1 4 [ q 1 q 2 q 3 q 0 q 3 q 2 q 3 q 0 q 1 q 2 q 1 q 0 ] [ σ ω x 2 0 0 0 σ ω y 2 0 0 0 σ ω z 2 ] [ q 1 q 2 q 3 q 0 q 3 q 2 q 3 q 0 q 1 q 2 q 1 q 0 ] T
where σ ω x 2 , σ ω y 2 and σ ω z 2 are variance of gyroscope outputs ω x , ω y and ω z .
The covariance of measurement noise is decided by the measurement process. In this paper, the pitch (θ), roll (φ) and heading (ψ) angles are calculated from accelerometer and magnetometer outputs. We assume that, and a ˜ x , a ˜ y and a ˜ z are deviation of accelerometer outputs a x , a y and a z . Through the Equation (2) and a Taylor series expansion, the covariance of pitch (θ) and roll (φ) can be derived as:
[ ϕ ˜ θ ˜ ] = [ 0 a z a y 2 + a z 2 a y a y 2 + a z 2 a y 2 + a z 2 a x 2 + a y 2 + a z 2 a x a y ( a x 2 + a y 2 + a z 2 ) a y 2 + a z 2 a x a z ( a x 2 + a y 2 + a z 2 ) a y 2 + a z 2 ] [ a ˜ x a ˜ y a ˜ z ] = M ϕ θ [ a ˜ x a ˜ y a ˜ z ]
With the σ a x 2 , σ a y 2 and σ a z 2 are the variance of accelerometer a x , a y and a z , there is:
R ϕ θ = d i a g [ σ a x 2 σ a y 2 σ a z 2 ]
The covariance of pitch and roll is as follows:
σ ϕ θ 2 = M ϕ θ R ϕ θ M ϕ θ T
Similarly, the deviation of magnetometer based heading can be gotten from Equations (3) and (5) in a Taylor series expansion:
ψ ˜ m a g = [ H 2 H 1 2 + H 2 2 H 1 H 1 2 + H 2 2 ] [ cos θ sin θ sin ϕ cos ϕ sin θ 0 cos ϕ sin ϕ ] [ h ˜ x h ˜ y h ˜ z ] = M ψ [ h ˜ x h ˜ y h ˜ z ]
The variance of magnetometer based heading ( ψ m a g ) is expressed as:
σ ψ 2 = M ψ R ψ M ψ T
where R ψ = d i a g [ σ h x 2 σ h x 2 σ h x 2 ] , and σ h x 2 , σ h y 2 and σ h z 2 are variance of magnetometer outputs h x , h y and h z .
Finally, we can determine the covariance of measurement noise matrix R as:
R = [ σ θ ϕ 2 σ ψ 2 σ C 2 ]
where σ C 2 is variance of quaternion normalization equation and its value is zero, however, in order to avoid the mathematical problem in calculation, and σ C 2 is given a small value.

4.3. Unscented Transformation

The unscented transformation (UT) is an effective way to approximate how the mean and covariance of a random variable change when it undergoes a nonlinear transformation. Consider propagating random variable x (dimension L) through a nonlinear function y = h(x). Assume X has mean x ¯ and covariance Px. To calculate the statistics of y, we form a matrix χ of 2L + 1 sigma vector χ i (with corresponding weights W i ), according to the following:
χ 0 = x ¯ χ i = x ¯ + ( L + λ ) P ,   i = 1 : L χ i = x ¯ ( L + λ ) P ,   i = L + 1 : 2 L
W 0 m = λ L + λ W 0 c = λ L + λ + ( 1 α 2 + β ) W i m = λ 2 ( L + λ ) ,   i = 1 : 2 L
where λ = α 2 ( L + κ ) L is a scaling factor. Usually, α is set to a small positive value (e.g., 1e−3), κ is set to 0 and β is set for 2 for Gaussian distribution.

4.4. UKF Algorithm Equations

The UKF is more robust and accurate than EKF under realistic initial attitude-error conditions and large attitude change when dealing with highly nonlinear problem. The UKF algorithm details are presented as follows. First, we initialize with inertial quaternion value as follows:
x ^ 0 = E [ x 0 ] P 0 = E [ ( x 0 x ^ 0 ) ( x 0 x ^ 0 ) T ]
Secondly, sigma points are computed by:
χ k 1 = [ x ^ k 1 , x ^ k 1 + γ P k 1 , x ^ k 1 γ P k 1 ]
Thirdly, the state update equations are expressed as:
χ k \ k 1 = F [ χ k 1 , u k 1 ] x ^ k = i = 0 2 L W i m χ i , k | k 1 P k = i = 0 2 L W i c [ χ i , k | k 1 x ^ k ] [ χ i , k | k 1 x ^ k ] T + Q y k | k 1 = H [ χ k | k 1 ] y ^ k = i = 0 2 L W i m y i , k | k 1
where F and H are the highly nonlinear equations of above sections, and Q is the covariance of process noise.
Finally, the measurement update equations are given as follows:
P y ¯ k y ¯ k = i = 0 2 L W i c [ y i , k | k 1 y ¯ k ] [ y i , k | k 1 y ¯ k ] T + R P x k y k = i = 0 2 L W i c [ χ i , k | k 1 x ^ k ] [ y i , k | k 1 y ¯ k ] T K k = P x k y k P y ¯ k y ¯ k 1 x ^ k = x ^ k + K k ( y k y ^ k ) P k = P k K k P y ¯ k y ¯ k K k T
where R is the covariance of measurement noise, and K is the Kalman gain.

5. Experiments and Result Analysis

5.1. Two-Axis Turntable Test of Multi-Sensor System

To evaluate the performance and measurement precision of our designed multi-sensor system, a two-axis turntable is used for static and dynamic test experiments. The two-axis turntable test platform is shown in Figure 5. The two-axis turntable is used not only for static and dynamic tests, but also for calibration tests of the multi-sensor system. Through test experiments including static, dynamic and heading determinations, the results show that our multi-sensor system with the proposed algorithm has a static accuracy better than 0.5°, dynamic accuracy better than 1° and heading accuracy better than 2°. Although the accuracy of our multi-sensor system is a little lower than the MTi-300 from Xsens [51], however, our multi-sensor system smaller and much cheaper than the MTi-300 so it is more suitable for wearable applications like indoor robots, UAVs, pedestrians and so on.
Figure 5. Two-axis turntable for testing multi-sensor system.
Figure 5. Two-axis turntable for testing multi-sensor system.
Sensors 15 10872 g005
Figure 6. Heading estimation tests with the multi-sensor system (a) fixed on the waist of pedestrian; (b) fixed on a quadrotor UAV.
Figure 6. Heading estimation tests with the multi-sensor system (a) fixed on the waist of pedestrian; (b) fixed on a quadrotor UAV.
Sensors 15 10872 g006

5.2. Indoor Heading Experiments

In order to verify that our wearable multi-sensor system using the quaternion-based UKF algorithm can meet the accurate heading estimation needs of robots, pedestrians and UAVs in indoor environments, we carried out two experiments in our college building corridor. One experiment is implemented with our multi-sensor system fixed on the waist of a pedestrian and the other one is carried out with our multi-sensor system fixed on a quadrotor UAV, as shown in Figure 6. The reference path of our experiments is the rectangular black line on the floor plan of our college building shown in Figure 7, and (a) is the skeleton map of floor plan; and (b) is a picture of the actual corridor from the position of the circle in (a). Both experiments are carried out strictly along the reference path in the red arrow direction. Each experiment starts from the red triangle and ends at the red triangle.
Figure 7. Heading estimation test floor plan (a) skeleton map; (b) picture of the actual corridor in the position of the circle in (a).
Figure 7. Heading estimation test floor plan (a) skeleton map; (b) picture of the actual corridor in the position of the circle in (a).
Sensors 15 10872 g007
Figure 8. Multi-sensor system on waist of a pedestrian test: (a) roll angle; (b) pitch angle; (c) yaw angle; (d) yaw angle error.
Figure 8. Multi-sensor system on waist of a pedestrian test: (a) roll angle; (b) pitch angle; (c) yaw angle; (d) yaw angle error.
Sensors 15 10872 g008

5.3. Result Analysis

The results of experiments using the multi-sensor system on the waist of a pedestrian and on a quadrotor UAV for indoor heading estimation using our proposed quaternion-based UKF algorithm are shown in Figure 8 and Figure 9, respectively, in which Figure 8 and Figure 9a–c are three attitude angles of the pedestrian and the quadrotor. In Figure 8 and Figure 9c, the red line is the heading estimation, and the four straight lines in pink, blue, black and green are reference path directions in the corridor of our college building. Figure 8 and Figure 9d are the error between the heading estimation using our proposed algorithm and the reference path directions. Figure 10 is the moving average of the yaw error analysis, which is a kind of technical analysis tool commonly used with time series data to smooth out short-term fluctuations and highlight longer-term trends. In this paper, we define the moving points as 50. By comparison with the evolution of the error and moving error average, it is found that the moving average method can be more informative than the evolution of the error.
Figure 9. Multi-sensor system on a quadrotor test: (a) roll angle; (b) pitch angle; (c) yaw angle; (d) yaw angle error.
Figure 9. Multi-sensor system on a quadrotor test: (a) roll angle; (b) pitch angle; (c) yaw angle; (d) yaw angle error.
Sensors 15 10872 g009
Figure 10. Moving average of yaw error: (a) multi-sensor system on the pedestrian test; (b) multi-sensor system on the quadrotor test.
Figure 10. Moving average of yaw error: (a) multi-sensor system on the pedestrian test; (b) multi-sensor system on the quadrotor test.
Sensors 15 10872 g010
It is easy to obtain the mean heading estimation error of the multi-sensor system on a pedestrian’s waist as about 10° by contrast with the reference path. The mean heading estimation error of the multi-sensor system on a quadrotor is about 5°. Because the heading range is from −180° to 180°, the rates of mean heading errors are 5.56% (10°/180°) and 2.78% (5°/180°) Due to the oscillation in all tests, an error rate ≤5% can be identified as an accurate indoor heading estimation. Through comparison of Figure 8 and Figure 9, we can obviously find out that the roll angle and pitch angle of the multi-sensor system on pedestrian’s waist have a larger variation range than that of the multi-sensor system on the quadrotor, which indicates the maneuvering conditions of the quadrotor are more stable than those of pedestrian. Nonetheless, the heading estimation error of the quadrotor has more dynamic changes than that of the pedestrian, which means there is external perturbation affecting the heading estimation. From an analysis of the indoor disturbance sources and a comparison between the pedestrian and quadrotor data mentioned above, it is found that the four brushless electric machines of the quadrotor can produce a certain external magnetic disturbance to have an influence on the heading estimation, which however is difficult to eliminate.
Although the experiments have verified that heading estimation with our wearable multi-sensor system using quaternion-based unscented Kalman filter has high accuracy, however, in the experiments the pedestrian and quadrotor are set into motion at a constant velocity, which can guarantee an accurate heading estimation. In practice however, the indoor movement conditions are complex, especially when emergency events occur. Therefore, experiments under complicated conditions should be carried out along to improve the heading estimation algorithm.

6. Conclusions

In this paper, a wearable multi-sensor system based on nine degrees of freedom low-cost MEMS sensors and STM32F407 has small size and good cost performance. The proposed quaternion-based unscented Kalman filter can use the complementary features of gyroscopes and magnetometers to get accurate heading estimations. It was tested through indoor experiments with the multi-sensor system fixed on the waist of a pedestrian and a quadrotor UAV, and the results show that the mean heading estimation errors are about 10° and 5°, respectively, in comparison to the reference path. However, in the future, we will carry out experiments in more complicated conditions such as sharp acceleration and deceleration, and in the next step we will combine the accurate heading estimation with distance estimation, the other element of indoor dead-reckoning, for accurately navigating robots, pedestrians and UAVs. The WiFi technique and camera technique are other promising indoor navigation techniques. We will combine WiFi or a camera with the IMU, and carry out feature recognition studies of buildings to calibrate the multi-sensor system in order to improve the location accuracy.

Acknowledgments

The authors would like to thank Xiaoji Niu from the GNSS Research Center, Wuhan University, China, for the two-axis turntable test of multi-sensor system. The authors also thank Jingbin Liu from the Department of Remote Sensing and Photogrammetry, Finnish Geospatial Research Institute, Masala, Finland, for his kind help. This work is supported by the National High-tech Program (863) with contract number 2013AA041105 and the Natural Science Foundation of China (NSFC) with Grant No. 61405148.

Author Contributions

Xubing Yuan conceived the idea and wrote the paper. Shuai Yu performed the experiments; Shengzhi Zhang analyzed the partial data; the multi-sensor system was designed by our lab; Sheng Liu coordinated the research.

Conflicts of Interest

The authors declare no conflict of interests.

References

  1. Liu, J.; Chen, R.; Pei, L.; Guinness, R.; Kuusniemi, H. A Hybrid Smartphone Indoor Positioning Solution for Mobile LBS. Sensors 2012, 12, 17208–17233. [Google Scholar] [CrossRef] [PubMed]
  2. Pei, L.; Liu, J.; Guinness, R.; Chen, Y.; Kuusniemi, H.; Chen, R. Using LS-SVM Based Motion Recognition for Smartphone Indoor Wireless Positioning. Sensors 2012, 12, 6155–6175. [Google Scholar] [CrossRef] [PubMed]
  3. Zhou, Y.; Law, C.L.; Guan, Y.L.; Chin, F. Indoor Elliptical Localization Based on Asynchronous UWB Range Measurement. IEEE Trans. Instrum. Measure. 2011, 60, 248–257. [Google Scholar] [CrossRef]
  4. Zhuang, Y.; Chang, H.W.; El-Sheimy, N. A MEMS Multi-Sensors System for Pedestrian Navigation. In China Satellite Navigation Conference (CSNC) 2013 Proceedings; Springer: Berlin, Germany, 2013; pp. 651–660. [Google Scholar]
  5. Zhuang, Y.; Shen, Z.; Syed, Z.; Georgy, J.; Syed, H.; El-Sheimy, N. Autonomous Wlan Heading and Position for Smartphones. In Proceedings of IEEE/ION Position, Location and Navigation Symposium 2014, Monterey, CA, USA, 5–8 May 2014; pp. 1113–1121.
  6. Eom, W.; Park, J.; Lee, J. Hazardous Area Navigation with Temporary Beacons. Int. J. Control Autom. Syst. 2010, 8, 1082–1090. [Google Scholar] [CrossRef]
  7. Zhuang, Y.; Syed, Z.; Georgy, J.; El-Sheimy, N. Autonomous Smartphone-Based WiFi Positioning System by Using Access Points Localization and Crowdsourcing. Perv. Mob. Comput. 2015, 18, 118–136. [Google Scholar] [CrossRef]
  8. Paul, A.; Wan, E. WiFi Based Indoor Localization and Tracking Using Sigma-Point Kalman Filtering Methods. In Proceedings of the IEEE/ION Position, Location and Navigation Symposium, Monterey, CA, USA, 5–8 May 2008; pp. 646–659.
  9. Llorca, D.F.; Sotelo, M.A.; Parra, I.; Ocaña, M.; Bergasa, L.M. Error Analysis in a Stereo Vision-Based Pedestrian Detection Sensor for Collision Avoidance Applications. Sensors 2010, 10, 3741–3758. [Google Scholar] [CrossRef] [PubMed]
  10. Parnian, N.; Golnaraghi, F. Integration of a Multi-Camera Vision System and Strapdown Inertial Navigation System (SDINS) with a Modified Kalman Filter. Sensors 2010, 10, 5378–5394. [Google Scholar] [CrossRef] [PubMed]
  11. Kim, S.Y.; Yoon, K.S.; Lee, D.H.; Lee, M.H. The Localization of a Mobile Robot Using a Pseudolite Ultrasonic System and a Dead Reckoning Integrated System. Int. J. Control Autom. Syst. 2011, 9, 339–347. [Google Scholar] [CrossRef]
  12. Hazas, M.; Hopper, A. Broadband Ultrasonic Location Systems for Improved Indoor Positioning. IEEE Trans. Mob. Comput. 2006, 5, 536–547. [Google Scholar] [CrossRef]
  13. Sobers, D.; Yamaura, S.; Johnson, E.N. Laser-Aided Inertial Navigation for Self-Contained Autonomous Indoor Flight. In Proceedings of the AIAA Guidance, Navigation, and Control Conference (GNC’10), Toronto, ON, Canada, 2–5 August 2010; pp. 1–58.
  14. Saad, S.S.; Nakad, Z.S. A Standalone RFID Indoor Positioning System Using Passive Tags. IEEE Trans. Ind. Electron. 2011, 58, 1961–1970. [Google Scholar] [CrossRef]
  15. House, S.; Connell, S.; Milligan, I.; Austin, D.; Hayes, T.L.; Chiang, P. Indoor localization Using Pedestrian Dead Reckoning Updated with RFID-Based Fiducials. In Proceedings of the 2011 Annual International Conference of the IEEE on Engineering in Medicine and Biology Society (EMBC), Boston, MA, USA, 30 August–3 September 2011; pp. 7598–7601.
  16. Huang, C.; Liao, Z.; Zhao, L. Synergism of INS and PDR in Self-Contained Pedestrian Tracking with a Miniature Sensor Module. IEEE Sens. J. 2010, 10, 1349–1359. [Google Scholar] [CrossRef]
  17. Jiménez, A.R.; Seco, F.; Zampella, F.; Prieto, J.C.; Guevara, J. PDR with a Foot-Mounted IMU and Ramp Detection. Sensors 2011, 11, 9393–9410. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  18. Renaudin, V.; Susi, M.; Lachapelle, G. Step Length Estimation Using Handheld Inertial Sensors. Sensors 2012, 12, 8507–8525. [Google Scholar] [CrossRef] [PubMed]
  19. Hong, S.K.; Park, S. Minimal-Drift Heading Measurement Using a MEMS Gyro for Indoor Mobile Robots. Sensors 2008, 8, 7287–7299. [Google Scholar] [CrossRef]
  20. Chung, H.; Ojeda, L.; Borenstein, J. Accurate Mobile Robot Dead-Reckoning with a Precision-Calibrated Fiber-Optic Gyroscope. IEEE Trans. Robot. Autom. 2001, 17, 80–84. [Google Scholar] [CrossRef]
  21. Afzal, M.H.; Renaudin, V.; Lachapelle, G. Magnetic Field Based Heading Estimation for Pedestrian Navigation Environments. In Proceedings of the International Conference on Positioning and Indoor Navigation (IPIN), Guimaraes, Portugal, 21–23 September 2011; pp. 1–10.
  22. Moafipoor, S.; Grejner-Brzezinska, D.; Toth, C. Adaptive Calibration of a Magnetometer Compass for a Personal Navigation System. In Proceedings of the International Global Navigation Satellite Systems Society (IGNSS Symposium 2007), Sydney, Australia, 4–6 December 2007.
  23. Renaudin, V.; Afzal, H.; Lachapelle, G. Complete Tri-Axis Magnetometer Calibration in the Magnetic Field Domain. J. Sens. 2010, 2010, 967245:1–967245:10. [Google Scholar] [CrossRef]
  24. Angermann, M.; Frassl, M.; Doniec, M.; Julian, B.J.; Robertson, P. Characterization of the Indoor Magnetic Field for Applications in Localization and Mapping. In Proceedings of the International Conference on Positioning and Indoor Navigation, Sydney, Australia, 13–15 November 2012; pp. 1–9.
  25. Fan, C.; You, Z. Highly Efficient Sigma Point Filter for Spacecraft Attitude and Rate Estimation. Math. Prob. Eng. 2010, 2009. [Google Scholar]
  26. Roetenberg, D.; Luinge, H.J.; Baten, C.T.; Veltink, P.H. Compensation of Magnetic Disturbances Improves Inertial and Magnetic Sensing of Human Body Segment Orientation. IEEE Trans. Neural Syst. Rehabil. Eng. 2005, 13, 395–405. [Google Scholar] [CrossRef] [PubMed]
  27. Titterton, D.H.; Weston, J.L. Strapdown Inertial Navigation Technology, 2nd ed.; Peter Peregrinus Ltd.: Stevenage, UK, 2004. [Google Scholar]
  28. Hong, S.K.; Ryuh, Y.S. Heading Measurements for Indoor Mobile Robots with Minimized Drift Using a MEMS Gyroscopes. In Robot Localization and Map Building; InTech: Morn Hill, Winchester, UK, 2010. [Google Scholar]
  29. Shin, D.; Park, S.G.; Song, B.S.; Kim, E.S.; Kupervasser, O.; Pivovartchuk, D.; Gartseev, I.; Antipov, O.; Kruchenkov, E.; Milovanov, A. Precision Improvement of MEMS Gyros for Indoor Mobile Robots with Horizontal Motion Inspired by Methods of TRIZ. In Proceedings of the 9th IEEE International Conference on Nano/Micro Engineered and Molecular Systems, Honolulu, HI, USA, 13–16 April 2014; pp. 102–107.
  30. Ali, A.; El-Sheimy, N. Low-Cost MEMS-Based Pedestrian Navigation Technique for GPS-Denied Areas. J. Sens. 2013, 2013. [Google Scholar] [CrossRef]
  31. Renaudin, V.; Combettes, C.; Peyret, F. Quaternion Based Heading Estimation with Handheld MEMS in Indoor Environments. In Proceedings of the IEEE/ION Position, Location and Navigation Symposium, Monterey, CA, USA, 5–8 May 2014; pp. 645–656.
  32. Jiménez, A.R.; Seco, F.; Prieto, J.C.; Guevara, J. Indoor Pedestrian Navigation Using an INS/EKF Framework for Yaw Drift Reduction and a Foot-Mounted IMU. In Proceedings of the 7th Workshop on Positioning, Navigation and Communication (WPNC 2010), Dresden, Germany, 11–12 March 2010; pp. 135–143.
  33. De Marina, H.G.; Espinosa, F.; Santos, C. Adaptive UAV Attitude Estimation Employing Unscented Kalman Filter, FOAM and Low-Cost MEMS Sensors. Sensors 2012, 12, 9566–9585. [Google Scholar] [CrossRef] [PubMed]
  34. Shiau, J.K.; Wang, I.C. Unscented Kalman Filtering for Attitude Determination Using Mems Sensors. J. Appl. Sci. Eng. 2013, 16, 165–176. [Google Scholar]
  35. Crassidis, J.L.; Markley, F.L. Unscented Filtering for Spacecraft Attitude Estimation. J. Guid. Control Dyn. 2003, 26, 536–542. [Google Scholar] [CrossRef]
  36. Zampella, F.; Khider, M.; Robertson, P.; Jiménez, A. Unscented Kalman Filter and Magnetic Angular Rate Update (MARU) for an Improved Pedestrian Dead-Reckoning. In Proceedings of the IEEE/ION Position Location and Navigation Symposium, Myrtle Beach, SC, USA, 23–26 April 2012; pp. 129–139.
  37. Yun, X.; Aparicio, C.; Bachmann, E.R.; McGhee, R.B. Implementation and Experimental Results of a Quaternion-Based Kalman Filter for Human Body Motion Tracking. In Proceedings of the 2005 IEEE International Conference on Robotics and Automation, Barcelona, Spain, 18–22 April 2005; pp. 317–322.
  38. Choukroun, D.; Bar-Itzhack, I.Y.; Oshman, Y. Novel Quaternion Kalman Filter. IEEE Trans. Aerosp. Electron. Syst. 2006, 41, 174–190. [Google Scholar] [CrossRef]
  39. Sabatini, A.M. Quaternion-Based Extended Kalman Filter for Determining Orientation by Inertial and Magnetic Sensing. IEEE Trans. Biomed. Eng. 2006, 53, 1346–1356. [Google Scholar] [CrossRef]
  40. Suh, Y.S. Orientation Estimation Using a Quaternion-Based Indirect Kalman Filter with Adaptive Estimation of External Acceleration. IEEE Trans. Instrum. Measure. 2010, 59, 3296–3305. [Google Scholar] [CrossRef]
  41. LaViola, J.J. A Comparison of Unscented and Extended Kalman Filtering for Estimating Quaternion Motion. In Proceedings of the American Control Conference, Providence, RI, USA, 4–6 June 2003; pp. 2435–2440.
  42. Shin, E.H.; El-Sheimy, N. An Unscented Kalman Filter for In-Motion Alignment of Low-Cost IMUs. In Proceedings of the IEEE/ION Position Location and Navigation Symposium, Monterey, CA, USA, 26–29 April 2004; pp. 273–279.
  43. Han, S.; Wang, J. A Novel Method to Integrate IMU and Magnetometers in Attitude and Heading Reference Systems. J. Navig. 2011, 64, 727–738. [Google Scholar] [CrossRef]
  44. Vandyke, M.C.; Schwartz, J.L.; Hall, C.D. Unscented Kalman Filtering for Spacecraft Attitude State and Parameter Estimation. In Proceedings of the AAS/AIAA Space Flight Mechanics Conference (no. AAS 04-115), Maui, HI, USA, 8–12 February 2004.
  45. Zhao, L.; Nie, Q.; Guo, Q. Unscented Kalman Filtering for SINS Attitude Estimation. In Proceedings of IEEE International Conference on Control and Automation, Guangzhou, China, 30 May–1 June 2007; pp. 228–232.
  46. Bando, M.; Kawamata, Y.; Aoki, T. Dynamic Sensor Bias Correction for Attitude Estimation Using Unscented Kalman Filter in Autonomous Vehicle. Int. J. Innov. Comput. Inf. Control 2012, 9, 2347–2358. [Google Scholar]
  47. Sheng, H.; Zhang, T. MEMS-Based Low-Cost Strap-Down AHRS Research. Measurement 2015, 59, 63–72. [Google Scholar] [CrossRef]
  48. Ren, H.; Kazanzides, P. Investigation of Attitude Tracking Using an Integrated Inertial and Magnetic Navigation System for Hand-Held Surgical Instruments. IEEE/ASME Trans. Mechatron. 2012, 17, 210–217. [Google Scholar] [CrossRef]
  49. Caruso, M.J. Applications of Magnetic Sensors for Low Cost Compass Systems. In Proceedings of the IEEE/ION Position Location and Navigation Symposium, San Diego, CA, USA, 13–16 March 2000; pp. 177–184.
  50. Ma, D.M.; Shiau, J.K.; Wang, I.C.; Lin, Y.H. Attitude Determination Using a MEMS-Based Flight Information Measurement Unit. Sensors 2012, 12, 1–23. [Google Scholar] [CrossRef] [PubMed]
  51. MTi-100 Series. Available online: https://www.xsens.com/products/mti-100-series/ (accessed on 22 March 2015).

Share and Cite

MDPI and ACS Style

Yuan, X.; Yu, S.; Zhang, S.; Wang, G.; Liu, S. Quaternion-Based Unscented Kalman Filter for Accurate Indoor Heading Estimation Using Wearable Multi-Sensor System. Sensors 2015, 15, 10872-10890. https://doi.org/10.3390/s150510872

AMA Style

Yuan X, Yu S, Zhang S, Wang G, Liu S. Quaternion-Based Unscented Kalman Filter for Accurate Indoor Heading Estimation Using Wearable Multi-Sensor System. Sensors. 2015; 15(5):10872-10890. https://doi.org/10.3390/s150510872

Chicago/Turabian Style

Yuan, Xuebing, Shuai Yu, Shengzhi Zhang, Guoping Wang, and Sheng Liu. 2015. "Quaternion-Based Unscented Kalman Filter for Accurate Indoor Heading Estimation Using Wearable Multi-Sensor System" Sensors 15, no. 5: 10872-10890. https://doi.org/10.3390/s150510872

Article Metrics

Back to TopTop