Next Article in Journal
Force Myography-Based Human Robot Interactions via Deep Domain Adaptation and Generalization
Previous Article in Journal
Multi-Agent System for Intelligent Urban Traffic Management Using Wireless Sensor Networks Data
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Novel Calibration Method for Gyro-Accelerometer Asynchronous Time in Foot-Mounted Pedestrian Navigation System

School of Instrumentation and Optoelectronic Engineering, Beihang University, Beijing 100191, China
*
Author to whom correspondence should be addressed.
These authors contributed equally to this work.
Sensors 2022, 22(1), 209; https://doi.org/10.3390/s22010209
Submission received: 11 November 2021 / Revised: 22 December 2021 / Accepted: 24 December 2021 / Published: 29 December 2021
(This article belongs to the Section Navigation and Positioning)

Abstract

:
Pedestrian Navigation System (PNS) is one of the research focuses of indoor positioning in GNSS-denied environments based on the MEMS Inertial Measurement Unit (MIMU). However, in the foot-mounted pedestrian navigation system with MIMU or mobile phone as the main carrier, it is difficult to make the sampling time of gyros and accelerometers completely synchronous. The gyro-accelerometer asynchronous time affects the positioning of PNS. To solve this problem, a new error model of gyro-accelerometer asynchronous time is built. The effect of gyro-accelerometer asynchronous time on pedestrian navigation is analyzed. A filtering model is designed to calibrate the gyro-accelerometer asynchronous time, and a zero-velocity detection method based on the rate of attitude change is proposed. The indoor experiment shows that the gyro-accelerometer asynchronous time is estimated effectively, and the positioning accuracy of PNS is improved by the proposed method after compensating for the errors caused by gyro-accelerometer asynchronous time.

1. Introduction

Outdoor pedestrian positioning mainly relies on the Global Navigation Satellite System (GNSS). In indoor GNSS-denied environments, a pedestrian navigation system (PNS) is an important positioning method to locate a user’s position [1,2]. There are two kinds of technical schemes for PNS: One is the active positioning method utilizing Ultra-Wideband (UWB) [3], Bluetooth [4], ZigBee [5], Wireless Fidelity (Wi-Fi) [6], etc. The other one is the passive positioning method utilizing the Strapdown Inertial Navigation System (SINS) based on three gyros and three accelerometers [7], which makes it realizable in terms of locating the user’s position without any other external devices. A common method for the passive positioning method is to fix the MEMS Inertial Measurement Unit (MIMU) on the foot, which is also called foot-mounted pedestrian navigation system [8,9].
Limited by the low precision of MEMS inertial devices, the velocity and position of PNS will diverge rapidly over time [10]. To avoid the accumulation of velocity errors and position errors, the zero velocity updates (ZUPT) algorithm has been proposed and widely used. The velocity is approximately equal to zero when the foot touches the ground, which can be employed in a Kalman filter to correct the errors of PNS. Zero-velocity detection is one of the main factors affecting the correction effect of the ZUPT algorithm [11]. In reference [12], Barsocchi analyzed the gait characteristics and succeeded in extracting temporal gait parameters based on a sensorized footwear which contains a 3-axis gyro, a 3-axis accelerometer, a 3-axis magnetometer and five pressure sensors. References [13,14,15] present four commonly used zero-velocity detection methods which are named the stance hypothesis optimal detector, the acceleration moving variance detector, the acceleration magnitude detector, and the angular rate energy detector. The models of the four zero-velocity detection methods are compared. The experimental results showed that the detection method which utilizes the synchronous signals of gyros and accelerometers has the highest performance, and the zero-velocity detection methods perform better at slow or normal gait speed.
In order to further improve the positioning accuracy of PNS, researchers have studied the application of other sensors and constraint algorithms in PNS. In reference [16], Ruiz et al. made use of the zero angular rate updates (ZARU) algorithm assisted by MIMU and RFID with extended Kalman filter, INS algorithm, and ZUPT algorithm as the framework. The experimental results showed that the positioning error is only 1.5 m in a long-term working. Xin et al. utilized magnetometers to correct the heading errors [17]. However, it’s unpractical since the magnetic field is complex and changeable in an indoor environment. Ji et al. proposed an adaptive heading correction algorithm for suppressing magnetic interference in SINS which can correct the heading error effectively in the environments with magnetic field interference [18]. Borenstein et al. proposed a method called heuristic drift reduction (HDR), which uses the building orientation to constrain the user’s trajectory [19]. Abdulrahim et al. proposed an algorithm for generating heading measurements from basic knowledge of the orientation of the building in which the pedestrian is walking, and the results showed that the absolute position error at the final position is below 5 m, about 0.1% of the total travelled distance in the 40-min experiment with a total distance of 3 km [20]. Tanigawa et al. utilized a barometer to achieve the high-fidelity height tracking. However, in fire and smoke environments, due to the thermal noise and quantization noise, the barometer is no longer credible and useable [21]. Gu et al. proposed an integrated method utilizing gait detection and hidden Markov height estimation algorithm, to realize the effective correction of height by taking advantage of the fixed height of floors and stairs without using barometers [22]. Jing et al. proposed an adaptive collaborative positioning algorithm which selects units for the collaborative network and integrates ranging measurement to constrain inertial measurement errors. The experimental results showed that the positioning accuracy is improved by 60% compared with the traditional method [23]. Ding and Skog et al. utilized MIMU arrays to improve the positioning accuracy [24,25]. However, these above methods do not consider the effect of the asynchronization of sampling time between gyros and accelerometers.
The traditional algorithms of SINS have been analyzed under the assumption that the sampling time between gyros and accelerometers is synchronous. However, in a practical system, the gyro signals need to pass a lowpass filter, and the frequency characteristics of gyros and accelerometers are inconsistent in the common case. Particularly, most of manufacturers which produce gyros or accelerometers seldom consider the compatibility between gyros and accelerometers. Therefore, the difference in phase-frequency characteristics will lead to the asynchronization of sampling time. In addition, most systems do not synchronize the sampling time of gyros and accelerometers by using the synchronous pulse. Therefore, the incompatibility between gyros and accelerometers and the circuit defect will cause the problem of gyro-accelerometer asynchronous time. If the sampling time of gyros and accelerometers is not synchronous, the velocity errors and position errors will be accumulated continuously over time. To solve this problem, Yan et al. analyzed the effect of gyro-accelerometer asynchronous time in SINS and successfully compensated for the velocity errors after calculating the parameter of gyro-accelerometer asynchronous time [26]. Wen et al. built a model of gyro-accelerometer asynchronous time in Dual-axis RINS, and proposed a calibration method that can improve the navigation velocity accuracy and system stability under long time navigation [27]. These experimental results showed that the methods proposed by Yan and Wen succeed in calibrating the parameter of gyro-accelerometer asynchronous time and compensating for the errors in a low-dynamic environment by making IMU rotate around a single axis or double axes regularly.
Nevertheless, the existing research work of gyro-accelerometer asynchronous time is not completely applicable in PNS. Compared with SINS, the rotation of MIMU in the foot-mounted pedestrian navigation system is more complex and intense. Such a high-dynamic environment will increase the effect of gyro-accelerometer asynchronous time on pedestrian navigation. Therefore, the traditional calibration methods and error models of gyro-accelerometer asynchronous time in SINS cannot be employed in PNS. However, there are few references of gyro-accelerometer asynchronous time in PNS. In the foot-mounted pedestrian navigation system with MIMU or mobile phone as the main carrier, the gyro-accelerometer asynchronous time is likely to reach tens of milliseconds, and the gyro-accelerometer asynchronous time is changeable each time the system is turned on. Due to the gyro-accelerometer asynchronous time, the velocity error tends to be nonlinear. Therefore, the traditional error models of PNS are no longer suitable. Besides, the traditional zero-velocity detection methods which utilize gyros and accelerometers do not consider the gyro-accelerometer asynchronous time. If the sampling time of gyros and accelerometers is asynchronous, the traditional zero-velocity detection methods may lead to missing detection or false detection.
In order to solve the above problems and improve the positioning accuracy of pedestrian navigation, the gyro-accelerometer asynchronous time in PNS is studied in this paper. Compared with the known and used methodologies, this paper focuses on the calibration method of gyro-accelerometer asynchronous time in PNS which is never studied before. The proposed technology intends to provide a new way to improve the positioning accuracy of foot-mounted pedestrian navigation system in which the communication infrastructure is damaged when fire, earthquake or other emergency occurs. The main contributions in this paper can be summarized as follows: (1) A new model of gyro-accelerometer asynchronous time is built, and the effect of gyro-accelerometer asynchronous time on pedestrian navigation is analyzed. (2) A calibration method of gyro-accelerometer asynchronous time and a new zero-velocity detection method based on the rate of attitude change are proposed.
The remainder of this paper is organized as follows: Section 2 introduces the reference frame definitions. Section 3 builds an error model of gyro-accelerometer asynchronous time and analyzes the effect of gyro-accelerometer asynchronous time on pedestrian navigation. Section 4 designs a Kalman filter to calibrate the gyro-accelerometer asynchronous time and proposes a zero-velocity detection method based on the rate of attitude change. Section 5 shows the experiments and results. The discussion and conclusion are presented in Section 6.

