Next Article in Journal
Analysis of Reliability of Strain Measurements Made with the Fiber Bragg Grating Sensor Rosettes Embedded in a Polymer Composite Material
Previous Article in Journal
User Experience in Social Robots
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

An Improved Calibration Method for the IMU Biases Utilizing KF-Based AdaGrad Algorithm

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 2021, 21(15), 5055; https://doi.org/10.3390/s21155055
Submission received: 26 June 2021 / Revised: 21 July 2021 / Accepted: 22 July 2021 / Published: 26 July 2021
(This article belongs to the Section Physical Sensors)

Abstract

:
In the field of high accuracy strapdown inertial navigation system (SINS), the inertial measurement unit (IMU) biases can severely affect the navigation accuracy. Traditionally we use Kalman filter (KF) to estimate those biases. However, KF is an unbiased estimation method based on the assumption of Gaussian white noise (GWN) while IMU sensors noise is irregular. Kalman filtering will no longer be accurate when the sensor’s noise is irregular. In order to obtain the optimal solution of the IMU biases, this paper proposes a novel method for the calibration of IMU biases utilizing the KF-based AdaGrad algorithm to solve this problem. Three improvements were made as the following: (1) The adaptive subgradient method (AdaGrad) is proposed to overcome the difficulty of setting step size. (2) A KF-based AdaGrad numerical function is derived and (3) a KF-based AdaGrad calibration algorithm is proposed in this paper. Experimental results show that the method proposed in this paper can effectively improve the accuracy of IMU biases in both static tests and car-mounted field tests.

1. Introduction

Strapdown Inertial Navigation Systems (SINS) have been widely used in many aspects of navigation [1]. The SINS has some irreplaceable advantages, such as high autonomy, and it provides continuous and comprehensive navigation information. Therefore, SINS is widely applied in ships and airplanes [2]. For the purpose of realizing the alignment and navigation algorithms of the SINS. The IMU errors have to be calibrated prior to utilization. In an ideal IMU, accelerometers, and gyroscopes coordinate with the same orthogonal sensitivity axes, while the scale factor converts the digital quantity measured by each sensor into the real physical quantity (accelerations and angular rates) [3,4]. However, the IMU is usually affected by non-accurate sensor biases [5], the navigation errors (attitude, velocity and position errors) of the SINS diverge with time [6]. Therefore, the calibration of biases in IMU is a very effective way to enhance the navigation accuracy of SINS.
In [7], Han et al. proposed a method for bias calibration using a single-axis turning table. The disadvantage of this method is that the calibration accuracy depends highly on the turntable accuracy. In current SINS implementations, in order to overcome the non-observability of the biases of the IMU biases, an analytic calibration of IMU biases with two-position is utilized widely [8]. Many works have been done in the field of IMU calibration. In [9], an eight-position self-calibration method was proposed. Emel’yantsev et al. calibrated in-rum drifts of SINS with uniaxial modulation rotation of measurement unit. Since the low end IMU model is nonlinear, some researchers use an adaptive Kalman filter to estimate IMU biases [10,11,12,13,14,15]. Wang et al. utilized a new online calibration method for integrated navigation systems [16]. In [17], a rotation test was utilized to enhance the observability of KF in order to calibrate the IMU biases. However, KF is an unbiased estimation method based on the assumption of GWN while IMU sensors noise is irregular [18,19,20]. In [21], an autocovariance least-squares (ALS) technique was proposed to estimate the process noise of IMU. In [22], particle swarm method was utilized in gyro drift estimation. For high-dimensional systems especially for those with weak observability. The adaptive estimation of IMU biases tend to diverge. In order to solve the problem, further researches are needed on this issue.
Allan variance has been widely utilized in the analysis of gyroscopes [23]. Allan variance can provide different types and magnitude information on various noise terms. Due to analogies to IMU sensors, Allan variance has been adapted to the random-drift characterization of a variety of inertial devices [24,25,26]. Allan variance is a method of representing the root mean square (RMS) random-drift errors as a function of averaging time. However, the equivalent white noise characteristics do not equal the sum of the various noise characteristics analyzed by Allan variance. Thus, the method of using Allan variance to estimate IMU biases is not feasible.
In order to solve the above problems, a KF-based AdaGrad calibration algorithm is proposed. Gradient descent is an iterative optimization algorithm for finding the minimum value of the objective function. For a complex dynamical system, the gradient descent method is utilized to obtain the minimum value of the constructed cost function. In [27,28,29,30], researchers proposed a gradient descent approach to solve complex dynamic system problems. The difficulty of the gradient descent method lies in constructing the cost function of a complex dynamic system. In this paper, (1) in order to solve the problem of setting step size, this paper utilized adaptive subgradient methods (AdaGrad); (2) we derive a KF-based AdaGrad numerical cost function in which the objective function is the velocity and position errors; and (3) utilizing the above two theories we propose a novel method called KF-based AdaGrad algorithm. Finally, static tests and field tests are carried out to verify the feasibility and applicability of the investigated method.
The remainder of this paper is organized as follows. Section 2 presents a brief overview of the calibration process of IMU and an analysis of the observability of IMU biases. In Section 3, we derive a KF-based AdaGrad numerical cost function and propose a KF-based AdaGrad calibration algorithm. Rotation tests and car-mounted field tests are carried out in Section 4 to compare the proposed method and the existing calibration method. The conclusions are given in Section 5.

2. Two-Position Calibration Modeling

