Di ﬀ erential Kalman Filter Design for GNSS Open Loop Tracking

: 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 di ﬀ erential Kalman ﬁlter for open loop, of which the measurement vector contains the di ﬀ erential values of open loop navigation results between adjacent epochs. The di ﬀ erential Kalman ﬁlter makes use of the satellite geometry (i.e., spatial domain) and motion relationship (i.e., temporal domain) to ﬁlter 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.


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

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. 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     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.

State Model of the Proposed OL-DKF
In general, the state vector of a traditional receiver is shown as where k x , 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: where   k means the differential value between epoch k and k − 1. k X contains the differential position, differential clock bias, differential velocity and differential clock drift of the receiver. The state transition equation is given by: where  is the state transition matrix from epoch k − 1 to k:

State Model of the Proposed OL-DKF
In general, the state vector of a traditional receiver is shown as 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: 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: where Φ is the state transition matrix from epoch k − 1 to k: Remote Sens. 2020, 12, 812 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] Here, σ 2 x , σ 2 y and σ 2 z are variances of process noise in the ECEF coordinate, σ 2 b is the variance of the oscillator phase noise and σ 2 d is the variance of the oscillator frequency noise.

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: . τ i k and f i k are the differential code phase and differential Doppler frequency, which are equal to τ i k − τ i k−1 and f i k − f i k−1 , 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: where α i k , β i k , γ i k is the line-of-sight unit vector between the ith satellite and the receiver in ECEF coordinates.
The measurements, code phase τ i k and Doppler frequency f i k , have relationships with the state vector of the receiver X k and the state vector of ith satellite, shown as: z i k , and d i k are the position, clock bias, velocity and clock drift of ith satellite. f code is code rate, f carr is carrier frequency. c is the speed of light.

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.

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.

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]: 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) + jQ(k) without noise is: Assuming the variances of n I,k and n Q,k are σ 2 n , 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: 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))dV. The probability that the amplitudes, except jth search grid, of all the search grids are less than the maximum amplitude is [20]. The detection probability of the code error ∆τ( j) in jth the search grid is is the code search range, τ step 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/N 0 ) when T coh = 40 ms. The detection probability curves are approximately a normal distribution under high C/N 0 and tend to be uniformly distributed under low C/N 0 such as 16 dB-Hz. The standard deviation of code phase error σ τ is:    (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 () fj  , the detection probability is: where is the frequency search range and step f 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 coh T = 40 ms. The curves are an approximately normal distribution •

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: (14) where . . , f ] is the frequency search range and f step is carrier Doppler frequency search step.
Based on Equation (14), Figure 6 shows the detection probabilities of the Doppler frequency error with different C/N 0 and T coh = 40 ms. The curves are an approximately normal distribution under high C/N 0 and tend to be uniformly distributed under low C/N 0 . The standard deviation of the Doppler frequency error σ f is shown as: 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/N 0 was higher. It was related to C/N 0 and the length of frequency search step.
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.

Output Performance of OL-DKF
The tracking accuracy of OL-DKF under the thermal noise can be calculated by the prior steadystate covariance matrix ss P  via the Ricatti function: 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.

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 − ss via the Ricatti function: The posterior steady-state covariance matrix P + ss contains processing noise and observation noise, which is given by: where the variances of measurement noise for each channel are 2σ 2 τ and 2σ 2 f , which can be derived from Equations (13) and (15). = P + ss (1, 1) + P + ss (2, 2) + P + ss (3, 3) σ OL−DKF Vel = P + ss (5, 5) + P + ss (6, 6) + P + ss (7, 7) where P + ss (i, j) represents the ith row and jth column element of P + ss .

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]: where σ OL Pos is the standard deviation of 3D position of OL, σ OL Vel is the standard deviation of 3D velocity of OL.

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: 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:

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.

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 σ 2 x , σ 2 y and σ 2 z 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 2 los , 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 2 los is σ 2 = PDOP 2 · q 2 los /3. Figures 9 and 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/N 0 . (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.
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.

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

Comparison of Position Accuracy
The position accuracies of OL-DKF, OL and OL-KF could be obtained from Equations (18), (19) and (21). Figures 11 and 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

Comparison of Position Accuracy
The position accuracies of OL-DKF, OL and OL-KF could be obtained from Equations (18), (19) and (21). Figures 11 and 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

Comparison of Position Accuracy
The position accuracies of OL-DKF, OL and OL-KF could be obtained from Equations (18), (19) and (21). Figures 11 and 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.

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.

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.

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.  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 Figures 15-19. It can be seen from Figure 15 that there was good satellite visibility in this section of the route. Figures 16 and 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 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 Figures 15-19. It can be seen from Figure 15 that there was good satellite visibility in this section of the route. Figures 16 and 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   The experimental results of this experiment are shown in Figures 15-19. It can be seen from Figure 15 that there was good satellite visibility in this section of the route. Figures 16 and 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 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.   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 Figures 21-25. It can be seen from Figure 21 that satellite numbers were stable, except for about 2 s when no satellite was in view. Figures 22 and 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 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      The experimental results of this experiment are shown in Figures 21-25. It can be seen from Figure 21 that satellite numbers were stable, except for about 2 s when no satellite was in view. Figures 22 and 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 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          The experimental results of this experiment are shown in Figures 27-31. It can be seen from Figure 27 that satellite numbers were unstable and less than four frequently. Figures 28 and 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 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 Figures 27-31. It can be seen from Figure 27 that satellite numbers were unstable and less than four frequently. Figures 28 and 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   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 Figures 27-31. It can be seen from Figure 27 that satellite numbers were unstable and less than four frequently. Figures 28 and 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

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.

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.