2. The Reference Frame Definitions

The reference coordinate frames used in this paper are defined as follows:
o i x i y i z i (i-frame): Earth-Centered Inertially Fixed (ECIF) orthogonal reference frame.
o e x e y e z e (e-frame): Earth-Centered Earth-Fixed (ECEF) orthogonal reference frame.
o b x b y b z b (b-frame): Body orthogonal reference frame aligned with Right-Forward-Up axes of MIMU.
o b x b y b z b ( b -frame): Accelerometer orthogonal reference frame aligned with accelerometer-sensitive axes.
o m x m y m z m (m-frame): Carrier orthogonal reference frame aligned with Right-Forward-Up axes of foot.
o h x h y h z h (h-frame): Horizontal orthogonal reference frame with X-axis and Y-axis in the local horizon.
o n x n y n z n (n-frame): Navigation orthogonal reference frame aligned with local East-North-Up geodetic axes.

3. Gyro-Accelerometer Asynchronous Time

3.1. Error Model of Gyro-Accelerometer Asynchronous Time

In the foot-mounted pedestrian navigation system, the MIMU rotates with the movement of foot. In theory, the gyro outputs and accelerometer outputs are both aligned with b-frame, which is calculated by gyros. However, due to the gyro-accelerometer asynchronous time, the accelerometer outputs are aligned with b -frame instead of b-frame. Therefore, the coordinate frames aligned with gyro-sensitive axes and accelerometer-sensitive axes are no longer consistent. The angle errors between b-frame and b -frame can be written as:
δ θ = θ θ δ γ = γ γ δ ψ = ψ ψ
where θ , γ and ψ are the pitch angle, roll angle and yaw angle from b-frame to n-frame, θ , γ and ψ are the pitch angle, roll angle and yaw angle from b -frame to n-frame.
Figure 1 shows the dynamic inconsistent error of the coordinate frame caused by gyro-accelerometer asynchronous time. If the gyro-accelerometer asynchronous time of three axes is different, b -frame is non-orthogonal. Since the three-axis MEMS accelerometer chip is used in PNS, it can be assumed that the three gyros and three accelerometers have the same characteristics of asynchronous time. That is, the three gyros and three accelerometers have the same asynchronous time.
In this paper, f b denotes the accelerometer output vector in b -frame. f ˜ b denotes the measured specific force vector. In view of gyro-accelerometer asynchronous time, the specific force measurements are the accelerometer outputs in b -frame. Therefore, the measured specific force vector can be expressed as:
f ˜ b = C n b f n
where f n = f E n f N n f U n T is the projection of f b onto n-frame, and C n b is the transform matrix from n-frame to b -frame.
The measured specific force vector in n-frame can be written as:
f ˜ n = C b n f ˜ b
where C b n is the transform matrix from b-frame to n-frame.
Therefore, the specific force error vector δ f n caused by gyro-accelerometer asynchronous time is:
δ f n = f ˜ n f n C b n C n b f n f n = ( C b n C n b I ) f n
where
C b n = c ψ c γ s ψ s θ s γ s ψ c θ c ψ s γ + s ψ s θ c γ s ψ c γ + c ψ s θ s γ c ψ c θ s ψ s γ c ψ s θ c γ c θ s γ s θ c θ c γ ,
C n b = c ψ c γ s ψ s θ s γ s ψ c γ + c ψ s θ s γ c θ s γ s ψ c θ c ψ c θ s θ c ψ s γ + s ψ s θ c γ s ψ s γ c ψ s θ c γ c θ c γ ,
s α = sin ( α ) c α = cos ( α ) ( α = θ , γ , ψ , θ , γ , ψ ) .
In order to analyze the effect of gyro-accelerometer asynchronous time on pedestrian navigation conveniently and intuitively, the movement of foot is divided into three parts, including pitch motion, roll motion, and yaw motion. The effect of pitch motion on pedestrian navigation is analyzed as follows.
The gyro-accelerometer asynchronous time is denoted as τ , and the initial three-axis attitude vector is denoted as 0 , 0 , ψ 0 T . If the MIMU rotates around the pitch axis, Equation (2) can be rewritten as:
f ˜ b = C n b f n = ( C ψ 0 C θ ) T f n = 1 0 0 0 c θ s θ 0 s θ c θ c ψ 0 s ψ 0 0 s ψ 0 c ψ 0 0 0 0 1 f E n f N n f U n = c ψ 0 s ψ 0 0 s ψ 0 c θ c ψ 0 c θ s θ s ψ 0 s θ c ψ 0 s θ c θ f E n f N n f U n .
Substituting Equation (5) into Equation (3), f ˜ n can be expressed as:
f ˜ n = C b n C n b f n = C ψ 0 C θ C n b f n = c ψ 0 s ψ 0 0 s ψ 0 c ψ 0 0 0 0 1 1 0 0 0 c θ s θ 0 s θ c θ C n b f n 1 0 δ θ s ψ 0 0 1 δ θ c ψ 0 δ θ s ψ 0 δ θ c ψ 0 1 f E n f N n f U n .
For the convenience of analysis, it’s assumed that people walk, go upstairs or go downstairs at normal speed. Then δ θ , δ γ and δ ψ can be considered as small angles. Therefore, δ θ , δ γ and δ ψ can be written as:
δ α ω α τ ( α = θ , γ , ψ )
where ω θ , ω γ and ω ψ are the angular velocities along pitch axis, roll axis, and azimuth axis respectively.
Substituting Equation (7) into Equation (6), f ˜ n can be rewritten as:
f ˜ n = 1 0 ω θ τ s ψ 0 0 1 ω θ τ c ψ 0 ω θ τ s ψ 0 ω θ τ c ψ 0 1 f E n f N n f U n .
Compared with f n , the accelerometer measurement errors in n-frame can be expressed as:
δ f E n δ f N n δ f U n = ω θ τ sin ψ 0 f U n ω θ τ cos ψ 0 f U n ω θ τ sin ψ 0 f E n + ω θ τ cos ψ 0 f N n
where δ f n = [ δ f E n , δ f N n , δ f U n ] T denotes the accelerometer measurement error vector in n-frame.
According to [28], the velocity error model is:
v ˙ n = f n ( 2 ω i e n + ω e n n ) × v n + g n v ˜ ˙ n = f ˜ n ( 2 ω i e n + ω e n n ) × v ˜ n + g n
where v n = v E n v N n v U n T and v ˜ n = v ˜ E n v ˜ N n v ˜ U n T are the ideal velocity vector and calculated velocity vector in n-frame respectively, g n is the local gravity vector, ω i e n is the angular velocity vector of earth rotation and ω e n n is the angular velocity vector of n-frame relative to earth.
Therefore, the velocity error vector caused by gyro-accelerometer asynchronous time can be expressed as:
δ v n = 0 t v ˜ ˙ n d t 0 t v ˙ n d t 0 t f ˜ n f n d t = 0 t δ f n d t
where δ v n = δ v E n δ v N n δ v U n T denotes the velocity error vector.
Substituting Equation (9) into Equation (11), the velocity error vector can be rewritten as:
δ v n = τ 0 t ω θ 0 0 sin ψ 0 0 0 cos ψ 0 sin ψ 0 cos ψ 0 0 f E n f N n f U n d t .
According to Equation (12), the horizontal velocity error is:
δ v h n = ( δ v E n ) 2 + ( δ v N n ) 2 = τ 0 t ω θ f U n d t
where the oritation is: arctan ( δ v E n δ v E n δ v N n δ v N n ) = ψ 0 .
The vertical velocity error is:
δ v U n = τ 0 t ω θ ( sin ψ 0 f E n + cos ψ 0 f N n ) d t = τ 0 t ω θ f / / n d t
where f / / n is the equivalent velocity along the forward direction of the people’s movement. Similarly, f n denotes the equivalent velocity that is perpendicular to the forward direction of the people’s movement. f n can be expressed as:
f n = cos ψ 0 f E n + sin ψ 0 f N n .
Further, the latitude error, longitude error and height error caused by gyro-accelerometer asynchronous time can be written as follows respectively:
δ L = 0 t L ˜ ˙ d t 0 t L ˙ d t = 0 t 1 R M + h ˜ v ˜ N n d t 0 t 1 R M + h v N n d t τ cos ψ 0 R M + h 0 t 0 t ω θ f U n d t d t ,
δ λ = 0 t λ ˜ ˙ d t 0 t λ ˙ d t = 0 t sec L R N + h ˜ v ˜ E n d t 0 t sec L R N + h v E n d t τ sin ψ 0 sec L R N + h 0 t 0 t ω θ f U n d t d t ,
δ h = 0 t h ˜ ˙ d t 0 t h ˙ d t = 0 t v ˜ U n d t 0 t v U n d t = τ 0 t 0 t ω θ ( sin ψ 0 f E n + cos ψ 0 f N n ) d t d t
where L, λ , and h are the ideal latitude, longitude and height respectively, L ˜ , λ ˜ , and h ˜ are the calculated latitude, longitude and height respectively, R M is the radius of curvature in meridian, and R N is the radius of curvature in prime vertical.

3.2. Effects of Gyro-Accelerometer Asynchronous Time on Pedestrian Navigation

According to Equation (12), the north velocity errors can be written as follows under the assumption of ψ = ψ 0 or ψ = ψ 0 + π :
δ v N n ψ = ψ 0 = τ cos ψ 0 0 t ω θ f U n d t δ v N n ψ = ψ 0 + π = τ cos ψ 0 0 t ω θ f U n d t .
Equation (19) shows that the north velocity errors are opposite in opposite directions. It’s indicated that the north velocity errors caused by gyro-accelerometer asynchronous time will cancel each other out in opposite directions. Further analysis shows that the gyro-accelerometer asynchronous time has the same effect on east velocity error.
According to Equation (13), the horizontal velocity error δ v h n is related to τ , ω θ and f U n . Roughly, ω θ and f U n can be regarded as sinusoidal signals approximately with the same period. Therefore, the horizontal velocity error will be accumulated, resulting in the drift of horizontal velocity in the forward direction of people’s movement.
Equation (14) shows that the vertical velocity error is related to τ , ω θ and f / / n . Since f / / n can be regarded as a sinusoidal signal approximately with the same period as ω θ . Therefore, the vertical velocity error will be accumulated continuously, resulting in the rapid divergence of height eventually.
Similarly, when the MIMU rotates around the roll axis or azimuth axis, the effect of gyro-accelerometer asynchronous time on pedestrian navigation is analyzed and summarized respectively, and the results are shown in Table 1.
As shown in Table 1, affected by gyro-accelerometer asynchronous time, when the MIMU rotates around the roll axis or azimuth axis, the north velocity errors or east velocity errors are opposite in opposite directions. It means that the horizontal position errors caused by gyro-accelerometer asynchronous time will cancel each other out in opposite directions. However, when the MIMU rotates around the roll axis, the vertical velocity error will be accumulated over time, leading to the rapid divergence of height eventually. The gyro-accelerometer asynchronous time makes no difference to the vertical velocity and height if the MIMU rotates around the azimuth axis.
In addition, Table 1 also shows the relationship between velocity errors and gyro-accelerometer asynchronous time, which provides a simple and convenient way to identify the parameter of gyro-accelerometer asynchronous time.
Table 2 shows the effect of gyro-accelerometer asynchronous time on velocity errors when the MIMU rotates around the pitch axis, roll axis, or azimuth axis. In practice, the MIMU rotates around three axes driven by foot. Therefore, it’s necessary to consider the effect of pitch motion, roll motion, and yaw motion on pedestrian navigation comprehensively under different gaits. Since the MIMU mainly rotates around the pitch axis, it’s reasonable to infer that the pitch motion is the main factor affecting velocity errors. Based on the above analysis, the major characteristics of velocity errors are summarized when people walk on flat ground, go upstairs, or go downstairs. The results are shown in Table 2. The horizontal velocity errors caused by gyro-accelerometer asynchronous time will cancel each other out when people walk on a closed-loop trajectory, while the horizontal velocity error will be accumulated with time when people walk on an open-loop trajectory, resulting in decreasing the horizontal positioning accuracy. The vertical velocity and height are mainly affected by pitch motion and roll motion. Since the MIMU rotates around the pitch axis and roll axis periodically, the vertical velocity error will be accumulated over time, leading to the rapid divergence of height eventually.

3.3. Simulation

In order to verify the correctness of the above analyses which are shown in Table 1 and Table 2, a simulated experiment was carried out. The gyro-accelerometer asynchronous time is set to 10ms, and the designed trajectory is divided into three sorts as follows:
1. People go up to the second floor from the start, then take a walk around the hall counterclockwise. 2. People continue to go up to the third floor from the second floor, then take a walk around the hall counterclockwise. 3. people continue to go up to the fourth floor from the third floor, then take a walk around the hall counterclockwise, and go down to the first floor from point A finally. The simulated trajectory is shown in Figure 2.
The yaw motion is modeled as a rotation around azimuth axis with an uniform angular velocity. The pitch motion and roll motion are modeled as periodic sinusoidal motions in one gait cycle:
θ = θ m sin ( 2 π f s t e p t ) γ = γ m sin ( 2 π f s t e p t )
where θ m and γ m are the amplitudes of sinusoids, f s t e p is the frequency corresponding to a gait cycle, and t is the working time.
Figure 3 presents the velocity errors and position errors caused by gyro-accelerometer asynchronous time, by comparing the ideal velocity (position) with the calculated velocity (position). It shows that the velocity errors have obvious characteristics in different positions when people walk, go upstairs, or go downstairs, which meet the main characteristics described in Table 2. In addition, Figure 3b shows that the gyro-accelerometer asynchronous time has a great influence on the position, which decreases the positioning accuracy of PNS. The rapid divergence of height makes it difficult to confirm exactly which floor the person is on. Therefore, it is of great significance to calibrate the gyro-accelerometer asynchronous time and compensate for the velocity errors and position errors for improving the positioning accuracy of PNS.

4. A Calibration Method for Gyro-Accelerometer Asynchronous Time

Considering that the gyro-accelerometer asynchronous time is changeable, a calibration method for gyro-accelerometer asynchronous time is proposed in this chapter.

4.1. Error Model of Pedestrian Navigation System Based on Gyro-Accelerometer Asynchronous Time

In theory, the projection of f b onto n-frame can be written as f n = C b n f b . Considering gyro-accelerometer asynchronous time, misalignment angles, and bias errors of accelerometers, the measured specific force vector in n-frame can be expressed as:
f ˜ n = C ˜ b n f ˜ b
where
f ˜ b = f b + δ f b , C ˜ b n = [ I ( ϕ × ) ] C b n
where δ f b is the bias error vector of accelerometers, ( · × ) denotes the operation of skew symmetric matrix, ϕ is the attitude error vector.
According to [27], the attitude error model is:
ϕ ˙ = ϕ × ω i e n + ω e n n + δ ω i e n + δ ω e n n C b n δ ω i b b
where δ ω i e n , δ ω e n n and δ ω i b b are the error vectors of ω i e n , ω e n n and ω i b b respectively, and ω i b b is the gyro output vector.
Ignoring the second-order small errors, Equation (21) can be rewritten as:
f ˜ n = [ I ( ϕ × ) ] C b n ( f b + δ f b ) = [ I ( ϕ × ) ] C b n f b + [ I ( ϕ × ) ] C b n δ f b [ I ( ϕ × ) ] C b n C b b f b + C b n δ f b
where C b b is the transform matrix from b-frame to b -frame. The equivalent rotation vector from b-frame to b -frame is donated as δ ϑ which can be expressed as:
δ ϑ ω n b b τ ω i b b τ
where ω n b b is the ideal angular velocity vector.
Therefore, C b b can be formed as follows by using Rodrigues rotation formula [29]:
C b b = M R V ( δ ϑ ) = I + sin ( δ ϑ ) δ ϑ ( δ ϑ × ) + 1 cos ( δ ϑ ) δ ϑ 2 ( δ ϑ × ) 2 I + sin ( ω ˜ n b b τ ) ω ˜ n b b τ [ ( ω ˜ n b b τ ) × ] + 1 cos ( ω ˜ n b b τ ) ω ˜ n b b τ 2 [ ( ω ˜ n b b τ ) × ] 2 I + sin ( ω i b b τ ) ω i b b ( ω i b b × ) + 1 cos ( ω i b b τ ) ω i b b 2 ( ω i b b × ) 2
where M R V ( · ) is the function of equivalent rotation vector.
In a practical walking process, the angular velocity is several hundred degrees per second, while the gyro-accelerometer asynchronous time is several milliseconds or tens of milliseconds in most cases. So it’s reasonable to regard δ ϑ as a small angle vector, and C b b can be expressed as: C b b I + ( δ ϑ × ) . However, if people walk at high speed, such as running, sprinting, etc. The actual gyro outputs are likely to be more than one thousand degrees per second, then δ ϑ is no longer a small angle vector, but a large angle vector. Therefore, it’s necessary to consider the nonlinear errors caused by gyro-accelerometer asynchronous time.
According to [30], the traditional velocity error model is:
δ v ˙ n = ( f ˜ n f n ) ( 2 ω ˜ i e n + ω ˜ e n n ) × v ˜ n + ( 2 ω i e n + ω e n n ) × v n + ( g ˜ n g n ) .
Let:
A = sin ( ω i b b τ ) ω i b b ( ω i b b × ) ,
B = 1 cos ( ω i b b τ ) ω i b b 2 ( ω i b b × ) 2 .
Substituting Equations (23), (25), (27) and (28) into Equation (26), the velocity error model can be rewritten as:
δ v ˙ n = [ I ( ϕ × ) ] C b n C b b f b + C b n δ f b f n ( 2 ω ˜ i e n + ω ˜ e n n ) × v ˜ n + ( 2 ω i e n + ω e n n ) × v n + ( g ˜ n g n ) C b n ( I + A + B ) f b ( ϕ × ) C b n ( I + A + B ) f b + C b n δ f b f n ( 2 ω ˜ i e n + ω ˜ e n n ) × v ˜ n + ( 2 ω i e n + ω e n n ) × v n + ( g ˜ n g n ) ( C b n f b ) × ϕ + C b n ( A + B ) f b + [ C b n ( A + B ) f b × ] ϕ ( 2 δ ω i e n + δ ω e n n ) × v n ( 2 ω i e n + ω e n n ) × δ v n + C b n δ f b + δ g n
where:
ω ˜ i e n = ω i e n + δ ω i e n , ω ˜ e n n = ω e n n + δ ω e n n ,
g ˜ n = g n + δ g n , v ˜ n = v n + δ v n
where δ g n is the error vector of g n .
Equation (29) denotes the velocity error equation of PNS. The position errors can be modeled as:
δ L ˙ = L ˜ ˙ L = 1 R ˜ M + h ˜ v ˜ N n 1 R M + h v N n ( v N n + δ v N n ) ( R M + δ R M ) + ( h + δ h ) 1 R M + h v N n ,
δ λ ˙ = λ ˜ ˙ λ ˙ = sec L ˜ R ˜ N + h ˜ v ˜ E n sec L R N + h v E n sec ( L + δ L ) ( v E n + δ v E n ) ( R N + δ R N ) + ( h + δ h ) sec L R N + h v E n ,
δ h ˙ = h ˜ ˙ h ˙ = v ˜ U n v U n = δ v U n
where δ R M and δ R N are the errors of R M and R N .
Since R M > > δ L , δ λ , δ h , and R N > > δ L , δ λ , δ h , Equations (30) and (31) can be rewritten as:
δ L ˙ 1 R M + h δ v N n v N n ( R M + h ) 2 δ h ,
δ λ ˙ sec L R N + h δ v E n + v E n sec L tan L R N + h δ L v E n sec L ( R N + h ) 2 δ h .

4.2. Zero-Velocity Detection

Figure 4 presents the details of foot movement in a complete gait cycle, including four stages, named push-off phase, swing phase, hell strike phase, and stance phase [30]. The velocity is approximately equal to zero during the sole of foot touches the ground at the stance phase.
Reference [30] presents a zero-velocity detection method named Generalized Likelihood Ratio Test (GLRT) utilizing gyros and accelerometers comprehensively. However, GLRT is utilized under the assumption that there is no gyro-accelerometer asynchronous time. If people walk, especially at high speed, although the gyros measure the angular velocities at the stance phase, the accelerometers measure the specific force before it. Thus, it will lead to missing detection or false detection if gyro-accelerometer asynchronous time is ignored. GLRT performs better when people walk at slow or normal speed. However, if people walk at high speed, the performance of GLRT seems to be not enough. Considering the effect of gyro-accelerometer asynchronous time on zero-velocity detection, this paper proposes a zero-velocity detection method based on the rate of attitude change relying on gyros only, which is applicable under various gaits.
Compared with accelerometers, the gyro sampling signals hold the most reliable information for zero-velocity detection [12]. Therefore, the detection methods utilizing gyros only perform better than the detection methods utilizing accelerometers only. As shown in Figure 4, the pitch angle and roll angle are approximately equal to zero when the sole of foot touches the ground at the stance phase. Due to the low precision of MEMS inertial devices, the attitude errors will increase gradually with time. Therefore, it’s difficult to detect the zero-velocity based on attitudes. Since the change of pitch angle or roll angle is reliable in a short term, it’s an ideal way to detect the zero-velocity by utilizing the rates of change of pitch angle and roll angle.
Considering that there are installation angle errors when the MIMU is fixed on the foot, it is necessary to compensate for the installation errors in advance. Reference [31] presents a method to calibrate the pitch installation angle error and roll installation angle error by utilizing accelerometers. A self-calibration method of yaw installation angle error is shown as follows.
The installation angle error vector is denoted as ϕ x , ϕ y , ϕ z T . Using the chain rule of Direction Cosine Matrix (DCM) production, C h n can be written as:
C h n = C m n C h m .
Rewrite Equation (35) as:
C m h = [ ( C m n ) T C h n ] T
where C m n is the transform matrix from m-frame to n-frame, C h n is the transform matrix from h-frame to n-frame, C m h is the transform matrix from m-frame to h-frame. Using the chain rule of DCM production, C h n can be expressed as:
C h n = C b n C h b = C b n C ϕ x C ϕ y
where:
C ϕ x = 1 0 0 0 cos ( ϕ x ) sin ( ϕ x ) 0 sin ( ϕ x ) cos ( ϕ x ) , C ϕ y = cos ( ϕ y ) 0 sin ( ϕ y ) 0 1 0 sin ( ϕ y ) 0 cos ( ϕ y ) .
C m h is related to ϕ z with the following relationship:
tan ( ϕ z ) = ( C m h ) 12 ( C m h ) 22 .
Equations (36)–(38) present the calibration method of yaw installation angle error. However, it cannot be calculated if the foot is stationary. So it’s required to make MIMU rotate to realize the calculation of ϕ z . This paper proposes a motion path of self-calibration for the yaw installation angle error, which is shown as follows.
It is assumed that the initial attitude vector is 0 0 φ 0 T . When the person is walking along a straight line, the rotation angle vector from m-frame to n-frame is denoted as ϕ 1 θ 1 γ 1 φ 1 T which represents the actual attitudes of the foot, and the rotation angle vector from h-frame to n-frame is denoted as ϕ 2 θ 2 γ 2 φ 2 T which can be obtained from: M R V ( ϕ 2 ) = C b n C ϕ x C ϕ y . Since the person is walking along a straight line, the change of yaw angle can be regarded as a small angle. It’s reasonable to make an approximation that θ 1 θ 2 , and γ 1 γ 2 . Then, ϕ 1 can be expressed as:
ϕ 1 θ 2 γ 2 φ 0 T .
Therefore, Equation (36) can be rewritten as:
C m h M R V ( ϕ 1 ) T C b n C ϕ x C ϕ y T .
Figure 5 presents the attitudes before and after compensating for the installation angle errors. It shows that the attitudes are corrected after compensating for the installation angle errors. The proposed calibration method of installation angle errors improves the recognition and characteristic of gait successfully.
Figure 6 presents the horizontal attitudes in a complete gait cycle. It’s indicated that the horizontal attitudes show different characteristics in different stages significantly. This paper proposes a zero-velocity detection method based on the rate of attitude change, which is shown as follows.
A fixed length sliding window is used, and the increments of pitch angle and roll angle of MIMU in [ t k , t k + N ] are denoted as:
Δ θ i = θ i + 1 θ i ( i = k , k + 1 , . . . , k + N ) Δ γ i = γ i + 1 γ i ( i = k , k + 1 , . . . , k + N )
where N is the fixed length of sliding window.
If Δ θ i and Δ γ i are less than the thresholds, it is indicated that the zero-velocity is detected. The judgment can be expressed as follows:
C 1 = 1 t i [ t k , t k + N ] , Δ θ i < G θ 0 o t h e r s ,
C 2 = 1 t i [ t k , t k + N ] , Δ γ i < G γ 0 o t h e r s
where G θ and G γ are the thresholds.
If C 1 & C 2 = 1 , the zero-velocity is detected.
Figure 7 presents the results of zero-velocity detection under different gaits. The zero value of the purple line means that the foot is stationary at that moment, while the non-zero value of the purple line means that the foot is non-stationary at that moment. It shows that the zero-velocity is detected effectively by utilizing the proposed zero-velocity detection method.

4.3. Kalman Filter Design

Equation (29) shows that the velocity error model is nonlinear. Therefore, an Extended Kalman Filter (EKF) is utilized to estimate the parameter of gyro-accelerometer asynchronous time in this paper. The integrated framework block diagram of PNS is shown in Figure 8.
The state vector for Kalman filter is:
X = ϕ T ( δ v n ) T ( δ p n ) T ( ε b ) T ( b ) T τ T
where ( δ p n ) T = δ L δ λ δ h T is the position error vector, ( ε b ) T = ε x b ε y b ε z b T is the bias error vector of gyros, and ( b ) T = x b y b z b T is the bias error vector of accelerometers. ( ε b ) T , ( b ) T and τ have the following relationship:
ε ˙ b = 0 ˙ b = 0 τ ˙ = 0 .
The state transition equation can be expressed as:
X ˙ = f X + GW
where f X is nonlinear vector function, G is process noise coupling matrixr, W is process noise vector.
The measurement equation can be written as:
Z = HX + V
where V is measurement noise vector, Z and H are measurement vector and measurement matrix respectively.
In this paper, the height estimation method proposed by Gu et al. is utilized to estimate accurate height measurements for EKF [22]. Therefore, Z and H can be expressed as:
Z = v ˜ n 0 h ˜ h b u i l d i n g ,
H = 0 3 × 3 I 3 × 3 0 3 × 2 0 3 × 1 0 3 × 7 0 1 × 3 0 1 × 3 0 3 × 2 1 0 1 × 7
where h b u i l d i n g is the height measurement calculated by the height estimation method.
Discretizing Equations (46) and (47), the state transition equation and measurement equation can be rewritten as:
X k = f ( X k 1 ) + Γ k 1 W k 1 Z k = H k X k + V k
where W k 1 and V k are zero-mean Gaussian white noise vector sequences, both of which are not correlated. The feedback compensation of EKF can be expressed as:
C b n = [ I 3 × 3 + ( ϕ × ) ] C ˜ b n v n = v ˜ n δ v n h = h ˜ δ h .

5. Experiments and Analysis

