Next Article in Journal
A Microring Resonator Based Negative Permeability Metamaterial Sensor
Previous Article in Journal
A Noise-Aware Coding Scheme for Texture Classification
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Height Compensation Using Ground Inclination Estimation in Inertial Sensor-Based Pedestrian Navigation

Department of Electrical Engineering, University of Ulsan, Namgu, Ulsan 680-749, Korea
*
Author to whom correspondence should be addressed.
Sensors 2011, 11(8), 8045-8059; https://doi.org/10.3390/s110808045
Submission received: 8 July 2011 / Revised: 11 August 2011 / Accepted: 12 August 2011 / Published: 15 August 2011
(This article belongs to the Section Physical Sensors)

Abstract

: In an inertial sensor-based pedestrian navigation system, the position is estimated by double integrating external acceleration. A new algorithm is proposed to reduce z axis position (height) error. When a foot is on the ground, a foot angle is estimated using accelerometer output. Using a foot angle, the inclination angle of a road is estimated. Using this road inclination angle, height difference of one walking step is estimated and this estimation is used to reduce height error. Through walking experiments on roads with different inclination angles, the usefulness of the proposed algorithm is verified.

Graphical Abstract

1. Introduction

A pedestrian navigation system provides a person’s location indoors or outdoors. Many different technologies are used for the pedestrian navigation such as vision [1], wireless technology [2], ultrasonic sensors [3,4], and inertial sensors [510]. Among them, an inertial sensor-based pedestrian navigation system computes the location using inertial sensors installed on a shoe [510]. This inertial navigation system can be used for first respondents and soldiers [11].

The inertial-based navigation algorithms can be classified into two groups. One is that a step length is estimated using some parameters such as one step walking time or accelerometer maximum values [5,6]. The other is that the position is computed using the inertial navigation algorithm [12], where results in [710] belong to this group. Basic inertial pedestrian navigation algorithms are proposed in [7,8]. In [9], inertial navigation algorithm is combined with a map matching algorithm. In [10], an HMM filter is used to estimate gait phases and detect zero velocity intervals. Also we note that the inertial navigation algorithm is also used to analyze gait for medical purposes [13,14].

This paper is related to the latter, where the inertial navigation algorithm is used. A main advantage of an inertial sensor-based algorithmis that no landmarks or devices need to be installed on the environment. On the other hand, an inertial navigation algorithm has an inherent problem that the position error grows as time elapses.

To reduce the error growth, all inertial-based algorithms employ the zero velocity updating [15]. During walking, a foot touches the ground almost periodically for a short time interval and we know the velocity of a foot during the interval is zero. This interval is called a zero velocity interval. The errors of the inertial navigation algorithm are reduced using this zero velocity interval.

However, even with the zero velocity, the error growth can be significant. Experiment results reveal that z axis position (height) error growth could be in particular significant (see left plots in Figure 8 and Figure 9). One explanation is that acceleration in the z axis could be very large when a foot touches the ground and z axis acceleration data could be saturated (see Figure 4). This will degrade the position accuracy of all three axes and the effect is most dominant in the z axis position and velocity since the acceleration is the largest in the z axis direction.

In this paper, we propose a new algorithm, which reduces the z-axis position error. We use the fact that a foot angle is almost the same as the inclination angle of a ground when a foot is on the ground (see Figure 2). If we measure a foot angle during the zero velocity (that is, when a foot is on the ground), the inclination angle of a ground can be estimated. Using the estimated inclination angle, the z-axis position error can be compensated.

The paper is organized as follows. In Section 2, basic equations of inertial sensor-based pedestrian navigation algorithm is introduced and detailed equations are given in Appendix. In Section 3, a height compensation algorithm using a foot angle estimation is proposed. In Section 4, the proposed algorithm is verified through experiments. Conclusion is given in Section 5.

2. Inertial Sensor-Based Pedestrian Navigation System

In this section, a brief introduction to an inertial navigation algorithm is given. Details about inertial navigation algorithms can be found in [12,16,17]. The inertial navigation algorithm used in this paper is from [10].

Let rR3, vR3 and qR4 be a position, a velocity and attitude quaternion in the navigation coordinate frame. The navigation coordinate frame has axes with the direction north (x axis), west (y axis), and the local vertical (up, z axis). The body coordinate frame is fixed on the sensor unit. The rotation matrix associated with the quaternion q is expressed as C(q). In the inertial navigation algorithm, r, v and q are estimated from inertial sensors (accelerometers and gyroscopes) and magnetic sensors.

