Next Article in Journal
Evaluation of Prestress Loss Distribution during Pre-Tensioning and Post-Tensioning Using Long-Gauge Fiber Bragg Grating Sensors
Previous Article in Journal
Bandwidth Cost Minimization via User Association for Enterprise WLANs
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Research on an Improved Method for Foot-Mounted Inertial/Magnetometer Pedestrian-Positioning Based on the Adaptive Gradient Descent Algorithm

1
College of Information and Communication Engineering, Harbin Engineering University, Harbin 150001, China
2
Navigation and Instrumentation Research Group, Electrical and Computer Engineering, Royal Military College of Canada, Kingston, ON K7K 7B4, Canada
3
Department of Electrical and Computer Engineering, Mississippi State University, Starkville, MS 39759, USA
*
Author to whom correspondence should be addressed.
Sensors 2018, 18(12), 4105; https://doi.org/10.3390/s18124105
Submission received: 19 September 2018 / Revised: 31 October 2018 / Accepted: 21 November 2018 / Published: 23 November 2018
(This article belongs to the Section Physical Sensors)

Abstract

:
Foot-mounted Inertial Pedestrian-Positioning Systems (FIPPSs) based on Micro Inertial Measurement Units (MIMUs), have recently attracted widespread attention with the rapid development of MIMUs. The can be used in challenging environments such as firefighting and the military, even without augmenting with Global Navigation Satellite System (GNSS). Zero Velocity Update (ZUPT) provides a solution for the accumulated positioning errors produced by the low precision and high noise of the MIMU, however, there are some problems using ZUPT for FIPPS, include fast-initial alignment and unobserved heading misalignment angle, which are addressed in this paper. Our first contribution is proposing a fast-initial alignment algorithm for foot-mounted inertial/magnetometer pedestrian positioning based on the Adaptive Gradient Descent Algorithm (AGDA). Considering the characteristics of gravity and Earth’s magnetic field, measured by accelerometers and magnetometers, respectively, when the pedestrian is standing at one place, the AGDA is introduced as the fast-initial alignment. The AGDA is able to estimate the initial attitude and enhance the ability of magnetic disturbance suppression. Our second contribution in this paper is proposing an inertial/magnetometer positioning algorithm based on an adaptive Kalman filter to solve the problem of the unobserved heading misalignment angle. The algorithm utilizes heading misalignment angle as an observation for the Kalman filter and can improve the accuracy of pedestrian position by compensating for magnetic disturbances. In addition, introducing an adaptive parameter in the Kalman filter is able to compensate the varying magnetic disturbance for each ZUPT instant during the walking phase of the pedestrian. The performance of the proposed method is examined by conducting pedestrian test trajectory using MTi-G710 manufacture by XSENS. The experimental results verify the effectiveness and applicability of the proposed method.

1. Introduction

Pedestrian Position Systems based on Micro Inertial Measurement Unit (MIMUs) have recently attracted widespread attention with the rapid development of MIMUs. Foot-mounted MIMUs (including gyroscopes and accelerometers) can measure the acceleration and angular velocity of pedestrians in real time. These measurements are utilized to estimate velocity and position. MIMUs are self-contained fully autonomous systems, immune to external interference. They can be used in Global Navigation Satellite System (GNSS)-denied environments, and are very beneficial in firefighting and military applications [1,2]. However, the positioning accuracy of MIMUs deteriorates because of sensors’ bias, drift, misalignment, scale factors, instability, and high noise during the dead reckoning process [3,4].
Installing the MIMU on the pedestrian foot is called Foot-mounted Inertial Pedestrian-Positioning System (FIPPS) [5,6,7,8]. A Kalman filter (KF) is utilized to estimate each navigation error to reduce the positioning error caused by measurement noise of inertial components. Theoretically, the velocity of the foot is zero when the pedestrian’s foot touches the ground momentarily while walking. In the absence of measurement noise during the stationary state of the pedestrian foot while walking ideally both the acceleration and the calculated velocity should be zeroed. However, due to the measurement noise of the sensors, the velocity is not zero. To enhance the performance of KF by compensating the velocity error during the stationary state of the pedestrian foot an innovative algorithm called Zero Velocity Update (ZUPT) was introduced [9,10,11,12,13,14,15]. Nonetheless, there are some problems using ZUPT for FIPPS to correct the accumulated positioning errors.
The first problem for FIPPS is the initial value setting of the dead reckoning algorithm. The principle of dead reckoning is that the increment (including position increment, velocity increment and attitude increment) is obtained by the MIMU measurement. Then, the navigation information could be calculated by the sum of the initial value and the increment. It is assumed that the pedestrian’s initial state is standing at one point, so the initial velocity value is zero. The initial position can be obtained by GNSS or set to zero. The difficulty for FIPPS is the determining the initial attitude. The process of obtaining the initial attitude is called initial alignment. To acquire the initial alignment for a high precision Inertial Navigation System (INS), it will be assumed that an accelerometer will measure only gravity, a gyro will measure only the Earth’s rotation angle velocity [16,17]. However, for low cost MIMU the measurement noise of gyro is much larger than the Earth’s rotation angle velocity, therefore, the initial alignment algorithms for high precise INS are not suitable for FIPPS. The Rotation Modulation Technique is an option for initial alignment of MIMUs but a rotating platform is needed, and the initial alignment time is too lengthy [18,19,20,21,22]. Nilsson et al. [23] proposed to a MIMU initial alignment algorithm based on accelerometers and magnetometers. Nevertheless, local magnetic distortions may still corrupt the estimated heading, and the alignment accuracy can be further decreased by magnetic interference.
The second problem for FIPPS is the observability of ZUPT. ZUPT can reduce the position error, velocity error, and horizontal misalignment angle of the system, but the heading misalignment angle is unobserved, which results in a continuous increase in the heading error and an increase in the positioning error. The heading errors can be corrected by augmenting MIMU with other sensors [24,25]. Magnetometers are some of the most commonly used sensors. A magnetometer is a sensor that measures the intensity of a magnetic field in the local coordinate system. In theory, the heading can be obtained using the magnetic field strength measurement. Conversely, due to the presence of magnetic interference, the heading conversion is inaccurate, and it cannot be used as a reference to locate the misalignment angle [26,27]. Intrinsic calibration is one of the magnetometer calibration processes. The most popular magnetometer intrinsic calibration approach is attitude-independent method, which exploits the fact that the magnetometer measurement at the local position or in a homogeneous magnetic field is constant in magnitude regardless of the orientation [28,29,30,31,32,33,34,35,36].
To address the limitation of correction schemes using the magnetometer discussed above, an improved method for foot-mounted inertial/ magnetometer pedestrian positioning based on adaptive gradient descent algorithm is proposed in this paper. This paper consists of the following sections: Section 2 introduces the principle of the foot-mounted inertial pedestrian-positioning system. Observability during the ZUPT period is carried out to lay a foundation of further study on heading misalignment angle estimation. Section 3 introduces the fast-initial alignment based on an adaptive gradient descent algorithm, and the measurement interference is estimated at the end of initial alignment. This is the first contribution in this paper. Section 4 introduces an adaptive inertial/magnetometer positioning algorithm by improving heading observability that is able to address the limitation of estimating the heading misalignment angle by the traditional ZUPT method. This is the second contribution. A scheme of the improved pedestrian position algorithm is shown in Section 5. Performance of the proposed method is tested using MTi-710 in the same section. The last part draws the conclusions.

