C/N0 Estimator Based on the Adaptive Strong Tracking Kalman Filter for GNSS Vector Receivers

The carrier-to-noise ratio (C/N0) is an important indicator of the signal quality of global navigation satellite system receivers. In a vector receiver, estimating C/N0 using a signal amplitude Kalman filter is a typical method. However, the classical Kalman filter (CKF) has a significant estimation delay if the signal power levels change suddenly. In a weak signal environment, it is difficult to estimate the measurement noise for CKF correctly. This article proposes the use of the adaptive strong tracking Kalman filter (ASTKF) to estimate C/N0. The estimator was evaluated via simulation experiments and a static field test. The results demonstrate that the ASTKF C/N0 estimator can track abrupt variations in C/N0 and the method can estimate the weak signal C/N0 correctly. When C/N0 jumps, the ASTKF estimation method shows a significant advantage over the adaptive Kalman filter (AKF) method in terms of the time delay. Compared with the popular C/N0 algorithms, the narrow-to-wideband power ratio (NWPR) method, and the variance summing method (VSM), the ASTKF C/N0 estimator can adopt a shorter averaging time, which reduces the hysteresis of the estimation results.


Introduction
Global navigation satellite system (GNSS) receivers use tracking loops to synchronize replicated signals with received signals to maintain a continuous lock on the received signals. Traditional GNSS receivers use scalar-tracking loops (STLs). Vector-tracking loops (VTLs) are a new type of tracking loop. The basic strategy of VTLs is to combine signal tracking and navigation state (position and velocity) estimation into a single algorithm. Compared to STLs, VTLs improve the receiver tracking sensitivity and dynamic adaptability, increase the resistance to interference, and have the ability to bridge short-term interrupt signals [1].
In GNSS receivers, the carrier-to-noise ratio (C/N 0 ), which is the ratio of the signal power to the noise power density, is an important parameter for measuring the quality of the received signal. In the acquisition phase, C/N 0 provides a priori information that is used to determine the optimal detection threshold. In the tracking phase, C/N 0 information facilitates the suppression of near-far interference and the avoidance of loss of lock. In particular, various positioning algorithms also use C/N 0 to calculate the navigation solutions, such as the weighted least squares method [2]. C/N 0 can also be used to facilitate the determination of the current working environment (indoor or outdoor) of the receiver and the construction of an environmentally adaptive navigation system [3]. In a vector receiver, C/N 0 is an important basis for determining the validity of the measurements and for estimating the measurement noise [4]. In summary, based on the C/N 0 , GNSS receivers can implement a variety of demonstrate that the C/N 0 estimation method that is based on the adaptive strong tracking Kalman filter (ASTKF) has strong advantages in terms of real-time performance and estimation accuracy.
The remainder of this paper is organized in the following manner. The second section describes the basic principles of the vector receiver and the mathematical model that are used in this paper. The algorithmic details of the adaptive C/N 0 estimation method are presented in the third section. In the fourth and fifth sections, the proposed method is evaluated via simulation experiments and a static field test. The conclusions of this study are presented in the final section.

Vector-Tracking Loops
The vector-tracking algorithm is an advanced satellite navigation signal-processing algorithm. A conventional scalar receiver assigns a tracking channel to each visible satellite, and the tracking channel processes the baseband signal using a code loop (delay lock loop, DLL) and a carrier loop (phase lock loop, PLL). Each tracking channel is independent of the others, which ignores the inherent relationships between channels and between navigation parameters and tracking channels [1]. Therefore, this is not a structural form that realizes the best performance. Vector-tracking loops leverage a Kalman filter to simultaneously conduct signal tracking and navigation solutions calculation. The navigation parameters are used to control the operation of the tracking loops, and the correlations between tracking channels are fully considered, which can significantly improve the tracking performance of the receiver. Moreover, the vector-tracking loops are the basis for the construction of a GNSS/inertial deep integration navigation system.
The vector receiver uses the traditional acquisition and scalar tracking algorithm to decode the ephemeris and to obtain the first navigation solution, which is used to complete the necessary initialization work [13,14]. In vector mode, the receiver uses the predicted position and velocity and the ephemeris to calculate the control command of the numerically controlled oscillator (NCO) to generate the local replica code and carrier. After the local replica signal and the received signal complete the mixing and correlation operations, the correlation results are input into the code discriminator and the carrier frequency discriminator, and the code phase and carrier frequency tracking error are calculated. Then, the signal-tracking errors are converted into pseudorange residuals and pseudorange rate residuals as the measurement vector of the navigation Kalman filter. States of the Kalman filter are fed back to correct the position and velocity prediction errors. The basic structure of the vector-tracking loops is illustrated in Figure 1. The details of one of the tracking channels are presented in the dashed box.
Sensors 2020, 20, 739 3 of 18 adaptive strong tracking Kalman filter (ASTKF) has strong advantages in terms of real-time performance and estimation accuracy. The remainder of this paper is organized in the following manner. The second section describes the basic principles of the vector receiver and the mathematical model that are used in this paper. The algorithmic details of the adaptive C/N0 estimation method are presented in the third section. In the fourth and fifth sections, the proposed method is evaluated via simulation experiments and a static field test. The conclusions of this study are presented in the final section.