The navigation performance of the SINS relies on a high-precision IMU. Error models have been developed for the IMU in [7,8]. Under the condition of the static base, the velocity of the navigation solution is the velocity error. According to the SINS error transformation model, the misalignment angle error can be derived from the velocity error. Since the inertial navigation system has no obvious movement of the geographical position, the velocity of the inertial navigation system approaches zero. Therefore, in the calibration process, the SINS navigation algorithm can be replaced by some simplified equations.
In a SINS, the IMU is directly mounted on the vehicle or the carrier without a stable platform. The angular velocity and acceleration in the body frame (denoted by b) are measured by the gyroscopes and accelerometers. Choose the local geographical frame (East-North-Vertical frame) as the navigation frame (denote by n).
Let ω e n = 0 to get the simplified attitude algorithm:
C ˙ b n = C b n ( ω i b b ω i e b ) ×
C b n is the direction cosine matrix to transform vector from b-frame (IMU body orthogonal frame which aligned with Right-North-Up axes) to n-frame (navigation frame which aligned with East-North-Vertical axes). The subscript i denotes the inertial-frame. ω i b b represents the angular velocity measured by the gyroscope in the b-frame. ω i e b is the self-rotation angular velocity.
Specific force equation as one of the basic equations of the SINS can be written as:
v ˙ n = C b n f s f b ( 2 ω i e n + ω e n n ) × v n + g n
where v n = v E n v N n v U n T , g is the gravity acceleration of the earth. Let v n = 0 to obtain the simplified velocity algorithm:
v ˙ n = C b n f s f b + g n
Following the above derivation, the attitude error equation and the velocity error equation can be written as:
ϕ ˙ = ϕ × ω i e n ε n δ v ˙ n = f s f n × ϕ + n
where ϕ is the misalignment angle vector and δ v n is the velocity error vector. ε n is the gyroscope equivalent constant bias and the n is the accelerometer equivalent constant bias. The expressions for ε n and n are written as follows:
ε n = ε E ε N ε U = C 11 ε x b + C 12 ε y b + C 13 ε z b C 21 ε x b + C 22 ε y b + C 23 ε z b C 31 ε x b + C 32 ε y b + C 33 ε z b
n = E N U = C 11 x b + C 12 y b + C 13 z b C 21 x b + C 22 y b + C 23 z b C 31 x b + C 32 y b + C 33 z b
where C i j denotes the elements of C b n . ε b and b are the gyroscope and accelerometer equivalent constant bias.
In the above equation, there is no cross-linking relationship between the Equation ( δ v ˙ U = U ) and the other equations. It can be concluded that the vertical velocity error does not have any effect on the misalignment angle estimation. Therefore, in the analysis of the misalignment angle estimation, the influence of the vertical velocity and vertical accelerometer bias can generally be ignored. By expanding the ε b and b to the state, the calibration state space model can be established as follows:
X ˙ = FX + G W b Z = HX + V
where
F = ( ω i e n × ) 0 3 × 3 C b n 0 3 × 3 ( g n × ) 0 3 × 3 0 3 × 3 C b n 0 6 × 12
G = C b n 0 3 × 3 0 3 × 3 C b n 0 6 × 6
H = 0 3 × 3 I 3 × 3 0 3 × 6
According to the designed two-position calibration scheme, the actual system is time-varying system. PWCS method and SVD method are both employed for the two-position calibration scheme. The rank of this observability matrix is 7 [26,27]. Five states E , N , ε E , ε N and ε U are considered unobservable. In order to improve the observability, two-position calibration is needed. This is equivalent to changing the C b n of the SINS. Furthermore, changing the SINS error equation from a stationary system to a time-varying system, which is beneficial to improve the observability of the IMU biases. The scale factor errors of the three gyros and accelerometers are not observable during the process of two-position calibration. Therefore, we do not consider the scale factor errors in Equation (7).
Using the piece-wise constant system (PWCS) observability analysis method [27], the rank of the observability matrix is 11 except ε U .
The value of the elements of the process noise matrix [29,30,31], which is the directly determined by the value of the elements in the W matrix. As is shown in Equation (12), the covariance of the W matrix is Q. Furthermore, the accuracy of the KF is determined by the reliability of the Q information. W and Q can be written as:
W b = w g x b w g y b w g z b w a x b w a y b w a z b T
E [ W k ] = 0 , E [ W k W j T ] = Q k δ k j E [ V k ] = 0 , E [ V k V j T ] = R k δ k j E [ W k V j T ] = 0
However, KF is an unbiased estimation method based on the assumption of GWN while IMU sensor noise is irregular. In order to obtain the optimal solution of IMU biases, this paper presents a novel method for the calibration of IMU biases utilizing the KF-based AdaGrad algorithm in Section 4.

3. KF-Based AdaGrad Algorithm

3.1. Gradient Descent Algorithm

Gradient descent is an iterative algorithm to minimize an objective function. If the multi-variable function F ( x ) is defined and differentiable. Given an initial point, and then follow the negative of the gradient of the function at every iteration. When the point moves to a critical point where the point does not change anymore (or change a value that approaches zero), it has reached the desired local minimum. The basic algorithm is written as follow:
x n + 1 = x n γ n F ( x n )
where x is the variable vector and γ is the step size.
However, setting the step size of gradient descent is a key issue. An inappropriate step size may cause the function F ( x ) easily trapped in saddle points. In this paper, the sampling rate of the IMU is 200 Hz. Therefore the sampling time is 0.005 ms. In order to ensure that there are no large values at the beginning. The step size we set is 0.005 at the beginning.
In order to solve this problem, we utilized two methods: line search and adaptive subgradient methods (AdaGrad).