2. Principle of Foot-Mounted Inertial Pedestrian-Positioning System

2.1. Dead Reckoning for Inertial Pedestrian Positioning

For FIPPS, the MIMU is installed on the pedestrian foot, and the acceleration and angular velocity of the pedestrian foot are measured in real time. Then, the pedestrian positioning information is obtained through the dead reckoning method [37]. The core formula of dead reckoning is as follows:
{ C b n k = C b n ( k 1 ) ( I + Ω k T ) v k n = v k 1 n + ( C b n k f k b + g n ) T p k n = p k 1 n + v k n T + ( C b n k f k b + g n ) T 2 / 2
Here, subscripts k ( k = 1 , , N ) are the sample time; C b n k is the transformation matrix between the sensor frame (short for b frame, right-front-up frame) and the navigation frame (short for n frame, east-north-up frame) at time k; I is unit matrix; T is sample time; Ω k = [ ω k × ] is antisymmetric matrix of angular velocity ω k measured by gyro; v k n is the velocity along n frame at time k; f k b is acceleration measured by the accelerometer along b frame; g n = [ 0 0 g ] T is a projection of gravity along the n frame; p k n is calculating position result along n frame.
From Equation (1), it can be obtained that setting the parameters of v 0 n = O 3 × 1 , p 0 n = O 3 × 1 and C b n 0 is the first step of FIPPS. Hence, if C b n 0 , which is set by initial alignment, is inaccurate, the position error will be increased. For high precise INS initial alignment, it is assumed that only gravity and the Earth’s rotation angle velocity can be measured by accelerometers and gyros, respectively. However, for a low cost MIMU, the measurement noise of gyro is much larger than the Earth’s rotation angle velocity. Therefore, the initial alignment algorithm for a high precision INS is not suitable for FIPPS. To solve the problem, a MIMU initial alignment algorithm based on accelerometers and magnetometers is proposed. In practice, local magnetic distortions may still corrupt the estimated heading, and the alignment accuracy is further decreased by magnetic interference. Hence, how to set the initial value of C b n 0 with the magnetic interference (shown in Figure 1) will be discussed in Section 3.

2.2. Basic ZUPT Algorithm

The low-cost MEMS-based MIMU sensors have high noise and composite error characteristics. The overall positioning accuracy deteriorates due to the measurement error of the Ω k and f k b in Equation (1). The positional errors are accumulated and enlarged with the passage of time, which significantly reduces the pedestrian tracking results.
The ZUPT scheme is utilized to address this problem [38,39,40]. Considering the motion features of the pedestrian foot, it is assumed that the foot is in a stationary state when the foot is touching the ground. Using the error equation of Equation (1) as the state equation during the period of foot is in-touch with ground, and using velocity error as an observation. The system state equation and measurement equation are established:
X ˙ = A X + η k Z = H X + ν k
where, X = [ δ p T δ v T Φ T Δ T ε T ] T is the state of the system, δ p = [ δ p x δ p y δ p z ] T , δ v = [ δ v x δ v y δ v z ] T , Φ = [ ϕ x ϕ y ϕ z ] T are the position error, velocity error, and misalignment angle respectively; Δ , ε are the accelerometer bias and gyro drift, respectively; H = [ O 3 × 3 I 3 × 3 O 3 × 3 O 3 × 3 O 3 × 3 ] is the measure matrix; Z is the observation; η k , ν k are state noise and measurement noise respectively; A is the system transfer matrix and the specific form is as follows:
A = [ O 3 × 3 I 3 × 3 O 3 × 3 O 3 × 3 O 3 × 3 O 3 × 3 O 3 × 3 [ f n × ] C b n O 3 × 3 O 3 × 3 O 3 × 3 O 3 × 3 O 3 × 3 C b n O 3 × 3 O 3 × 3 O 3 × 3 O 3 × 3 O 3 × 3 O 3 × 3 O 3 × 3 O 3 × 3 O 3 × 3 O 3 × 3 ]
where [ f n × ] represents antisymmetric matrix of f n , and f n = C b n f b .
Then, based on this observation, the Kalman filter is used to estimate each navigation error to reduce the positioning error caused by measurement noise of inertial components [41,42]. The algorithm according to Equations (1) and (2) is called basic ZUPT, which is the basic algorithm and used as the compare algorithm in the experiment section.
It can be found that matrix A will not change during the period of foot is in-touch with ground. Therefore, Equation (2) is a linear time-invariant system. There is an observability analysis theorem for linear time-invariant system.
Theorem 1.
If the following condition can be satisfied, a linear time-invariant system is a completely observable system:
r a n k [ H T A T H T ( A T ) j 1 H T ] = j
where, j is the dimension.
According to the theorem, it can be calculated that the rank of the matrix is 5 and five variables of X can be estimated. Essentially the velocity error can be estimated because the observation is velocity error. Hence, other two variables of δ p and Φ are observed. According to references [43,44], the horizontal misalignment angles can be estimated by ZUPT. Therefore, part of the position error caused by velocity error and the horizontal misalignment angles can be compensated. However, the part of the position error caused by the heading misalignment angle cannot be corrected. It means that the position error caused by the heading cannot be compensated by the basic ZUPT algorithm. The solution for the heading misalignment angle problem will be discussed in Section 4. Figure 1 shows the relationship between the basic ZUPT algorithm, the problems of ZUPT and the proposed algorithms in this paper.

3. Fast-Initial Alignment Based on Adaptive Gradient Descent Algorithm

The purpose of initial alignment for pedestrian alignment is to obtain the initial attitude within a few seconds. It is hard to finish the initial alignment only using MIMUs themselves because of their high measurement noise. Hence, introducing the magnetometer as an external sensor to the initial alignment is proposed in this paper.
Madgwick [45] proposed a novel orientation filter that can obtain the attitude information by Gradient Descent Algorithm (GDA). The filter uses a quaternion representation, allowing accelerometer and magnetometer data to be used in an analytically derived and optimized gradient-descent algorithm to compute the direction of the gyroscope measurement error as a quaternion derivative. Therefore, GDA can be introduced as the initial alignment algorithm for FIPPS.
However, the precondition of introducing GDA for initial alignment is that the accelerometer and magnetometer errors are neglected [45]. The measurement error of accelerometers comes from the sensor itself and can be compensated beforehand, but local magnetic distortions may still corrupt the estimated heading. Hence, the attitude estimation accuracy of GDA will be influenced by local magnetic distortions.
The Adaptive Gradient Descent Algorithm (AGDA), which is used to enhance the ability of magnetic disturbance suppression, is proposed to the fast-initial alignment for pedestrian position system. The diagram of AGDA is shown in Figure 2. The core formula of AGDA is as follows:
h = [ J g T h g J g , b T h g , b ]
q ˙ Δ k = h h
q ˙ ω k = 1 2 × q k 1 Ω k
q ˙ k = | m b 1 | | m b 1 | + 1 q ˙ ω k 1 | m b 1 | + 1 β q ˙ Δ k
q k = q k 1 + q ˙ k T
Here, q k , q k 1 are quaternion at time k, k − 1 respectively. q ˙ k is differential of q k at time k. q ˙ ω k is differential of q ω k calculated by the angular velocity measured by gyro, the calculating formula is shown in Equation (3c). β is a weight parameter. m b = [ m x b m y b m z b ] T is the magnetometer measurement with normalized along the b frame. m b = m x b 2 + m y b 2 + m z b 2 , and m i b ( i = x , y , z ) is the magnetometers measurement with normalized along the b frame. q ˙ Δ k is the differential of q Δ k calculated by AGDA, the calculating formula is shown in Equation (6), the form of h is shown in Equation (4). The forms of h g , h g , b , J g , J g , b are as follows:
J g , b = [ J g T J b T ] ,   J g = [ 2 q 3 2 q 4 2 q 1 2 q 2 2 q 2 2 q 1 2 q 4 2 q 3 0 4 q 2 4 q 3 0 ] ,
J b = [ 2 m z n q 3 2 m z n q 4 4 m x n q 3 2 m z n q 1 4 m x n q 3 + 2 m z n q 2 2 m x n q 4 + 2 m z n q 2 2 m x n q 3 + 2 m z n q 1 2 m x n q 2 + 2 m z n q 4 2 m x n q 1 + 2 m z n q 3 2 m x n q 3 2 m x n q 4 4 m z n q 2 2 m x n q 1 4 m z n q 3 2 m x n q 2 ] ,
h g , b = [ h g h b ] ,   h g = [ 2 ( q 2 q 4 q 1 q 2 ) f x b 2 ( q 1 q 2 + q 3 q 4 ) f y b 2 ( 0.5 q 2 2 q 3 2 ) f z b ] ,
h b = [ 2 m x n ( 0.5 q 3 2 q 4 2 ) + 2 m z n ( q 2 q 4 q 1 q 2 ) m x b 2 m x n ( q 2 q 3 q 1 q 4 ) + 2 m z n ( q 1 q 2 + q 3 q 4 ) m y b 2 m x n ( q 1 q 3 + q 2 q 4 ) + 2 m z n ( 0.5 q 2 2 q 3 2 ) m z b ]
where, f b = [ f x b f y b f z b ] T is the accelerometer measurement. m n = [ m x n m y n m z n ] T is the Earth’s magnetic field along n frame, m x n = cos κ , m y n = 0 , m z n = sin κ , κ the magnetic inclination related with latitude. It can be found in the literature.
According to the Figure 2 and Equation (3d), the adaptive adjusting parameters of | m b 1 | / ( | m b 1 | + 1 ) and 1 / ( | m b 1 | + 1 ) are introduced to reduce the effect of magnetic disturbance on the initial alignment, which is the difference with the GDA by Madgwick [45]. If there is no magnetic disturbance, m b = 1 and the adaptive adjusting parameters could not be activated. Hence, q ˙ k = β q ˙ Δ k . It means that q ˙ k is only updated by q ˙ Δ k . The value of | m b 1 | and | m b 1 | / ( | m b 1 | + 1 ) will increase with the increase of magnetic disturbance, while the value of 1 / ( | m b 1 | + 1 ) decreases. Therefore, the weight of q ˙ Δ k for updating the q ˙ k decreases, and the weight of q ˙ ω k increases. The effects of magnetic disturbance on initial alignment can be reduced.
The optimal solution of the quaternion is obtained by Equation (3). The transformation matrix of C b 0 n is determined using the relationship between the quaternion and the transformation matrix presented in Appendix A.
After initial alignment, the magnetic disturbance at the pedestrian standing point is calculated based on the initial alignment result C b 0 n and the local magnetic m n as follows:
δ m n = m n C b n 0 m b
where, δ m n = [ δ m x n δ m y n δ m z n ] T is the estimation magnetic disturbance along the n frame by AGDA.
Two key advantages of introducing AGDA as the fast-initial alignment algorithm are: (1) the magnetic disturbance can be estimated and compensated in a short time; (2) the initial attitude can be obtained by the accelerometer and magnetometer measurement without magnetic disturbance. Therefore, the AGDA can be used as the initial alignment algorithm, but it cannot be used in the ZUPT during the pedestrian walking period. Because the duration of time foot touches the ground while walking is about 1 s or shorter.
To calculate the uncertainty of the AGDA, the difference between the earth’s magnetic field and the magnetometer measurement after compensation can be introduced as the criteria. Equation (5) is the calculation formula of the AGDA uncertainty:
τ = m n m b C n b δ m n
where, τ is the uncertainty value; is the module value of the vector; C n b is the initial alignment result in real time.
For the AGDA, it is assumed that the Earth’s magnetic field at the same place is constant. Hence, if both initial alignment result C n b and the magnetic distribution estimation result are accurate, τ is zero. The value of τ will increase when the initial alignment result and the magnetic distribution estimation results are inaccurate. Then, τ can be used to calculate the uncertainty in AGDA.

4. Adaptive Inertial/Magnetometer Positioning Algorithm by Improving Heading Observability

According to the principle of magnetometers, the heading can be obtained by the magnetometer measurement when the magnetic interference is corrected. Then, for the Inertial/Magnetometer Positioning system, the heading information can be calculated in real time when the magnetic interference is estimated during the initial alignment process. However, the magnetic interference can be inconsistent at different points of the trajectory. For example, magnetic fields produced by a power line along the walking trajectory will change the magnetic disturbance. Hence, the magnetic disturbance at ZUPT point during the pedestrian walking trajectory is different from that at an initial alignment point. This section discusses the important issue of how to estimate and reduce the magnetic disturbance.

4.1. Magnetic Interference Compensated and Heading Estimation

Based on the observation analysis in Section 2.2, the horizontal misalignment angles can be estimated by Kalman Filter for ZUPT. Hence, the magnetic measured by the magnetometers can be transformed to the horizontal frame (Equation (6)) based on the relationship between the Euler angles and the transformation matrix (Appendix A):
m n ˜ = C y C x m b
Here, the difference between the n ˜ and b frame is two horizontal attitude rotations: the first rotation is about the x-axis through an angle φ ˜ x , the second is about the y-axis through an angle φ ˜ y from b frame to n ˜ frame. The difference between the n frame and the n ˜ frame is the heading φ ˜ z . The matrix of C x and C y are composed of φ ˜ x and φ ˜ y , respectively as shown in Appendix A. m n ˜ = [ m x n ˜ m y n ˜ m z n ˜ ] T is the magnetic field along the n ˜ frame after transformation.
The geometric relation of Earth’s magnetic field, magnetic disturbance, and magnetometer magnetic (magnitude and direction of the total magnetic field) measured by the magnetometer is shown in Figure 3. Because the heading information can be obtained by the magnetic projection in the horizontal plane, only relation in the plane is shown. The main purpose of this section is the determination of heading φ ˜ z .
Here, H = cos κ is the projection of the local Earth magnetic field along the magnetic north, and it can be obtained by lookup. δ m x y n = δ m x n 2 + δ m y n 2 and δ m x n , δ m y n are calculated by Equation (4).
According to the geometric relation in Figure 3, the mathematic relationship between the Earth’s magnetic field, magnetic disturbance and magnetometer magnetic along the n ˜ frame is as follows,
{ m x n ˜ = H x + δ m x n ˜ = H cos φ ˜ z + δ m x y cos φ 0 m y n ˜ = H y + δ m y n ˜ = H sin φ ˜ z + δ m x y sin φ 0
where, φ ˜ z is the heading between m x n ˜ and H . φ 0 is the angle between δ m x y and m x n ˜ .
The heading φ ˜ z and the angle φ 0 can be obtained by solving Equation (7). Appendix B shows the derivation process.
{ φ ˜ z = arcsin m x n ˜ 2 + m y n ˜ 2 + H 2 δ m x y 2 2 H m x n ˜ 2 + m y n ˜ 2 arcsin m x n ˜ m x n ˜ 2 + m y n ˜ 2 φ 0 = arcsin m x n ˜ 2 + m y n ˜ 2 + δ m x y 2 H 2 2 δ m x y m x n ˜ 2 + m y n ˜ 2 arcsin m x n ˜ m x n ˜ 2 + m y n ˜ 2
φ ˜ z in Equation (8) is the heading result by the magnetometer measurement after the magnetic disturbance is corrected during pedestrian ZUPT segments of the trajectory. However, it cannot be used as the heading information because measurement noise is included. The solution is discussed in Section 4.2.

4.2. Inertial/Magnetometer Positioning Algorithm Based on Adaptive Kalman Filter

The heading misalignment angles ϕ z can be obtained by the difference between the magnetometer heading (Equation (8)) and gyro heading (Equation (1)). Then, ϕ z can be introduced as the new observation for the Kalman filter of ZUPT, which is used to estimate heading misalignment angle and solving the unobserved variable’s ϕ z problem. This results in a reduction of the position error caused by heading errors.
However, the premise of solution above is that the magnetic disturbance δ m n obtained during the initial alignment is suitable for ZUPT during pedestrian walking. It means that the magnetic disturbance at two stand points (initial alignment point and ZUPT point during walking) will remain the same. However, the magnetic disturbance is variable at any time. For example, the magnetic disturbance will be changed by a power line along the walk way of the trajectory. Therefore, introducing an adaptive parameter in the Kalman filter is a solution to the problem above. The core formula of adaptive Kalman filter is as follows:
X ^ k = Φ k X ^ k 1
P k = Φ k P k 1 Φ k T + Q k
K k = P k H k T ( H k P k H k T + α R k ) 1
X ^ k = X ^ k + K k ( Z k H k X ^ k )
P k = ( I K k H k ) P k
Here, Φ is the discretization matrix of A in Equation (1). α is the adaptive parameter. H form is:
H = [ O 3 × 3 I 3 × 3 O 3 × 3 O 3 × 3 O 3 × 3 O 1 × 3 O 1 × 3 E 1 × 3 O 1 × 3 O 1 × 3 ]
Here, E 1 × 3 = [ 0 0 1 ] .
The adaptive parameter α in Equation (9c) is calculated by the following formula:
E k = ( Z k H k X ^ k ) ( Z k H k X ^ k ) T
E ¯ k = 1 M 1 j = k M + 1 M ( Z j H k X ^ k ) ( Z j H k X ^ k ) T
α = | t r ( E k ) t r ( E ¯ k ) |
where, M is the length of the average, and its value is related with the sample time.
When the magnetic disturbance at ZUPT point is different from the initial alignment point, the magnetic projection measured by the magnetometers along the n ˜ frame m n ˜ = [ m x n ˜ m y n ˜ m z n ˜ ] T will change. If E k increases, then, the difference between the parameter ( E k ) and average E ¯ k will be increased by α . The observation noise matrix R should be increased. Therefore, the multiplication of α and R is introduced into the Kalman filter to reduce the effect of magnetic disturbance change (Equation (9c)). Figure 4 is the block diagram of the adaptive Inertial/Magnetometer positioning algorithm proposed in this section. According to the principle of Kalman Filter, the P k can be used to judge the uncertainty of the adaptive Inertial/Magnetometer positioning algorithm.

5. Scheme of Improved Pedestrian Position Algorithm and Performance Evaluation

5.1. Scheme of Improved Pedestrian Position Algorithm

According to the traditional pedestrian positioning method mentioned in Section 2, Figure 5 shows a schematic diagram of the improved pedestrian positioning algorithm, including the fast-initial alignment algorithm and an adaptive inertial/Magnetometer ZUPT positioning algorithm mentioned in Section 3 and Section 4.
The blue boxes in Figure 5 are the characteristic calculation steps for a basic ZUPT. The orange boxes are the proposed new steps to improve the ZUPT algorithm in this paper. Firstly, initial attitude and the magnetometer interference are estimated by AGDA, which is introduced as the initial alignment algorithm for FIPPS. AGDA can only be used as the initial alignment algorithm, not for ZUPT. Because the ZUPT time is too short, the parameters cannot be estimated by ADGA. Secondly, based on the difference between the magnetometer heading and gyro heading, the heading misalignment angle is introduced as the new observation for the Kalman filter during ZUPT period. In addition, the problem of the change of the magnetic disturbance by surrounding environment is solved by introducing an adaptive parameter in the Kalman filter. These innovative changes enhance position accuracy as the heading error is reduced consistently.

5.2. Experiment Study

To verify the correctness and effectiveness of the improved method for foot-mounted inertial/ magnetometer pedestrian-positioning system based on AGDA in this paper, MTi-G710 MIMU manufactured by XSENS (Enschede, Netherlands) is used as the footwear test equipment for walking experiments. Table 1 shows the parameters of the MTi-G710.
The position and the orientation of the MIMU connected to a shoe are shown in Figure 6 to collect the output of the accelerometers, gyroscopes, magnetometers and GPS. The data collected by accelerometers, gyroscopes and magnetometers is utilized to calculate the positioning results of the pedestrian in real time. GPS position is the standard information. The sample frequency is 100 Hz.
Two test trajectories were carried out. Trajectory 1 was conducted to test and verify the validity of the algorithm proposed in this paper. For the first trajectory, an “8 shape” path was chosen, and there was no change in the magnetic interference throughout this trajectory. The second trajectory was conducted around the buildings to test the stability of the improve ZUPT algorithm, especially in the changing magnetic interference scenarios. Building proximity introduced many variable factors to influence the magnetometer interference, which included electric cables, metals, etc.
Test 1
The first pedestrian trajectory conducted for testing the proposed algorithm is an “8 shape” path. Pedestrian remained standing for 7 s to attain initial alignment attitude at the beginning of the test. Figure 7a is the estimation result of attitude obtained by initial alignment. Figure 7b is the magnetic disturbance estimation result during the initial alignment period. Figure 8 and Figure 9 are the heading estimation results, and the pedestrian positioning result based on the basic ZUPT and the improved ZUPT respectively. The standard position of GPS is shown in Figure 9a. Figure 9b is the position error, which is the difference between the position calculated by MIMU position and GPS position. In addition, the legends meaning of the curves in figures are summarized as follows:
  • Basic ZUPT: navigation algorithm of the basic ZUPT algorithm is discussed in Section 2.2;
  • Fast-initial alignment by AGDA: ADGA initial alignment algorithm proposed in Section 3;
  • Basic ZUPT + AGDA: the ZUPT algorithm based on the AGDA fast-initial alignment algorithm in Section 2.2 and the navigation algorithm by basic ZUPT in Section 2.2;
  • Improve ZUPT: the ZUPT algorithm based on the fast-initial alignment algorithm by AGDA was introduced in Section 2.2 and the navigation algorithm by the adaptive positioning algorithm discussed in Section 4;
  • GPS Position: GPS position as the standard reference information.
The curves of left column in Figure 7a are the attitude result during the alignment period from AGDA initial alignment algorithm, basic ZUPT algorithm and MTi-G710 output respectively. The curves of the right column in Figure 7a are the attitude error, which is the difference between the AGDA and reference attitude, the basic ZUPT and the reference algorithm. For the MTi-G710, the attitude can be obtained by the coupled navigation method when GPS available and the motion is not severe. Therefore, when the pedestrian stands on the ground for initial alignment, the attitude from MTi-G710 is used as the reference information to judge the initial alignment performance.
From the curves in Figure 7a it can be seen that, the attitude estimation results calculated by AGDA are −3.075°, 6.501°, −3.037°. The convergence time of initial alignment is less than 5 s which meets the requirement of fast alignment for FIPPS. In addition, the horizontal attitude calculated by the basic ZUPT and AGDA are the same as each other. Because the velocity error is the observation for Kalman filter for basic ZUPT, and the horizontal attitude are calculated by the component of gravity measured by accelerometers for AGDA. Therefore, the source information of calculating the two groups of horizontal attitudes are all acceleration from accelerometers. The heading accuracy calculated by AGDA is better than that by basic ZUPT because according to the conclusion in Section 3, the heading misalignment angle cannot observed and estimated by basic ZUPT, but it can be improved by AGDA, which takes the magnetometer as the reference sensor to estimate the heading attitude.
The output of the MTi-G710 magnetometer is in arbitrary units (a.u.), where one a.u. is the magnetic field strength during calibration at the Xsens calibration lab. Hence, there is no unit on the y-axis in Figure 7b. Mostly, the evaluation method is the position accuracy after magnetic disturbance compensated during the pedestrian walking stage (Figure 9).
From Figure 8, it can be concluded that the horizontal attitudes calculated by two different algorithms are nearly the same. The test results well fit with the theoretical conclusions in Section 2 and Section 4. The source information for calculating the horizontal attitudes are the acceleration sensed by accelerometers, whether basic ZUPT or AGDA is introduced as the correction method. The heading information in Figure 8c by two different algorithms is different. Because the heading misalignment angle obtained by improved ZUPT was estimated after the magnetic disturbance was compensated during the pedestrian walking stage. However, an accumulated heading error is produced by basic ZUPT because the heading misalignment angles cannot be estimated. Therefore, the problem of unobserved heading misalignment for FIPPS ZUPT is solved by introducing the Inertial/Magnetometer positioning algorithm based on an adaptive Kalman Filter, and the magnetic disturbance is compensated at the same time. Then, the position error can be reduced, which is shown in Figure 9.
The pedestrian position result is shown in Figure 9 for test 1. The figure compares the performance of three algorithms. ZUPT and AGDA was able to perform better than the basic ZUPT and positional errors are reduced. It was effective to introduce an initial alignment algorithm for FIPPS. The best pedestrian position test results were achieved by the proposed improve ZUPT as compared with the other two algorithms. The pedestrian trajectory by improve ZUPT can be tracked better using adaptive inertial/magnetometer positioning algorithm and introducing the heading misalignment angle as the observation, whereas, the pedestrian trajectory cannot be tracked by basic ZUPT, which is embodied in two aspects. One is increasing the initial heading error at the start point, and the other is accumulated heading error during the pedestrian walking period. One of the major reasons for the accumulated heading error is the unobserved heading misalignment angle during the pedestrian standing and walking period. Therefore, the performance of the pedestrian positioning is improved as it is based on the initial alignment algorithm by AGDA and inertial/magnetometer integrated positioning algorithm by compensating magnetic disturbance and the application of adaptive Kalman Filter.
Test 2
To test, whether the improve ZUPT algorithm proposed in this paper can be used in the changing magnetic interference environment, three test trajectories were carried out. The walking paths are rectangle, circle, and irregular shape respectively. Figure 10, Figure 11 and Figure 12 show the test results using different algorithms and GPS positions. The purpose of the proposed algorithm in this paper is reducing the position error of FIPPS by estimating and compensating the heading misalignment angles. The trajectory and the heading tracked result are shown in figures. The accuracy of GPS is 1m/s, and the sample is 1 s. The legends used in the figures are summarized as follows:
  • Basic ZUPT: the basic ZUPT algorithm is discussed in Section 2.2;
  • Alefa Zero: ZUPT algorithm based on the adaptive positioning algorithm is discussed in Section 4, but α = 0 in Equation (9c). It means that the heading misalignment angle is introduced as the observation for Kalman Filter, but the magnetic disturbances were not compensated.
  • Improve ZUPT: ZUPT based on the fast-initial alignment algorithm by AGDA in Section 2.2 and the navigation algorithm by the adaptive positioning algorithm in Section 4.
  • GPS Position: GPS position as the standard reference information.
According to the magnetometer principle, it can be obtained that the sum of the magnetometer measurement vector along three axes is constant if there are no magnetic disturbances. The magnetic vector sum will change when a magnetic disturbance appears. In addition, the output of the MTi-G710 magnetometer is processed in arbitrary units (a.u.) in XSENS’s lab. Therefore, the difference between the vector sum of the magnetometer measurement along three axis and 1 is the magnetic disturbances during the experiments. The differences are shown in Figure 10c, Figure 11c and Figure 12c to illustrate the magnetic disturbance degree for the three tests.
The position error is reduced by estimating the heading misalignment angle and using the adaptive Kalman Filter proposed in this paper, hence, the trajectory tracked and the heading estimation results are the two main states to reflect the performance of the algorithm proposed in this paper. According to the test results of different walking paths, it can be observed the position accuracy of the proposed adaptive inertial/magnetometer positioning algorithm is better than basic ZUPT and Alefa Zero ZUPT algorithms, and the trajectory can be tracked better. However, the trajectory positional tracking result is worse as compared to the test 1 because the magnetic interference is changing in test 2, and only part of the magnetic noise can be compensated by the adaptive Kaman Filter. The unobserved magnetic noise leads to the accumulating heading error and the position error.

6. Conclusions

An improved method for foot-mounted inertial/magnetometer pedestrian positioning based on an adaptive gradient descent algorithm is proposed in this paper. According to the principle of foot-mounted inertial pedestrian positioning, this paper presents a fast-initial alignment algorithm based on AGDA, where the initial attitude and the magnetic disturbance can be estimated during the pedestrian standing period by introducing the AGDA as the alignment algorithm. To solve the problem of the heading unobserved misalignment angle, this paper presents an adaptive inertial/magnetometer positioning algorithm. The magnetic disturbance is compensated, and the heading misalignment angle is used as an observation, therefore the accuracy of pedestrian position is improved. In addition, to compensate the change in the magnetic disturbance for ZUPT an adaptive parameter in the Kalman filter is added to enhance the positioning solution. MTi-G710, which is produced by XSENS is used to verify the proposed technique. The experimental results positively demonstrate the effectiveness of the proposed method for pedestrian-positioning in this paper.

Author Contributions

Q.W., J.Y., A.N. and U.I. designed the study. Q.W. and J.Y. analyzed the data. Q.W., J.Y., A.N. and U.I. wrote the manuscript. All of authors read and approved the final manuscript.

Funding

The paper is supported by National Natural Science Foundation of China (No.51509049, 51879046), China Scholarship Council (No. 201706685001).

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A

A quaternion is a four-dimensional complex number that can be used to represent the orientation of a ridged body or coordinate frame in three-dimensional space. The relationship between the q = [ q 1 q 2 q 3 q 4 ] T and the corresponding rotation matrix C n b can be obtained:
C n b = [ 2 q 0 2 + 2 q 1 2 1 2 q 1 q 2 + 2 q 0 q 3 2 q 1 q 3 2 q 0 q 2 2 q 1 q 2 2 q 0 q 3 2 q 0 2 + 2 q 2 2 1 2 q 2 q 3 + 2 q 0 q 1 2 q 1 q 3 + 2 q 0 q 2 2 q 2 q 3 2 q 0 q 1 2 q 0 2 + 2 q 3 2 1 ]
Let [ φ ˜ x φ ˜ y φ ˜ z ] be Euler angles usually defined in inertial navigation applications: the first rotation is about the z-axis through an angle φ ˜ z (heading angle), the second is about the y-axis through an angle φ ˜ y , and the third is about the x-axis through an angle φ ˜ x from n frame to b frame. When the Euler angles are [ φ ˜ x φ ˜ y φ ˜ z ] , the corresponding rotation matrix C n b can be obtained:
C n b = C x C y C z = [ 1 0 0 0 cos φ ˜ x sin φ ˜ x 0 sin φ ˜ x cos φ ˜ x ] [ cos φ ˜ y 0 sin φ ˜ y 0 1 0 sin φ ˜ y 0 cos φ ˜ y ] [ cos φ ˜ z sin φ ˜ z 0 sin φ ˜ z cos φ ˜ z 0 0 0 1 ] = [ cos φ ˜ y cos φ ˜ z cos φ ˜ y sin φ ˜ z sin φ ˜ y sin φ ˜ x sin φ ˜ y cos φ ˜ z cos φ ˜ x sin φ ˜ z sin φ ˜ x sin φ ˜ y sin φ ˜ z + cos φ ˜ x cos φ ˜ z sin φ ˜ x cos φ ˜ y cos φ ˜ x sin φ ˜ y cos φ ˜ z + sin φ ˜ x sin φ ˜ z cos φ ˜ x sin φ ˜ y sin φ ˜ z sin φ ˜ x cos φ ˜ z cos φ ˜ x cos φ ˜ y ]

Appendix B

Adjusting Equation (7), an expression of cos φ 0 and sin φ 0 are obtained as follows:
{ cos φ 0 = m x n ˜ H cos φ ˜ z δ m x y sin φ 0 = m y n ˜ H sin φ ˜ z δ m x y
Squaring two sides of Equation (A3) and making the sum, the following expression is obtained:
m x n ˜ cos φ ˜ z + m y n ˜ sin φ ˜ z = m x n ˜ 2 + m y n ˜ 2 + H 2 δ m x y 2 2 H
Put sin χ = m x n ˜ m x n ˜ 2 + m y n ˜ 2 and cos χ = m y n ˜ m x n ˜ 2 + m y n ˜ 2 , and taking them into Equation (A4), the following equation is obtained:
m x n ˜ 2 + m y n ˜ 2 ( m x n ˜ m x n ˜ 2 + m y n ˜ 2 cos φ ˜ z + m y n ˜ m x n ˜ 2 + m y n ˜ 2 sin φ ˜ z ) = m x n ˜ 2 + m y n ˜ 2 + H 2 δ m x y 2 2 H
Using the trigonometric function equation to Equation (A5):
sin ( χ + φ ˜ z ) = m x n ˜ 2 + m y n ˜ 2 + H 2 δ m x y 2 2 H m x n ˜ 2 + m y n ˜ 2
The calculation formula of φ ˜ z in Equation (8) is obtained by adjusting Equation (A6). Then, the calculation formula of φ 0 in Equation (8) is obtained with the same method.

References

  1. Ojeda, L.; Borenstein, J. Non-GPS navigation for security personnel and first responders. J. Navig. 2007, 60, 391–407. [Google Scholar] [CrossRef]
  2. Elwell, J. Inertial Navigation for the Urban Warrior. In Proceedings of the Digitization of the Battlespace IV, Orlando, FL, USA, 9 July 1999; Volume 3709, pp. 196–204. [Google Scholar]
  3. Harle, R. A survey of indoor inertial positioning systems for pedestrians. IEEE Commun. Surv. Tutor. 2013, 99, 1–13. [Google Scholar] [CrossRef]
  4. Fischer, C.; Sukumar, P.T.; Hazas, M. Tutorial: Implementing a Pedestrian Tracker Using Inertial Sensors. IEEE Pervasive Comput. 2013, 12, 17–27. [Google Scholar] [CrossRef]
  5. Foxlin, E. Pedestrian Tracking with Shoe-Mounted Inertial Sensors. IEEE Comput. Graphics Appl. 2005, 25, 38–46. [Google Scholar] [CrossRef]
  6. Bebek, Ö.; Suster, M.A.; Rajgopal, S.; Fu, M.J.; Huang, X.; Cavusoglu, M.C.; Young, D.J.; Mehregany, M.; van den Bogert, A.J.; Mastrangelo, C.H.. Personal Navigation via High-Resolution Gait Corrected Inertial Measurement Units. IEEE Trans. Instrum. Meas. 2010, 59, 3018–3027. [Google Scholar] [CrossRef]
  7. Nilsson, J.O.; Skog, I.; Händel, P.; Hari, K.V.S. Foot-mounted inertial navigation for everybody—An open-source embedded implementation. In Proceedings of the IEEE/ION Position, Location and Navigation Symposium (PLANS), Myrtle Beach, SC, USA, 23–26 April 2012. [Google Scholar]
  8. Godha, S.; Lachapelle, G. Foot mounted inertial system for pedestrian navigation. Meas. Sci. Technol. 2008, 19, 1–9. [Google Scholar] [CrossRef]
  9. Skog, I.; Handel, P.; Nilsson, J.O.; Rantakokko, J. Zero-velocity detection—An algorithm evaluation. IEEE Trans. Biomed. Eng. 2010, 57, 2657–2666. [Google Scholar] [CrossRef] [PubMed]
  10. Skog, I.; Nilsson, J.O.; Händel, P. Evaluation of zero-velocity detectors for foot-mounted inertial navigation systems. In Proceedings of the International Conference on Indoor Positioning and Indoor Navigation (IPIN), Zurich, Switzerland, 15–17 September 2010; pp. 1–6. [Google Scholar]
  11. Li, X.; Mao, Y.; Xie, L.; Chen, J.; Song, C. Applications of zero-velocity detector and Kalman filter in zero velocity update for inertial navigation system. In Proceedings of the Chinese Guidance, Navigation and Control Conference (CGNCC), Yantai, China, 8–10 August 2014; pp. 1760–1763. [Google Scholar]
  12. Zhao, H.; Wang, Z.; Gao, Q.; Hassan, M.M.; Alelaiwi, A. Smooth estimation of human foot motion for zero-velocity-update-aided inertial pedestrian navigation system. Sens. Rev. 2015, 35, 389–400. [Google Scholar] [CrossRef]
  13. Zhang, X.; Ren, M.; Wang, P.; Pan, K. A new zero velocity update algorithm for the shoe-mounted personal navigation system based on IMU. In Proceedings of the 34th Chinese Control Conference (CCC), Hangzhou, China, 28–30 July 2015; pp. 5297–5302. [Google Scholar]
  14. Fathi, M.; Mohammadi, A.; Ghahramani, N. INS Alignment Improvement Using Rest Heading and Zero-Velocity Updates. J. Space Sci. Technol. 2016, 8, 45–51. [Google Scholar]
  15. Zhang, R.; Yang, H.; Höflinger, F.; Reindl, L.M. Adaptive zero velocity update based on velocity classification for pedestrian tracking. IEEE Sens. J. 2017, 17, 2137–2145. [Google Scholar] [CrossRef]
  16. Fang, J.C.; Wan, D.J. A fast initial alignment method for strapdown inertial navigation system on stationary base. IEEE Trans. Aerosp. Electron. Syst. 1996, 32, 1501–1504. [Google Scholar] [CrossRef]
  17. Chang, L.; Li, J.; Chen, S. Initial Alignment by Attitude Estimation for Strapdown Inertial Navigation Systems. IEEE Trans. Instrum. Meas. 2014, 64, 784–794. [Google Scholar] [CrossRef]
  18. Xing, H.; Chen, Z.; Yang, H. Self-Alignment MEMS IMU Method Based on the Rotation Modulation Technique on a Swing Base. Sensors 2018, 18, 1178. [Google Scholar] [CrossRef] [PubMed]
  19. Li, Y.; Efatmaneshnik, M.; Dempster, A.G. Attitude determination by integration of MEMS inertial sensors and GPS for autonomous agriculture applications. GPS Solutions 2012, 16, 41–52. [Google Scholar] [CrossRef]
  20. Niu, X.; Li, Y.; Zhang, H.; Wang, Q.; Ban, Y. Fast Thermal Calibration of Low-Grade Inertial Sensors and Inertial Measurement Units. Sensors 2013, 13, 12192–12217. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  21. Xu, T.; Wang, B.; Wang, X.Y. Research on Rotating Modulated Strap-Down Inertial Navigation System Based on Micro-Electro-Mechanical Systems (MEMS) Sensors (RMSINS). Appl. Mech. Mater. 2012, 148–149, 192–197. [Google Scholar] [CrossRef]
  22. Wang, X.; Wu, J.; Wang, T.X.W. Analysis and Verification of Rotation Modulation Effects on Inertial Navigation System based on MEMS Sensors. J. Navig. 2013, 66, 751–772. [Google Scholar] [CrossRef] [Green Version]
  23. Nilsson, J.-O.; Skog, I.; Handel, P.; Hari, K.V.S. Foot-mounted INS for Everybody—An Open-source Embedded Implementation. In Proceedings of the 2012 IEEE/ION Position Location and Navigation Symposium (PLANS), Myrtle Beach, SC, USA, 23–26 April 2012; pp. 140–145. [Google Scholar]
  24. Skog, I.; Nilsson, J.-O.; Zachariah, D.; Handel, P. Fusing the Information from Two Navigation Systems Using an Upper Bound on Their Maximum Spatial Separation. In Proceedings of the 2012 International Conference on Indoor Positioning and Indoor Navigation, Sydney, Australia, 13–15 November 2012. [Google Scholar]
  25. Nilsson, J.-O.; Zachariah, D.; Skog, I.; Händel, P. Cooperative localization by dual foot-mounted inertial sensors and inter-agent ranging. EURASIP J. Adv. Signal Process. 2013. [Google Scholar] [CrossRef]
  26. Manon, K.; Thomas, B.S. Magnetometer Calibration Using Inertial Sensors. IEEE Sens. J. 2016, 16, 5679–5690. [Google Scholar]
  27. Metge, J.; Mégret, R.; Giremus, A.; Berthoumieu, Y.; Décamps, T. Calibration of an inertial-magnetic measurement unit without external equipment, in the presence of dynamic magnetic disturbances. Meas. Sci. Technol. 2014, 25, 125106. [Google Scholar] [CrossRef]
  28. Vasconcelos, J.F.; Elkaim, G.; Silvestre, C.; Oliveira, P.; Cardeira, B. Geometric approach to strapdown magnetometer calibration in sensor frame. IEEE Trans. Aerosp. Electron. Syst. 2011, 47, 1293–1306. [Google Scholar] [CrossRef]
  29. Wu, Y.; Zou, D.; Liu, P.; Yu, W. Dynamic Magnetometer Calibration and Alignment to Inertial Sensors by Kalman Filtering. IEEE Trans. Control Syst. Technol. 2018, 26, 716–723. [Google Scholar] [CrossRef] [Green Version]
  30. Springmann, J.C.; Cutler, J.W. Attitude-independent magnetometer calibration with time-varying bias. J. Guid. Control Dyn. 2012, 35, 1080–1088. [Google Scholar] [CrossRef]
  31. Alonso, R.; Shuster, M.D. TWO STEP: A fast robust algorithm for attitude-independent magnetometer-bias determination. J. Astron. Sci. 2002, 50, 433–451. [Google Scholar]
  32. Alonso, R.; Shuster, M.D. Complete linear attitude-independent magnetometer calibration. J. Astron. Sci. 2002, 50, 477–490. [Google Scholar]
  33. Hol, J.D. Sensor fusion and calibration of inertial sensors, vision, ultra-wideband and GPS. Ph.D. Thesis, Linköping University, Linköping, Sweden, 2011. [Google Scholar]
  34. Wu, Y.; Shi, W. On calibration of three-axis magnetometer. IEEE Sens. J. 2015, 15, 6424–6431. [Google Scholar] [CrossRef]
  35. Grandvallet, B.; Zemouche, A.; Boutayeb, M.; Changey, S. Real-time attitude-independent three-axis magnetometer calibration for spinning projectiles: A sliding window approach. IEEE Trans. Control Syst. Technol. 2014, 22, 255–264. [Google Scholar] [CrossRef]
  36. Crassidis, J.L.; Lai, K.-L.; Harman, R.R. Real-time attitude independent three-axis magnetometer calibration. J. Guid. Control Dyn. 2005, 28, 115–120. [Google Scholar] [CrossRef]
  37. Wang, Q.; Guo, Z.; Sun, Z.; Cui, X.; Liu, K. Research on the Forward and Reverse Calculation Based on the Adaptive Zero-Velocity Interval Adjustment for the Foot-Mounted Inertial Pedestrian-Positioning System. Sensors 2018, 18, 1642. [Google Scholar] [CrossRef] [PubMed]
  38. Yang, H.; Li, W.; Luo, T.; Luo, C.; Liang, H.; Zhang, H.; Gu, Y. Research on the strategy of motion constraint-aided ZUPT for the SINS positioning system of a shearer. Micromachines 2017, 8, 340. [Google Scholar] [CrossRef] [PubMed]
  39. Song, J.W.; Park, C.G. Enhanced pedestrian navigation based on course angle error estimation using cascaded kalman filters. Sensors 2018, 18, 1281. [Google Scholar] [CrossRef] [PubMed]
  40. Yu, C.; El-Sheimy, N.; Lan, H.; Liu, Z. Map-based indoor pedestrian navigation using an auxiliary particle filter. Micromachines 2017, 8, 225. [Google Scholar] [CrossRef] [PubMed]
  41. Petritoli, E.; Giagnacovo, T.; Leccese, F. Lightweight GNSS/IRS integrated navigation system for UAV vehicles. In Proceedings of the 2014 IEEE International Workshop on Metrology for Aerospace, (MetroAeroSpace), Benevento, Italy, 29–30 May 2014; pp. 56–61. [Google Scholar]
  42. Xu, X.; Xu, X.; Zhang, T.; Li, Y.; Tong, J. A kalman filter for sins self-alignment based on vector observation. Sensors 2017, 17, 264. [Google Scholar] [CrossRef] [PubMed]
  43. Ben, Y.; Yin, G.; Gao, W.; Sun, F. Improved filter estimation method applied in zero velocity update for SINS. In Proceedings of the 2009 International Conference on Mechatronics and Automation, Changchun, China, 9–12 August 2009. [Google Scholar]
  44. Ramanandan, A.; Chen, A.; Farrell, J.A. Observability analysis of an inertial navigation system with stationary updates. In Proceedings of the 2011 American Control Conference, San Francisco, CA, USA, 29 June–1 July 2011. [Google Scholar]
  45. Madgwick, S.O.H. An efficient orientation filter for inertial and inertial magnetic sensor arrays. Available online: https://forums.parallax.com/uploads/attachments/41167/106661.pdf (accessed on 22 November 2018).
Figure 1. The relationships between basic ZUPT, its problems and the proposed algorithms.
Figure 1. The relationships between basic ZUPT, its problems and the proposed algorithms.
Sensors 18 04105 g001
Figure 2. Diagram of AGDA for pedestrian initial alignment.
Figure 2. Diagram of AGDA for pedestrian initial alignment.
Sensors 18 04105 g002
Figure 3. The geometric relation of earth magnetic field, magnetic disturbance and magnetometer magnetic (magnitude and direction of the magnetic field).
Figure 3. The geometric relation of earth magnetic field, magnetic disturbance and magnetometer magnetic (magnitude and direction of the magnetic field).
Sensors 18 04105 g003
Figure 4. Adaptive Inertial/Magnetometer Positioning Algorithm.
Figure 4. Adaptive Inertial/Magnetometer Positioning Algorithm.
Sensors 18 04105 g004
Figure 5. Schematic diagram of the improved algorithm for FIPPS.
Figure 5. Schematic diagram of the improved algorithm for FIPPS.
Sensors 18 04105 g005
Figure 6. The position and the orientation of externally located MTI-710 on Shoe. (a) MTi-G710 installed on the foot; (b) MTi-G710 and its frame.
Figure 6. The position and the orientation of externally located MTI-710 on Shoe. (a) MTi-G710 installed on the foot; (b) MTi-G710 and its frame.
Sensors 18 04105 g006
Figure 7. Attitude and magnetic disturbance estimation by initial alignment. (a) Attitude result; (b) Magnetic disturbance.
Figure 7. Attitude and magnetic disturbance estimation by initial alignment. (a) Attitude result; (b) Magnetic disturbance.
Sensors 18 04105 g007
Figure 8. Pedestrian heading estimation result. (a) Pitch; (b) Roll; (c) Heading.
Figure 8. Pedestrian heading estimation result. (a) Pitch; (b) Roll; (c) Heading.
Sensors 18 04105 g008
Figure 9. Position result for test 1. (a) Trajectory tracked result; (b) position error by different algorithms.
Figure 9. Position result for test 1. (a) Trajectory tracked result; (b) position error by different algorithms.
Sensors 18 04105 g009
Figure 10. A rectangle path position result. (a) Trajectory; (b) Heading estimation result; (c) Magnetometer disturbances.
Figure 10. A rectangle path position result. (a) Trajectory; (b) Heading estimation result; (c) Magnetometer disturbances.
Sensors 18 04105 g010
Figure 11. A circular path position result. (a) Trajectory; (b) Heading estimation result; (c) Magnetometer disturbances.
Figure 11. A circular path position result. (a) Trajectory; (b) Heading estimation result; (c) Magnetometer disturbances.
Sensors 18 04105 g011
Figure 12. An irregular shape position result. (a) Trajectory; (b) Heading estimation result; (c) Magnetometer disturbances.
Figure 12. An irregular shape position result. (a) Trajectory; (b) Heading estimation result; (c) Magnetometer disturbances.
Sensors 18 04105 g012
Table 1. MTi-G710 Parameters.
Table 1. MTi-G710 Parameters.
SensorsTypicalMax
GyroBias repeatability[deg/s]0.20.5
Noise density[deg/s]0.010.015
AccelerometerBias repeatability[m/s2]0.030.05
Noise density[μg/√Hz]80150

Share and Cite

MDPI and ACS Style

Wang, Q.; Yin, J.; Noureldin, A.; Iqbal, U. Research on an Improved Method for Foot-Mounted Inertial/Magnetometer Pedestrian-Positioning Based on the Adaptive Gradient Descent Algorithm. Sensors 2018, 18, 4105. https://doi.org/10.3390/s18124105

AMA Style

Wang Q, Yin J, Noureldin A, Iqbal U. Research on an Improved Method for Foot-Mounted Inertial/Magnetometer Pedestrian-Positioning Based on the Adaptive Gradient Descent Algorithm. Sensors. 2018; 18(12):4105. https://doi.org/10.3390/s18124105

Chicago/Turabian Style

Wang, Qiuying, Juan Yin, Aboelmagd Noureldin, and Umar Iqbal. 2018. "Research on an Improved Method for Foot-Mounted Inertial/Magnetometer Pedestrian-Positioning Based on the Adaptive Gradient Descent Algorithm" Sensors 18, no. 12: 4105. https://doi.org/10.3390/s18124105

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop