1. INTRODUCTION
Dead-Reckoning (DR) based on Micro-Electro-Mechanical Systems (MEMS) sensors is a significant method in the pedestrian navigation field (Cho and Park, Reference Cho and Park2006; Fang et al., Reference Fang, Antsaklis, Montestruque, McMickell, Lemmon and Sun2005; Zhang et al., Reference Zhang, Bannoura, Hoflinger, Reindl and Schindelhauer2013), where the heading error caused by gyro bias is an inevitable factor affecting DR accuracy and must be estimated and compensated. Location information can be directly used to correct the position error in pedestrian navigation when a satellite navigation system (Pinchin et al., Reference Pinchin, Hide, Abdulrahim, Moore and Hill2011) or terrain contour matching system (Lan and Shih, Reference Lan and Shih2014; Basiri et al., Reference Basiri, Amirian and Winstanley2014) is available. If there is no location information, it is also possible to correct the error by some other external methods, for example, magnetic heading (Bancroft and Lachapelle, Reference Bancroft and Lachapelle2012) and Heuristic Drift Reduction (HDR) (Park et al., Reference Park, Kim and Lee2012; Abdulrahim et al., Reference Abdulrahim, Hide, Moore and Hill2012). On the other hand, the estimation and compensation method for gyro errors is also a common approach to restrain the heading error accumulation and improve the positioning accuracy. For high-precision mechanical and optical gyros, generally, the methods of position turntable calibration and Kalman filter estimation are applied to calibrate gyro bias (Xie et al., Reference Xie, Qin and Wan2011; Fokin and Shchipitsin, Reference Fokin and Shchipitsin2008). Low-cost MEMS gyros are often used in PNS. Due to the poor bias repeatability, it is imperative to first calibrate gyro bias before the system starts working. There are a great many calibration methods for MEMS gyro bias in PNS, such as estimating gyro biases based on Zero Velocity Update (ZUPT) (Jiménez et al., Reference Jiménez, Seco, Prieto and Guevara2010; Foxlin, Reference Foxlin2005), calibrating gyros using a predetermined walking path (Alvarez et al., Reference Alvarez, Lopez, Gonzalez and Alvarez2012) and estimating gyro errors by rotating MEMS Inertial Measurement Unit (IMU) (Li et al., Reference Li, Fang and Du2012; Abdulrahim et al., Reference Abdulrahim, Hide, Moore and Hill2014).
External information is necessary for the above methods to correct gyro bias or restrain heading error. In addition, the calibration process will be subject to the effect of circumstance, motion states, IMU installation error and other factors in varying degrees while these methods are applied. These will reduce the calibration accuracy of gyro errors. When there is no external information, the common approach is to use the Zero Angular Rate Update (ZARU) method which means that during a still phase (the person remains still and not moving) the IMU orientation is constant and therefore the turn rates measured in the gyros are the measurement biases (Jiménez et al., Reference Jiménez, Seco, Zampella, Prieto and Guevara2012). However, for a waist-worn PNS, the IMU is mounted at the waist, and body swaying will be inevitably caused by breathing and other factors in the standing calibration process. Sway will lead to an additional bias error when ZARU is adopted to calculate gyro bias. To solve this problem, the standing calibration method of MEMS gyro bias is presented in this paper, and consequently an accurate calibration can also be achieved during the process of body swaying.
2. THE STANDING CALIBRATION METHOD OF MEMS GYRO BIAS
2.1. Attitude Angle Changes of Adjacent Moments
In pedestrian navigation, the East-North-Up geographic coordinate (t coordinate) system is normally used as the navigation coordinate (n coordinate). The x, y, z axis of the IMU is consistent with the right, front and upside of the human body respectively, which means the measuring-coordinate system is identical to the body coordinates (b coordinate) when the IMU is attached to the waist at the back of human body, as shown in Figure 1. Therefore, the relative angles between body coordinate and geographic coordinate are ψ(heading), θ(pitch), and γ(roll). Then, attitude angles of each moment ( $\psi (i)$ , $\theta (i)$ , $\gamma (i)$ ) can be calculated by the output data from the magnetic sensor and accelerometers (Townsend and Arms, Reference Townsend and Arms2008; Kemp et al., Reference Kemp, Janssen and Kamp1999). The strap-down attitude update algorithm based on gyros and accelerometers is also a common approach. As the constant errors of accelerometers and the error of a magnetic sensor do not drift with time, the results based on magnetic sensors and accelerometers are stable and errors do not accumulate with time. Thus it is easy to obtain $\Delta \psi _a (i)$ , $\Delta \theta _a (i)$ , $\Delta \gamma _m (i)$ (angle changes of adjacent moments) from attitude angles calculated by the output of magnetic sensor and accelerometers as follows:
where $\Delta \psi _a (i)$ , $\Delta \theta _a (i)$ , $\Delta \gamma _m (i)$ are the attitude changes of adjacent moments in the wearable IMU and they can be used to calculate the angular velocities of human motion.
2.2. Calculating the Angular Velocities of Human Motion Reversely
Because of the cross coupling between angular velocities in the three axes of the human body, differential calculation cannot be adopted by Equation (1) directly. In this section, we acquire the relationship between three-axis angular velocities and attitude changes through derivation after the rotation sequence is defined. The t coordinate is transferred to the position of b coordinate through three sequential rotations, and the sequence of coordinate transformation is shown in Figure 2.
The detailed sequence of coordinate transformation in Figure 2 is as follows: First, t coordinate is rotated ψ degrees around z t axis to the position of 1 coordinate ( $ox_1 y_1 z_1 (ox_1 y_1 z_t )$ ). The second step is to turn 1 coordinate to the position of 2 coordinate ( $ox_2 y_2 z_2 (ox_1 y_2 z_2 )$ ) around x 1 axis. Finally, rotating 2 coordinate to b coordinate ( $ox_b y_b z_b (ox_b y_2 z_b )$ ) around y 2 axis is the third transformation. All of the three above mentioned transformations follow the counter clockwise direction. The three rotation angular velocities are $\dot \psi, {\rm } \dot \theta, {\rm } \dot \gamma $ respectively.
It should be noted that $\dot \psi, {\rm } \dot \theta, {\rm } \dot \gamma $ are the angular velocities in different coordinate systems. After one rotation around y axis, $\dot \gamma $ can be converted to b coordinate. Two rotations are needed in angular velocity $\dot \theta $ around x and y axis respectively, and three rotations needed in $\dot \psi $ around z, x and y axis. Therefore, the transformation relationship between $\dot \psi, {\rm } \dot \theta, {\rm } \dot \gamma $ and angular velocities of b coordinate relating to t coordinate ( $[\matrix{ {\omega _{tbx}^b} & {\omega _{tby}^b} & {\omega _{tbz}^b} \cr} ]^T $ ) is obtained from
where $R_x (\theta ),R_y (\gamma ),R_z (\psi )$ (Rotation Matrix) are equal to $\left[ {\matrix{ 1 & 0 & 0 \cr 0 & {\cos \theta} & {\sin \theta} \cr 0 & { - \sin \theta} & {\cos \theta} \cr}} \right]$ , $\left[ {\matrix{ {\cos \gamma} & 0 & { - \sin \gamma} \cr 0 & 1 & 0 \cr {\sin \gamma} & 0 & {\cos \gamma} \cr}} \right]$ and $\left[ {\matrix{ {\cos \psi} & {\sin \psi} & 0 \cr { - \sin \psi} & {\cos \psi} & 0 \cr 0 & 0 & 1 \cr}} \right]$ respectively. After Equation (2) is expanded and combined, we can obtain the following Equation (3):
The attitude angle changes of adjacent moments are $[\matrix{ {\Delta \theta} & {\Delta \gamma} & {\Delta \psi} \cr} ]^T $ . In this paper, the output signal update frequency of the IMU is 100 Hz which means sampling time Δt equals to 0·01s and $[\matrix{ {\dot \theta} & {\dot \gamma} & {\dot \psi} \cr} ]^T $ can be rewritten as $[\matrix{ {\Delta \theta _a (i)/\Delta t} & {\Delta \gamma _a (i)/\Delta t} & {\Delta \psi _m (i)/\Delta t} \cr} ]^T $ .
Substituting the values $[\matrix{ {\Delta \theta _a (i)} & {\Delta \gamma _a (i)} & {\Delta \psi _m (i)} \cr} ]^T $ acquired from Equation (1) for the corresponding values in Equation (3), we can obtain the motion angular velocities ( $[\matrix{ {\omega _{tbx\_a}^b (i)} & {\omega _{tby\_a}^b (i)} & {\omega _{tbz\_m}^b} \cr} (i)]^T $ ) of the body relative to t coordinate at each moment, as follows.
2.3. Bias Calibration
Taking gyro bias errors into account, the gyro measurement signal can be expressed as:
where ω original , ω bias, ω true and ε 0 stand for the original output of gyro, the value of gyro bias, the true motion angular velocity obtained from Equation (4) and random error respectively. Equation (5) can be rewritten as:
Let $[\matrix{ {{\rm bias}_x (i)} & {{\rm bias}_{y} (i)} & {{\rm bias}_z (i)} \cr} ]^T $ be the components of ω bias at each moment. Replacing the true motion angular velocities (ω true) with the corresponding values ( $[\matrix{ {\omega _{tbx\_a}^b (i)} & {\omega _{tby\_a}^b (i)} & {\omega _{tbz\_m}^b} \cr} (i)]^T $ ) calculated from Equation (4), the bias of each moment can be obtained from:
where i denotes the i th sampling point. $[\matrix{ {\omega _{tbx}^b (i)} & {\omega _{tby}^b (i)} & {\omega _{tbz}^b} \cr} (i)]^T $ and $[\matrix{ {\varepsilon _x (i)} & {\varepsilon _y (i)} & {\varepsilon _z} \cr} (i)]^T $ stand for the component of ω original and ε 0 respectively. Random error will cause bias fluctuation of each moment, but it does not include the trend item. Therefore the bias fluctuation error can be compensated by averaging biases obtained from Equation (7) in the calibration period as shown:
where $[\matrix{ {\overline {{\rm bias}_x}} & {\overline {{\rm bias}_y}} & {\overline {{\rm bias}_z}} \cr} ]^T $ are the biases of three-axis gyros estimated by the proposed method of this paper.
3. EXPERIMENT
To verify the efficiency and test the accuracy of the standing calibration method, the turntable experiments and a walking experiment were performed on the basis of our theoretical research.
3.1. Experiment Equipment
Experimental equipment mainly includes MTi-G-700 IMU from XSens, biaxial position turntable (TSK-250), mounting fixture and laptop computer as shown in Figure 3.
The MTi-G-700 consists of three gyros, three accelerometers and a three-axis magnetic sensor. The typical value of gyro bias stability is 0·00278°/s and the maximum of bias repeatability error is 0·5°/s within a year. The typical value of accelerometer bias stability is 40μg and the maximum of bias repeatability error is 0·05 m/s2 within a year. The typical values of noise spectral density and nonlinearity of the magnetic sensor are $200\mu {\rm Gauss}/\sqrt {Hz} $ and 0·1FS respectively. TSK-250 can rotate in two degrees of freedom where the rotation ranges of x-axis and z-axis are 0 to 90° and 0 to 360° with a positional precision of 1′. A mounting fixture was used to fix the IMU on the turntable. The laptop collects and processes the output data, and then calibrates gyro bias.
3.2. Experiments and Results
Three experiments were designed to analyse and verify the practicability of this method. First of all, the still turntable experiment was conducted to verify the equivalence of the proposed method and ZARU without body swaying. Then we simulated the body sway back and forth on the biaxial position turntable. Meanwhile, collection of the sensor output data and calibration of the gyro bias by the proposed method and ZARU respectively were in process. Through this experiment we were able to verify the efficiency and superiority of this proposed method. Finally, a walking test was performed for comprehensive verification.
3.2.1. Still Turntable Experiment
The biaxial position turntable with IMU mounted was adjusted to a horizontal position and kept still, which represents the ideal standstill state of the human body without swaying. We collected the output data from the IMU during the calibration time (T c) set as 200 seconds. Then, the proposed method and ZARU were used to calibrate gyro bias respectively. The results are shown in Table 1.
From the data of Table 1, there was only a very minor difference between the two methods. The maximum deviation is 0·0009°/s, a difference of 0·28%, coming from the x-axis gyro. This means the proposed method has the same estimation accuracy as ZARU in the still state.
3.2.2. Dynamic turntable experiment
The dynamic turntable experiment was used to verify the effectiveness of the standing calibration method with body swaying in situ. Due to the limitation of experimental equipment and conditions, in this paper, the body swaying state in a single direction of pitch is simulated by rotating the x-axis of the turntable. After the IMU was fixed on the turntable, we started rotating the turntable and collecting experiment data while the system output remained stable. The detailed turntable operation procedures are as follows: First, remain stationary for 20 seconds. Second, simulate sway with amplitude of 5° for 160 seconds. Finally, remain stationary again for 20 seconds. During the whole process, the output data of the IMU was collected and stored in real time. After that, calibration results were obtained from the proposed method and ZARU respectively as shown in Table 2.
As the test results of still and dynamic experiments derive from the same boot time, the gyro bias remains constant during this period and the measurement results of the still state are accurate. So the still state results were used as the reference to compare and evaluate ZARU and the proposed standing calibration method in this paper. In Table 2, the gyro bias calibration results of y (roll) and z (yaw) axis are very close. For this reason we simulated the pitch sway of the human body back and forth, thus the calibration result of x-axis (pitch) gyro bias is mainly affected by the motion in this experiment. Table 2 shows that the bias of x-axis is −0·3224°/sin still state, and bias results calculated by the proposed method and ZARU are −0·3927°/s and −0·3293°/s respectively in the swaying state. Therefore it is easy to find that the error rates are 21·81% and 2·14%, and the calibration accuracy is improved by 19·67%. This experiment analysis demonstrates that the proposed method can effectively restrain the calibration error caused by body swaying.
3.2.3. Walking Experiment
In Sections 3.2.1 and 3.2.2, the effectiveness of the proposed method was verified by still and dynamic experiments. Besides, the analysis and comparison have also been conducted for the accuracy of two methods. In order to further verify the efficiency and practicability of this proposed method, an actual walking experiment was performed. Firstly, the pedestrian stood in situ for 200 seconds (no need to keep completely still), and then walked a closed path in the teaching area. In the meantime, the sensors’ output data was collected and stored. Next, we used the proposed method and ZARU to calibrate the gyro bias respectively. After that, DR based on gyroscopic orientation was applied to calculate the pedestrian trajectory. The position of start point was (0, 0). Given the closed walking path, ideally, the position $(x_{end}, y_{end} )$ of end point should also be (0, 0). The distance from the real calculated end position to the ideal end point is defined as the position error. On the other hand, because steps are stable and normal during walking, the position error of the walking experiment can be considered to be mainly caused by the heading error resulting from gyro bias. In the experiment, the calibration time (T c ) is still 200 seconds, and the distance of the walking path is 890 metres.
The calibration results of gyro bias are shown in Table 3, and the calculation results of heading and walking trajectory are shown in the following.
From Table 3, there was a big gap between the gyro bias results by ZARU and the proposed method in the initial stage of pedestrian standing in situ (Body sways slightly). Due to the poor repeatability of MEMS gyro at successive boots, we cannot determine which method is more accurate in calibrating gyro bias. However, in actual walking, the calibration accuracy by this proposed method and ZARU can be determined indirectly according to the heading error and position error resulting from gyros.
Figure 4 shows the heading results calculated by three different methods in the standing state of 200 seconds. The solid line shows the heading angles calculated by magnetic sensor and accelerometers which is not affected by gyro errors. In addition, the result is more stable and accurate, which is why it can be used as the evaluation reference. Dashed and dotted lines show the heading angles obtained by integral computation based on the compensation for gyro biases with ZARU and the proposed method respectively. The difference between ZARU and reference increases with time while the difference remains almost unchanged between the proposed method and reference. Besides, as we can see from Figure 5, the heading errors calculated by ZARU and the proposed method are 5·8° and 1·8° in the standing state of 200 seconds, compared with the heading reference. These indicate that the calculated heading angles based on the standing calibration method in this paper are more accurate.
Figure 6 shows the heading angles during the whole walking experiment. When the pedestrian starts walking, due to the influence of human movement acceleration, the heading calculated by the magnetic sensor and accelerometers cannot be used as an evaluation reference. Therefore in Figure 4, only the results of ZARU and the proposed method are drawn. The difference between heading angles calculated by the two methods increases gradually and reaches 17·6° at the end of walking. Figure 6 can only show that the two calibration results are different, but cannot make clear which is more accurate. In order to assess the accuracy of the two methods, the walking experiment was performed. That is, the calculated heading angles were used for pedestrian navigation based on DR, and then we were able to determine the pros and cons of the two methods through the navigation and positioning error. The location results are shown in Figure 7.
Figure 7 shows the calculation results of walking position compared with the reference trajectory (solid line). Dashed and dotted lines are the calculated trajectories with the gyro bias calibration of ZARU and the proposed method. In our experiment, the actual walking trajectory is a closed path. However, the location results obtained from ZARU are different from the direction of actual path as seen in Figure 7, and the position error was 48·06 metres after return to the start. With the proposed calibration method adopted, the position error is 32·72 metres and location accuracy is improved by 31·92%. The above demonstrates that the proposed method in this paper is more accurate to calibrate the gyro bias than ZARU in pedestrian navigation.
4. CONCLUSION
This paper presents a standing calibration method of MEMS gyro bias for an autonomous pedestrian navigation system when the human body sways slightly. Turntable experiment results indicate the proposed method and ZARU are equivalent and have the same calibration accuracy in the still state. In the case of body swaying, this proposed method can also calibrate gyro bias effectively, and the estimated accuracy is better than ZARU. Besides, in the walking experiment, the computed heading and position of pedestrian have higher precision when adopting the standing calibration method in this paper. These results show that the proposed method can improve the gyro bias calibration accuracy, restrain the heading drift and reduce the position error significantly in autonomous pedestrian navigation.
ACKNOWLEDGEMENT
This work is supported by National Natural Science Foundation (NNSF) of China under Grant (61473019, 61273033).