Vector-Tracking Loops
The vector-tracking algorithm is an advanced satellite navigation signal-processing algorithm. A conventional scalar receiver assigns a tracking channel to each visible satellite, and the tracking channel processes the baseband signal using a code loop (delay lock loop, DLL) and a carrier loop (phase lock loop, PLL). Each tracking channel is independent of the others, which ignores the inherent relationships between channels and between navigation parameters and tracking channels [1]. Therefore, this is not a structural form that realizes the best performance. Vector-tracking loops leverage a Kalman filter to simultaneously conduct signal tracking and navigation solutions calculation. The navigation parameters are used to control the operation of the tracking loops, and the correlations between tracking channels are fully considered, which can significantly improve the tracking performance of the receiver. Moreover, the vector-tracking loops are the basis for the construction of a GNSS/inertial deep integration navigation system.
The vector receiver uses the traditional acquisition and scalar tracking algorithm to decode the ephemeris and to obtain the first navigation solution, which is used to complete the necessary initialization work [13,14]. In vector mode, the receiver uses the predicted position and velocity and the ephemeris to calculate the control command of the numerically controlled oscillator (NCO) to generate the local replica code and carrier. After the local replica signal and the received signal complete the mixing and correlation operations, the correlation results are input into the code discriminator and the carrier frequency discriminator, and the code phase and carrier frequency tracking error are calculated. Then, the signal-tracking errors are converted into pseudorange residuals and pseudorange rate residuals as the measurement vector of the navigation Kalman filter. States of the Kalman filter are fed back to correct the position and velocity prediction errors. The basic structure of the vector-tracking loops is illustrated in Figure 1. The details of one of the tracking channels are presented in the dashed box.   In Figure 1, the navigation Kalman filtering (NKF) is the core of a vector receiver, which estimates the navigation solutions and closes the tracking loops simultaneously. From the  In Figure 1, the navigation Kalman filtering (NKF) is the core of a vector receiver, which estimates the navigation solutions and closes the tracking loops simultaneously. From the perspective of NKF, the vector-tracking algorithm includes two forms: centralized filtering and federated filtering. The state vector of NKF can select the position-state formulation or the pseudorange-state formulation [15,16]. Centralized filtering avoids the filter divergence that is caused by filter cascade. The position-state formulation has a clearer physical meaning, and the state dimension is lower than the pseudorange-state formulation. Therefore, the centralized filtering structure in the form of the position-state formulation is used as the basic reference frame for vector-tracking loops design.
In the position-state formulation, the typical states of the navigation Kalman filter are the receiver's position, velocity, and clock states [15]. The state vector of the navigation Kalman filter is where δP 3×1 , δV 3×1 and δA 3×1 denote the position errors, velocity errors, and acceleration errors, respectively, in three directions and δB 2×1 represents the receiver's clock bias and clock drift errors. The discretized form of the system equation is as follows: where Φ k,k−1 is the state transition matrix, which is formulated as follows: where T s is the discretization interval and I 3×3 denotes a third-order unit matrix. In Equation (2), η k−1 is the process noise. The variance matrix is: where q 2 x , q 2 y and q 2 z denote the power spectral density (PSD) of the acceleration disturbance noise in three directions and q 2 b and q 2 d are the PSDs of the receiver clock phase noise and the frequency noise, respectively.
The measurement equation of the navigation Kalman filter is as follows: where ∆ρ and ∆ . ρ are the pseudorange residuals and the pseudorange rate residuals, respectively, that are output by the discriminators; u los denotes the unit vector of the receiver and satellite line of sight; and M is the number of visible satellites.
The symbols IE k , QE k , IL k and QL k represent the early and late complex correlator output samples at time k. The correlator spacing is 1/2 chip. IP k,1 , IP k,2 , QP k,1 and QP k,2 represent prompt complex correlator output samples (subscripts 1 and 2 denote the sample outputs in the first half and the second half, respectively, of the integration period). As shown in Figure 1, each tracking channel uses a code discriminator and a carrier frequency discriminator to process the correlator outputs and to estimate the code and carrier tracking errors. The tracking errors of the discriminator output are converted into pseudorange and pseudorange rate residuals as Kalman filter measurements. The forms of the code phase and carrier frequency discriminator are as follows [15].
(1) Code discriminator where Y R,k is the code discriminator output, which has been converted to a pseudo-range residual Y R,k (unit: m): where ρ e,k is ideal pseudorange residual, β is the chip length (unit: m), A F,k is the signal amplitude, and υ R,k is the discriminator output noise.
Let υ R,k = υ R,k β/2A 2 F,k . The variance is: where T is the predetection integration time and c/n o is the carrier-to-noise ratio in Hz.
(2) Carrier frequency discriminator where ε k denotes the code phase error, R(ε k ) is the C/A code correlation function, f err,k is the frequency error, and υ RR,k is the noise term.
The discriminator output is converted to the pseudo-range rate residual Y RR,k (unit: m/s): In Equation (10), υ RR,k denotes the pseudorange rate residual measurement noise. Its detailed formula and variance are as follows: (12) where f L1 is the Global Positioning System (GPS) L1 frequency and c is the speed of light.