The experiment was conducted in a building in Jimei District, Xiamen. As shown in Figure 9, to collect the data, the MIMU was fixed on the instep of the right foot. Then the experimenter walked on a designed trajectory that contains different gaits, including walking on flat ground, going upstairs, and going downstairs. While the experimenter was walking indoor, the MIMU sent the gyro outputs and accelerometer outputs to the Bluetooth receiver connected to a PC through the Bluetooth transmitter. In this experiment, a self-designed MIMU which contains three gyros and three accelerometers with large ranges is used. The performance of the MIMU is shown in Table 3.
The experimental environment is shown in Figure 10. The height of the floors is 4 m, and a start point and three standard points are set up in advance according to the engineering drawing of the building. Their relative coordinates in the building can be expressed as follows:
P 0 ( 0 , 0 , 0 ) : the start point on the first floor; P 1 ( 0 , 0 , 8 ) : standard point 1 on the third floor; P 2 ( 0 , 0 , 12 ) : standard point 2 on the fourth floor; P 3 ( 0 , 0 , 8 ) : standard point 3 on the third floor coincided with standard point 1.
The designed trajectory can be summarized as follows: The experimenter went up to the third floor from P 0 , and took a walk around the hall counterclockwise to reach P 1 . Then the experimenter went up to the fourth floor, and took a walk around the hall clockwise to reach P 2 . Finally, the experimenter went down to the third floor, and took a walk around the hall counterclockwise to reach P 3 . The total travelled distance is about 300 m.
After data collection is completed, the gyro sampling signals and accelerometer sampling signals are compared offline. The estimation of gyro-accelerometer asynchronous time is about 10 ms. A method named interpolation is utilized to compensate for the errors caused by gyro-accelerometer asynchronous time then. The error curves are drawn in Figure 11, by comparing the compensated velocity (position) with the uncompensated velocity (position). Figure 11 shows that the characteristics of velocity errors and position errors caused by gyro-accelerometer asynchronous time meet the results described in Table 1 and Table 2. It further proves the correctness of the above analyses.
Reference [32] presents the ZUPT algorithm and the height constraint algorithm, both of which show excellent performance in PNS. To evaluate the performance of the proposed calibration method, four methods are designed in this paper. Method 1 utilizes the ZUPT algorithm with gyro-accelerometer asynchronous ignored. Method 3 utilizes the ZUPT algorithm and the height constraint algorithm with gyro-accelerometer asynchronous ignored. Method 2 and method 4 are designed to verify the effectiveness and feasibility of the proposed calibration method by comparing the positioning accuracy with method 1 and method 3. The designed methods are shown in Table 4 in detail.
Figure 12 presents the estimations of gyro-accelerometer asynchronous time with method 2 and method 4. Since method 1 and method 3 do not consider the gyro-accelerometer asynchronous time, the information about method 1 or method 3 is not presented in Figure 12. It shows that the estimation of gyro-accelerometer asynchronous time with method 2 is about 8.92 ms, and the estimation of gyro-accelerometer asynchronous time with method 4 is about 8.31 ms. These results are very close to the offline calculated estimation. Moreover, Figure 12 also shows that the curves are convergent after about 60 s due to the complex movement of MIMU driven by foot, indicating that the gyro-accelerometer asynchronous time can be inspired in a relatively short time.
Figure 13 presents the calculated trajectories with method 1 and method 2, and Figure 14 presents the calculated trajectories with method 3 and method 4. Figure 13a shows that the height error with method 1 is positive while the height error with method 2 is negative. Further analysis shows that the height error with method 2 is affected by the low precision of MEMS inertial devices and the computational errors of inertial navigation algorithm, while the height error with method 1 is also affected by the gyro-accelerometer asynchronous time. Therefore, the height errors with method 1 and method 2 are opposite. Figure 13b shows that the calculated trajectory with method 2 is more consistent with the real trajectory than the calculated trajectory with method 1. In addition, as shown in Figure 14, compared with the calculated trajectories with method 1 and method 2, method 3 and method 4 have a higher positioning accuracy. The height constraint algorithm makes it possible to confirm exactly which floor the experimenter is on.
In order to further verify the effectiveness of the proposed calibration method, the positioning errors are compared. Figure 15 presents the position curves by four methods respectively. Figure 16 presents the position errors by four methods at three standard points. The details of the position errors are shown in Table 5, Table 6 and Table 7. The experimental results show that the horizontal position errors with method 1 are 0.52 m, 1.41 m and 2.51 m, accounting for 0.50%, 0.70% and 0.84% of the total travelled distance respectively, and the horizontal position errors with method 2 are 0.42 m, 1.19 m and 2.11 m, accounting for 0.40%, 0.59% and 0.70% of the total travelled distance respectively. Compared with method 1, the horizontal positioning accuracy with method 2 increases by 23.81%, 18.49% and 18.96% respectively. The horizontal position errors with method 3 are 0.32 m, 1.10 m and 1.88 m, accounting for 0.31%, 0.54% and 0.64% of the total travelled distance respectively, and the horizontal position errors with method 4 are 0.23 m, 0.92 m and 1.58 m, accounting for 0.22%, 0.46% and 0.53% of the total travelled distance respectively. Compared with method 3, The horizontal positioning accuracy with method 4 increases by 39.13%, 19.57% and 18.99% respectively. Therefore, the results prove that the horizontal positioning accuracy is improved after compensating for the errors caused by gyro-accelerometer asynchronous time. Further analysis shows that the velocity errors are only corrected at the stance phase by using the ZUPT algorithm. Since the zero-velocity interval accounts for a small part of a complete gait cycle, the velocity errors and position errors will be accumulated continuously. Although the horizontal velocity errors caused by gyro-accelerometer asynchronous time will cancel each other out partly on a closed-loop trajectory, the complex movement of foot will still lead to the drift of velocity. Therefore, the horizontal positioning accuracy can be improved by compensating for the errors caused by gyro-accelerometer asynchronous time.
Besides, compared with method 1, the vertical positioning accuracy with method 2 increases by 0.27 m, 1.12 m and 1.26 m respectively at P 0 , P 1 and P 2 , indicating that the proposed calibration method can effectively compensate for the height error caused by gyro-accelerometer asynchronous time when using the ZUPT algorithm. However, the improvement of vertical positioning accuracy with method 4 is limited, due to the effective correction of height when using the height constraint algorithm.

6. Discussion and Conclusions

The experimental results show that the gyro-accelerometer asynchronous time can be estimated in a short time due to the high-dynamic environments. The proposed calibration method performs well in estimating the parameter of gyro-accelerometer asynchronous time. The positioning accuracy can be improved effectively after compensating for the errors caused by gyro-accelerometer asynchronous time. Since the position errors caused by gyro-accelerometer asynchronous time will be accumulated over time, the proposed calibration method contributes to improving the stability of PNS in a long time.
In the foot-mounted pedestrian navigation system with MIMU or mobile phone as the main carrier, the difference of phase-frequency characteristics between gyros and accelerometers will lead to the asynchronization of sampling time, resulting in the accumulation of velocity errors and position errors. To solve this problem, in this paper, an error model of gyro-accelerometer asynchronous time is built. The effect of gyro-accelerometer asynchronous time on pedestrian navigation and the main characteristics of velocity errors under different motions are analyzed. A filtering model is designed to calibrate the gyro-accelerometer asynchronous time via a Kalman filter. To avoid the missing detection and false detection, a zero-velocity detection method based on the rate of attitude change is proposed. The results of the 300 m-long experiment show that the gyro-accelerometer asynchronous time is estimated effectively and the positioning accuracy is improved after compensating for the errors caused by gyro-accelerometer asynchronous time. Furthermore, the gyro-accelerometer asynchronous time is caused by hardware, while the proposed method reduces the negative effect of gyro-accelerometer asynchronous time by software. Therefore, for the MIMUs with gyro-accelerometer asynchronous time, the proposed method makes it possible to apply them in PNS, which reduces the cost of pedestrian navigation and improves the reliability of MIMUs or mobile phones in PNS. Therefore, it can be concluded that the proposed calibration method works well in the foot-mounted pedestrian navigation system, and the study of gyro-accelerometer asynchronous time provides a new way to improve the positioning accuracy of pedestrian navigation in an indoor GNSS-denied environment.

Author Contributions

