1. Introduction
An inertial navigation system (INS) can be combined with multiple navigation technologies to form an integrated navigation system. Due to complementary error characteristics, INS is most commonly integrated with the global navigation satellite system (GNSS) [
1]. INS/GNSS ultra-tightly coupled (UTC) integration navigation is an optimal INS/GNSS integrated navigation architecture [
2]. The deep fusion between the INS and the receiver tracking loops greatly improves the highly dynamic adaptability and anti-interference ability. With the advantages of cost and size, the micro-electromechanical inertial measurement unit (MIMU) has been widely used in UTC navigation systems [
3,
4,
5,
6].
In the MIMU/GNSS UTC integration system, vector tracking loops (VTLs) are exploited to track the pseudocode phase and the carrier Doppler shift [
7]. Under normal conditions, the tracking errors of VTLs are nominal. However, in some cases, especially in the highly dynamic context of maneuvering vehicles, the frequency tracking may exhibit large step deviations, leading to increased navigation errors and even loss of tracking lock. In the context of MIMU/GNSS UTC integration, there are two main reasons for the large jumps in frequency tracking errors.
One of the triggers is the crystal oscillator of the receiver. “Micro-jump” events, which refer to step changes in the local oscillation frequency, are well-known defects of crystal oscillators [
8,
9]. A “micro-jump” event is disruptive to the frequency tracking loops, which causes the local replica carrier frequency to deviate from its nominal value and results in a large jump in the frequency tracking error. In some extreme cases, a micro jump of as little as 20 parts per billion (ppb) can be sufficient to cause a loss of tracking [
9].
The acceleration sensitivity or g-sensitivity of crystal oscillators will also induce a large frequency offset error [
10,
11]. A “2 g-tipover” test is a basic way to assess the g-sensitivity of crystal oscillators. The acceleration sensitivity can be compensated using IMU measurements to reduce the negative impacts on the GNSS receiver [
12]. This method has better compensation effects in pedestrian and vehicle users, but its applicability in highly dynamic environments needs to be further evaluated.
MIMU is another component that induces large changes in frequency tracking errors. A low-cost MIMU is more prone to failure in highly dynamic environments. Some failures can make MIMU measurements unavailable. However, under multiple failure conditions, the MIMU is still accessible, but the measurement errors will exhibit step changes [
13]. After integration operations, large specific force measurement errors result in large velocity errors. Particularly for highly dynamic vehicles, velocity errors induced will be more significant. In an UTC integration system, the velocity solutions of the INS are fed back to numerically-controlled oscillator (NCO) command generators. Since velocity errors increase, the local replica carrier frequency will deviate from the true received carrier frequency. Therefore, large MIMU measurement errors will result in large jumps in frequency errors.
Large frequency tracking errors will cause the attenuation of coherent integration values. Further, they cause a sudden decrease in the estimated carrier-to-noise ratio (C/N0) and an increase in the code tracking error. In highly dynamic environments, if the large frequency tracking error cannot be mitigated in time, it may even result in loss of the tracking lock.
Several previous methods were developed to cope with large frequency offsets. When the oscillator frequency jumps significantly, the apparent
C/
N0 will suddenly drop for all tracking channels [
9]. For this reason, the estimated
C/
N0 is used as an indicator to detect large frequency errors in [
9]. The optimal frequency offset compensation is obtained through a search algorithm. This method is very effective for the large frequency error caused by the crystal oscillator. However, the frequency error caused by MIMU measurement errors depends on the line-of-sight direction of the satellite being tracked. The estimated
C/
N0 of each tracking channel may not drop suddenly at the same time. For frequency errors induced by MIMU errors, the effect of this technique based on
C/
N0 is limited.
In recent years, in challenging applications, the GNSS open-loop receiver architecture has gained much attention. A quasi-open loop receiver architecture was recently introduced to estimate the time varying carrier frequency of GNSS signals [
14]. An open-loop approach combining batch and sequential signal processing has been demonstrated to improve the tracking sensitivity of a global positioning system (GPS) receiver, and it was successfully applied in the INS/GPS deep integration system [
15]. This advanced open-loop receiver architecture applies batch correlation to obtain a coarse signal parameter estimation, while sequential processing is used to perform a fine signal zoom. The main drawback of the open-loop receiver architecture is the lack of computational efficiency. However, the coarse/fine tracking method provides a new perspective for us to solve the problem of large jumps in frequency errors.
We present an enhanced MIMU/GNSS UTC integration system to mitigate performance degradation caused by abrupt changes in frequency tracking errors. The GPS L1 C/A code signal is used as a case study. The difference between the new architecture and conventional systems is mainly reflected in the following ways. First, each tracking channel of the enhanced UTC (EUTC) architecture contains a module for large frequency tracking error detection. It monitors the frequency tracking error by comparing the frequency discriminator outputs and the preset thresholds. Second, a serial refined frequency processor based on retuned frequency is introduced in each tracking channel. The main function of the refined frequency processor is to fix coherent integration results and prevent the tracking loop from being contaminated by large frequency errors. Finally, the channel prefilter based on the classical Kalman filter (CKF) is replaced by an adaptive prefilter with multiple fading factors, which enhances the ability to track large frequency errors.
2. Conventional MIMU/GNSS UTC Integration Architecture
The receiver radio frequency (RF) front end converts the analog RF signal into a digital intermediate frequency (DIF) signal, which is input to the baseband signal processing module. The outputs of correlators are accumulated during the predetection integration interval to obtain coherent integration values. The coherent integration values can be expressed as
where
and
are the in-phase and quadrature coherent integration values, respectively;
, where
E,
P, and
L represent the early, prompt, and late correlators, respectively;
A is the amplitude;
is the code correlation function;
is the code phase offset;
is known as the frequency attenuation factor;
is the coherent integration time;
is the carrier frequency error;
is the phase error; and
and
denote zero-mean noise terms with standard deviation
.
For UTC navigation systems, the processing methods of the coherent integration values are divided into two categories. The first method is to directly send
I and
Q signals to the integration Kalman filter as filter measurements [
16,
17]. The main problems of this scheme are the high complexity and the high processor load. The second solution is to configure a prefilter for each tracking channel. The code phase and carrier frequency errors of the prefilter output are converted into pseudo-range (PR) and pseudo-range rate (PRR) residuals, which are used as integration filter measurements [
7,
18,
19].
The second scheme is adopted in this paper. However, it is worth noting that the large frequency error mitigation method that we propose is not limited by UTC architectures.
Figure 1 depicts a typical embodiment of MIMU/GNSS UTC integration architectures. In the rest of the paper, this architecture is called the conventional UTC (CUTC) architecture.
2.1. Channel Prefilter Model
The channel prefilters are utilized to generate PR and PRR measurements as illustrated in
Figure 1. In harsh environments, the carrier phase tracking is more vulnerable than the frequency tracking. For this reason, states of the prefilter include code phase error
, carrier frequency error
, and carrier frequency rate
, excluding carrier phase error.
The discrete-time system model of the prefilter is
where
is the state vector, and
is the system noise vector.
The state one-step transition matrix is
where
is the update period,
is a scale factor,
is the nominal carrier frequency, and
is the pseudo-random noise (PRN) code chip rate. For the GPS L1 C/A code,
is equal to 1/1540.
The prefilter measurement model is modeled as
where
is the measurement vector, and
is the measurement noise vector. The variables
and
denote the outputs of the code discriminator and carrier frequency discriminator, respectively.
The measurement matrix is defined as
A normalized non-coherent early-minus-late envelope code discriminator [
20] is applied to compute code tracking errors.
where
E and
L are the autocorrelation amplitudes of the early and late correlators, respectively, given by
A four-quadrant arctangent frequency discriminator [
20] is used in this paper, given by
and
in (8) can be expressed as follows:
where
and
denote the coherent integration values of the first half of the coherent integration period, and
and
denote the coherent integration values of the second half of the coherent integration period.
The code discriminator variance
and frequency discriminator variance
can be approximated as follows [
21,
22]:
where
is the carrier-to-noise ratio in Hz.
2.2. Integration Kalman Filter
The integration Kalman filter estimates INS navigation errors and MIMU errors. The following 17-dimensional error state vector is adopted in this study:
where
represents the attitude misalignment angles,
represents the velocity errors,
is the position (latitude, longitude and altitude) errors,
and
are the first-order Markov process errors of gyroscopes and accelerometers, respectively,
is the receiver clock error, and
is the clock drift error.
The system equation of the integration Kalman filter usually comes from the error propagation equation of the INS. The complete form is a complex set of differential equations, which can be found in [
1,
23].
Equation (12) converts the state estimations of the prefilter into the PR residual and the PRR residual. The residuals of all available channels constitute the measurement vector of the integration filter.
where
is the PR residual,
is the PRR residual,
is the estimated code phase error,
is the estimated carrier frequency error, and
c is the speed of light.
The measurement equation of the UTC Kalman filter is the same as the measurement equation of the standard tight integration system, and for the specific form, one can refer to [
24]. In the UTC navigation system, the corrected inertial navigation solutions are applied to generate the carrier and code NCO control commands. A detailed treatment of NCO commands may be found in [
24,
25].
3. Quantitative Analyses of Disruptive Effects of Large Frequency Errors
According to Equation (1), when the tracking channel exhibits a large frequency tracking error, the term will cause a large attenuation of the signal power. The signal power attenuation will cause the C/N0 estimation errors and code tracking estimation errors to increase. In this section, we explore the disruptive effects of large frequency tracking errors via theoretical analyses and Monte Carlo simulations.
3.1. Effects on the C/N0 Estimation
In order to avoid the loss of signal energy induced by the code phase offset, the
C/
N0 is usually estimated using the coherent integration values from prompt correlators [
20]. When a code loop is in a stable tracking state, the code phase tracking error is nominal. The autocorrelation function corresponding to the prompt code phase error
is equal to one. When the coherent integration time does not cross data bits, the data bit is constant, and the influence on the coherent integration can be omitted. For these reasons, the coherent integration values of the prompt correlators can be simplified as
In fact, in Equation (13), the attenuation of the signal amplitude caused by the frequency error
is very difficult to separate from variation in the signal amplitude
A [
26]. Accordingly, the
term will cause the estimated
C/
N0 to decrease significantly in the case of a large frequency error. It should be pointed out that the true
C/
N0 is not related to
. The frequency error affects the estimated
C/
N0 from coherent integration values.
In practice, GNSS receivers measure
C/
N0 by means of various
C/
N0 estimation algorithms [
27,
28]. In the GNSS context, the narrow-to-wideband power ratio (NWPR) method is usually used as a standard estimator. Therefore, we used the NWPR method as an example to analyze the effects of large frequency tracking errors on the
C/
N0 estimation results.
The narrow-to-wide power ratio is expressed as
where
is the narrowband power, and
is the wideband power.
When the frequency error is negligible, the expectation of the narrow-to-wide power ratio is defined as [
27]
where
and
M is the length of the data bit in milliseconds. For the GPS L1 C/A code,
is commonly adopted.
When the frequency error cannot be ignored, the expectation of the narrow-to-wide power ratio can be expressed as follows (see
Appendix A):
In the NWPR method,
N power ratios are usually averaged to reduce the effects of noise on the statistical results. The average value is given by
Suppose that the number of power ratios that can ignore the effect of frequency errors is
, and the number of power ratios that are impaired by large frequency errors is
. Then
. The expectation of
is
In the presence of large frequency errors, the estimated
C/
N0 is modeled as
If there is no large frequency error, the estimated
C/
N0 can be expressed as
The theoretical
C/
N0 attenuation due to large frequency tracking errors is obtained as
Theoretical analysis and Monte Carlo (MC) simulation were used to quantify the influence of frequency errors on the C/N0 estimation. The theoretical C/N0 attenuation was obtained from Equations (19)–(21). M was set to 20. Tcoh and τ were 1 ms and 20 ms, respectively. In the Monte Carlo simulation, the true C/N0 was set to 40 dB-Hz. Again, N was set to 50, that is, the power ratio was averaged over a time interval of 1 s. The estimated C/N0 and the true C/N0 were substituted into Equation (21) to obtain the C/N0 attenuation.
Figure 2 shows the theoretical
C/N0 attenuation and the 1000 Monte Carlo simulation results. The two sets of results are relatively consistent. For the case of
, the attenuation of the estimated
C/
N0 caused by large frequency errors is less than 1 dB, and the effect of frequency errors is negligible. However, when
is greater than 5 and frequency errors are greater than 20 Hz, the effect of frequency errors on the estimated
C/
N0 is very significant. When
and
Hz, the
term in the numerator of Equation (16) quickly decays to near zero. The estimated
C/
N0 and
C/
N0 attenuation also drop sharply. Therefore, there is a jump in the
C/
N0 attenuation curve of
at
Hz. In addition, we limited the minimum value of
C/
N0 to 0 dB-Hz, that is, the maximum attenuation of
C/
N0 is –40 dB, as seen in
Figure 2.
3.2. Effects on the Code Tracking Error Estimation
When a large frequency tracking error occurs, if the coherent integration time is limited so as to not exceed the data bit interval, Equation (1) can be rewritten as follows:
where
is the trivial frequency error;
is the large frequency error;
denotes the pseudo-code period, where for the GPS L1 C/A,
is 1 ms;
and
are the number of pseudocode periods corresponding to
and
, respectively; and
and
are phase errors. In Equation (22), for simplicity, it is assumed that large frequency errors are aligned with the pseudocode periods. Phase errors can be expressed as
where
is the initial phase error.
The autocorrelation amplitudes E and L in Equation (7) are attenuated by the term in the case of a large frequency error, resulting in an increase in the code discriminator error. Since the probability distributions of E and L follow the complex Rice distribution, it is difficult to obtain the analytical expression of the effect of frequency error on the code discriminator. The Monte Carlo method was applied to numerical simulation analyses. For the code discriminator, the coherent integration time was set to 20 ms. The time range of large frequency errors was 0–20 ms, that is, in Equation (22), The true C/N0 was set to 40 dB-Hz.
Figure 3 shows the root mean square (RMS) errors of the code discriminator in Equation (6) for 1000 Monte Carlo simulations. When the frequency error is close to 0, the RMS errors of the code discriminator is less than 0.04 chips. The maximum code discriminator output error caused by a frequency error is close to 0.2 chips, which is about five times that without a frequency tracking error.
4. Proposed MIMU/GNSS UTC Integration Architecture
The results in the previous section indicate that the large frequency tracking error causes the estimated C/N0 to rapidly decrease. Furthermore, the code discriminator estimation error caused by the large frequency error is greater than the error without frequency error. If the large frequency tracking error cannot be eliminated in time, especially in highly dynamic environments, it will seriously impair the performance of the navigation system.
In order to enhance the performance of the UTC navigation system under large frequency errors, it is necessary to improve the CUTC integration architecture shown in
Figure 1. In this section, we propose a new UTC integration architecture.
Figure 4 summarizes the structure of the proposed MIMU/GNSS UTC architecture.
The architecture is referred to as the enhanced UTC (EUTC) integration in the rest of the paper. A large frequency error detector and a serial refined frequency processor based on retuned frequency are added to each tracking loop to reduce the impact of large frequency tracking errors on the coherent integration results. In addition, an adaptive prefilter is used to replace the conventional channel prefilter to enhance the estimation performance of abrupt frequency errors. Next, we introduce the principles of these three modules in detail.
4.1. Large Frequency Error Detector
The limited operating range of the time domain frequency discriminator is an important reason for the degradation of system performance induced by large frequency errors. If the frequency error exceeds the pull-in range, the frequency discriminator outputs an erroneous estimate.
In the EUTC system, the frequency error output by the frequency discriminator is first forwarded to the large frequency error detector. The main purpose of the detector is to detect whether the current frequency tracking error is anomalous. Additionally, if the frequency error exceeds the working range of the time domain frequency discriminator, a correct frequency error estimate is provided by the detector.
Figure 5 depicts a detailed flow chart of the large frequency error detector.
In the large frequency error detector, the frequency error output from the four-quadrant arctangent frequency discriminator is first compared with the preset upper limit . In our study, is set to 20 Hz. If the absolute value of is less than the threshold , the current frequency tracking is normal, and the frequency error is passed to the channel prefilter. Moreover, the original coherent integration results are directly inputted to the NWPR C/N0 estimator. Otherwise, it means that the current epoch is affected by a large frequency tracking error.
Subsequently, it is further determined whether the frequency error exceeds the range of the discriminator. If the absolute value of
is greater than or equal to the discriminator threshold
, the discriminator output is unreliable. In our study,
is set to the single-sided frequency pull-in range multiplied by 0.8. For example, with a 10 ms predetection integration time, the single-sided frequency pull-in range is 50 Hz, and
is equal to 40 Hz. In order to obtain the correct frequency error, a transform domain frequency discriminator [
15,
29] with a larger working range is applied to reprocess the coherent integration results. The new frequency error estimate is input to the refined frequency processor. In contrast, the frequency error that does not exceed the pull-in range of the discriminator is directly inputted to the refined frequency processor.
4.2. Refined Frequency Processor
Another reason for the system performance degradation induced by large frequency errors is the loss of consistency between the replica carrier signal and the incoming signal. We introduce refined frequency processors to overcome this problem. The generalized structure of the refined frequency processor is shown in
Figure 6.
The refined frequency processor is the core module of the EUTC integration system. Its main function is to fix coherent integration results. The operation of the refined frequency processor can be divided into three steps.
First, according to the frequency error output by the large frequency error detector, the retuned replica carrier frequency is obtained as
where
denotes the output of the large frequency error detector.
Second, the mixing and correlation operations of the current epoch are performed, again based on the retuned carrier frequency. Since the code frequency is usually much smaller than the carrier frequency, the code Doppler frequency shift is also much smaller than the carrier Doppler frequency shift. If the coherent integration time does not exceed 20 ms, the code phase offset caused by a large frequency error is not significant. Therefore, in most cases, we do not need to correct the code Doppler shift and can continue to use the code NCO command of the current epoch in the refined frequency processor. The correlators output a new set of coherent integration values.
Thirdly, the code phase error and frequency error are estimated based on new coherent integration values. At this point, the frequency error is nominal. A four-quadrant arctangent frequency discriminator is employed in the refined frequency processor. Moreover, the new coherent integration results are inputted to the
C/
N0 estimator to obtain a more accurate
C/
N0 estimate. The carrier frequency tracking error of the current epoch can be expressed as
where
is the frequency discriminator output in the refined frequency processor.
Note that the refined frequency processor does not significantly reduce the operating efficiency of a GNSS receiver. In most operating environments, carrier frequency tracking errors do not exceed the threshold. Therefore, it is not necessary to call the refined frequency processor frequently. In addition, since there is no need to adjust the code frequency, the sample values of the three kinds of replica code sequences (early, prompt, and late) can be saved during the first correlation operation. In this way, in the refined frequency processor, the code NCOs generating replica code sequences can be omitted. For these reasons, the refined frequency processor will not significantly increase the computational burden of the receiver.
4.3. Adaptive Prefilter with Multiple Fading Factors
The conventional channel prefilter depicted in
Section 2.1 usually uses a CKF. A fatal drawback of the CKF is its poor performance in estimating mutation states. For the CKF in the steady state, the state covariance matrix of the filter tends to a fixed value, causing the gain matrix of the Kalman filter to tend to zero. In other words, for a steady-state CKF, the measurement correction is weakened. If a large frequency tracking error suddenly occurs, the estimated frequency error of a conventional prefilter will deviate from its true value. In this case, the CKF exhibits a serious model mismatch. An adaptive Kalman filter is an effective method to counteract the problem [
30]. An adaptive Kalman filter with multiple fading factors is proposed to construct an adaptive channel prefilter.
According to the basic theory of Kalman filtering, if there is no model mismatch, the innovation sequence of a CKF is a white noise sequence. In the process of filter updating, the variance matrix of the innovation sequence can be estimated by the following recursive expression [
31]:
where
is the estimate of the variance matrix at time
k,
is the variance matrix estimate of the previous epoch,
is the fading weighting factor, and
is the innovation vector.
The calculation of the fading weighting factor is a recursive process. The update method is expressed as follows [
31]:
where
is the initial value, and
is a preset constant with a value range of 0.9–0.999.
is approximately equal to the theoretical innovation variance matrix, given by
where
is the measurement matrix,
is the state transition matrix,
is the state covariance matrix,
is the system noise matrix, and
is the measurement noise matrix.
The channel prefilter contains three state variables. For filters with multiple state variables, if the uncertainty of the model has dissimilar effects on different states, multiple fading factors should be used to adaptively adjust the different state components.
The multiple fading factor matrix
is defined as
where
is the coefficient to be calculated,
denotes a diagonal matrix composed of elements in the parentheses, and
is the fading proportional coefficient corresponding to the
i-th component.
The coefficient
is a scalar parameter, expressed as follows:
where
represents the matrix trace operation. Detailed expressions of
and
are provided as follows:
Note that the lower limit of the fading factor is 1.
is a diagonal matrix. The diagonal element
is the fading factor corresponding to the
i-th state component, defined as follows:
The difference between the adaptive Kalman filter with multiple fading factors and the classic Kalman filter is the time update of the state covariance matrix. The update process of the former is as follows:
The state-space model of the adaptive channel prefilter is the same as the conventional prefilter. The code phase error is not prone to sudden changes. Therefore, the corresponding fading proportional coefficient is set to 1.