Adaptive Carrier-to-Noise Ratio (C/N 0 ) Estimation Method
According to Section 2, the calculation of the noise variances in the vector tracking loops requires signal C/N 0 information. In addition, C/N 0 can also be used for the detection and isolation of fault-tracking channels.
If there is occlusion of the signal transmission path, the sudden disappearance or occurrence of the signal will cause a sudden change in the signal power, and the C/N 0 will also exhibit a short-term large-scale jump. In contrast to conventional receivers, vector receivers can bridge short-term interrupt signals. To fully utilize the advantages of vector-tracking loops, the C/N 0 estimation algorithm must adapt to the C/N 0 mutation environment. The classical C/N 0 estimators have a large delay in response to the sudden change of C/N 0 , which will weaken the performance advantage of vector receivers in harsh environments; hence, these estimators are not suitable for vector receivers.
The strong tracking Kalman filter can accurately track the state of a mutation [12]. By using a strong tracking filter to estimate the amplitude of the signal, it can effectively cope with the possible mutation of the received signal. The Allan analysis of variance adaptively estimates the measurement noise by segmenting the frequency bands of the measurement outputs. Based on these two algorithms, a C/N 0 estimation method that is based on the adaptive strong tracking Kalman filter is designed.
When the receiver has completed signal acquisition and is tracking a signal well, the coherent integration values of the in-phase (I) and quadraphase (Q) outputs of the prompt branch of the tracking channel can be reduced to functions of c/n 0 [17].
where T coh denotes the coherent integration time, c/n 0 is the carrier-to-noise ratio in Hz, φ e is the carrier phase error, and n I and n Q are Gaussian white noises with mean zero and variance σ 2 n . The coherent integral values are functions of C/N 0 . A statistical analysis of the coherent integrated sample values can estimate C/N 0 .
Define a statistic in the following form: Its mean is: where A k is the effective amplitude of the signal and A k is a biased estimate of the square of the signal amplitude. According to Equation (16), C/N 0 in dB-Hz can be expressed as follows: According to Equation (17), estimation of C/N 0 requires the signal amplitude and noise variance information. The noise variance is estimated in the receiver via a noise correlator. The noise correlator uses a non-existing pseudo-random noise (PRN) code; hence, its output can be regarded as zero-mean Gaussian white noise [18]. In each 20 ms coherent integration period, the noise correlator outputs N samples. Empirical measurements of the noise variance are obtained as: where n j represents the noise correlator output. The interference noise in the receiver tracking channel is mainly thermal noise, and its variance changes slowly with time. Therefore, the noise variance measurement is smoothed to obtain a more accurate measurement [4].
where α is a filter coefficient, the value of which can be found in [4]. Each tracking channel is configured with an amplitude Kalman filter for estimating the signal amplitude. The amplitude Kalman filter is a single-state filter. The discretized system model and measurement equation are as follows: where A is the effective amplitude of the signal; Z k is the filter measurement, the value of which is equal to A in Equation (14); and w and v are the system noise and the measurement noise, respectively. The state transition matrix Φ k,k−1 and the measurement matrix H k are both 1.
The variance of the measurement noise is: The main reason for the sudden change of the C/N 0 due to signal occlusion is the sudden change in the signal power, namely, the signal amplitude (filter state) has a large jump. After the filter reaches a steady state, the classical Kalman filter (see Table 1) state covariance matrix (P k ) tends to a fixed value. The Kalman filter gain approaches zero. The time update effect is strengthened, and the measurement update function is weakened [19]. This causes the state estimate of the filter to deviate substantially from the true value of the catastrophic state. Table 1. Classical Kalman filter (CKF) process [19].

System propagation
To solve the divergence problem of CKF, the strong tracking Kalman filter introduces a time-varying fading factor into the calculation of the state-one-step prediction mean square error matrix, thereby improving the performance in tracking the state. The covariance propagation of the amplitude Kalman filter that is based on the STKF is as follows: where λ k ≥ 1 is a time-varying fading factor. Figure 2 depicts the time-varying fading factor calculation process. In Figure 2, 0 < κ ≤ 1 is the forgetting factor and L ≥ 1 is weakening factor.  In the amplitude Kalman filter, the noise variance is estimated via Equation (22). In the case of low C/N0, A  may be smaller than the noise variance 2 n σ . Calculating the noise variance using Equation (22) will result in a negative value, thereby causing the filter to be abnormal. To avoid a negative value of the measurement noise variance, a measurement noise adaptive method that is based on the Allan variance is used to realize the online estimation of the noise variance in real time.
The measurement variance estimation algorithm that is based on the Allan variance is [20]: where 2, 3, 4, k =  and the initial value 1 R is calculated via Equation (22).
In Equation (24), the estimation process of the measurement noise variance that is based on Allan variance and the Kalman filtering process are completely independent of each other, thereby effectively reducing the risk of Kalman filter divergence [20]. According to Equation (24), the strong tracking filter adjusts the one-step prediction mean square error matrix according to the measurement innovation. Compared with the adaptive method that is based on the innovation sequence, the filtering process that is based on the Allan variance is more stable.
To reduce the influence of the old measurement noise, an exponential fading memory weighted average method can be utilized. The recursive estimation formula for measuring the noise variance is as follows [20]: where the initial value 0 1 β = and 0 1 b < < is the fading factor.
By combining the noise variance and the state estimate of the amplitude Kalman filter, the following 0 c n estimation formula is obtained: In the amplitude Kalman filter, the noise variance is estimated via Equation (22). In the case of low C/N 0 , A may be smaller than the noise varianceσ 2 n . Calculating the noise variance using Equation (22) will result in a negative value, thereby causing the filter to be abnormal. To avoid a negative value of the measurement noise variance, a measurement noise adaptive method that is based on the Allan variance is used to realize the online estimation of the noise variance in real time.
The measurement variance estimation algorithm that is based on the Allan variance is [20]: where k = 2, 3, 4, · · · and the initial valueR 1 is calculated via Equation (22). In Equation (24), the estimation process of the measurement noise variance that is based on Allan variance and the Kalman filtering process are completely independent of each other, thereby effectively reducing the risk of Kalman filter divergence [20]. According to Equation (24), the strong tracking filter adjusts the one-step prediction mean square error matrix according to the measurement innovation. Compared with the adaptive method that is based on the innovation sequence, the filtering process that is based on the Allan variance is more stable.
To reduce the influence of the old measurement noise, an exponential fading memory weighted average method can be utilized. The recursive estimation formula for measuring the noise variance is as follows [20]:R where the initial value β 0 = 1 and 0 < b < 1 is the fading factor.
Sensors 2020, 20, 739 9 of 18 By combining the noise variance and the state estimate of the amplitude Kalman filter, the following c/n 0 estimation formula is obtained: The C/N 0 estimates are averaged over multiple times to obtain more accurate results: A detailed algorithmic flow chart of the ASTKF C/N 0 estimation method is shown in Figure 3.
The C/N0 estimates are averaged over multiple times to obtain more accurate results: A detailed algorithmic flow chart of the ASTKF C/N0 estimation method is shown in Figure 3.
Calculate the time-varying fading factor (see Figure 2)  Figure 3. Summary of the adaptive strong tracking Kalman filter (ASTKF) carrier-to-noise ratio (C/N0) estimation algorithm.

Computer Simulation Experiments
To evaluate the performance of the ASTKF C/N0 estimation algorithm, simulation tests were conducted using the GNSS signal simulator and the vector software receiver. Figure 4 shows a block diagram of the simulation experiment's data generation and processing. In the tests, the Skydel SDX satellite navigation signal simulator was used to generate in real-time the in-phase/quadrature (I/Q) samples representing the GPS baseband signals. Moreover, the SDX simulator can adjust the power of the simulation signal online [21]. Then, a universal software radio peripheral converted baseband I/Q samples to the GPS L1 C/A radio frequency (RF) signal. The RF front-end converted the simulated RF signal into a digital intermediate frequency (IF) signal and stored it on the computer.