Let ωb, ab, and be defined as follows:

  • ωbR3 : body angular rates

  • abR3 : body acceleration without gravitational acceleration

  • R3 : gravitational acceleration vector in the navigation coordinate frame

  • R3 : earth magnetic field vector in the navigation coordinate frame.

The sensor output equations are given by

y g = ω b + b g + v g y a = C ( q ) g ˜ + a b + b a + v a y m = C ( q ) m ˜ + v m
where ygR3 is a gyroscope output, yaR3 is an accelerometer output, ymR3 is a magnetic sensor output, bgR3 is gyroscope bias, baR3 is accelerometer bias, vgR3 is gyroscope sensor noise, vaR3 is accelerometer sensor noise, and vmR3 is magnetic sensor noise.

An indirect Kalman filter is used to estimate q, r and v. In an indirect filter, q, r and v are not directly estimated. Instead q, v and r are first estimated by appropriately integrating or double integrating yg and ya and their errors are estimated using a Kalman filter [10]. The indirect Kalman filter equations are given in Appendix.

The following assumptions are made in the paper:

  • Walking direction is only forward and no side walking and backward walking are allowed.

  • There is no staircase on the walking path

The assumptions are satisfied during normal walking situations: that is, a person walks forward only and stopping is allowed.

3. Height Compensation Algorithm

The inertial sensor unit is installed on top of a shoe as in Figure 1. When a person is standing on a flat ground, the unit is not completely level and the roll angle at that time is denoted by θinit.

When a foot is on a slope with the inclination angle θground (see Figure 2), the roll angle θ of the sensor unit is different from θinit, which is the roll angle when a foot is on a flat ground. The relationship between θ and θground is given by

θ groud = θ θ init .
Since θinit is constant, we can estimate the ground inclination angle θground once we know the roll angle θ.

The roll angle θ can be computed from the attitude quaternion . Or θ can be also estimated using accelerometer outputs during the zero velocity interval since there is no external acceleration. From Equation (1), we obtain the following ignoring sensor noises and external acceleration

y a C ( q ) [ 0 0 g ] = [ sin θ cos θ sin φ cos θ cos φ ] g
where φ is the pitch angle. Thus θ and φ can be estimated using the following:
ϕ = atan 2 ( y a , y , y a , z ) θ = atan 2 ( y a , x , y a , y 2 + y a , z 2 ) .

In this paper, roll angle θ is estimated using Equation (3) during each zero velocity interval: θ is computed for each discrete time during a zero velocity interval and the averaged value is used as θ̂, which is an estimated value of θ. Thus θ̂ is updated whenever zero velocity intervals are encountered. In the update, a low pass filter is used to suppress a sudden change of θ̂.

There are many methods to detect zero velocity intervals [15]. In this paper, we used both accelerometer values and force sensors (Tekscan FlexiForce Sensors), which are installed inside a shoe. Note that the measured force increases when a foot is on the ground since the human weight is applied on the sensors. We assume a discrete time i belongs to a zero velocity interval if the measured force sensor is larger than the prespecified value and θi (θ value computed using Equation (3) at the discrete time i) satisfies the following

| θ i θ i 1 | < 2 .
Note that Equation (4) is equivalent to the condition that changes of accelerometers are small.

A typical foot movement trajectory when a person is walking on a slope is given in Figure 3. Note that rk1 is the foot position at the discrete time k1. In this example, the foot is on the slope at the discrete time k1 and k2. A person walked one step between the time k1 and k2. Thus rk1 is the position before one step walking and rk2 is the position after the step. Let δz,k1,k2 and δxy,k1,k2 be the horizontal and vertical distances between rk1 and rk2, respectively:

δ xy = [ 1 0 0 0 1 0 ] ( r k 2 r k 1 ) 2 δ z = [ 0 0 1 ] ( r k 2 r k 1 ) .

Note that δz,k1,k2 and δxy,k1,k2 are horizontal and vertical distances of one walking step. We will drop k1 and k2 subscripts in δ for simplicity.

Assuming that walking is mostly up or down along the slope, δz and δxy have the following relationship:

