Next Article in Journal
Woody Cover Fractions in African Savannas From Landsat and High-Resolution Imagery
Next Article in Special Issue
Detecting and Repairing Inter-system Bias Jumps with Satellite Clock Preprocessing
Previous Article in Journal
Impact of Satellite and In Situ Data Assimilation on Hydrological Predictions
Previous Article in Special Issue
BDS Satellite-Based Augmentation Service Correction Parameters and Performance Assessment
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Differential Kalman Filter Design for GNSS Open Loop Tracking

1
School of Electronic and Information Engineering, Beihang University, 37 Xueyuan Road, Haidian District, Beijing 100191, China
2
Shaanxi Key Laboratory of Integrated and Intelligent Navigation, Xi’an 710068, China
3
School of Electrical and Electronic Engineering, Nanyang Technological University, 50 Nanyang Avenue, Singapore 639798, Singapore
4
Xi’an Research Institute of Navigation Technology, Xi’an 710068, China
*
Author to whom correspondence should be addressed.
Remote Sens. 2020, 12(5), 812; https://doi.org/10.3390/rs12050812
Submission received: 21 January 2020 / Revised: 24 February 2020 / Accepted: 24 February 2020 / Published: 3 March 2020

Abstract

:
Global navigation satellite system (GNSS) positioning in an urban environment is in need for accurate, reliable and robust positioning. Unfortunately, conventional closed-loop tracking fails to meet the demand. The open loop tracking shows improved robustness, however, the precision is unsatisfactory. We propose a differential Kalman filter for open loop, of which the measurement vector contains the differential values of open loop navigation results between adjacent epochs. The differential Kalman filter makes use of the satellite geometry (i.e., spatial domain) and motion relationship (i.e., temporal domain) to filter frequency and code phase estimations of conventional open loop tracking. The improved performances of this architecture have been analyzed theoretically and demonstrated by road tests in an urban environment. The proposed architecture shows more than 50% accuracy improvement than the conventional open-loop tracking architecture.

Graphical Abstract

1. Introduction

Global navigation satellite system (GNSS) has been widely used over the past several decades, and demand for GNSS receivers to operate in a challenging environment is increasing. The traditional GNSS receivers usually employ 8–12 scalar tracking loops, processing each channel independently. However, the performances of the traditional receiver will deteriorate in low signal-to-noise ratio (SNR) or high dynamic environments, and it will even completely lose lock in the worst case.
To improve the reliability and robustness of scalar tracking loops, some optimization methods are proposed. Curran [1] analyzed design and performance of discrete-time frequency-locked loop (FLL). Unambiguous frequency aided (UFA) phase-locked loop (PLL) was presented to combine frequency and phase tracking together without ambiguity [2]. Optimized carrier tracking loop design for real-time high-dynamics GNSS receivers was introduced [3]. Yang [4,5] introduced a generalized theoretical and optimal framework for PLL and FLL. On the other hand, a Kalman filter (KF) is introduced to scalar tracking loops to substitute conventional filter. Psiaki [6] analyzed the performances of the KF in a weak signal, while Ziedan [7] offered a more comprehensive analysis. Omidi et al. [8] and Gazor et al. [9] analyzed the structure and performance of the differential Kalman filter. Another method to improve position accuracy is differential position. Zhao [10] introduced using KF to estimate ambiguity in RTK under multi-constellation condition, enhancing positioning precision and availability.
A closed-loop architecture with negative feedback could easily lose lock in challenging environments. To improve the robustness, an open loop tracking (OL) [11] that precisely acquires a signal parameter as the tracking result is presented. The feed-forward estimation technique employed by open loop tracking can effectively overcome the limitation of traditional closed-loop sequential architecture [12]. At the same time, the open loop combines acquisition and tracking together, making it possible to track signal in dynamic environment [13]. An open loop tracking aided by the Kalman filter (OL-KF) achieves a better tracking accuracy performance [14]. Han et al. [15] combined open loop with an unscented Kalman filter (UKF) for high dynamic carrier tracking. Tahir et al. [16] combined open loop with smooth filters for carrier recovery. These architectures were named “quasi-open-loop”.
The pseudorange and pseudorange rate estimated by open loop tracking approaches are affected by different kinds of propagation errors. Considering these common errors can be eliminated by differential methods between adjacent epochs, we propose an open loop with a differential Kalman filter (OL-DKF). The proposed architecture focuses on combining the tracking result from all channels as input and the position solution as output.
First, the architecture of OL-DKF is introduced. Second, the performance of OL-DKF is analyzed theoretically. Third, theoretical performance comparison among open loop, open loop with Kalman filter and the proposed open loop with a differential Kalman filter is presented. Finally, data collected from road tests in different urban test cases are used to demonstrate improvement of the proposed architecture.

2. Structure of OL-DKF