3.2. Line Search

Line search is an approach is to adapt the step size at every iteration. The line search will calculate the descent direction p k and the step size α k to move in this direction. The following condition must be satisfied: p k T F k < 0 so that the function F ( x ) can be guaranteed to fall along this direction. Furthermore, the search direction can be written as: p k = B k 1 F k . The step size α k should minimize the following function:
ϕ ( α ) = F ( x k + α p k )
However, it is difficult to obtain the α that minimizes the above equation, and the amount of calculation is relatively large. The commonly used method is to obtain a larger step size as much as possible with an acceptable amount of calculation, in order to reduce the value of ϕ ( α ) as much as possible. The general line search method consists of the following two steps:
  • Bracketing: Finding a range containing ideal steps.
  • Dichotomy or Interpolation: Using the dichotomy or interpolation to find the step size in this interval.
The KF-based AdaGrad algorithm is very computationally intensive. Even though the above method can reduce a lot of calculations, a faster step-size adaptive approach is needed. Thus, we utilized AdaGrad to solve this problem.

3.3. Adaptive Subgradient Methods (AdaGrad)

The basic idea of AdaGrad is to use different step sizes at every iteration. The step size is large at the beginning for rapid gradient descent. As the optimization process progresses, the step size is reduced for the gradient that has fallen significantly, and the larger step size is maintained for the gradient that has not decreased so much.
For the basic Gradient descent, the vectorized algorithm can be written as:
x k + 1 = x k η F ( x k )
AdaGrad multiplies the step size by a parameter that varies with the number of iterations:
x k + 1 = x k η G k + ε F ( x k ) G k = G k 1 + F ( x k )
where η is a small value to prevent the denominator to be zero.
It is easy to discover that as the algorithm continues to iterate, G k will grow larger, and the step size will grow smaller. The AdaGrad algorithm starts with the convergence of high speed and ends with a small step size.
Since we proposed a KF-based AdaGrad numerical cost function F ( x ) , the AdaGrad algorithm needs to be discretized. The Algorithm flowchart is shown in Figure 1.
Given x k as an initial value and then enters the loop. When the gradient value g k is close to zero (this paper selects 10e-8 as the critical value). The function jumps out of the loop and the output is x k . In this paper, x k = ε x ε y ε z x y z T , where Q k is the process Noise Covariance Matrix. F ( x k ) is the KF-based numerical function, it is the function which consists of two database and multiple iterations of one KF, we will derive it in the next subsection.
The psudocode is listed in the Algorithm 1 and is shown as follows:
Algorithm 1: AdaGrad algorithm.
Input: The state vector before AdaGrad algorithm.
Output: The estimated state vector. Initialization:
1: x 0 = [ ε x ε y ε z x y z ] T , k = 0 , G 0 = 0 , g k = 0
2: repeat:
Calculate g k :
3: G k + ε η 1 [ F ( x k + η G k + ε ) F ( x k ) ]
Update G k :
4: G k = G k 1 + g k
Update x k
5: x k = x k 1 η G k + ε g k
6: until  g k < 1 e 8

3.4. KF-Based AdaGrad Calibration Algorithm

AdaGrad is a good method to obtain the minimum value of a function. Setting the IMU biases accurately could improve the accuracy of SINS. In order to obtain the optimal solution of IMU biases, we derives a numerical data function F ( x k ) . As F ( x k ) reaches its minimum value, the IMU reaches its biases optimal solution.
In practical utilization, the effective compensation method of IMU biases is conducted as the following steps:
  • SINS (contains IMU and navigation micro-computer) stiffly fixed on a static platform, power up and start navigation.
  • Since the real velocity is 0 under the static platform condition, the pure inertial navigation output velocity is the velocity error. According to the principle of inertial navigation, the velocity error curve will show the form of Schuler oscillation.
  • In the oscillation process of the velocity error curve, the velocity error and positioning error shows the effect of calibration.
As is shown in Algorithm 1, the estimation of x k can be written as:
x k = x k 1 η G k + ε g k
In summary, if the minimum RMSE of the position error can be obtained, and then the bias compensation effect reaches its optimal. Utilizing a two-position calibration algorithm, IMU biases can be obtained when the process noise matrix is determined. We have derived the KF-based AdaGrad numerical function F ( x k ) and show the diagram of the numerical function in Figure 2. The pseudocode of the KF-based numerical function is listed in Algorithm 2 and is shown as follows.
As is shown in Figure 2, the entire KF-based numerical function F ( x k ) can be divided into two major processes: (1) two-position calibration process and (2) SINS navigation process. A detailed explanation of these two processes is as follows:
  • A two-position calibration process: based on the calibration database (contains n 1 sets of data), ω ib ( m ) b and f ib ( m ) b can be used for SINS algorithm. According to the theory of Section 3, set IMU biases and using KF to estimate attitude, velocity and position. During every iteration, intermediate variables ε k ( m ) and k ( m ) are used as feedback to correct the data retrieved from the database (calibration database) during the next round of iterations. When m = n 1 , the data in the database (calibration database) has been calculated. Then this part can obtain outputs ε k and k .
  • SINS navigation process: based on the SINS static data base (contains n2 sets of data), ω ib ( j ) b and f ib ( j ) b can be used for SINS algorithm. Utilizing Equation (17) to calculate the square of position error:
    RMS E k = δ Pos k ( n 2 ) / n 2
    When j = n 2 , the process of inertial navigation comes to an end.