δ z tan ( θ ground ) δ xy .
Equation (6) is used in the measurement update of the Kalman filter in Appendix. Let θ̂k1 be estimated θ value at time k1 using Equation (3) and k1 be the position estimate of the inertial navigation algorithm. Let r ^ k 2 be the position estimate of the inertial navigation algorithm before the measurement update (that is, the zero velocity updating). Thus r ^ k 2 is obtained by double integrating acceleration starting from time k1 with the initial value k1.

From Equation (6), let δ̂z (estimate of δz) be defined by

δ ^ z = tan ( θ ^ k 1 θ init ) [ 1 0 0 0 1 0 ] ( r ^ k 2 r ^ k 1 ) 2 .
Note that δ̂z in Equation (7) is the vertical distance (height difference) computed using the ground inclination angle.

We have assumed that θ̂k1 is relatively accurate and errors in x and y position estimation in the inertial navigation algorithm are small: that is, we have assumed the following is satisfied

[ 1 0 0 0 1 0 ] ( r ^ k 2 r ^ k 1 ) [ 1 0 0 0 1 0 ] ( r k 2 r k 1 ) .
With the assumptions we have the following approximation from Equations (5) and (6):
δ ^ z [ 0 0 1 ] ( r k 2 r k 1 ) .
Let vz be the approximation error in Equation (8), we can rewrite Equation (8) as following:
δ ^ z = [ 0 0 1 ] ( r k 2 r k 1 ) + v z = [ 0 0 1 ] ( r k 2 r ^ k 2 + r ^ k 2 r k 1 ) + v z = [ 0 0 1 ] ( r e , k 2 + r ^ k 2 r ^ k 1 r e , k 1 ) + v z
where recall that r e , k = r k r ^ k in Equation (13).

Let v δ = v z [ 0 0 1 ] r e , k 1, then Equation (9) can be written as follows:

δ ^ z [ 0 0 1 ] ( r ^ k 2 r ^ k 1 ) = [ 0 0 1 ] ( r k 2 r ^ k 2 ) + v δ
where vδ represents the approximation errors.

We have the following measurement equation for the Kalman filter in Appendix:

δ ^ z [ 0 0 1 ] ( r ^ k 2 r ^ k 1 ) = [ 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 ] x k 2 + v δ .
This measurement update equation is combined with the zero velocity updating equation in Equation (16). Note that the measurement noise vδ contains all the approximation errors in the derivation of Equation (10). So an exact analytic formulation for the covariance is not easy to derive. A small positive value is assigned to E { v δ , k 2 v δ , k 2 } in the paper.

The proposed algorithm combined with the inertial navigation algorithms summarized in the following:

  • while (true)

  •     compute r ^ k , v ^ k and q ^ k

  •     if (zero velocity interval)

  •       if (the start of the zero velocity interval)

  •         θ̂ground = θ̂ground,previous

  •       else if (the end of the zero velocity interval)

  •         compute θ̂ground,previous using Equations (2) and (3)

  •       end

  •       zero velocity updating Equation (16) and height compensation Equation (10)

  •       update k, k and k

  •     else

  •        r ^ k = r ^ k , v ^ k = v ^ k and q ^ k = q ^ k

  •     end

  •     k = k + 1

  • end

4. Experiments

As an inertial sensor unit, XSens MTi28A53G25 is used, whose specifications are given in Table 1.

In Figure 4, typical accelerometer data (ya) are given. The accelerometer output from XSens MTi28A53G25 is a low pass filtered signal with the bandwidth 30 Hz (see Table 1). The full scale range of the accelerometer is 50 m/s2 and note that there is saturation in ya,z, which may cause large z axis velocity and position errors. The detected zero velocity interval is also given.

To test the proposed algorithm, four roads are selected (see Figure 5). These roads are more than 50 m long and the inclination angles are almost constant. The inclination angle of each road is measured with a digital inclinometer: inclination angles are measured at several points (13–17 points for each road) and the average value is considered as the inclination angle of a road. The results are given in Figure 6.

In Figure 5, the inclination angles of four roads are −0.046°, 2.54°, 6.14° and 7.52°, respectively.