Computer Simulation Experiments
To evaluate the performance of the ASTKF C/N 0 estimation algorithm, simulation tests were conducted using the GNSS signal simulator and the vector software receiver. Figure 4 shows a block diagram of the simulation experiment's data generation and processing. In the tests, the Skydel SDX satellite navigation signal simulator was used to generate in real-time the in-phase/quadrature (I/Q) Sensors 2020, 20, 739 10 of 18 samples representing the GPS baseband signals. Moreover, the SDX simulator can adjust the power of the simulation signal online [21]. Then, a universal software radio peripheral converted baseband I/Q samples to the GPS L1 C/A radio frequency (RF) signal. The RF front-end converted the simulated RF signal into a digital intermediate frequency (IF) signal and stored it on the computer. The signal simulation and acquisition equipment is shown in Figure 5. Table 2 presents the main parameters of the RF front end. The vector software receiver performed post-processing analysis on the digital IF signal and output the C/N 0 estimation results. The signal simulation and acquisition equipment is shown in Figure 5.

C/N0 Mutation Scenario Evaluation
The motion form of the receiver was set to static. In the simulation process, the signal C/N0 was changed in step form to evaluate the estimation performance of the ASTKF C/N0 estimator during C/N0 hopping. At the beginning of the simulation, C/N0 was set to 45 dB-Hz. At 60 s, C/N0 was increased to 55 dB-Hz in steps. At 120 s, C/N0 was reduced to 15 dB-Hz in steps, and at 180 s, it was restored to 45 dB-Hz.
To fairly evaluate the advantages of the strong tracking filter over the classical Kalman filter, a  The signal simulation and acquisition equipment is shown in Figure 5.

C/N0 Mutation Scenario Evaluation
The motion form of the receiver was set to static. In the simulation process, the signal C/N0 was changed in step form to evaluate the estimation performance of the ASTKF C/N0 estimator during C/N0 hopping. At the beginning of the simulation, C/N0 was set to 45 dB-Hz. At 60 s, C/N0 was increased to 55 dB-Hz in steps. At 120 s, C/N0 was reduced to 15 dB-Hz in steps, and at 180 s, it was restored to 45 dB-Hz.
To fairly evaluate the advantages of the strong tracking filter over the classical Kalman filter, a measurement noise adaptive technique that is based on the Allan variance is introduced into the

C/N 0 Mutation Scenario Evaluation
The motion form of the receiver was set to static. In the simulation process, the signal C/N 0 was changed in step form to evaluate the estimation performance of the ASTKF C/N 0 estimator during C/N 0 hopping. At the beginning of the simulation, C/N 0 was set to 45 dB-Hz. At 60 s, C/N 0 was increased to 55 dB-Hz in steps. At 120 s, C/N 0 was reduced to 15 dB-Hz in steps, and at 180 s, it was restored to 45 dB-Hz.
To fairly evaluate the advantages of the strong tracking filter over the classical Kalman filter, a measurement noise adaptive technique that is based on the Allan variance is introduced into the standard amplitude Kalman filter. A C/N 0 estimation algorithm that is based on adaptive Kalman filter (AKF) is constructed as a benchmark. The averaging time for both methods is set to 0.5 s. Figure 6 presents the C/N 0 estimation results of the AKF and ASTKF methods. The results of the AKF and ASTKF methods are approximately consistent when C/N 0 is stable. However, when C/N 0 shows a large jump (at 60 s, 120 s and 180 s), the ASTKF estimation method can track the C/N 0 change more quickly, while the AKF estimation result shows a significant lag.
Sensors 2020, 20, 739 11 of 18 standard amplitude Kalman filter. A C/N0 estimation algorithm that is based on adaptive Kalman filter (AKF) is constructed as a benchmark. The averaging time for both methods is set to 0.5 s. Figure 6 presents the C/N0 estimation results of the AKF and ASTKF methods. The results of the AKF and ASTKF methods are approximately consistent when C/N0 is stable. However, when C/N0 shows a large jump (at 60 s, 120 s and 180 s), the ASTKF estimation method can track the C/N0 change more quickly, while the AKF estimation result shows a significant lag. When the signal amplitude changes abruptly, C/N0 changes substantially. The system model that is represented by Equation (20) has a severe mismatch with the real model. The mean square error that is calculated by the classical Kalman filter in Table 1 is smaller than the true value, thereby resulting in a small filter gain value, and the impact of the measurement innovation on the state update is weak. According to Equation (22) and the calculation process of time-varying fading factor, we can see that the STKF utilizes the measurement innovation when calculating the one-step prediction mean square error matrix. Therefore, when C/N0 jumps, the filter gain of the ASTKF method is larger than the filter gain of the AKF method, and the response to the sudden change in state is more rapid.