The architecture of the open loop (OL) is presented in Figure 1. First, an initial position, velocity and time (PVT) solution is obtained from the conventional receiver. Second, a two-step procedure is carried out to obtain a navigation solution. The code phase and Doppler frequency are first estimated from a two-dimensional correlation function for each tracking channel. The second step is that pseudoranges and pseudorange rates are calculated by code phases and frequencies, assisted with the initialization results. Finally, the calculation of the position, velocity and time (PVT) is performed. This approach does not exploit the geometrical relationships between the satellites and the receiver, as well as the motion relationships between different epochs.
To improve the accuracy of open loop tracking, the architecture of OL-KF is proposed in Figure 2 [14]. The initial receiver PVT is also obtained at first. Then, a two-step procedure is also carried out to obtain the subsequent PVT solutions. In the first step, the code phase and Doppler frequency are obtained in each channel, which is similar to the first step of the open loop. Then, the Doppler frequency is filtered by the Kalman filter and the code phase is smoothed by the filtered Doppler frequency. In the second step, pseudoranges and pseudorange rates are obtained to calculate PVT, which is also similar to second step of open loop. The tracking accuracy of this model is higher than that of open loop because the model exploits the motion relationship between pseudorange and pseudorange rate of each channel in filter procedure. However, it does not take account of the geometrical relationships because the Kalman filter in each channel is independent with the others.
To utilize the geometrical relationship, a new architecture, open loop with a differential Kalman filter, was proposed and shown in Figure 3. The receiver makes an initial PVT solution based on the conventional receiver architecture. Then, a two-step procedure is carried out. In the first step, the differential values of the code phase and Doppler frequency between adjacent epochs for all tracking channels are obtained. The benefits of using the differential values include (a) exploiting temporal correlation of tracking result and (b) mitigating common propagation errors in the estimations of code phase and Doppler frequency. In the second step, the differential values are used as the measurement for the differential Kalman filter to compute the navigation solution. The advantages of the proposed approach are: (a) All channels are combined by the differential Kalman filter. (b) The differential position and velocity as state vector exploit the motion relationship. (c) OL-KF filters independently tracking result of each channel and separates tracking filter and position procedures. However, OL-DKF utilizes the geometrical relationships between the receiver and the satellites to filter jointly all the tracking results with one filter and combines filter with position procedures. (d) Different from using pseudoranges and pseudorange rates to calculate PVT in OL and OL-KF, the OL-DKF utilizes differential code phases and Doppler frequencies to position. Thus, the OL-DKF can achieve better positioning accuracy. In the OL search step, different correlation time can be selected according to the different carrier-to-noise ratio of signal [17]. The acquisition search will be carried out in the bins near the predicted values at the previous epoch. It will shorten the search dwell time. In Figures, it should be noted that [ τ k 1 , , τ k N ] and [ f k 1 , , f k N ] are code phase and Doppler frequency, [ ρ k 1 , , ρ k N ] and [ ρ ˙ k 1 , , ρ ˙ k N ] are pseudoranges and pseudorange rates of 1 th to Nth satellite in the epoch K, respectively.

2.1. State Model of the Proposed OL-DKF

In general, the state vector of a traditional receiver is shown as
X k = [ x k , y k , z k , b k , x ˙ k , y ˙ k , z ˙ k , d k ] T
where x k , y k and z k is the 3D position of the receiver in the Earth-Centered Earth-Fixed (ECEF) coordinate, x ˙ k , y ˙ k and z ˙ k is the 3D velocity of the receiver in the ECEF coordinate, b k is the receiver’s clock bias and d k is the clock drift of receiver. The subscripts k denote k-th epoch.
The state model of OL-DKF is based on the differential state between adjacent epochs. The state vector is the differential result of the traditional state vector, shown as:
X ¯ k = X k X k 1     = [   x ¯ k , y ¯ k , z ¯ k , b ¯ k , x ˙ ¯ k , y ˙ ¯ k , z ˙ ¯ k , d ¯ k ] T
where ( ¯ ) k means the differential value between epoch k and k − 1. X ¯ k contains the differential position, differential clock bias, differential velocity and differential clock drift of the receiver.
The state transition equation is given by:
X ¯ k =   Φ X ¯ k 1 + W k 1
where Φ is the state transition matrix from epoch k − 1 to k:
Φ = [ 1 0 0 0 T 0 0 0 0 1 0 0 0 T 0 0 0 0 1 0 0 0 T 0 0 0 0 1 0 0 0 T 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 ]
T is the time interval between epoch k − 1 and k, W is process noise which is the Gaussian white noise with zero mean, with covariance matrix Q , given by [18]
Q = E [ W k 1 W k 1 T ]       = [ T 3 σ x 2 / 3 0 0 0 T 2 σ x 2 / 2 0 0 0 0 T 3 σ y 2 / 3 0 0 0 T 2 σ y 2 / 2 0 0 0 0 T 3 σ z 2 / 3 0 0 0 T 2 σ z 2 / 2 0 0 0 0 T σ b 2 + T 3 σ d 2 / 3 0 0 0 T 2 σ d 2 / 2 T 2 σ x 2 / 2 0 0 0 T σ x 2 0 0 0 0 T 2 σ y 2 / 2 0 0 0 T σ y 2 0 0 0 0 T 2 σ z 2 / 2 0 0 0 T σ z 2 0 0 0 0 T 2 σ d 2 / 2 0 0 0 T σ d 2 ]
Here, σ x 2 , σ y 2 and σ z 2 are variances of process noise in the ECEF coordinate, σ b 2 is the variance of the oscillator phase noise and σ d 2 is the variance of the oscillator frequency noise.

2.2. Measurement Model of the Proposed OL-DKF