After the above process, the numerical function output RMS E k can be obtained by the input x k . Correspondingly we have derived the KF-based numerical function F ( x ) . Bring F ( x ) into the algorithm flow chart shown in Figure 1. Let x k = ε x ε y ε z x y z T , where x k is the IMU biases vector value. F ( x k ) . Afterwards, the minimum RMS E k can be obtained by the AdaGrad algorithm, and the x k is the optimal value.
Algorithm 2: KF-based numerical function.
Input: state vector x k = [ ε x ε y ε z x y z ] T
Output: position root mean square error RMSE k
1. loop 1 (Two position calibration process):
SINS algorithm:
2. C bk n = C bk 1 n ( I + T s ω nb b × )
3. a k , k 1 n = C bk 1 n f sfk b ( 2 ω iek 1 n + ω enk 1 n ) × v k 1 n + g n
4. v k n = v k n + T s a k , k 1 n
5. Z k = v k n 0
Kalman filtering:
6. X ^ k / k 1 = Φ k / k 1 X ^ k 1
7. P k / k 1 = Φ k / k 1 P k 1 Φ k / k 1 T + Γ k 1 Q k 1 Γ k 1 T
8. K k = P k / k 1 H k T ( H k P k / k 1 H k T + R k ) 1
9. P k = ( I K k H k ) P k / k 1
10. until calibration data base is used up.
return  x k end loop 1
11. input x k into loop 2.
12. loop 2 (SINS navigation process):
SINS navigation process:
13. C bk n = C bk 1 n ( I + T s ω nb b × )
14. a k , k 1 n = C bk 1 n f sfk b ( 2 ω iek 1 n + ω enk 1 n ) × v k 1 n + g n
15. v k n = v k n + T s a k , k 1 n
16. L k = L k 1 + T s v ˜ Nk 1 n R M + h k 1
λ k = λ k 1 + T s v ˜ Ek 1 n secL k 1 R N + h k 1
h k = h k 1 + T s v ˜ Uk 1 n
17. calculate δ po s k
18. until SINS static data base is used up
return  RMSE k
end loop 2

4. Analysis of Experimental Tests

For the purpose of verifying the feasibility and evaluating the calibration accuracy of the KF-based AdaGrad algorithm. Both turntable rotation tests and field tests are performed with the KF-based AdaGrad algorithm. The rotation tests were carried out on the three-axis turntable. The sampling rate of the SINS is 4000 Hz, and the ring laser gyros are with an accuracy of 0.01 / h (1 σ ) and accelerometers are with 50 g (1 σ ).
The gyro signal (lasting 8 h) analysis utilizing Allan variance is shown in Figure 3.
As is shown in Figure 3, the three elements of Allan variance are quantization noise, angle random walk and bias instability. While KF is based on the hypothesis of GWN, the gyros we use usually have irregular noise.
For the purpose of analyzing the influence of the IMU biases on navigation errors. We list two tables to represent the error propagation including long-term navigation and short-term navigation. The long-term navigation error propagation is shown in Table 1 and the short-term navigation error is shown in Table 2.
As are shown in Table 1 and Table 2, the IMU biases would cause navigation error both in long-term navigation and short-term navigation. In order to verify the calibration effect, we need to carry out long-term navigation and short-term navigation experiments.
Through the comparison between Table 1 and Table 2. We can find out that in the short-term navigation, the gyro bias of the upward gyro does not affect the navigation accuracy in static condition. The position error of the long-term navigation process is affected by many error sources. Therefore, it is difficult to decompose the influence of IMU errors using conventional decoupling method.
Three car-mounted field tests were carried out in Xi’an, Shaanxi province and Chongqing to verify the effectiveness of the calibration methods. The car-mounted field tests in Xi’an are short-term experiments and the test in Chongqing is a long-term experiment. We utilized a DPGS with an accuracy of 3 cm as the reference position information. Compared with line search and two-position methods, the experimental results can prove the feasibility of the calibration method [32,33,34,35].

4.1. Static Tests

According to Section 3, this paper introduces two improved methods for gradient descent algorithm. In order to obtain the minimum value of the KF-based numerical function F ( x k ) in a stable way, an algorithm performance analysis among these algorithms is needed.
In this subsection, static tests were utilized to obtain F ( x k ) . As is shown in Figure 4, SINS is stiffly fixed on a three-axis turntable. After confirming the fixation, calibration is started. The recorded data were saved as a calibration database and SINS static database. The flowchart of AdaGrad and the diagram of KF-based numerical function are also displayed in this paper. Static tests and calibration processes were carried out in a three-axis turntable.
The raw data including three gyros and three accelerometers from the experiment was collected by data collection computer. The collected data was utilized as the calibration database. Afterward, the static tests were carried out for 1 h, the IMU raw data was collected as SINS static database to build the numerical function F ( x k ) . We utilized the numerical function to compare line search and AdaGrad. Set x k equals zero vector as the initial value and RMS E k as the function result. The number of iterations was set as 5000 because too many iterations are too much burden for a normal experiment computer. Results are shown in Table 3.
The IMU biases estimation curves utilizing AdaGrad are shown in Figure 5 and Figure 6.
The self-rotation angular rate we set in the static test is 20 /s. In Figure 5, we can see the gyro biases converge slowly. Gyro biases converge after about 4000 iterations. In contrast, the accelerometer biases converge very fast after about 1000 iterations which are shown in Figure 6.
The static test (lasts 1 h) experimental results are shown in Figure 7, Figure 8, Figure 9 and Figure 10.
We do not compare with the gradient descent method because in Table 3, the gradient descent method clearly entered into a locally optimal solution. Experimental results show that the convergence speed of line search is slower than AdaGrad. Due to the limit of iterations, the accuracy of the line search is lower than the AdaGrad method. The velocity and position errors show that the two-position calibration method is more accurate than the line search. AdaGrad has faster convergence rate and higher accuracy in static tests. In order to fully verify the calibration results in dynamic environment, 8 h static tests were carried out. The experimental results were shown in Figure 11, Figure 12, Figure 13 and Figure 14.
The velocity and position errors show that KF-based AdaGrad calibration method is more accurate than the line search and the two-position calibration method. The 8 h test shows the peak value of each north and east position errors. AdaGrad has higher accuracy in static test.