Algorithm Precision Analysis
To evaluate the estimation accuracy of the ASTKF estimation method, two sets of GPS L1 C/A signals that differed in terms of C/N0 were generated by the SDX satellite signal simulator. For one When the signal amplitude changes abruptly, C/N 0 changes substantially. The system model that is represented by Equation (20) has a severe mismatch with the real model. The mean square error that is calculated by the classical Kalman filter in Table 1 is smaller than the true value, thereby resulting in a small filter gain value, and the impact of the measurement innovation on the state update is weak. According to Equation (22) and the calculation process of time-varying fading factor, we can see that the STKF utilizes the measurement innovation when calculating the one-step prediction mean square error matrix. Therefore, when C/N 0 jumps, the filter gain of the ASTKF method is larger than the filter gain of the AKF method, and the response to the sudden change in state is more rapid.

Algorithm Precision Analysis
To evaluate the estimation accuracy of the ASTKF estimation method, two sets of GPS L1 C/A signals that differed in terms of C/N 0 were generated by the SDX satellite signal simulator. For one set, C/N 0 was set to 55 dB-Hz, which corresponds to a strong satellite signal; for the other set, C/N 0 was set to 18 dB-Hz, which corresponds to a weak satellite signal. The digital IF signals were post-processed by the software receiver. Two classical methods, the NWPR and the VSM were selected as the reference. To analyse the effect of the averaging time, four averaging times (0.5 s, 1 s, 3 s and 5 s) were used.
In the simulation tests, the C/N 0 estimation results are smaller than the set values due to signal attenuation that is caused by the simulator, the RF front-end, and the connection cables. Therefore, the accuracy of the estimation is measured in terms of the standard deviation (Std) of the estimation results.

Strong Signal Environment Evaluation
The C/N 0 of the simulated signal was set to 55 dB-Hz. In the real environment, the outdoor GPS signal has a C/N 0 of approximately 35~55 dB-Hz [17]. The C/N 0 of 55 dB-Hz is almost the maximum value of the real GPS signal, which represents a strong signal environment. The length of the sampled signal is approximately 10 minutes. Figure 7 presents the C/N 0 estimation results that were obtained using four averaging times. The estimation results of the two classical C/N 0 estimation methods are similar. In addition to the initial transition phase, the estimation results of the ASTKF method are more stable than those of the NWPR and the VSM.
Sensors 2020, 20, 739 12 of 18 post-processed by the software receiver. Two classical methods, the NWPR and the VSM were selected as the reference. To analyse the effect of the averaging time, four averaging times (0.5 s, 1 s, 3 s and 5 s) were used. In the simulation tests, the C/N0 estimation results are smaller than the set values due to signal attenuation that is caused by the simulator, the RF front-end, and the connection cables. Therefore, the accuracy of the estimation is measured in terms of the standard deviation (Std) of the estimation results.

Strong Signal Environment Evaluation
The C/N0 of the simulated signal was set to 55 dB-Hz. In the real environment, the outdoor GPS signal has a C/N0 of approximately 35~55 dB-Hz [17]. The C/N0 of 55 dB-Hz is almost the maximum value of the real GPS signal, which represents a strong signal environment. The length of the sampled signal is approximately 10 minutes. Figure 7 presents the C/N0 estimation results that were obtained using four averaging times. The estimation results of the two classical C/N0 estimation methods are similar. In addition to the initial transition phase, the estimation results of the ASTKF method are more stable than those of the NWPR and the VSM. Table 3 presents a statistical comparison of the estimation results. In the strong signal environment, the standard deviation of the ASTKF estimation results is smaller than that of the results of the other two methods using the same averaging time. In addition, according to Table 3, the estimated standard deviation of ASTKF using the averaging time of 0.5 s is smaller than that of NWPR and VSM using the averaging time of 5 s. Therefore, compared with the NWPR and the VSM, the ASTKF C/N0 estimation algorithm can adopt a smaller averaging time, which facilitates the reduction of the lag of the estimation result. In the strong signal environment, using the ASTKF method, after the averaging time exceeds 0.5 s, continuing to increase the averaging time does not significantly improve the estimation accuracy of C/N0.   Table 3 presents a statistical comparison of the estimation results. In the strong signal environment, the standard deviation of the ASTKF estimation results is smaller than that of the results of the other two methods using the same averaging time. In addition, according to Table 3, the estimated standard deviation of ASTKF using the averaging time of 0.5 s is smaller than that of NWPR and VSM using the averaging time of 5 s. Therefore, compared with the NWPR and the VSM, the ASTKF C/N 0 estimation algorithm can adopt a smaller averaging time, which facilitates the reduction of the lag of the estimation result. In the strong signal environment, using the ASTKF method, after the averaging time exceeds 0.5 s, continuing to increase the averaging time does not significantly improve the estimation accuracy of C/N 0 .