The measurement model of OL-DKF is based on the differential open loop tracking result between adjacent epochs, which is:
Z ¯ k = H k X ¯ k + N k
where z ¯ k = z k z k 1 = [ τ ¯ k 1 , , τ ¯ k N , f ¯ k 1 , , f ¯ k N ] T and z k = [ τ k 1 , , τ k N , f k 1 , , f k N ] T . τ ¯ k i and f ¯ k i are the differential code phase and differential Doppler frequency, which are equal to τ k i τ k 1 i and f k i f k 1 i , the superscripts i denote ith satellite. N k is the measurement noise, of which the covariance matrix is R . H k is transition matrix, given by:
H k = [ α k 1 β k 1 γ k 1 1 0 0 0 0 α k N β k N γ k N 1 0 0 0 0 0 0 0 0 α k 1 β k 1 γ k 1 1 0 0 0 0 α k N β k N γ k N 1 ]
where [ α k i , β k i , γ k i ] is the line-of-sight unit vector between the ith satellite and the receiver in ECEF coordinates.
The measurements, code phase τ k i and Doppler frequency f k i , have relationships with the state vector of the receiver X k and the state vector of ith satellite, shown as:
τ k i = f c o d e c ( [ α k i , β k i , γ k i ] [ x k x k i y k y k i z k z k i ] + ( b k b k i ) ) f k i = f c a r r c ( [ α k i , β k i , γ k i ] [ x ˙ k x ˙ k i y ˙ k y ˙ k i z ˙ k z ˙ k i ] + ( d k d k i ) ) [ α k i , β k i , γ k i ] = [ x k x k i , y k y k i , z k z k i ] ( x k x k i ) 2 + ( y k y k i ) 2 + ( z k z k i ) 2
where x k i , y k i , z k i , b k i , x ˙ k i , y ˙ k i , z ˙ k i , and d k i are the position, clock bias, velocity and clock drift of ith satellite. f c o d e is code rate, f c a r r is carrier frequency. c is the speed of light.

3. Parameters Setting

In this chapter, performance analyses of OL-DKF, OL and OL-KF were carried out. OL-DKF combines the tracking filter and position procedures. Its outputs (PVT) are the position and the tracking result at same time. So, performance analyses among three methods mainly focus on the standard deviation of the 3D position and velocity. Considering the simplified assumptions of noise contributions (uncorrelated and identically distributed noise contributions), pseudoranges and pseudorange rates were employed to calculate PVT in OL and OL-KF so that we used the position dilution of precision (PDOP) factor to evaluate the position accuracy of OL and OL-KF. On the other hand, differential code phases and Doppler frequencies were employed to calculate PVT in OL-DKF so that Ricatti function was used to evaluate accuracy of OL-DKF.

3.1. Performance Analysis of OL-DKF

The performance analysis of the tracking loop was divided into the analysis on the input and output of the filter. In OL-DKF model, the input performance depends on the accuracies of the code phases and the Doppler frequencies from the OL tracking. The output performance depends on filter accuracy of the differential Kalman filter.

3.1.1. Input Performance of OL-DKF

