This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).
The integration of the Inertial Navigation System (INS) and the Global Positioning System (GPS) is widely applied to seamlessly determine the timevariable position and orientation parameters of a system for navigation and mobile mapping applications. For optimal data fusion, the Kalman filter (KF) is often used for realtime applications. Backward smoothing is considered an optimal postprocessing procedure. However, in current INS/GPS integration schemes, the KF and smoothing techniques still have some limitations. This article reviews the principles and analyzes the limitations of these estimators. In addition, an online smoothing method that overcomes the limitations of previous algorithms is proposed. For verification, an INS/GPS integrated architecture is implemented using a lowcost microelectromechanical systems inertial measurement unit and a singlefrequency GPS receiver. GPS signal outages are included in the testing trajectories to evaluate the effectiveness of the proposed method in comparison to conventional schemes.
For navigation applications and the Mobile Mapping System (MMS), the integration of the Inertial Navigation System (INS) using an Inertial Measurement Unit (IMU) and the Global Positioning System (GPS) is widely applied for determining state vectors, which include the position, velocity, and orientation of the mobile platform. The advantages of INS are autonomous operation, high measurement sampling rate, and shortterm accuracy. However, its navigation accuracy degrades rapidly with time if no external aiding source is available. This is particularly true when a lowcost IMU is applied. In contrast, GPS is able to provide longterm position and velocity accurately. However, a low sampling rate, environmental dependence, and the lack in orientation determination with single antenna are the primary limitations for navigation orientedapplications with GPS alone. The integration of INS and GPS is an optimal solution that utilizes the advantages of each system and overcome in limitations.
The Kalman filter (KF) [
To overcome the limitations of filtering techniques, smoothing algorithms have been effectively applied for integrated navigation systems when postprocessing is permitted. In principle, smoothing estimates the states at time
In general, the estimation accuracy of smoothing is superior to that of filtering. However, most smoothing techniques have been applied for postprocessing applications since the backward process always starts from the end of the forward filtering mission. This limits smoothing in realtime applications. The present study utilizes smoothing to online update the states of the system for nearrealtime applications.
The KF is considered as a special form of Bayesian estimation [
In the KF, Gaussian distribution is assumed for the system and measurement noise with zero mean and covariances
With this assumption, the prior and posterior probability density function (PDF) of state vector given aiding measurements,
Derived in terms of the minimum mean square error of the state vector, KF calculation steps are:
Prediction:
Updating:
Although well known as an optimal linear estimator, the KF has some limitations for INS/GPS integration. First, KF can only be applied with linear models and the assumption of Gaussiandistribution noise. However, in INS/GPS integration applications, the system and measurement models are originally nonlinear and the noise during operation may be nonGaussian. This is particular true when a lowcost MEMS IMU is used with highly dynamic movement. These restrictions were investigated in [
Second, in a generic KF, covariance matrices Q and R, which represent the behavior of the system and measurement noise, respectively, must be carefully premodeled. Insufficiently known or wrong
In addition, since the sampling rate of the INS is higher than that of GPS, the states of the system are updated for the estimates only when GPS measurements are available. Otherwise, the predicted estimates of KF are used. This situation leads to large positional and attitude errors when using a MEMSbased INS/GPS system during long periods of GPS signal outages, as described in [
According to [
The RTS smoother [
By resolving the criteria in
The implementation of the RTS smoother includes two main stages of estimation: the forward direction estimation using standard KF and the backward direction using
The proposed online smoothing is implemented during operation time. The algorithm overcomes the disadvantages of offline smoothing. The proposed online smoothing is derived from the RTS smoother algorithm. Instead of waiting until the end of the data set, the smoothing process is activated whenever updating measurements are found. In the KF, the execution time for prediction and filtering is shorter than the time of each epoch (the time between two consecutive IMU samples), meaning that in each epoch, the processing unit waits for the incoming data of the next epoch from an IMU after implementing the KF as shown in
As shown in
In realtime applications, the time required for online smoothing must be considered to keep track of the continuity of the incoming data from the sensor. The time required for online smoothing is closely related to the number of smoothing steps. It thus depends on the sampling rate of the system sensor and the length of time between consecutive measurement updates.
Let
Let
To implement online smoothing without missing incoming data from the system sensor of the next epoch, the following criteria must be kept:
Substituting
From
In practice, the time for each estimation step depend on the configuration of the processor, the applied programming language and the optimization of algorithms. In a test with a program written in C++ language, tested on a Core 2 duo 1.86 GHz CPU, the time for each filtering step is 0.3 ms and for each smoothing step is 0.5 ms. If an IMU with 50 Hz of output rate is applied, the output rate of online smoothing will be about 40 Hz. In practical, 25 Hz of output rate and window size
A discontinuity between estimating epochs may arise since the output rate is not the same as the sampling rare. In this case, the prediction states between discontinuous epochs
As mentioned in the previous section, to keep track of the incoming data from sensors, the output rate determined by
In addition, the relationship between navigation accuracy and window size in online smoothing algorithm is given in more details. In rationale, the RTS smoother is derived based on the maximum likelihood of the state vectors given aiding measurement vectors as expressed in
It can be seen that
It means that the greater the smoothing window size applied, the better the obtained estimates become. In the case that the output rate of online smoothing is equal to the sampling rate of the system sensor and the smoothing window size is equal to number of updating steps of all data set, it become the offline RTS smoother. In the online smoothing, if the window size greater than 1, overlap parts of two or more smoothing periods are generated, as show in
The component
From above analysis, choosing an appropriate parameter is application dependent and can be considered as a critical matter for implementing the online smoothing. For applications that require a high output rate, the highest output rate of online smoothing must strictly obey
Two INS/GNSS integrated navigation systems were set up to conduct a field test in this research. The reference system comprised a highend tacticalgrade IMU, SPANLCI (NovAtel). A dualfrequency geodeticgrade GNSS receiver, ProPak V3 (NovAtel). A distance measurement instrument (DMI). The specifications of SPANLCI IMU are shown in
The testing system comprised a lowcost MEMS IMU, MIDGII (Microbotics), with an integrated singlefrequency GPS receiver. The specifications of the testing system are shown in
A tightly coupled (TC) INS/GPS integration scheme with KFbased estimation was implemented in this study. As shown in
Based on the designated scheme, software for processing raw measurements from GPS and the IMU was developed in the C++ programming language. The graphical user interface (GUI) design is illustrated in
In the first test, the testing data sets were collected under various environment scenarios in urban and suburban areas in Kaohsiung, Taiwan. The testing trajectory is shown in
For the testing scenario, three algorithms, namely the KF, offline RTS smoother and, online smoothing based on a forward KF and backward RTS, were implemented. The estimated results of the algorithms, including position and orientation, were compared to the reference data for analysis.
For orientation accuracy, the improvement of smoothing techniques is not as large as that for positional estimates. The estimated orientation of the offline RTS smoother is the best, but only slightly. The performances of online smoothing and the KF are similar overall. The only difference is that during GPS outages, the estimated results of online smoothing are slightly better than those of KF.
The processing time of the three algorithms was also analyzed.
The second test was conducted to analyze the relationship between output rates, window size and estimation accuracy in online smoothing. The data was collected with the same systems applied in the previous test in Tainan, Taiwan. The testing trajectory is shown on
The second test results indicate that if the smoothed solutions are considered as the output solutions, there are only small variations in estimation accuracy with different smoothing output rates. On the other hand, the accuracy of mixed solutions decreases dramatically if output rates decrease. The processing time changes proportionally with the change of smoothing output rates. On the other hand, the estimation accuracy improves when the smoothing window size increases. However, long processing time causes the latency in the case of large window size.
This study developed an online smoothing algorithm to improve the estimation accuracy of positional and orientation parameters of integrated navigation systems utilizing lowcost MEMS inertial sensor in nearrealtime.
The results indicate that the proposed online smoothing outperforms the KF. In terms of positional RMSE, the improvement of online smoothing is about 60% compared to KF. The performance of online smoothing is comparable to that of offline smoothing.
The estimation accuracy and processing time in online smoothing depend on the output data rate and window size accordingly. The optimal parameters for online smoothing are application dependent. For the future works, parallel computing technique should be investigated and applied on online smoothing to improve both output rate and estimation accuracy.
The authors acknowledge the financial support by Taiwan’s Industrial Technology Research Institute and the Research & Development Foundation of National Cheng Kung University.
Process and performance of offline smoothing.
Integrated architecture with KF and offline smoothing.
Proportion of time used for filtering in integrated navigation system. t_{e} is the time of each epoch
Process and performance of online smoothing.
Integrated architecture with KF and online smoothing.
Behavior of online smoothing error with discontinuous estimates.
Window size in online smoothing.
Testing platform.
Tightly coupled scheme.
GUI for of tightly coupled integration scheme.
First test trajectory. GPS signal outages are marked by red circles.
Positional error distributions of KF, online smoothing, and RTS smoother.
Positional error comparison.
Orientation error distributions of KF, online smoothing, and RTS smoother.
Orientation error comparison.
Processing time comparison.
The second test trajectory, red points are GPS updates.
Relationship between smoothing rate and positional error and processing time.
Relationship between smoothing window size and positional error and processing time.
Reference system specifications.
 


Output rate (Hz)  200  Heading (degree)  0.02 
Gyro bias (degree/h)  1.0  Attitude (degree)  0.4  
Gyro scale factor (ppm)  100  Position (m)  0.1–1.5  
Accelerometer bias (mg)  1.0  Velocity (m/s)  0.02  
Accelerometer scale factor (ppm)  250  Altitude (m)  0.08 
Testing system specifications.
 


Output rate (Hz)  50  Heading (degree)  2 
Gyro bias (degree/h)  4.7  Attitude (degree)  0.4  
Gyro scale factor (ppm)  5,000  Position (m)  2–3  
Accelerometer bias (mg)  6.0  Velocity (m/s)  0.2  
Accelerometer scale factor (ppm)  19,700  Altitude (m)  3–5 
Comparison of three estimation strategies in terms of positional error.
 

KF  17.423  3.437  2.462  17.93  
Offline smoothing  2.449  0.688  0.946  2.71  85 
Online smoothing  7.196  2.511  2.063  7.9  56 
Comparison of three estimation strategies in terms of orientation error.
 

KF  0.71  0.77  1.90 
Offline smoothing  0.25  0.34  1.21 
Online smoothing  0.68  0.73  1.82 
Comparison of processing time.
KF  75  
Online smoothing  105  40 
Offline smoothing  265  253 
Relationship between smoothing rate and positional error and processing time.
 

10  4.64  10.51  240  29 
25  4.42  7.22  270  33 
50  4.33  4.33  360  42 
KF  16.19  16.19  215  20 
RTS smoother  1.81  1.81  420  50 
Relationship between smoothing window size and positional error and processing time.
 

1  4.33  360  42 
3  3.80  430  52.5 
5  3.35  490  63.7 
7  3.17  700  91 
KF  16.19  215  20 
RTS smoother  1.81  420  50 