Weak Signal Environment Evaluation
The simulation signal C/N 0 was set to 18 dB-Hz for the simulation of a weak signal environment with a simulation time of 10 min. Figure 8 presents the simulation results of the ASTKF C/N 0 estimation method in this weak signal environment.

Weak Signal Environment Evaluation
The simulation signal C/N0 was set to 18 dB-Hz for the simulation of a weak signal environment with a simulation time of 10 min. Figure 8 presents the simulation results of the ASTKF C/N0 estimation method in this weak signal environment. Table 4 presents a statistical comparison of the C/N0 estimation results.    According to Figure 8 and Table 4, in the weak signal environment, the C/N 0 estimation error is larger than that in the strong signal environment. However, compared with the NWPR and the VSM, the estimation results of the ASTKF estimation method are more stable, which is consistent with the simulation results in the strong signal environment. Similarly, the estimated standard deviation of ASTKF using an averaging time of 0.5 s is smaller than that of NWPR with an averaging time of 5 s and that of VSM with an averaging time of 3 s. Therefore, regardless of the strength of the received satellite signal, the ASTKF estimation method can use a shorter averaging time than the NWPR and the VSM.
In addition, comparing Tables 3 and 4, in the weak signal environment, increasing the averaging time can significantly improve C/N 0 estimation accuracy. Therefore, for receivers that are operating in special environments (such as indoor environments), the averaging time should be extended suitably.

Static Field Test
To further evaluate the performance of the ASTKF method in a real environment, a static field test was conducted. The static test site was selected in an open, outdoor area, and the test environment is shown in Figure 9. In the test, the RF front-end was used to record the GPS L1 C/A code signal, and the signal length was approximately 5 min. The vector software receiver was used for post-processing analysis. During the field test, satellites 10, 12, 14, 20, 21, 24, 25 and 32 were visible. Figure 10 shows a sky plot of the visible GPS satellites. The ASTKF and two popular methods (NWPR and VSM) were used to estimate C/N 0 for comparative analysis. The averaging time of 0.5 s was selected as the empirical value of the averaging time. In addition, comparing Table 3 and Table 4, in the weak signal environment, increasing the averaging time can significantly improve C/N0 estimation accuracy. Therefore, for receivers that are operating in special environments (such as indoor environments), the averaging time should be extended suitably.

Static Field Test
To further evaluate the performance of the ASTKF method in a real environment, a static field test was conducted. The static test site was selected in an open, outdoor area, and the test environment is shown in Figure 9. In the test, the RF front-end was used to record the GPS L1 C/A code signal, and the signal length was approximately 5 min. The vector software receiver was used for post-processing analysis. During the field test, satellites 10, 12, 14, 20, 21, 24, 25 and 32 were visible. Figure 10 shows a sky plot of the visible GPS satellites. The ASTKF and two popular methods (NWPR and VSM) were used to estimate C/N0 for comparative analysis. The averaging time of 0.5 s was selected as the empirical value of the averaging time.   As can be seen from Figure 10, satellite 10 has the highest elevation angle, and the signal reception quality is satisfactory. In a short time (5 min), the signal power and C/N0 do not change substantially. Figure 11 presents its C/N0 estimation results. According to Figure 11, in the real signal environment, the ASTKF estimation results are less volatile than the NWPR and the VSM estimation results. Figure 12 is a box diagram of the C/N0 estimation results of satellite 10 at various averaging times. According to Figure 12, the ASTKF method achieves higher accuracy (the result distribution is more concentrated). Moreover, the ASTKF estimation error with an averaging time of 0.5 s is less than that of the NWPR and the VSM with an averaging time of 5 s. These results are consistent with the conclusions of the simulation tests.  As can be seen from Figure 10, satellite 10 has the highest elevation angle, and the signal reception quality is satisfactory. In a short time (5 min), the signal power and C/N 0 do not change substantially. Figure 11 presents its C/N 0 estimation results. According to Figure 11, in the real signal environment, the ASTKF estimation results are less volatile than the NWPR and the VSM estimation results. Figure 12 is a box diagram of the C/N 0 estimation results of satellite 10 at various averaging times. According to Figure 12, the ASTKF method achieves higher accuracy (the result distribution is more concentrated). Moreover, the ASTKF estimation error with an averaging time of 0.5 s is less than that of the NWPR and the VSM with an averaging time of 5 s. These results are consistent with the conclusions of the simulation tests. As can be seen from Figure 10, satellite 10 has the highest elevation angle, and the signal reception quality is satisfactory. In a short time (5 min), the signal power and C/N0 do not change substantially. Figure 11 presents its C/N0 estimation results. According to Figure 11, in the real signal environment, the ASTKF estimation results are less volatile than the NWPR and the VSM estimation results. Figure 12 is a box diagram of the C/N0 estimation results of satellite 10 at various averaging times. According to Figure 12, the ASTKF method achieves higher accuracy (the result distribution is more concentrated). Moreover, the ASTKF estimation error with an averaging time of 0.5 s is less than that of the NWPR and the VSM with an averaging time of 5 s. These results are consistent with the conclusions of the simulation tests.  As Figure 10 shows, satellite 24 has a low elevation angle, and the signal is susceptible to interference and attenuation. Satellite 24 is selected for evaluation of the estimation performance of the ASTKF method when the signal condition in the environment is poor. Figure 13 shows that the trends in the ASTKF and the other two methods are consistent. At 100~200 s, the signal power and C/N 0 show wide ranges of changes. The ASTKF method can correctly track this change in C/N 0 . The test results demonstrate that in the real environment, the ASTKF method realizes satisfactory estimation performance on signals of poor quality. As Figure 10 shows, satellite 24 has a low elevation angle, and the signal is susceptible to interference and attenuation. Satellite 24 is selected for evaluation of the estimation performance of the ASTKF method when the signal condition in the environment is poor. Figure 13 shows that the trends in the ASTKF and the other two methods are consistent. At 100~200 s, the signal power and C/N0 show wide ranges of changes. The ASTKF method can correctly track this change in C/N0. The test results demonstrate that in the real environment, the ASTKF method realizes satisfactory estimation performance on signals of poor quality.