4.2. Field Tests

The static test only considers the angular motion. In order to fully verify the proposed method in this paper, we need to consider the case with linear motion. The field tests were conducted in this subsection. As is shown in Figure 15, the SINS and the DGPS are equipped on the experimental car. The scale factors and installation angles were accurately calibrated before the field tests were carried out.
Three field tests were carried out and the corresponding trajectories are shown in Figure 16. Table 4 shows the field test arrangements. During the maneuvering process of the vehicle, we utilize the SINS/GPS integrated algorithm to provide precise velocity and position information as the velocity and position reference. In order to compare the two-position algorithm, line search and AdaGrad, we utilize the same trajectories to compare the three algorithms.
Field test 1 is a straight-line road test and field test 2 contained several turns and one sharp turn. The test vehicle had no obstruction on the test roads thus the GPS signal is consistent and effective thus the SINS/DGPS integrated algorithm can provide stable position information and velocity information.
The results of field test 1 are shown in Figure 17, Figure 18, Figure 19 and Figure 20.
We list the RMS and peak value of velocity and position error of test 1 in Table 5 and Table 6.
In field test 1, Figure 17 and Figure 18 shows that the east and north velocity errors of which the utilized KF-based AdaGrad are the smallest among the three methods. The two-position method is more accurate than the line search method. The position error is similar to the velocity error. Figure 19 and Figure 20 show that the east and north position error which utilized the two-position method smaller than the error of which utilized line search. The method utilized KF-based AdaGrad has the smallest position error.
The results of field test 2 are shown in Figure 21, Figure 22, Figure 23 and Figure 24.
In field test 2, Figure 21 and Figure 22 show that the east and north velocity error utilizing KF-based AdaGrad is the smallest among the three methods. The line search method is more accurate than the two-position method. The position errors are shown in Figure 23 and Figure 24, the east and north position error which utilized KF-based AdaGrad are obviously smaller than the other two methods. The position error of which utilized line search is smaller than the error of which utilized two-position method. The results of RMS and maximum values of velocity and position error are shown in Table 7 and Table 8.
For the purpose of fully verifying the effectiveness of the KF-based AdaGrad calibration method in the long-term navigation process, an 8 h field test was carried out in Chongqing to excite all three parts with different periods and amplitude. Due to the unstable GPS signal in field test 3, we only compare position errors because of the low accuracy of GPS velocity. The 8 h position error curve can fully verify the estimated accuracy of IMU biases.
The results of field test 3 are shown in Figure 25 and Figure 26.
In field test 3, the east and north position errors that utilized KF-based AdaGrad are smaller than the other two methods. Under long maneuvering condition, the line search and two-position calibration method have similar estimation accuracy.
The peak value of Figure 25 and Figure 26 is easy to figure out, we need to analyze the RMS of the position error. Table 9 shows the RMS of position errors in field test 3.
The results differences between field test 1 and field test 2 are the line search and two-position method because test 2 is more dynamic than test 1. Navigation errors due to IMU biases can be excited out more easily so the convergence rate of line search is faster in test 2. The AdaGrad has the highest accuracy among the three methods. In conclusion, under the severe maneuvering condition line search has higher accuracy than two-position method while under low maneuvering conditions the traditional method two-position is more accurate than line search. Both static tests and car-mounted tests show the proposed method can achieve a more accurate estimated velocity and position than the other two methods, which denotes that the KF-based AdaGrad can estimate the IMU biases more accurately. The convergence rate and accuracy of line search are greatly affected by the external dynamic condition. Thus, the line search is not fittable in IMU biases calibration.

5. Conclusions

The characteristics of IMU are usually difficult to determine. The IMU biases severely affecting navigation accuracy. In order to solve this problem, in this paper, we propose a KF-based AdaGrad calibration algorithm. We derive a KF-based AdaGrad numerical function and utilized AdaGrad method to solve the problem of setting step size. The recorded data were saved as the calibration database and the SINS static database. The flowchart of AdaGrad and the diagram of KF-based numerical function are also displayed in this paper. Static tests and calibration process were carried out in a three-axis turntable and three field tests were carried out in Xi’an. Experimental results show that the proposed calibration method can effectively improve the accuracy of estimation of IMU biases in both static and dynamic conditions.

Author Contributions

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

Funding