We walked up on each road 50 m and computed θ angle using Equation (3) during the angle measurement interval. In Figure 7, computed θ̂ground using Equations (2) and (3) is given. Note that each point in the figure corresponds to a computed θ̂ground for each walking step. For the reference, the road inclination angles are also given. We can see that θ̂ground is close to the inclination angle and thus θ̂ground can be used as a road inclination angle estimate.

The z axis position estimation (the third element of r) result for road A (indoor corridor) is given in Figure 8. The left graph in Figure 8 shows the z axis position estimation without the height compensation, where the inertial navigation algorithm with zero velocity updating is used. The straight line in the plot is the estimated actual z axis position, which is computed from the inclination angle of the road and the walking distance (50 m). We can see the error increases rapidly. The error growth depends on many elements such as sensor scaling factor calibration, bias stability, sensor axis alignments and sensor saturation. We only performed simple calibrations. An initial gyroscope bias is estimated by averaging initial 1 minute gyroscope data while the sensor unit is not moving. Also, the accelerometer offset is estimated by rotating the accelerometer 360° and finding the center value. With this simple calibration, the error seems to be large. The right graph in Figure 8 shows that the z axis position is corrected using the proposed height compensation algorithm.

The z axis position estimation result for road C (inclination angle of the road is 6.14°) is given in Figure 9, where a person walked up 50 m along the road. The straight line is drawn between 0 and the computed final z axis position (50 m × sin(6.14°) = 5.348 m). Note that we measured 50 m using a tape measure on the road and thus 50 m corresponds to ||rNr1||2, where rN is the final position and r1 is the initial position. Without the height compensation, we can see that the z axis position error is large (final z axis position error is 3.61 m). On the other hand, with the height compensation, the z axis position error compensation is greatly reduced (final z axis position error is 0.62 m).

For the same road C, we walked down 50 m along the road and the result is given in Figure 10. It can be seen that without the height compensation, the z axis position error diverges quickly. In the right plot, it can be seen that the z axis position is compensated with the height compensation algorithm.

For four roads, three walking experiments are done. The average z axis position errors are given in Table 2 without and with the compensation algorithm. The true final z position is computed using sin(θground) × 50 m. We can see that the proposed height compensation algorithm reduces the z axis position error significantly. In Table 2, position errors (with compensation) of Road D seem to be large. We believe this is due to the fact that the road D does not have a smooth surface, which can be verified from Figure 6. Thus the computed true height (that has been estimated using the estimated slope angle 7.52°) may not be accurate.

We note although the proposed method reduces the z axis position error growth, the position error divergence cannot be avoided over the long time.

Now instead of walking up and down along the slope, a person walked up and down the slope diagonally. In this experiment, pitch angle φ is not zero. We measured road inclination angles along line B in Figure 11 and the average road inclination angle is 7.83°. A person walked up and down 3 times. The z axis position error with the height compensation was 0.45, 0.43, 0.15 m (walking up) and 0.41, 0.30, 0.21 m (walking down). Thus we can see the proposed algorithm is working when φ is not zero.

5. Conclusions

In pedestrian navigation systems using inertial navigation algorithm, position error tends to diverge sooner or later. To reduce the position error growth, a zero velocity updating algorithm is used. Even with the zero velocity updating algorithm, position error growth could be still large. In particular, the z axis position (height) error growth could be significant.

In this paper, we have proposed a height compensation algorithm. An inclination angle of a road is estimated using foot angle estimation. Using the inclination angle, the height difference of a walking step is estimated. Using this estimation, z axis position in the inertial navigation algorithm is compensated. Through walking test under four different roads (with different inclination angles), the usefulness of the proposed method has been shown. Four different roads (with different inclination angle), 50 m walking test was done. Without the proposed height compensation algorithm, the average z axis position error range was 1.64–8.94 m over 50 m walking. On the other hand, the average error range with the proposed height compensation algorithm was 0.05–2.11 m.

We note that although the proposed method reduces the z axis position error growth, the position error divergence cannot be avoided over the long time. To avoid the divergence problem, external reference such as GPS should be used.

The current algorithm assumes that a person walks up or down on a slope direction. The current algorithm cannot deal with the staircase walking. The future work is to improve the proposed algorithm to cope with various situations such as the staircase walking. One possible solution is to use gait phase information (which can be determined using inertial sensors and force sensors [18]) to determine whether a person is stair climbing or descending.

Acknowledgments

This work was supported by National Research Foundation of Korea Grant funded by the Korean Government (No. 2011-0002770).