Conceptualization, T.C.; methodology, T.C.; software, T.C.; writing-original draft, T.C.; funding acquisition, G.Y.; project administration, G.Y.; resources, G.Y.; formal analysis, Q.C.; supervision, Q.C.; writing-review and editing, Q.C.; data curation, Z.W.; validation, Z.W.; investigation, W.Z.; All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported in part by the National Natural Science Foundation of China under Grant 61803015.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Li, D.; Gu, Y.; Kamijo, S. Pedestrian positioning in urban environment by integration of PDR and traffic mode detection. In Proceedings of the 2017 IEEE 20th International Conference on Intelligent Transportation Systems (ITSC), Yokohama, Japan, 16–19 October 2017; pp. 1–6. [Google Scholar]
  2. Gu, Y.; Zhou, C.; Wieser, A.; Zhou, Z. Pedestrian positioning using WiFi fingerprints and a foot-mounted inertial sensor. In Proceedings of the 2017 European Navigation Conference (ENC), Lausanne, Switzerland, 9–12 May 2017; pp. 91–99. [Google Scholar]
  3. Mazhar, F.; Khan, M.G.; Sällberg, B. Precise indoor positioning using UWB: A review of methods, algorithms and implementations. Wirel. Pers. Commun. 2017, 97, 4467–4491. [Google Scholar] [CrossRef]
  4. Zhou, C.; Yuan, J.; Liu, H.; Qiu, J. Bluetooth indoor positioning based on RSSI and Kalman filter. Wirel. Pers. Commun. 2017, 96, 4115–4130. [Google Scholar] [CrossRef]
  5. Uradzinski, M.; Guo, H.; Liu, X.; Yu, M. Advanced indoor positioning using zigbee wireless technology. Wirel. Pers. Commun. 2017, 97, 6509–6518. [Google Scholar] [CrossRef]
  6. Yang, C.; Shao, H.R. WiFi-based indoor positioning. IEEE Commun. Mag. 2015, 53, 150–157. [Google Scholar] [CrossRef]
  7. Ren, M.; Pan, K.; Liu, Y.; Guo, H.; Zhang, X.; Wang, P. A novel pedestrian navigation algorithm for a foot-mounted inertial-sensor-based system. Sensors 2016, 16, 139. [Google Scholar] [CrossRef] [Green Version]
  8. Yang, W.; Xiu, C.; Zhang, J.; Yang, D. A novel 3D pedestrian navigation method for a multiple sensors-based foot-mounted inertial system. Sensors 2017, 17, 2695. [Google Scholar] [CrossRef] [Green Version]
  9. Gu, Y.; Song, Q.; Li, Y.; Ma, M. Foot-mounted pedestrian navigation based on particle filter with an adaptive weight updating strategy. J. Navig. 2015, 68, 23–38. [Google Scholar] [CrossRef]
  10. Wu, Y.; Zhu, H.B.; Du, Q.X.; Tang, S.M. A survey of the research status of pedestrian dead reckoning systems based on inertial sensors. Int. J. Autom. Comput. 2019, 16, 65–83. [Google Scholar] [CrossRef]
  11. Wang, Y.; Shkel, A.M. Adaptive threshold for zero-velocity detector in ZUPT-aided pedestrian inertial navigation. IEEE Sens. Lett. 2019, 3, 1–4. [Google Scholar] [CrossRef]
  12. Barsocchi, P.; Carbonaro, N.; Cimino, M.G.; La Rosa, D.; Palumbo, F.; Tognetti, A.; Vaglini, G. Detecting User’s Behavior Shift with Sensorized Shoes and Stigmergic Perceptrons. In Proceedings of the 2019 IEEE 23rd International Symposium on Consumer Technologies (ISCT), Ancona, Italy, 19–21 June 2019; pp. 265–268. [Google Scholar]
  13. 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]
  14. Skog, I.; Nilsson, J.O.; Händel, P. Evaluation of zero-velocity detectors for foot-mounted inertial navigation systems. In Proceedings of the 2010 International Conference on Indoor Positioning and Indoor Navigation, Zurich, Switzerland, 15–17 September 2010; pp. 1–6. [Google Scholar]
  15. Nilsson, J.O.; Skog, I.; Händel, P.; Hari, K.V.S. Foot-mounted INS for everybody-an open-source embedded implementation. In Proceedings of the IEEE/ION PLANS 2012, Myrtle Beach, SC, USA, 23–26 April 2012; pp. 140–145. [Google Scholar]
  16. Ruiz, A.R.J.; Granja, F.S.; Honorato, J.C.P.; Rosas, J.I.G. Accurate Pedestrian Indoor Navigation by Tightly Coupling Foot-Mounted IMU and RFID Measurements. IEEE Trans. Instrum. Meas. 2011, 61, 178–189. [Google Scholar] [CrossRef] [Green Version]
  17. Huang, X.; Xiong, Z.; Xu, J.; Xu, L. Research on pedestrian navigation system aided by indoor geomagnetic matching. In Proceedings of the 2017 29th Chinese Control and Decision Conference (CCDC), Chongqing, China, 28–30 May 2017; pp. 946–1951. [Google Scholar]
  18. Ji, M.; Xu, X.; Guo, Y. An Adaptive Heading Correction Algorithm for Suppressing Magnetic Interference in Inertial Navigation System. IEEE Trans. Instrum. Meas. 2021, 70, 9513010. [Google Scholar] [CrossRef]
  19. Borenstein, J.; Ojeda, L.; Kwanmuang, S. Heuristic reduction of gyro drift for personnel tracking systems. J. Navig. 2009, 62, 41–58. [Google Scholar] [CrossRef] [Green Version]
  20. Abdulrahim, K.; Hide, C.; Moore, T.; Hill, C. Aiding low cost inertial navigation with building heading for pedestrian navigation. J. Navig. 2011, 64, 219–233. [Google Scholar] [CrossRef] [Green Version]
  21. Tanigawa, M.; Luinge, H.; Schipper, L.; Slycke, P. Drift-free dynamic height sensor using MEMS IMU aided by MEMS pressure sensor. In Proceedings of the 2008 5th Workshop on Positioning, Navigation and Communication, Hannover, Germany, 27 March 2008; pp. 191–196. [Google Scholar]
  22. Gu, Y.; Ma, M.; Li, Y.H.; Song, Q. Accurate height estimation based on apriori knowledge of buildings. In Proceedings of the International Conference on Indoor Positioning and Indoor Navigation, Montbeliard-Belfort, France, 28–31 October 2013; pp. 1–7. [Google Scholar]
  23. Jing, H.; Pinchin, J.; Hill, C.; Moore, T. An adaptive weighting based on modified DOP for collaborative indoor positioning. J. Navig. 2016, 69, 225–245. [Google Scholar] [CrossRef]
  24. Ding, Y.; Xiong, Z.; Li, W.; Cao, Z.; Wang, Z. Pedestrian navigation system with trinal-IMUs for drastic motions. Sensors 2020, 20, 5570. [Google Scholar] [CrossRef] [PubMed]
  25. Skog, I.; Nilsson, J.O.; Händel, P.; Nehorai, A. Inertial sensor arrays, maximum likelihood, and cramér–rao bound. IEEE Trans. Signal Process. 2016, 64, 4218–4227. [Google Scholar] [CrossRef] [Green Version]
  26. Yan, G.; Zhang, Q.; Peng, H.; Qin, Y. Study on gyro-accelerometer asynchronous time Compensation for Accelerometers in SINS. J. Astronaut. 2013, 34, 1578–1583. [Google Scholar]
  27. Wen, Z.; Yang, G.; Cai, Q.; Sun, Y. Modeling and Calibration of the Gyro–Accelerometer Asynchronous Time in Dual-Axis RINS. IEEE Trans. Instrum. Meas. 2020, 70, 3503117. [Google Scholar] [CrossRef]
  28. Noureldin, A.; Karamat, T.B.; Georgy, J. Fundamentals of Inertial Navigation, Satellite-Based Positioning and Their Integration; Springer: Berlin/Heidelberg, Germany, 2013; Volume 70, pp. 978–983. [Google Scholar]
  29. Chandrasekhary, R.S.; Murthy, B.N. Novel two position ground alignment technique for Strapdown Inertial Navigation System. In Proceedings of the 2014 IEEE International Conference on Aerospace Electronics and Remote Sensing Technology, Yogyakarta, Indonesia, 13–14 November 2014; pp. 94–98. [Google Scholar]
  30. Deng, Z.; Wang, P.; Liu, T.; Cao, Y.; Wang, B. Foot-mounted pedestrian navigation algorithm based on BOR/MINS integrated framework. IEEE Trans. Ind. Electron. 2019, 67, 3980–3989. [Google Scholar] [CrossRef]
  31. Fang, J.; Sun, H.; Cao, J.; Zhang, X.; Tao, Y. A novel calibration method of magnetic compass based on ellipsoid fitting. IEEE Trans. Instrum. Meas. 2011, 60, 2053–2061. [Google Scholar] [CrossRef]
  32. Abdulrahim, K.; Hide, C.; Moore, T.; Hill, C. Using constraints for shoe mounted indoor pedestrian navigation. J. Navig. 2012, 65, 15–28. [Google Scholar] [CrossRef]