This work was supported by the National Natural Science Foundation of China (61803015).

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Huang, Y.; Zhang, Y. A new process uncertainty robust student’s t based Kalman filter for SINS/GPS integration. IEEE Access 2017, 5, 14391–14404. [Google Scholar] [CrossRef]
  2. Qi, N. Research on initial alignment of SINS for marching vehicle. In Proceedings of the 2013 Third International Conference on Instrumentation, Measurement, Computer, Communication and Control, Shenyang, China, 21–23 September 2013; pp. 465–468. [Google Scholar]
  3. Tedaldi, D.; Pretto, A.; Menegatti, E. A robust and easy to implement method for IMU calibration without external equipments. In Proceedings of the 2014 IEEE International Conference on Robotics and Automation (ICRA), Hong Kong, China, 31 May–7 June 2014; pp. 3042–3049. [Google Scholar]
  4. Fong, W.T.; Ong, S.K.; Nee, A.Y.C. Methods for in-field user calibration of an inertial measurement unit without external equipment. Meas. Sci. Technol. 2008, 19, 085202. [Google Scholar] [CrossRef]
  5. Wu, Y.; Hu, D.; Wu, M.; Hu, X.; Wu, T. Observability analysis of rotation estimation by fusing inertial and line-based visual information: A revisit. Automatica 2006, 42, 1809–1812. [Google Scholar] [CrossRef]
  6. Li, J.; Fang, J.; Du, M. Error analysis and gyro-bias calibration of analytic coarse alignment for airborne POS. IEEE Trans. Instrum. Meas. 2012, 61, 3058–3064. [Google Scholar]
  7. Han, X.; Hu, S.M.; Luo, H. A new method for bias calibration of laser gyros using a single-axis turning table. Optik 2013, 124, 5588–5590. [Google Scholar] [CrossRef]
  8. Zheng, Z.; Han, S.; Zheng, K. An eight-position self-calibration method for a dual-axis rotational Inertial Navigation System. Sens. Actuators A Phys. 2015, 232, 39–48. [Google Scholar] [CrossRef]
  9. Wang, H.; Deng, Z.; Feng, B.; Ma, H.; Xia, Y. An adaptive Kalman filter estimating process noise covariance. Neurocomputing 2017, 223, 12–17. [Google Scholar] [CrossRef]
  10. Gao, Z.; Mu, D.; Gao, S.; Zhong, Y.; Gu, C. Adaptive unscented Kalman filter based on maximum posterior and random weighting. Aerosp. Sci. Technol. 2017, 71, 12–24. [Google Scholar] [CrossRef]
  11. Jurman, D.; Jankovec, M.; Kamnik, R.; Topič, M. Calibration and data fusion solution for the miniature attitude and heading reference system. Sens. Actuators A Phys. 2007, 138, 411–420. [Google Scholar] [CrossRef]
  12. Munguia, R.; Grau, A. Attitude and Heading System based on EKF total state configuration. In Proceedings of the 2011 IEEE International Symposium on Industrial Electronics, Gdansk, Poland, 27–30 June 2011; pp. 2147–2152. [Google Scholar]
  13. Li, W.; Wang, J. Effective adaptive kalman filter for MEMS-IMU/magnetometers integrated attitude and heading reference systems. J. Navig. 2013, 66, 99–113. [Google Scholar] [CrossRef] [Green Version]
  14. Hyyti, H.; Visala, A. A DCM Based Attitude Estimation Algorithm for Low-Cost MEMS IMUs. Int. J. Navig. Obs. 2015, 2015, 503814. [Google Scholar] [CrossRef] [Green Version]
  15. Wang, Q.; Gao, C.; Wei, G.; Long, X. Online calibration technique for LDV in SINS/LDV integrated navigation systems. Sens. Command. Control. Commun. Intell. Technol. Homel. Secur. Defense Law Enforc. Appl. XVI 2017, 10184, 1018415. [Google Scholar]
  16. Li, K.; Chen, Y.; Wang, L. Online self-calibration research of single-axis rotational inertial navigation system. Meas. J. Int. Meas. Confed. 2018, 129, 633–641. [Google Scholar] [CrossRef]
  17. Huang, H.; Zhou, J.; Zhang, J.; Yang, Y.; Song, R.; Chen, J.; Zhang, J. Attitude Estimation Fusing Quasi-Newton and Cubature Kalman Filtering for Inertial Navigation System Aided with Magnetic Sensors. IEEE Access 2018, 6, 28755–28767. [Google Scholar] [CrossRef]
  18. He, H.; Zhu, B.; Zha, F. Particle Swarm Optimization-Based Gyro Drift Estimation Method for Inertial Navigation System. IEEE Access 2019, 7, 55788–55796. [Google Scholar] [CrossRef]
  19. Jinwu, T.; Xiaosu, X.; Tao, Z.; Liang, Z.; Yao, L. Study on Installation Error Analysis and Calibration of Acoustic Transceiver Array Based on SINS/USBL Integrated System. IEEE Access 2018, 6, 66923–66939. [Google Scholar] [CrossRef]
  20. Rajamani, M.R.; Rawlings, J.B. Estimation of the disturbance structure from data using semidefinite programming and optimal weighting. Automatica 2009, 45, 142–148. [Google Scholar] [CrossRef]
  21. Sheimy, N.E.I.; Hou, H.; Niu, X. Analysis and Modeling of Inertial Sensors Using AV. IEEE Trans. Instrum. Meas. 2008, 56–57. [Google Scholar]
  22. Ford, J.J.; Evans, M.E. On-line estimation of Allan variance parameters. J. Guid. Control. Dyn. 2000, 23, 980–987. [Google Scholar] [CrossRef]
  23. Yu, H.; Wu, W.; Wu, M.; Feng, G.; Hao, M. Systematic angle random walk estimation of the constant rate biased ring laser Gyro. Sensors 2013, 13, 2750–2762. [Google Scholar] [CrossRef] [Green Version]
  24. Axelsson, H.; Wardi, Y.; Egerstedt, M.; Verriest, E.I. Gradient descent approach to optimal mode scheduling in hybrid dynamical systems. J. Optim. Theory Appl. 2008, 136, 167–186. [Google Scholar] [CrossRef]
  25. Fliege, J.; Svaiter, B.F. Steepest descent methods for multicriteria optimization. Math. Methods Oper. Res. 2000, 51, 479–494. [Google Scholar] [CrossRef]
  26. Wang, M.; Fang, E.X.; Liu, H. Stochastic compositional gradient descent: Algorithms for minimizing compositions of expected-value functions. Math. Program. 2017, 161, 419–449. [Google Scholar] [CrossRef] [Green Version]
  27. Luo, B.; Liu, D.; Huang, T.; Yang, X.; Ma, H. Multi-step heuristic dynamic programming for optimal control of nonlinear discrete-time systems. Inf. Sci. 2017, 411, 66–837. [Google Scholar] [CrossRef]
  28. Zhang, H.; Niu, Y.; Lu, J.; Yang, Y. System-level calibration for the star sensor installation error in the stellar-inertial navigation system on a swaying base. IEEE Access 2018, 6, 47288–47294. [Google Scholar] [CrossRef]
  29. Zhang, J.; Li, J.; Huang, Y.; Hu, C.; Feng, K.; Wei, X. Analysis and Compensation of Installation Errors for Rotating Semi-Strapdown Inertial Navigation System. IEEE Access 2019, 7, 101019–101030. [Google Scholar] [CrossRef]
  30. Chang, L.; Qin, F.; Jiang, S. Strapdown Inertial Navigation System Initial Alignment Based on Modified Process Model. IEEE Sens. J. 2019, 19, 6381–6391. [Google Scholar] [CrossRef]
  31. Gao, P.; Li, K.; Wang, L.; Gao, J. A Self-Calibration Method for Non-Orthogonal Angles of Gimbals in Tri-Axis Rotational Inertial Navigation System. IEEE Sens. J. 2016, 16, 8998–9005. [Google Scholar] [CrossRef]
  32. Lu, J.; Liu, X.; Zhang, R. Calibration, alignment, and dynamic tilt maintenance method based on vehicular hybrid measurement unit. IEEE Sens. J. 2019, 19, 7243–7253. [Google Scholar] [CrossRef]
  33. 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. 2021, 70, 1–17. [Google Scholar] [CrossRef]
  34. Xu, X.; Gui, J.; Sun, Y.; Yao, Y.; Zhang, T. A Robust In-Motion Alignment Method with Inertial Sensors and Doppler Velocity Log. IEEE Trans. Instrum. Meas. 2021, 70, 1–13. [Google Scholar] [CrossRef]
  35. Xu, X.; Sun, Y.; Gui, J.; Yao, Y.; Zhang, T. A Fast Robust In-Motion Alignment Method for SINS with DVL Aided. IEEE Trans. Veh. Technol. 2020, 69, 3816–3827. [Google Scholar] [CrossRef]