Conclusions
In this paper, we propose a C/N0 estimation method that is based on an adaptive strong tracking Kalman filter, which considers the characteristics and application environment of the vector receivers. Based on the STKF and a measurement noise adaptation that is based on Allan variance, the ASTKF C/N0 estimation method estimates the C/N0 values of vector receivers in signal strength hopping and weak signal environments. The results of the first simulation test demonstrate that the estimated delay of the ASTKF method is significantly smaller than that of the AKF method when the C/N0 jumps. The results of the second simulation experiment demonstrate that the estimated standard deviation of the ASTKF method with an averaging time of 0.5 s is smaller than that of the NWPR and the VSM with a longer averaging time in both the strong signal and the weak signal simulation environments. Therefore, compared to the NWPR and the VSM, the ASTKF method can  As Figure 10 shows, satellite 24 has a low elevation angle, and the signal is susceptible to interference and attenuation. Satellite 24 is selected for evaluation of the estimation performance of the ASTKF method when the signal condition in the environment is poor. Figure 13 shows that the trends in the ASTKF and the other two methods are consistent. At 100~200 s, the signal power and C/N0 show wide ranges of changes. The ASTKF method can correctly track this change in C/N0. The test results demonstrate that in the real environment, the ASTKF method realizes satisfactory estimation performance on signals of poor quality.

Conclusions
In this paper, we propose a C/N0 estimation method that is based on an adaptive strong tracking Kalman filter, which considers the characteristics and application environment of the vector receivers. Based on the STKF and a measurement noise adaptation that is based on Allan variance, the ASTKF C/N0 estimation method estimates the C/N0 values of vector receivers in signal strength hopping and weak signal environments. The results of the first simulation test demonstrate that the estimated delay of the ASTKF method is significantly smaller than that of the AKF method when the C/N0 jumps. The results of the second simulation experiment demonstrate that the estimated standard deviation of the ASTKF method with an averaging time of 0.5 s is smaller than that of the NWPR and the VSM with a longer averaging time in both the strong signal and the weak signal simulation environments. Therefore, compared to the NWPR and the VSM, the ASTKF method can

Conclusions
In this paper, we propose a C/N 0 estimation method that is based on an adaptive strong tracking Kalman filter, which considers the characteristics and application environment of the vector receivers. Based on the STKF and a measurement noise adaptation that is based on Allan variance, the ASTKF C/N 0 estimation method estimates the C/N 0 values of vector receivers in signal strength hopping and weak signal environments. The results of the first simulation test demonstrate that the estimated delay of the ASTKF method is significantly smaller than that of the AKF method when the C/N 0 jumps. The results of the second simulation experiment demonstrate that the estimated standard deviation of the ASTKF method with an averaging time of 0.5 s is smaller than that of the NWPR and the VSM with a longer averaging time in both the strong signal and the weak signal simulation environments. Therefore, compared to the NWPR and the VSM, the ASTKF method can use a shorter averaging time to reduce the lag of the estimation results. The static field test data demonstrate the applicability of the ASTKF method to signals in practice, and the ASTKF method can track large variations in the true signal C/N 0 . In addition, the results of the field test support the conclusion of the simulation test that the estimated standard deviation of the ASTKF method is significantly smaller than that of the NWPR and the VSM.