Figure 1. Dynamic inconsistent error of coordinate frame caused by gyro-accelerometer asynchronous time.
Figure 1. Dynamic inconsistent error of coordinate frame caused by gyro-accelerometer asynchronous time.
Sensors 22 00209 g001
Figure 2. The simulated trajectory.
Figure 2. The simulated trajectory.
Sensors 22 00209 g002
Figure 3. Velocity errors and position errors caused by gyro-accelerometer asynchronous time. (a) Velocity errors, (b) Position errors.
Figure 3. Velocity errors and position errors caused by gyro-accelerometer asynchronous time. (a) Velocity errors, (b) Position errors.
Sensors 22 00209 g003
Figure 4. One complete gait cycle.
Figure 4. One complete gait cycle.
Sensors 22 00209 g004
Figure 5. Attitudes before and after compensating for the installation angle errors. (a) Yaw angle, (b) Pitch angle, (c) Roll angle.
Figure 5. Attitudes before and after compensating for the installation angle errors. (a) Yaw angle, (b) Pitch angle, (c) Roll angle.
Sensors 22 00209 g005
Figure 6. Horizontal attitudes in one gait cycle.
Figure 6. Horizontal attitudes in one gait cycle.
Sensors 22 00209 g006
Figure 7. The results of zero-velocity detection. (a) Walking on flat ground, (b) Going upstairs, (c) Going downstairs.
Figure 7. The results of zero-velocity detection. (a) Walking on flat ground, (b) Going upstairs, (c) Going downstairs.
Sensors 22 00209 g007
Figure 8. The integrated framework block diagram.
Figure 8. The integrated framework block diagram.
Sensors 22 00209 g008
Figure 9. Data acquisition conditions.
Figure 9. Data acquisition conditions.
Sensors 22 00209 g009
Figure 10. Experimental environment. (a) Outdoor environment, (b) Indoor environment.
Figure 10. Experimental environment. (a) Outdoor environment, (b) Indoor environment.
Sensors 22 00209 g010
Figure 11. Velocity errors and position errors caused by gyro-accelerometer asynchronous time in the experiment. (a) Velocity errors, (b) Position errors.
Figure 11. Velocity errors and position errors caused by gyro-accelerometer asynchronous time in the experiment. (a) Velocity errors, (b) Position errors.
Sensors 22 00209 g011
Figure 12. Gyro-accelerometer asynchronous time estimation.
Figure 12. Gyro-accelerometer asynchronous time estimation.
Sensors 22 00209 g012
Figure 13. The trajectories with method 1 and method 2. (a) 3D trajectory, (b) 2D trajectory.
Figure 13. The trajectories with method 1 and method 2. (a) 3D trajectory, (b) 2D trajectory.
Sensors 22 00209 g013
Figure 14. The trajectories with method 3 and method 4. (a) 3D trajectory, (b) 2D trajectory.
Figure 14. The trajectories with method 3 and method 4. (a) 3D trajectory, (b) 2D trajectory.
Sensors 22 00209 g014
Figure 15. The calculated positions by different methods. (a) North, (b) East, (c) Height.
Figure 15. The calculated positions by different methods. (a) North, (b) East, (c) Height.
Sensors 22 00209 g015
Figure 16. The position errors at three standard points. (a) Standard point 1, (b) Standard point 2, (c) Standard point 3.
Figure 16. The position errors at three standard points. (a) Standard point 1, (b) Standard point 2, (c) Standard point 3.
Sensors 22 00209 g016
Table 1. The effect of gyro-accelerometer asynchronous time on pedestrian navigation under different motions.
Table 1. The effect of gyro-accelerometer asynchronous time on pedestrian navigation under different motions.
-PitchRollYaw
δ v E n τ sin ψ 0 0 t ω θ f U n d t τ cos ψ 0 0 t ω γ f U n d t τ 0 t ω ψ f N n d t
δ v N n τ cos ψ 0 0 t ω θ f U n d t τ sin ψ 0 0 t ω γ f U n d t τ 0 t ω ψ f E n d t
δ v h n τ 0 t ω θ f U n d t τ 0 t ω γ f U n d t τ 0 t ω ψ f N n d t 2 + 0 t ω ψ f E n d t 2
δ v U n τ 0 t ω θ f / / n d t τ 0 t ω γ f n d t 0
δ L τ cos ψ 0 R M + h 0 t 0 t ω θ f U n d t d t τ sin ψ 0 R M + h 0 t 0 t ω γ f U n d t d t τ R M + h 0 t 0 t ω ψ f E n d t d t
δ λ τ sin ψ 0 sec L R N + h 0 t 0 t ω θ f U n d t d t τ cos ψ 0 sec L R N + h 0 t 0 t ω γ f U n d t d t τ sec L R N + h 0 t 0 t ω ψ f N n d t d t
δ h τ 0 t 0 t ω θ f / / n d t d t τ 0 t 0 t ω γ f n d t d t 0
Table 2. The main characteristics of velocity errors under different motions.
Table 2. The main characteristics of velocity errors under different motions.
MotionHorizontal Velocity ErrorVertical Velocity Error
Pitch motionThe errors will cancel each other out
in opposite directions
Increase
Roll motionThe errors will cancel each other out
in opposite directions
Increase
Yaw motionThe errors will cancel each other out
in opposite directions
Make no difference
Walking on flat groundThe errors will cancel each other out
when walking on a closed-loop trajectory
Increase
Going upstairsThe errors will cancel each other out
when walking on a closed-loop trajectory
Increase
Going downstairsThe errors will cancel each other out
when walking on a closed-loop trajectory
Increase
Table 3. Performance of MIMU.
Table 3. Performance of MIMU.
PerformanceGyrosAccelerometers
In-run stability 10 /h40 ug
Random walk 0 . 4 / h 0.06 m/s / h
Full range ± 2000 /h±40 g
Table 4. Experimental methods.
Table 4. Experimental methods.
MethodDetail
Method 1ZUPT with gyro-accelerometer asynchronous time ignored
Method 2ZUPT with gyro-accelerometer asynchronous time considered
Method 3ZUPT/height constraint with gyro-accelerometer asynchronous time ignored
Method 4ZUPT/height constraint with gyro-accelerometer asynchronous time considered
Table 5. Comparison of position errors by different methods ( P 1 ).
Table 5. Comparison of position errors by different methods ( P 1 ).
ErrorsMethod 1Method 2Method 3Method 4
North position error (m)0.380.350.170.18
East position error (m)0.360.230.270.15
Horizontal position error (m)0.520.420.320.23
Error percentage (%D)0.500.400.310.22
Height error (m)1.030.760.080.06
Table 6. Comparison of position errors by different methods ( P 2 ).
Table 6. Comparison of position errors by different methods ( P 2 ).
ErrorsMethod 1Method 2Method 3Method 4
North position error (m)0.930.750.440.36
East position error (m)1.060.921.010.85
Horizontal position error (m)1.411.191.100.92
Error percentage (%D)0.700.590.540.46
Height error (m)2.481.360.200.18
Table 7. Comparison of position errors by different methods ( P 3 ).
Table 7. Comparison of position errors by different methods ( P 3 ).
ErrorsMethod 1Method 2Method 3Method 4
North position error (m)1.701.380.890.66
East position error (m)1.841.601.661.43
Horizontal position error (m)2.512.111.881.58
Error percentage (%D)0.840.700.640.53
Height error (m)3.372.110.220.23
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Chen, T.; Yang, G.; Cai, Q.; Wen, Z.; Zhang, W. A Novel Calibration Method for Gyro-Accelerometer Asynchronous Time in Foot-Mounted Pedestrian Navigation System. Sensors 2022, 22, 209. https://doi.org/10.3390/s22010209

AMA Style

Chen T, Yang G, Cai Q, Wen Z, Zhang W. A Novel Calibration Method for Gyro-Accelerometer Asynchronous Time in Foot-Mounted Pedestrian Navigation System. Sensors. 2022; 22(1):209. https://doi.org/10.3390/s22010209

Chicago/Turabian Style

Chen, Tianyu, Gongliu Yang, Qingzhong Cai, Zeyang Wen, and Wenlong Zhang. 2022. "A Novel Calibration Method for Gyro-Accelerometer Asynchronous Time in Foot-Mounted Pedestrian Navigation System" Sensors 22, no. 1: 209. https://doi.org/10.3390/s22010209

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