Based on the detection probability, we could analyze the input performances of OL-DKF. In the OL, the integration result V k at epoch k is obtained by coherent and non-coherent integration. The in-phase branch coherent integration result I ( k ) and quadrature branch coherent integration result Q ( k ) in epoch k can be expressed as [19]:
{ I ( k ) = A k D ( k ) R k ( Δ τ k ) sin c ( π Δ f k T ) cos ( Δ ϕ k ) + n I , k Q ( k ) = A k D ( k ) R k ( Δ τ k ) sin c ( π Δ f k T ) sin ( Δ ϕ k ) + n Q , k
where A k is the signal amplitude, D ( k ) is the navigation message, R k ( Δ τ k ) is the code autocorrelation function, Δ τ k is the code phase error, Δ f k is the Doppler frequency error and Δ ϕ k is the carrier phase error. n I , k and n Q , k are the uncorrelated Gaussian white noise.
The magnitude of the complex coherent integration I ( k ) + j Q ( k ) without noise is:
V k = I 2 ( k ) + Q 2 ( k ) = A k R k ( Δ τ k ) | sin c ( π Δ f k T c o h ) |
Assuming the variances of n I , k and n Q , k are σ n 2 , V k obeys Rayleigh distribution in the absence of satellite signal and Rice distribution in the presence of satellite signal. Based on the threshold and the probability density function of the Rice distribution p ( V ) , the detection probability P D is:
P D = T h p ( V ) d V
We could analyze the input accuracy of OL-DKF by the detection probabilities of the code phase and Doppler frequency in each search grid.
  • Accuracy of the code phase measurement
The correlation peak between the local replica and incoming signal may occur in any of the search grids due to the presence of noise. Assuming the maximum amplitude occurs in jth ( j = 0 , 1 , , M ) search grid, and M is the total number of the search grids, the detection probability of jth the search grid is 0 p ( V , Δ τ ( j ) ) d V . The probability that the amplitudes, except jth search grid, of all the search grids are less than the maximum amplitude is k = 0 k j M [ 1 P D ( V , Δ τ ( k ) ) ] [20]. The detection probability of the code error Δ τ ( j ) in jth the search grid is
P D ( Δ τ ( j ) ) = 0 p ( V , Δ τ ( j ) ) Δ τ ( i ) τ r a n g e                       i j [ 1 P D ( V , Δ τ ( i ) ) ] d V
where p ( V , Δ τ ( j ) ) = V e V 2 + a τ 2 2 I 0 ( a τ V ) , a τ = ( 1 | Δ τ ( j ) | ) 2 T c o h C / N 0 2 and τ r a n g e = [ 1 , 1 + τ s t e p , 1 + 2 τ s t e p , , 1 ] is the code search range, τ s t e p is code search step and I 0 ( ) is first kind zero-order modified Bessel’s function.
Based on Equation (12), Figure 4 shows the detection probabilities of code phase error with a different carrier to noise ratio (C/N0) when T c o h = 40 ms. The detection probability curves are approximately a normal distribution under high C/N0 and tend to be uniformly distributed under low C/N0 such as 16 dB-Hz. The standard deviation of code phase error σ τ is:
σ τ = Δ τ ( j ) τ r a n g e ( Δ τ ( j ) ) 2 P D ( Δ τ ( j ) )
Figure 5 depicts the standard deviation of code phase error based on Equation (13). The standard deviation of code phase error was lower when the search step was smaller or C/N0 was higher. So, the standard deviation of code phase error was related to C/N0 and the length of the code search step.
  • Accuracy of the Doppler frequency measurement
The Doppler frequency detection probability can be similarly analyzed as above. When the maximum amplitude point corresponds to jth the search grid with the Doppler frequency error Δ f ( j ) , the detection probability is:
P D ( Δ f ( j ) ) = 0 p ( V , Δ f ( j ) ) Δ f ( i ) f r a n g e                       i j [ 1 P D ( V , Δ f ( i ) ) ] d V
where p ( V , Δ f ( j ) ) = V e v 2 + a f 2 2 I 0 ( a f V ) , a f = sin c 2 ( Δ f ( j ) T c o h ) T c o h C / N 0 2 and f r a n g e = [ f , f + f s t e p , f + 2 f s t e p , , f ] is the frequency search range and f s t e p is carrier Doppler frequency search step.
Based on Equation (14), Figure 6 shows the detection probabilities of the Doppler frequency error with different C/N0 and T c o h = 40 ms. The curves are an approximately normal distribution under high C/N0 and tend to be uniformly distributed under low C/N0. The standard deviation of the Doppler frequency error σ f is shown as:
σ f = Δ f ( j ) f r a n g e ( Δ f ( j ) ) 2 P D ( Δ f ( j ) )
According to Equations (14) and (15), the Doppler frequency error is related to the thermal noise and not related to the dynamic. Figure 7 shows the standard deviation of the Doppler frequency error when the frequency search step is 2.5 Hz and 5 Hz. The standard deviation of the Doppler frequency error was lower when the search step was smaller or C/N0 was higher. It was related to C/N0 and the length of frequency search step.

3.1.2. Output Performance of OL-DKF

The tracking accuracy of OL-DKF under the thermal noise can be calculated by the prior steady-state covariance matrix P s s via the Ricatti function:
Φ P s s Φ T Φ P s s H T ( H P s s H T + R ) 1 H P s s Φ T + Q P s s = 0
The posterior steady-state covariance matrix P s s + contains processing noise and observation noise, which is given by:
P s s + = ( I K s s H ) P s s ( I K s s H ) T + K s s R K s s T
where the variances of measurement noise for each channel are 2 σ τ 2 and 2 σ f 2 , which can be derived from Equations (13) and (15). K s s = P s s H T ( H P s s H T + R ) 1 is the steady-state gain of OL-DKF. So, the estimate accuracies of position and velocity ( σ P o s O L D K F , σ V e l O L D K F ) are given by
σ P o s O L D K F = P s s + ( 1 , 1 ) + P s s + ( 2 , 2 ) + P s s + ( 3 , 3 ) σ V e l O L D K F = P s s + ( 5 , 5 ) + P s s + ( 6 , 6 ) + P s s + ( 7 , 7 )
where P s s + ( i , j ) represents the ith row and jth column element of P s s + .

3.2. Accuracy of OL Outputs

The tracking accuracy of the receiver will directly affect positioning accuracy. Usually, the position dilution of precision (PDOP) is used to describe the relationship between tracking accuracy and positioning accuracy, which is related to the geometric location of the receiver and satellites. The positioning and velocity accuracies of OL are shown as [19]:
σ P o s O L = P D O P × σ τ / f c o d e × c σ V e l O L = P D O P × σ f / f c a r r   × c
where σ P o s O L is the standard deviation of 3D position of OL, σ V e l O L is the standard deviation of 3D velocity of OL.

3.3. Accuracy of OL-KF Outputs

In the OL-KF architecture, the state vector contains carrier phase error and Doppler frequency error. The accuracy of Doppler frequency ε f can be obtained from the Kalman filter output. The accuracy of the original code phase is ε τ , which can be calculated based on the non-coherent early minus later power discriminator [14]. According to [21], the accuracy of smoothed pseudo-code ε s τ is shown as:
ε s τ 2 = ε τ 2 L + ( c / f c a r r ) 2 T c o h 2 ε f 2 4 L 2 ( 2 L ( L 1 ) ( 2 L 1 ) 3 + ( L 1 ) 2 )
where L is the smoothing depth. Appendix A provides detailed deduction steps.
Similar to Equation (19), the position and velocity accuracies of OL-KF can also be derived as:
σ P o s O L K F = P D O P × ε s τ / f c o d e × c σ V e l O L K F = P D O P × ε f / f c a r r   × c
where σ P o s O L K F is the standard deviation of 3D position of OL-KF and σ V e l O L K F is the standard deviation of 3D velocity of OL-KF.

4. Numerical Simulations and Comparisons Between OL, OL-KF and the Proposed OL-DKF

In this chapter, numerical simulations were conducted. The accuracy comparisons of position and velocity among three architectures were carried out based on the above chapter with simplified assumptions of noise contributions and no errors condition. There were two constellations used in the analysis. One constellation had 10 satellites, while the other had 6 satellites, shown in Figure 8. The 6 satellites were picked out from the 10 satellites. Performance comparisons under more comprehensive error conditions and bad geometry in the real city environment are shown in the next chapter.

4.1. Comparison of Velocity Accuracy

The velocity accuracies of OL-DKF, OL and OL-KF can be obtained from Equations (18), (19) and (21). Note that the process noise variance of the proposed OL-DKF in the three-dimensional directions σ x 2 , σ y 2 and σ z 2 are set to the same value σ 2 . In the comparison between OL-KF and OL-DKF, an equivalent processing noise should be set. The process noise variance in OL-KF is q l o s 2 , which is caused by the acceleration along the line-of-sight (LOS) vector from the satellite to the receiver. The relationship between σ 2 and q l o s 2 is σ 2 = P D O P 2 q l o s 2 / 3 .
Figure 9 and Figure 10 show the velocity accuracies of the three architectures with different processing noises and satellite numbers. We could find that (a) velocity errors of three architectures were lower with increasing satellite number in view and C/N0. (b) Velocity errors of OL-KF and OL-DKF were smaller than those of OL. (c) The proposed OL-DKF show the performance improvement compared to the OL-KF under the equivalent noise setting.

4.2. Comparison of Position Accuracy

The position accuracies of OL-DKF, OL and OL-KF could be obtained from Equations (18), (19) and (21). Figure 11 and Figure 12 show the position accuracies of the three architectures with different processing noise and satellite numbers when L is set 15. The conclusion of the position accuracy analysis was similar to that of the velocity accuracy analysis.

5. Experiments and Results

Actual road tests were conducted to evaluate the performance of OL-DKF, OL-KF and OL in different urban test cases. Coherent time was set 40 ms. Road test cases included unblocked roads, roads blocked by light railway and roads in the city canyon. The GPS signal was collected by down conversion, filtering and analogue to digital sampling. Then, the digital intermediate frequency signal was processed by receivers. Figure 13 shows the actual route where experimental data were collected. The high precision inertial navigation system (IMU-FSAS) was used to record the vehicle trajectory, which is shown as the red line in Figure 13.

5.1. First Test Case: Unblocked Roads

Figure 14 shows the 3D map of the section of the route where the road environment is open and SNR is high, but there are still a few high buildings that may cause interference to the receiver.
The experimental results of this experiment are shown in Figure 15, Figure 16, Figure 17, Figure 18 and Figure 19. It can be seen from Figure 15 that there was good satellite visibility in this section of the route. Figure 16 and Figure 17 show that the position estimated by the proposed OL-DKF was less noisy and matched the data collected by the IMU-FSAS better than the OL and OL-KF. Figure 18 shows the probability distribution of position error where it can be observed that the position errors of OL-DKF were less than 2 m, while only 85% and 35% position errors of OL-KF and OL reached the same accuracy. Figure 19 shows three-dimensional errors in East-North-Up(ENU) coordinate. The standard deviations of horizontal errors of OL-DKF, OL-KF and OL were 0.4 m, 0.7 m and 1.5 m. The standard deviations of vertical errors of the above architectures were 9.1 m, 8.8 m and 12.1 m.

5.2. Second Test Case: Roads Blocked by Light Railway

Figure 20 shows the 3D road map of the section of the route where roads blocked by a light railway. Vehicle traversed the light railway from below. The yellow circle marks the light railway blockage area, which made the receiver fail to view satellite in a short period. OL-DKF took a reasonable prediction under this condition.
The experimental results of this experiment are shown in Figure 21, Figure 22, Figure 23, Figure 24 and Figure 25. It can be seen from Figure 21 that satellite numbers were stable, except for about 2 s when no satellite was in view. Figure 22 and Figure 23 show that the position estimated by the proposed OL-DKF was less noisy and matched the data collected by the IMU-FSAS better than the open loop algorithm. The prediction of OL-DKF in the blocked area produced a satisfied result. Figure 24 shows the probability distribution of the position error and we can observe that 85% position errors of OL-DKF were less than 3 m, while 74% and 38% position errors of OL-KF and OL reached the same precision. Figure 25 shows three-dimensional errors in ENU coordinate. The standard deviations of horizontal errors of OL-DKF, OL-KF and OL were 0.9 m, 1.6 m and 2.1 m. The standard deviations of vertical errors of the above architectures were 10.7 m, 10.5 m and 22.2 m.

5.3. Third Test Case: Roads in City Canyon

Figure 26 shows the 3D road map of roads in city canyon where many tall buildings along both sides of the roads affected the receiver considerably. The yellow circle marks the blocked area where visible satellites change rapidly, and even frequently drops below 4. Moreover, poor SNR and PDOP cause interference to the receiver. OL-DKF made reasonable predictions and constraints.
The experimental results of this experiment are shown in Figure 27, Figure 28, Figure 29, Figure 30 and Figure 31. It can be seen from Figure 27 that satellite numbers were unstable and less than four frequently. Figure 28 and Figure 29 shows that the position estimated by the proposed OL-DKF was less noisy and much better than that by the open loop algorithm. Figure 30 is the probability distribution of the position error. It can be observed that 85% position errors of OL-DKF were within 10 m, while 51% and 45% of the position errors of OL-KF and OL reached the same precision. Figure 31 shows three-dimensional errors in ENU coordinate. The standard deviations of horizontal errors of OL-DKF, OL-KF and OL were 3.3 m, 5.1 m and 7.8 m. The standard deviations of vertical errors of the above architectures were 15.3 m, 20.5 m and 51.1 m.

6. Conclusions

We proposed an open loop algorithm based on the differential Kalman filter, with a detailed theoretical model. This architecture takes the differential values of open loop tracking results between adjacent epochs, unlike the traditional open loop, which uses code phase and frequency estimates as input. It reduces the influence of common errors in open loop tracking and obtains more accurate PVT solutions. We theoretically analyzed the input and output performance of the OL-DKF, and compared it with the traditional open loop and open loop with a Kalman filter. The performance of OL-DKF was better than the other algorithms because it utilized the motion relationship from the temporal domain and the geometry relationship from the spatial domain by a differential Kalman filter. Three typical road tests in the city canyon environment were carried out. The results of theory and experiments show that the proposed architecture had a better position and velocity accuracy. There were many existing techniques used in the challenged environment. Compared with inertial navigation system assist, the proposed method did not need additional sensor-assisted. Compared with open loop, the OL-DKF could achieve much accuracy improvements in the city canyon environment.

Author Contributions

Conceptualization, T.J.; Data curation, H.Y.; Funding acquisition, J.K.; Methodology, T.J. and H.Y.; Software, H.Y.; Supervision, H.Q.; Writing—original draft, H.Y.; Writing—review and editing, T.J. and K.-V.L.; All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by Shaanxi Key Laboratory of Integrated and Intelligent Navigation, grant number SKLIIN-20180111, SKLIIN-20190106.

Conflicts of Interest

The authors declare no conflicts of interest.

Appendix A. Derivation of Accuracy of the OL-KF Output

In OL-KF architecture, the state vector contains the carrier phase error and Doppler frequency error. The state transition matrix Λ = [ 1 T 0 1 ] and the measurement matrix H = [ 0 1 ] . The variance of processing noise is Q a = q l o s 2 ( c / f c a r r ) 2 [ T 3 / 6 T 2 / 2 T 2 / 2 T ] . The variance of measurement noise is the accuracy of the differential power frequency discriminator output [14], shown as:
R f = μ 0 4 T c o h C / N 0 ( 1 + μ 1 T c o h C / N 0 )
where θ = π f s t e p T c o h , μ 0 = f s t e p 2 [ 1 c o s ( 2 θ ) ] ( s i n c ( θ ) c o s ( θ ) ) 3 , μ 1 = 1 s i n c 2 ( 2 θ ) 2 s i n c 2 ( θ ) [ 1 c o s ( 2 θ ) ] .
The tracking accuracy of OL-KF can be indicated by the posterior covariance matrix P O L K F , which can be calculated by the Ricatti equation. The frequency estimation accuracy is given by:
ε f = P O L K F ( 2 , 2 )
The accuracy of the original code phase ε τ of OL-KF can be calculated based on the non-coherent early minus later power discriminator, shown as [14]:
ε τ = τ s t e p 2 T c o h C / N 0 ( 1 + 1 ( 1 τ s t e p ) T c o h C / N 0 )
In Equation (20), the accuracy of smoothed pseudo-code ε s τ can be calculated by Equations (A2) and (A3).

References

  1. Curran, J.T.; Lachapelle, G.; Murphy, C.C. Improving the design of frequency lock loops for GNSS receivers. IEEE Trans. Aerosp. Electron. Syst. 2012, 48, 850–868. [Google Scholar] [CrossRef]
  2. Roncagliolo, P.A.; Garcia, J.G. High dynamics and false lock resistant GNSS carrier tracking loops. In Proceedings of the ION GNSS 2007, Institute of Navigation, Fort Worth, TX, USA, 25–28 September 2007; pp. 2364–2375. [Google Scholar]
  3. Roncagliolo, P.A.; García, J.G.; Muravchik, C.H. Optimized carrier tracking loop design for real-time high-dynamics GNSS receivers. Int. J. Navig. Obs. 2012, 2012, 651039. [Google Scholar] [CrossRef] [Green Version]
  4. Yang, R.; Ling, K.V.; Poh, E.K.; Morton, Y. Generalized GNSS signal carrier tracking: Part I—Modeling and analysis. IEEE Trans. Aerosp. Electron. Syst. 2017, 53, 1781–1797. [Google Scholar] [CrossRef]
  5. Yang, R.; Ling, K.V.; Poh, E.K.; Morton, Y. Generalized GNSS Signal Carrier Tracking—Part II: Optimization and Implementation. IEEE Trans. Aerosp. Electron. Syst. 2017, 53, 1798–1811. [Google Scholar] [CrossRef]
  6. Psiaki, M.L. Extended Kalman filter methods for tracking weak GPS signals. In Proceedings of the ION GPS 2002, Institute of Navigation, Portland, ON, USA, 24–27 September 2002; pp. 2539–2553. [Google Scholar]
  7. Ziedan, N.I.; Garrison, J.L. Extended Kalman filter-based tracking of weak GPS signals under high dynamic conditions. In Proceedings of the ION GNSS 2004, Institute of Navigation, Long Beach, CA, USA, 21–24 September 2004; pp. 20–31. [Google Scholar]
  8. Omidi, M.J.; Gazor, S.; Gulak, P.G.; Pasupathy, S. Differential Kalman filtering for tracking Rayleigh fading channels. In Signal Processing Systems; IEEE: Cambridge, MA, USA, 1998; pp. 376–385. [Google Scholar]
  9. Gazor, S.; Rabiei, A.M.; Pasupathy, S. Synchronized per survivor MLSD receiver using a differential Kalman filter. IEEE Trans. Commun. 2002, 50, 364–368. [Google Scholar] [CrossRef]
  10. Zhao, S.; Cui, X.; Guan, F.; Lu, M. A Kalman filter-based short baseline RTK algorithm for single-frequency combination of GPS and BDS. Sensors 2014, 14, 15415–15433. [Google Scholar] [CrossRef] [PubMed]
  11. Krasner, N.F. Method for Open Loop Tracking GPS Signals. U.S. Patent 6,633,255, 14 October 2003. [Google Scholar]
  12. Uijt de Haag, M. An Investigation into the Application of Block Processing Techniques for the Global Positioning System. Ph.D. Thesis, Ohio University, Athens, OH, USA, 1999. Available online: https://etd.ohiolink.edu/pg_10?0::NO:10:P10_ACCESSION_NUM:ohiou1181171187 (accessed on 2 January 2019).
  13. van Graas, F.; Soloviev, A.; de Haag, M.U.; Gunawardena, S. Closed-loop sequential signal processing and open-loop batch processing approaches for GNSS receiver design. IEEE J. Sel. Top. Signal Process. 2009, 3, 571–586. [Google Scholar] [CrossRef]
  14. Lin, H.; Tang, X.; Ou, G. An Open Loop With Kalman Filter for Intermittent GNSS Signal Tracking. IEEE Commun. Lett. 2017, 21, 2634–2637. [Google Scholar] [CrossRef]
  15. Han, S.; Wang, W.; Chen, X.; Meng, W. Quasi-open-loop Structure for high dynamic carrier tracking based on UKF. Acta Aeronaut. Astronaut. Sin. 2010, 31, 2393–2399. [Google Scholar]
  16. Tahir, M.; Presti, L.L.; Fantino, M. A novel quasi-open loop architecture for GNSS carrier recovery systems. Int. J. Navig. Obs. 2012, 2012, 324858. [Google Scholar] [CrossRef]
  17. Shin, O.S.; Lee, K.B. Differentially coherent combining for double-dwell code acquisition in DS-CDMA systems. IEEE Trans. Commun. 2003, 51, 1046–1050. [Google Scholar] [CrossRef]
  18. Hsu, L.T.; Jan, S.S.; Groves, P.D.; Kubo, N. Multipath mitigation and NLOS detection using vector tracking in urban environments. GPS Solut. 2015, 19, 249–262. [Google Scholar] [CrossRef]
  19. Kaplan, E.; Hegarty, C. Understanding GPS: Principles and Applications; Artech House: Boston, CA, USA, 2005. [Google Scholar]
  20. Borio, D.; Camoriano, L.; Presti, L.L. Impact of GPS acquisition strategy on decision probabilities. IEEE Trans. Aerosp. Electron. Syst. 2008, 44, 996–1011. [Google Scholar] [CrossRef]
  21. Zhou, Z.; Li, B. Opti+mal Doppler-aided smoothing strategy for GNSS navigation. GPS Solut. 2017, 21, 197–210. [Google Scholar] [CrossRef]
Figure 1. Diagram of conventional open loop tracking and position, velocity and time (PVT) solution.
Figure 1. Diagram of conventional open loop tracking and position, velocity and time (PVT) solution.
Remotesensing 12 00812 g001
Figure 2. Diagram of open loop tracking with a Kalman filter and PVT solution.
Figure 2. Diagram of open loop tracking with a Kalman filter and PVT solution.
Remotesensing 12 00812 g002
Figure 3. Diagram of open loop tracking with a differential Kalman filter.
Figure 3. Diagram of open loop tracking with a differential Kalman filter.
Remotesensing 12 00812 g003
Figure 4. Detection probability of the code phase error.
Figure 4. Detection probability of the code phase error.
Remotesensing 12 00812 g004
Figure 5. Code error of the open loop under thermal noise.
Figure 5. Code error of the open loop under thermal noise.
Remotesensing 12 00812 g005
Figure 6. Detection probability of the Doppler frequency error.
Figure 6. Detection probability of the Doppler frequency error.
Remotesensing 12 00812 g006
Figure 7. Doppler error of the open loop under thermal noise.
Figure 7. Doppler error of the open loop under thermal noise.
Remotesensing 12 00812 g007
Figure 8. Satellite constellations.
Figure 8. Satellite constellations.
Remotesensing 12 00812 g008
Figure 9. Standard deviation of the velocity error (10 sats).
Figure 9. Standard deviation of the velocity error (10 sats).
Remotesensing 12 00812 g009
Figure 10. Standard deviation of the velocity error (6 sats).
Figure 10. Standard deviation of the velocity error (6 sats).
Remotesensing 12 00812 g010
Figure 11. Standard deviation of the position error (10 sats).
Figure 11. Standard deviation of the position error (10 sats).
Remotesensing 12 00812 g011
Figure 12. Standard deviation of the position error (6 sats).
Figure 12. Standard deviation of the position error (6 sats).
Remotesensing 12 00812 g012
Figure 13. Road test routes.
Figure 13. Road test routes.
Remotesensing 12 00812 g013
Figure 14. 3D map of the unblocked road.
Figure 14. 3D map of the unblocked road.
Remotesensing 12 00812 g014
Figure 15. Satellite visibility of the unblocked road test.
Figure 15. Satellite visibility of the unblocked road test.
Remotesensing 12 00812 g015
Figure 16. Trajectories of open loop with a differential Kalman filter (OL-DKF), open loop tracking aided by the Kalman filter (OL-KF), open loop tracking (OL) and IMU-FSAS of the unblocked road test.
Figure 16. Trajectories of open loop with a differential Kalman filter (OL-DKF), open loop tracking aided by the Kalman filter (OL-KF), open loop tracking (OL) and IMU-FSAS of the unblocked road test.
Remotesensing 12 00812 g016
Figure 17. Position plot of OL-DKF, OL-KF and OL against IMU-FSAS of the unblocked road test.
Figure 17. Position plot of OL-DKF, OL-KF and OL against IMU-FSAS of the unblocked road test.
Remotesensing 12 00812 g017
Figure 18. Position error probability of the unblocked road test.
Figure 18. Position error probability of the unblocked road test.
Remotesensing 12 00812 g018
Figure 19. Three-dimensional errors of the unblocked road test.
Figure 19. Three-dimensional errors of the unblocked road test.
Remotesensing 12 00812 g019
Figure 20. 3D map of roads blocked by a light railway.
Figure 20. 3D map of roads blocked by a light railway.
Remotesensing 12 00812 g020
Figure 21. Satellite visibility of roads blocked by a light railway test.
Figure 21. Satellite visibility of roads blocked by a light railway test.
Remotesensing 12 00812 g021
Figure 22. Trajectories of OL-DKF, OL-KF, OL and IMU-FSAS of roads blocked by a light railway.
Figure 22. Trajectories of OL-DKF, OL-KF, OL and IMU-FSAS of roads blocked by a light railway.
Remotesensing 12 00812 g022
Figure 23. Position plot of OL-DKF, OL-KF and OL against IMU-FSAS of roads blocked by a light railway test.
Figure 23. Position plot of OL-DKF, OL-KF and OL against IMU-FSAS of roads blocked by a light railway test.
Remotesensing 12 00812 g023
Figure 24. Position error probability of roads blocked by a light railway test.
Figure 24. Position error probability of roads blocked by a light railway test.
Remotesensing 12 00812 g024
Figure 25. Three-dimensional errors of roads blocked by a light railway test.
Figure 25. Three-dimensional errors of roads blocked by a light railway test.
Remotesensing 12 00812 g025
Figure 26. 3D map of roads in the city canyon test.
Figure 26. 3D map of roads in the city canyon test.
Remotesensing 12 00812 g026
Figure 27. Satellite visibility of roads in the city canyon test.
Figure 27. Satellite visibility of roads in the city canyon test.
Remotesensing 12 00812 g027
Figure 28. Trajectories of OL-DKF, OL-KF, OL and IMU-FSAS of roads in the city canyon test.
Figure 28. Trajectories of OL-DKF, OL-KF, OL and IMU-FSAS of roads in the city canyon test.
Remotesensing 12 00812 g028
Figure 29. Position plot of OL-DKF, OL-KF and OL against IMU-FSAS of the roads in the city canyon test.
Figure 29. Position plot of OL-DKF, OL-KF and OL against IMU-FSAS of the roads in the city canyon test.
Remotesensing 12 00812 g029
Figure 30. Position error probability of roads in the city canyon test.
Figure 30. Position error probability of roads in the city canyon test.
Remotesensing 12 00812 g030
Figure 31. Three-dimensional errors of roads in the city canyon test.
Figure 31. Three-dimensional errors of roads in the city canyon test.
Remotesensing 12 00812 g031

Share and Cite

MDPI and ACS Style

Jin, T.; Yuan, H.; Ling, K.-V.; Qin, H.; Kang, J. Differential Kalman Filter Design for GNSS Open Loop Tracking. Remote Sens. 2020, 12, 812. https://doi.org/10.3390/rs12050812

AMA Style

Jin T, Yuan H, Ling K-V, Qin H, Kang J. Differential Kalman Filter Design for GNSS Open Loop Tracking. Remote Sensing. 2020; 12(5):812. https://doi.org/10.3390/rs12050812

Chicago/Turabian Style

Jin, Tian, Heliang Yuan, Keck-Voon Ling, Honglei Qin, and Jianrong Kang. 2020. "Differential Kalman Filter Design for GNSS Open Loop Tracking" Remote Sensing 12, no. 5: 812. https://doi.org/10.3390/rs12050812

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