Appendix

An indirect Kalman filter for inertial navigation algorithms is introduced in this appendix. The equations are mostly from [10].

Let , , and be the estimates of q, r and v, which are computed from the following equations:

q ^ . = 1 2 Ω ( y g ) q ^
where Ω(yg) is defined by
Ω ( y g ) = [ 0 y g , x y g , y y g , z y g , x 0 y g , z y g , y y g , y y g , z 0 y g , x y g , z y g , y y g , x 0 ] v ^ ˙ = C ( q ^ ) y a g ˜ r ^ ˙ = v ^ . .
where is the gravitational acceleration vector.

If there are no sensor noises and bias terms in ya and yg, , , and should be 100% accurate. For example, if yg = wb, then = q (that is, there is no error in ). Due to sensor noises, however, , , and contain errors.

Let qe, re, vebe errors in , , and , which are defined by

q e q ^ * q r e r r ^ v e v v ^
where ⊗ is the quaternion multiplication.

If the error qe is small, it can be approximated by

q e [ 1 q ¯ e ] .

The errors are estimated using a Kalman filter and the state for the Kalman filter is given by

x [ q ¯ e b g r e v e b a ] .

The state equation is given by

x ˙ ( t ) = A x ( t ) + B [ v g w b g v a w b a ]
where A and B are given by (I3R3×3 is an identity matrix and 03R3×3 is a zero matrix)
A [ [ y g × ] 1 2 I 3 0 3 0 3 0 3 0 3 0 3 0 3 0 3 0 3 0 3 0 3 0 3 I 3 0 3 2 C ( q ^ ) [ y a × ] 0 3 0 3 0 3 C ( q ^ ) 0 3 0 3 0 3 0 3 0 3 ]
B [ 0.5 I 3 0 3 I 3 0 3 I 3 0 3 0 3 0 3 0 3 0 3 0 3 0 3 0 3 C ( q ^ ) 0 3 0 3 0 3 0 3 I 3 ] .
For a vector pR3, [p×] is defined by
[ p × ] [ 0 p 3 p 2 p 3 0 p 1 p 2 p 1 0 ] .
The noise wbg and wba are process noises for compensation of slowly time-varying gyroscope and accelerometer bias. As usual, we assume all noises in Equation (15) are uncorrelated, zero mean white Gaussian.

When a foot is on the ground and thus is not moving, we can use the fact v = 0 in the measurement update of the Kalman filter. The zero velocity interval can be detected using ya and yg : if ya change is small and yg is small for more than a certain period, we can consider a foot is not moving [15,19]. The zero velocity interval also can be detected using the force sensors installed on a shoe. In this paper, the zero velocity interval is detected using ya change and the force sensors.

During the zero velocity interval, we can use the fact v = 0 in the measurement updating as follows: The velocity measurement yv is given by

y v = v + v v = v ^ + v e + v v
where vv is the measurement noise. We assume that the measurement noise vv is a uncorrelated white Gaussian noise. Let Rv be the covariance of vv, which is defined by E{vv(t)vv(s)′} = Rvδ(ts).

During the zero velocity interval (that is v = 0), we use 0 − as an output to the indirect Kalman filter, where the output equation is given by

v ^ = v e + v v = [ 0 0 0 I 3 0 ] x + v v .
In the zero velocity updating, vv is not the actual measurement noise since we are not directly measuring v but indirectly estimating v = 0. Thus covariance Rv indicates our confidence in the zero velocity algorithm. If we use Rv = 03, we are assuming that the zero velocity algorithm is 100% correct. We note that there is a slight chance that the zero velocity interval detection is wrong. Thus we assign small positive value to Rv. In the zero velocity updating, the velocity, position and attitude errors are greatly reduced [7,8].

During the zero velocity interval, we also update the heading using ym. As in [7], heading is only compensated at the end of the zero velocity interval since the attitude is most accurate at that time. For the heading update equation, we used the technique in [20], where ym only affects heading not pitch and roll. See Equation (21) in [20].

The sampling rate of the inertial sensors is 100 Hz and the appropriate discretized equations are used.