Figure 1. Flowchart of AdaGrad.
Figure 1. Flowchart of AdaGrad.
Sensors 21 05055 g001
Figure 2. KF-based numerical function diagram.
Figure 2. KF-based numerical function diagram.
Sensors 21 05055 g002
Figure 3. Gyroscope signal analysis.
Figure 3. Gyroscope signal analysis.
Sensors 21 05055 g003
Figure 4. Calibration facilities.
Figure 4. Calibration facilities.
Sensors 21 05055 g004
Figure 5. Gyro bias estimation.
Figure 5. Gyro bias estimation.
Sensors 21 05055 g005
Figure 6. Accelerometer bias estimation.
Figure 6. Accelerometer bias estimation.
Sensors 21 05055 g006
Figure 7. East velocity error.
Figure 7. East velocity error.
Sensors 21 05055 g007
Figure 8. North velocity error.
Figure 8. North velocity error.
Sensors 21 05055 g008
Figure 9. East position error.
Figure 9. East position error.
Sensors 21 05055 g009
Figure 10. North position error.
Figure 10. North position error.
Sensors 21 05055 g010
Figure 11. East velocity error.
Figure 11. East velocity error.
Sensors 21 05055 g011
Figure 12. North velocity error.
Figure 12. North velocity error.
Sensors 21 05055 g012
Figure 13. East position error.
Figure 13. East position error.
Sensors 21 05055 g013
Figure 14. North position error.
Figure 14. North position error.
Sensors 21 05055 g014
Figure 15. Experimental car and equipment.
Figure 15. Experimental car and equipment.
Sensors 21 05055 g015
Figure 16. Field test trajectories.
Figure 16. Field test trajectories.
Sensors 21 05055 g016
Figure 17. East velocity error in test 1.
Figure 17. East velocity error in test 1.
Sensors 21 05055 g017
Figure 18. North velocity error in test 1.
Figure 18. North velocity error in test 1.
Sensors 21 05055 g018
Figure 19. East position error in test 1.
Figure 19. East position error in test 1.
Sensors 21 05055 g019
Figure 20. North position error in test 1.
Figure 20. North position error in test 1.
Sensors 21 05055 g020
Figure 21. East velocity error in test 2.
Figure 21. East velocity error in test 2.
Sensors 21 05055 g021
Figure 22. North velocity error in test 2.
Figure 22. North velocity error in test 2.
Sensors 21 05055 g022
Figure 23. East position error in test 2.
Figure 23. East position error in test 2.
Sensors 21 05055 g023
Figure 24. North position error in test 2.
Figure 24. North position error in test 2.
Sensors 21 05055 g024
Figure 25. East position error in test 3.
Figure 25. East position error in test 3.
Sensors 21 05055 g025
Figure 26. North position error in test 3.
Figure 26. North position error in test 3.
Sensors 21 05055 g026
Table 1. Long-term navigation error propagation.
Table 1. Long-term navigation error propagation.
- E N ε E ε N ε U
δ L E g c s s f N g ( 1 c s c f ) ε E ( s e ω ie s s c f ω s ) ε N [ s L ω ie ( 1 c e ) s s s f ω s ] ε U ω ie c L ( 1 c e )
δ λ E g e L ( 1 c s c f ) N g e L c s s f ε E e L [ s L ω ie ( 1 c e ) s s s f ω s ] ε N ( c L t + s L t L ω ie s e e L ω s s s c f ) ε U s L ( t 1 ω ie s e )
Table 2. Short-term navigation error propagation.
Table 2. Short-term navigation error propagation.
- E N ε E ε N ε U
δ L 0 U t 2 2 R ε E g t 3 6 R 00
δ λ E t 2 2 R c L 00 ε N g t 3 6 R c L 0
Table 3. Position RMSE results.
Table 3. Position RMSE results.
IterationsGradient DescentLine Search AdaGrad
0214.2765 m214.2765 m214.2765 m
10150.2434 m145.7865 m134.9809 m
100135.7649 m108.9873 m90.091 m
200133.2765 m87.9087 m78.9007 m
1000132.2653 m76.9876 m22.1107 m
2000132.2653 m72.8974 m22.1098 m
5000132.2652 m70.7477 m22.1097 m
Table 4. The arrangements of the field tests.
Table 4. The arrangements of the field tests.
Field Test NumberStatic Stage TimeManeuvering Stage TimeTotal DistanceMaximum Speed
Trajectory 1300 s651 s3560.52 m14.72 m/s
Trajectory 2300 s768 s5870.08 m16.65 m/s
Trajectory 3900 s8 h267.98 km30.65 m/s
Table 5. RMS of velocity and position errors.
Table 5. RMS of velocity and position errors.
-Line SearchTwo-PositionKF-Based AdaGrad
δ v E 0.005982 m/s0.002265 m/s0.001276 m/s
δ v N 0.01055 m/s0.008769 m/s0.005989 m/s
δ p E 26.6124 m11.4123 m5.1241 m
δ p N 32.9655 m27.5421 m21.4231 m
Table 6. Maximum errors of velocity and position.
Table 6. Maximum errors of velocity and position.
-Line SearchTwo-PositionKF-Based AdaGrad
δ v E −0.0389 m/s−0.0178 m/s0.0132 m/s
δ v N −0.0613 m/s−0.0489 m/s−0.0311 m/s
δ p E −71.6436 m−31.2141 m8.7231 m
δ p N −108.0921 m−81.9215 m−58.9249 m
Table 7. RMS of velocity and position errors.
Table 7. RMS of velocity and position errors.
-Line SearchTwo-PositionKF-Based AdaGrad
δ v E 0.03982 m/s0.04123 m/s0.01076 m/s
δ v N 0.01255 m/s0.01476 m/s0.010989 m/s
δ p E 35.2412 m38.5124 m11.5613 m
δ p N 16.6278 m21.0138 m13.4163 m
Table 8. Maximum errors of velocity and position.
Table 8. Maximum errors of velocity and position.
-Line SearchTwo-PositionKF-Based AdaGrad
δ v E −0.0613 m/s−0.0809 m/s0.0169 m/s
δ v N −0.0378 m/s−0.0276 m/s0.0165 m/s
δ p E −127.2532 m−97.5235 m23.9873 m
δ p N −33.8349 m−53.6821 m31.3452 m
Table 9. RMS of position errors.
Table 9. RMS of position errors.
-Line SearchTwo-PositionKF-Based AdaGrad
δ p E 1789.5758 m1745.7639 m1714.8437 m
δ p N 987.0832 m956.8051 m914.5033 m
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Wen, Z.; Yang, G.; Cai, Q. An Improved Calibration Method for the IMU Biases Utilizing KF-Based AdaGrad Algorithm. Sensors 2021, 21, 5055. https://doi.org/10.3390/s21155055

AMA Style

Wen Z, Yang G, Cai Q. An Improved Calibration Method for the IMU Biases Utilizing KF-Based AdaGrad Algorithm. Sensors. 2021; 21(15):5055. https://doi.org/10.3390/s21155055

Chicago/Turabian Style

Wen, Zeyang, Gongliu Yang, and Qingzhong Cai. 2021. "An Improved Calibration Method for the IMU Biases Utilizing KF-Based AdaGrad Algorithm" Sensors 21, no. 15: 5055. https://doi.org/10.3390/s21155055

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