References

  1. Llorca, DF; Sotelo, MA; Parra, I; Ocana, M; Bergasa, LM. Error Analysis in a Stereo Vision-Based Pedestrian Detection Sensor for Collision Avoidance Applications. Sensors 2010, 10, 3741–3758. [Google Scholar]
  2. Eom, W; Park, J; Lee, J. Hazardous Area Navigation with Temporary Beacons. Int. J. Control Automat. Syst 2010, 8, 1082–1090. [Google Scholar]
  3. Hazas, M; Hopper, A. Broadband Ultrasonic Location Systems for Improved Indoor Positioning. IEEE Trans. Mobile Comput 2006, 5, 536–547. [Google Scholar]
  4. Kim, SY; Yoon, KS; Lee, DH; Lee, MH. The Localization of a Mobile Robot Using a Pseudolite Ultrasonic System and a Dead Reckoning Integrated System. Int. J. Control Automat. Syst 2011, 9, 339–347. [Google Scholar]
  5. Shin, SH; Park, CG; Kim, JW; Hong, HS; Lee, JM. Adaptive Step Length Estimation Algorithm Using Low-Cost MEMS Inertial Sensors. Proceedings of IEEE Sensors Application Symposium, San Diego, CA, USA, 6–8 February 2007; pp. 1–5.
  6. Feliz, R; Zalama, E; Garcia-Bermejo, JG. Pedestrian Tracking Using Inertial Sensors. J. Phys. Agents 2009, 3, 35–42. [Google Scholar]
  7. Foxlin, E. Pedestrian Tracking with Shoe-Mounted Inertial Sensors. IEEE Comput. Graph. Appl 2005, 25, 38–46. [Google Scholar]
  8. Ojeda, L; Borenstein, J. Non-GPS Navigation for Security Personnel and First Responders. J. Navigat 2007, 60, 391–407. [Google Scholar]
  9. Krach, B; Roberston, P. Cascaded Estimation Architecture for Integration of Foot-Mounted Inertial Sensors. Proceedings of 2008 IEEE/ION Position, Location and Navigation Symposium, Monterey, CA, USA, 5–8 May 2008; pp. 112–119.
  10. Suh, YS; Park, S. Pedestrian Inertial Navigation with Gait Phase Detection Assisted Zero Velocity Updating. Proceedings of the 4th International Conference on Autonomous Robots and Agents, Wellington, New Zealand, 10–12 February 2009; pp. 336–341.
  11. Bird, J; Arden, D. Indoor Navigation with Foot-Mounted Strapdown Inertial Navigation and Magnetic Sensors. IEEE Wirel. Commun 2011, 18, 28–35. [Google Scholar]
  12. Titterton, DH; Weston, JL. Strapdown Inertial Navigation Technology; IPeter Peregrinus Ltd: Herts, UK, 1997. [Google Scholar]
  13. Schepers, HM; van Asseldonk, EHF; Baten, CT; Veltink, PH. Ambulatory Estimation of Foot Placement During Walking Using Inertial Sensors. J. Biomech 2010, 43, 3138–3143. [Google Scholar]
  14. Veltink, PH; Slycke, P; Hemssems, J; Buschman, R; Bultstra, G; Hermens, H. Three Dimensional Inertial Sensing of Foot Movements for Automatic Tuning of a Two-Channel Implantable Drop-Foot Stimulator. Med. Eng. Phys 2003, 25, 21–28. [Google Scholar]
  15. Park, SK; Suh, YS. A Zero Velocity Detection Algorithm Using Inertial Sensors for Pedestrian Navigation Systems. Sensors 2010, 10, 9163–9178. [Google Scholar]
  16. Savage, PG. Strapdown Inertial Navigation Integration Algorithm Design Part 1: Attitude Algorithms. J. Guid. Control Dynam 1998, 21, 19–28. [Google Scholar]
  17. Savage, PG. Strapdown Inertial Navigation Integration Algorithm Design Part 2: Velocity and Position Algorithms. J. Guid. Control Dynam 1998, 21, 208–221. [Google Scholar]
  18. Pappas, IPI; Popovic, MR; Keller, T; Dietz, V; Morari, M. A Reliable Gait Phase Detection System. IEEE Trans. Neural Syst. Rehabil. Eng 2001, 9, 113–125. [Google Scholar]
  19. Bebek, O; Suster, MA; Rajgopal, S; Fu, MJ; Huang, X; Cauvusoglu, MC; Young, DJ; Mehregany, M; van den Bogert, AJ; Mastrangelo, CH. Personal Navigation via High-Resolution Gait-Corrected Inertial Measurement Units. IEEE Trans. Instrum. Meas 2010, 59, 3018–3027. [Google Scholar]
  20. Suh, YS. Orientation Estimation Using a Quaternion-Based Indirect Kalman Filter With Adaptive Estimation of External Acceleration. IEEE Trans. Instrum. Meas 2010, 59, 3296–3305. [Google Scholar]
Figure 1. Initial angle θinit when a foot is on a flat ground.
Figure 1. Initial angle θinit when a foot is on a flat ground.
Sensors 11 08045f1 1024
Figure 2. Roll angle θ of the sensor unit when a foot is on a slope.
Figure 2. Roll angle θ of the sensor unit when a foot is on a slope.
Sensors 11 08045f2 1024
Figure 3. Foot movement between two zero velocity intervals.
Figure 3. Foot movement between two zero velocity intervals.
Sensors 11 08045f3 1024
Figure 4. Accelerometer outputs and zero velocity interval.
Figure 4. Accelerometer outputs and zero velocity interval.
Sensors 11 08045f4 1024
Figure 5. Four roads (A,B,C,D) with different inclination angles.
Figure 5. Four roads (A,B,C,D) with different inclination angles.
Sensors 11 08045f5 1024
Figure 6. Inclination angle measurement with a digital inclinometer (each measurement is taken from different points along the roads).
Figure 6. Inclination angle measurement with a digital inclinometer (each measurement is taken from different points along the roads).
Sensors 11 08045f6 1024
Figure 7. θ̂ground estimation for each road (the estimated value at the end of a zero velocity interval).
Figure 7. θ̂ground estimation for each road (the estimated value at the end of a zero velocity interval).
Sensors 11 08045f7 1024
Figure 8. z axis position estimation for road A without (left) and with (right) the proposed height compensation.
Figure 8. z axis position estimation for road A without (left) and with (right) the proposed height compensation.
Sensors 11 08045f8 1024
Figure 9. z axis position estimation for road C without (left) and with (right) the proposed height compensation (up-walking).
Figure 9. z axis position estimation for road C without (left) and with (right) the proposed height compensation (up-walking).
Sensors 11 08045f9 1024
Figure 10. z axis position estimation for road C without (left) and with (right) the proposed height compensation (down-walking).
Figure 10. z axis position estimation for road C without (left) and with (right) the proposed height compensation (down-walking).
Sensors 11 08045f10 1024
Figure 11. Height compensation experiment while walking up and down the slope diagonally.
Figure 11. Height compensation experiment while walking up and down the slope diagonally.
Sensors 11 08045f11 1024
Table 1. Specifications of XSens MTi28A53G25.
Table 1. Specifications of XSens MTi28A53G25.
rate of turnaccelerationmagnetic field
full scale±1, 500°/s±50 m/ s2±750 mGauss
bandwidth40 Hz30 Hz10 Hz
bias stability20°/ h0.02 m/s20.1 mGauss
noise0.05°/ s/ Hz0.002 m/ s2/ Hz0.5 mGauss
Table 2. z axis position error (average value of 3 experiments).
Table 2. z axis position error (average value of 3 experiments).
position error without compensation (m)position error with compensation (m)
road A5.760.41
road Bwalking up1.590.05
walking down3.510.30
road Cwalking up1.640.40
walking down8.940.79
road Dwalking up4.621.19
walking down8.332.11

Share and Cite

MDPI and ACS Style

Park, S.K.; Suh, Y.S. Height Compensation Using Ground Inclination Estimation in Inertial Sensor-Based Pedestrian Navigation. Sensors 2011, 11, 8045-8059. https://doi.org/10.3390/s110808045

AMA Style

Park SK, Suh YS. Height Compensation Using Ground Inclination Estimation in Inertial Sensor-Based Pedestrian Navigation. Sensors. 2011; 11(8):8045-8059. https://doi.org/10.3390/s110808045

Chicago/Turabian Style

Park, Sang Kyeong, and Young Soo Suh. 2011. "Height Compensation Using Ground Inclination Estimation in Inertial Sensor-Based Pedestrian Navigation" Sensors 11, no. 8: 8045-8059. https://doi.org/10.3390/s110808045

Article Metrics

Back to TopTop