Next Article in Journal
Simulations of Snowmelt Runoff in a High-Altitude Mountainous Area Based on Big Data and Machine Learning Models: Taking the Xiying River Basin as an Example
Next Article in Special Issue
GNSS-Based Driver Assistance for Charging Electric City Buses: Implementation and Lessons Learned from Field Testing
Previous Article in Journal
Relative Sea Level Trends for the Coastal Areas of Peninsular and East Malaysia Based on Remote and In Situ Observations
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

High-Accuracy Absolute-Position-Aided Code Phase Tracking Based on RTK/INS Deep Integration in Challenging Static Scenarios

1
Department of Geomatics Engineering, University of Calgary, Calgary, AL T2N 1N4, Canada
2
Department of Aeronautical and Aviation Engineering, The Hong Kong Polytechnic University, Hung Hom, Hong Kong SAR, China
3
School of Earth Sciences and Engineering, Hohai University, Nanjing 211100, China
4
Shanghai Key Laboratory of Navigation and Location-Based Service, School of Electronic Information and Electrical Engineering, Shanghai Jiao Tong University, Shanghai 200240, China
*
Author to whom correspondence should be addressed.
Remote Sens. 2023, 15(4), 1114; https://doi.org/10.3390/rs15041114
Submission received: 2 January 2023 / Revised: 12 February 2023 / Accepted: 15 February 2023 / Published: 17 February 2023
(This article belongs to the Special Issue GNSS for Urban Transport Applications II)

Abstract

:
Many multi-sensor navigation systems urgently demand accurate positioning initialization from global navigation satellite systems (GNSSs) in challenging static scenarios. However, ground blockages against line-of-sight (LOS) signal reception make it difficult for GNSS users. Steering local codes in GNSS basebands is a desirable way to correct instantaneous signal phase misalignment, efficiently gathering useful signal power and increasing positioning accuracy. Inertial navigation systems (INSs) have been used as effective complementary dead reckoning (DR) sensors for GNSS receivers in kinematic scenarios, resisting various forms of interference. However, little work has focused on whether INSs can improve GNSS receivers in static scenarios. Thus, this paper proposes an enhanced navigation system deeply integrated with low-cost INS solutions and GNSS high-accuracy carrier-based positioning. First, an absolute code phase is predicted from base station information and integrated solutions of the INS DR and real-time kinematic (RTK) results through an extended Kalman filter (EKF). Then, a numerically controlled oscillator (NCO) leverages the predicted code phase to improve the alignment between instantaneous local code phases and received ones. The proposed algorithm is realized in a vector-tracking GNSS software-defined radio (SDR). Results of the time-of-arrival (TOA) and positioning based on real-world experiments demonstrated the proposed SDR.

1. Introduction

Demands for GNSS devices continue to increase and will continue doing so in decades to come, due to the explosion of smartphone-based navigation [1] and intelligent transportation construction [2]. Therefore, realizing accurate positioning in challenging environments using global navigation satellite system (GNSS) devices is a hot debate these days. However, current GNSS receiver techniques cannot easily satisfy next-generation positioning, navigation, and timing (PNT) performance, due to the intrinsic mechanism of GNSS electromagnetic waveforms. For instance, unlike LTE/5G wireless communication signals, having orthogonal frequency division multiple access (OFDMA) and substantial transmission power [3,4], GNSS signals are transmitted at the same frequency. Each signal channel is divided through the code division multiple access (CDMA). The GNSS signals are also confronted with severe channel fading over long-distance transmission (approximately 20,000 km for the GNSS satellites operating in the medium Earth orbit). The former is naturally immune to the multipath effect, while the GNSS signals are less capable of resisting these forms of interference in transmission. Due to this, recent research proposed a hybrid optical–wireless network that achieves decimeter-level terrestrial positioning and sub-nanosecond timing, aimed as a supplement to, or even substitute for, the GNSS device in the future commercial market [5].
Against this background, there are many remaining problems and vast space regarding new GNSS receiver design, especially in challenging cases, and it is urgent to embark on renewing the current commercial receiver architecture. The CDMA signals are sensitive to the non-line-of-sight (NLOS) ray within one chip range, causing big issues in channel estimation. In recent years, super-resolution algorithms (SRAs) emerged in GNSS signal processing to separate line-of-sight (LOS) and NLOS signals into different orthogonal spaces [6,7,8]. Recent work presented a graph Fourier transform (GFT) filter denoising the complex correlator outputs to replace the old GNSS tracking loop, which can be considered a direct way to steer the code phase in challenging cases [9]. Except for the separation using the state-of-the-art SRAs or the GNSS antenna changes [10,11,12], modeling the superposition signals formed with LOS and NLOS rays is mainstream in the current GNSS community as a means to overcome multipath interference [13,14,15].
Early in the 1990s, research revealed the prominence of GNSS products in overcoming the predicament of tracking accurate Doppler frequency between the user’s end and the satellite—vector delay lock loop (VDLL) [16]. The vector approach is an intelligent choice to model the LOS Doppler frequency into a more proper shape. The basic idea of this technique is to leverage the user’s navigation estimates to predict the Doppler frequency as compensation for the time of arrival (TOA) estimation in the GNSS baseband processing, providing a more accurate single-point positioning (SPP) solution. The VDLL allows GNSS researchers to optimize baseband signal modeling with information from multiple channels instead of a conservative loop filter algorithm in a single channel. Later, this idea was extended to assist carrier phase modeling, for which it was nominated as a vector phase lock loop (VPLL) [17]. Improved versions, and more specific experimental results, based on the VPLL techniques, were presented in the ensuing years [18,19]. However, the stability and convergence of the VPLL are vulnerable to being destroyed when a biased error in the code phase modeling is not removed (meaning that a multipath effect interferes with the GNSS baseband and its high-precision navigation solutions). The GNSS carrier and code signals are synchronized and significantly interact with each other.
The wireless communication theory indicates that fast fading [20], such as the multipath effect on carrier signals, causes a modeling error of a maximum of approximately one-fourth of a signal wavelength, e.g., about 5 cm for global positioning system (GPS) L1 signals [21]. This value is much smaller than the GNSS code phase error. For example, a typical value of the multipath effect on the code signal is commonly at the meter level, which is two orders of the magnitude of the carrier phase [22]. Partially resorting to this, carrier-aiding is always used in a traditional GNSS baseband to support the code signal estimation [23]. Similarly, a vector delay/frequency lock loop (VDFLL) was also presented to enhance the code phase tracking by combining the carrier-aiding and the VDLL approaches [24].
The conventional vector tracking techniques impose an indirect approach to improving the TOA modeling over the code tracking process inside a GNSS receiver. Vector tracking has the potential to enable the baseband to yield a more accurate code Doppler frequency production. Then, the improved code Doppler replicates instantaneous code phases (i.e., TOA modeling) more precisely, contributing to a higher-quality navigation solution. This type of vector receiver can ultimately alleviate harmful interference to LOS signal estimation, especially when the user’s end is moving [25]. Nevertheless, little efficiency is available in the traditional vector tracking loop once the received LOS and NLOS rays are not well discriminated, in terms of the Doppler frequency feature (i.e., the frequency or Fourier domain). Unfortunately, this is often the case for today’s GNSS users.
The authors’ recent research presented a method to optimize the TOA model in the GNSS tracking process assisted by an absolute position solution, not simply relying on the code frequency error between the baseband signal replica and the mapped code signal prediction from the user’s navigation solution [26]. More specifically, we took advantage of the high-accuracy positioning solution (more accurate than code-based-only positioning) to improve TOA modeling, aided by the vector tracking technique in the code phase domain, instead of the code frequency domain. By coincidence, a recent paper using the classic SRA, i.e., root MUSIC, was also published aiming to achieve an analogous goal [6].
An inertial navigation system (INS) can resist high-frequency random noise in the user’s navigation as it works upon autonomous dead reckoning (DR), rather than relying on external information [27]. Hence, integrating INS has been a prevalent means to rug the GNSS-based navigation system. To date it has attracted much attention in the navigation field to the extent that low-cost INS increases GNSS-based navigation [28,29]. However, research space remains in terms of the influence of low-cost INS on GNSS baseband signal processing.
Regarding these discussions, this work proposes an improved version of the authors’ previous research [26,30]. More specifically, a low-cost inertial measurement unit (IMU) is deeply integrated into a GNSS vector delay/frequency/phase lock loop (VDFPLL) software-defined radio (SDR). Meanwhile, an extended Kalman filter (EKF) is used to fuse carrier-based positions and INS DR results. Generally, the carrier-based positioning algorithms can include real-time kinematic (RTK) relying on the base station, and precise point positioning (PPP) based on the high-precision model [31]. Finally, compared to our previous research [26], the main contributions of this work include the following:
  • A low-cost IMU is combined with the float RTK solutions via an EKF and integrated navigation solutions are used to improve the GNSS TOA modeling in a code phase domain instead of a frequency/Fourier domain;
  • An RTK/INS VDFPLL SDR is proposed and developed, wherein RTK solutions and INS dead reckoning results are integrated, and a traditional scalar tracking loop (STL), VDFLL, and VDFPLL are realized and combined;
  • An approach showing the effectiveness of the INS in enhancing GNSS baseband processing in a static scenario is presented, based on real-world experiments, which little previous research has discussed.
A diagram explaining the difference between the proposed and traditional algorithms towards the code phase estimation in the GNSS baseband is provided in Figure 1. Before explaining Figure 1, it is worth emphasizing that the instantaneous code phase error consists of two primary parts regarding standard GNSS baseband processing. They are an absolute one, from the initial code phase error, and a relative one, caused by the Doppler frequency error, in which the received signal subtracts the local replica. These are discussed below.
At first, the conventional STL causes an apparent code Doppler frequency error and initial code phase error (see Figure 1a) [23]. Then, the traditional vector tracking compensates for parts of the Doppler frequency error, reducing the relative code phase error (see Figure 1b) [16,32]. Next, the vector tracking technique is further aided by an IMU sensor, so the GNSS baseband becomes more capable of alleviating the frequency error [33], but the initial code phase error remains (see Figure 1c). After this, the RTK-based absolute-position-aided (APA) technique is involved in tracking, and the initial code phase error can be reduced (see Figure 1d) [26]. Finally, this work proposes a deep integration method of INS and GNSS RTK processing to correct a more absolute code phase error in the local replica (see Figure 1e).
Figure 2 further depicts the code phase errors at the timestamp (see the dashed red lines in Figure 1) in the tracking process regarding the RTK-only APA and RTK/INS APA techniques. It is worth emphasizing that the timestamp denotes the local clock count to get the TOA estimation in the GNSS baseband (i.e., the time to extract the instantaneous GNSS measurements). Compared to our previous work [26], the proposed algorithm can improve the code phase estimation by removing the initial code phase error related to the multipath/NLOS effect and the carrier cycle slip (because of the involvement of the RTK-based APA technique). The situation always arises in the real world. For example, the multipath interference in a static GNSS user’s receiver causes such an absolute code phase error issue, which is challenging in the current GNSS community. Therefore, this research derives a method to solve the issue.
The remainder of this paper is organized as follows. Section 2 introduces the methodology, where the proposed VDFPLL, based on RTK/INS deep integration, is discussed in detail. The RTK-position-aided VDFPLL is briefly introduced. Two real-world stationary experiments are provided and discussed in Section 3. Finally, Section 4 concludes this work.

2. Materials and Methods

This section investigates how the APA code phase tracking in a GNSS baseband is realized with the proposed VDFPLL (deeply integrated with the float-RTK positioning and the INS DR). We first recap on the VDFPLL, based on standalone GNSS RTK solutions. Then, its improved form, deeply integrating the INS DR navigation solutions, is discussed. Finally, how the proposed RTK/INS VDFPLL is combined with the STL and the VDFLL in a GPS SDR is elaborated on.

2.1. RTK-Position-Aided VDFPLL

As mentioned earlier, the VDFPLL provides a way to directly steer the local code replica with the user’s absolute position in the code phase domain instead of the conventional code frequency domain. Our previous work achieved this goal by presenting a practical means in the baseband that applies the user’s RTK solution as a source of high-accuracy code phase prediction. This technique is briefly described for the integrity of this work.
The architecture of the RTK-position-aided VDFPLL is illustrated in Figure 3, where APA and RPA correspond to absolute- and relative-position-aided, respectively. It is worth noting that the RPA is achieved with the traditional VDFLL technique. The absolute code phase is also tracked, aided by the vector tracking technique in the code phase domain. In this case, the following discriminates the entire code phase error
Δ τ ^ r , k i = Δ τ ^ r , k i , S + Δ τ ^ r , k i , R T K
with
Δ τ ^ r , k i , R T K = f c c ρ ˜ r , k 1 i ρ ^ r , k 1 i , R T K
ρ ^ r , k 1 i , R T K = r ^ r , k 1 i , R T K + B ^ r , ρ , t , k 1 + B ^ ρ , s y s , k 1 i κ D B ^ r , m p , k 1
r ^ r , k 1 i , R T K = p ^ k 1 i p ^ r , k 1 R T K
where subscript k denotes the index of tracking epochs; Δ τ ^ r , k i , S is the traditional discriminated code phase error through an early-minus-late-envelope code discriminator; Δ τ ^ r , k i , R T K is the code phase error obtained from the APA approach; ρ ˜ r , k 1 i and ρ ^ r , k 1 i , R T K are the pseudoranges measured from the code tracking filter and predicted from the float RTK solution, respectively; r ^ r , k 1 i , R T K is the predicted geometry distance; p ^ k 1 i is the vector of satellite position; p ^ r , k 1 R T K is the vector of the estimated float RTK position; B ^ r , ρ , t , k 1 + B ^ ρ , s y s , k 1 i is the summation of the local clock bias error estimation and systematic error estimation, computed from base station information and master satellite measurements [26]; B ^ r , m p , k 1 is the estimated multipath delay error imposed on the absolute code phase error via a between-satellite single difference algorithm, and κ D is its tuned coefficient constant, based on the involved early–late spacing [30].
Next, the work process of the RTK-position-aided VDFPLL in the GPS SDR within the same tracking epoch is outlined as follows:
Step 1: the SDR receives the incoming intermediate frequency (IF) GPS L1 C/A data via front-end equipment;
Step 2: integration and dumping (I&D) procedures are implemented upon correlators between the local code replica and the incoming IF GPS signals;
Step 3: the correlator output passing through the traditional code discriminator yields Δ τ ^ r , k S ;
Step 4: the bias of the discriminated code error is compensated by the RTK-position-aided (i.e., the APA operation) code error estimation Δ τ ^ r , k i , R T K gives Δ τ ^ r , k i ;
Step 5: a code tracking loop filter denoises the code phase error from Step 4;
Step 6: an RPA technique (i.e., the VDFLL) is executed to alleviate the code frequency error in the code-tracking process;
Step 7: a numerically controlled oscillator (NCO) leverages the output of Step 6 to produce the TOA estimation (the raw output of the code loop filter, aided by the Doppler prediction), and the pseudorange measurements (de-noised by the carrier smoothing technique);
Step 8: the RTK engine leverages the pseudoranges and carrier phases (the raw output of the carrier loop filter, aided by the Doppler prediction) from all the tracking channels, navigation data, and the base station information to compute the float RTK solutions;
Step 9: the APA code phase error Δ τ ^ r , k i , R T K is computed with the float-RTK solutions and the pseudorange measurement by (2);
Step 10: repeating Step 2, the RTK-position-aided VDFPLL works for the next tracking epoch.
To conclude, the work process of the VDFPLL, based on the float-RTK solutions executed in a GNSS SDR is addressed.

2.2. The Proposed VDFPLL Based on RTK/INS Deep Integration

2.2.1. Architectures of the Proposed VDFPLL SDR

The architectures of the proposed APA VDFPLL GPS SDR deeply integrated with the float RTK solutions and INS dead reckoning results are displayed in Figure 4. It is worth mentioning that hybrid tracking loops are adopted here due to the data rates discrepancy corresponding to various sources, i.e., the proposed SDR tracking, the base station, and the IMU sensor raw data.
First, there are two procedures for updating the code tracking loop with the APA method in the SDR. On the one hand, the TOA model is predicted from the integrated float RTK/INS EKF, as depicted in Figure 4c. On the other hand, the proposed VDFPLL updating rate is 5 Hz, which is higher than the RTK solution rate, so the INS DR navigation solutions (with a rate of 50 Hz) are interpolated in the updating process when the RTK solutions (with a rate of 1 Hz) are absent. It is worth noting that we took two samples of the IMU raw data per update to compensate for coning and sculling errors, so the raw data rate of the IMU was 100 Hz, while the DR navigation results were at the rate of 50 Hz.
Finally, as the tracking loop updating rate in the proposed SDR baseband was 200 Hz, much higher than the VDFPLL rate, the traditional STLs for code and carrier tracking were interpolated across the intervals where the VDFPLL was not activated.
As a result, the following three tracking loops jointly work in the proposed RTK/INS-based VDFPLL SDR: the VDFPLL, based on the RTK/INS integrated EKF (see Figure 4c), the VDFPLL, based on the INS DR (see Figure 4b), and the traditional STL (see Figure 4a).

2.2.2. RTK/INS EKF Navigator and INS DR

As illustrated in Figure 4, three types of TOA estimation are formed in the proposed GNSS SDR, corresponding to Figure 4a–c, respectively. They are elaborated on below.
In the proposed architecture Figure 4c, the RTK position solution p ^ G , k 1 R T K is not directly input to the “APA VDFPLL” block as in the architecture in Figure 3. Instead, this solution is transferred to the EKF navigator integrated with the mechanization results computed from the low-cost IMU raw data. The fusion algorithm of the integrated EKF is explained in detail later. So, the integrated RTK/INS solution output by the EKF engine is finally used to execute the APA VDFPLL algorithm.
At first, the absolute position is estimated from the integrated RTK/INS EKF navigator (see Figure 4c). The RTK engine comes from an open-source package goGPS v0.4.3 [34]. Then, the float RTK is deeply integrated into the proposed SDR, introduced in the authors’ previous work [26]. The SDR platform, to realize the deep integration of RTK and INS, was built and investigated in the authors’ previous publications [35,36].
We now discuss the EKF algorithm used in this work. The state transition equation is given by
δ x k e = Φ k , k 1 e δ x k 1 e + w k 1 e
with
k = k / K
k = k / M
where superscript e represents the Earth-centered, Earth-fixed (ECEF) coordinate frame; subscript k denotes the epoch index of the EKF updates; K is the integer ratio of the INS DR and the EKF updating rates, where the former and the latter are 50 Hz and 1 Hz (constrained by the rate of the base station information), respectively; k is the epoch index of INS DR solutions; M is the integer ratio of the GNSS tracking rate and the INS updating rate where the tracking rate (200 Hz) is no lower than the INS updating rate (50 Hz) here; so it satisfies K , M Z + ; Φ k , k 1 e is the transition matrix; w k 1 e is the process noise vector. Then, the state vector of the EKF model in the ECEF frame is given by
δ x k e = δ ψ e T , δ v e T , δ p e T , δ b g T , δ b a T k T
where δ ψ e is the attitude error vector; δ v e is the 3D velocity error vector; δ p e is the 3D position error vector; δ b g and δ b a are the respective gyro and accelerometer bias error vectors.
Next, the observation equation is provided as
δ z k = H k e δ x k e + v k
where H k e is the observation matrix; v k is the observation noise vector. The observation vector, including position errors and velocity errors, is provided as
δ z k = x ˙ ˜ I x ˙ ˜ G , N L S y ˙ ˜ I y ˙ ˜ G , N L S z ˙ ˜ I z ˙ ˜ G , N L S T , x ˜ I x ˜ G , R T K y ˜ I y ˜ G , R T K z ˜ I z ˜ G , R T K T k T
where x ˜ , y ˜ , z ˜ and x ˙ ˜ , y ˙ ˜ , z ˙ ˜ correspond to the 3D positions and velocities w.r.t. the ECEF frame, respectively; subscript I and G correspond to the solutions obtained from the INS and the GNSS, respectively; the subscript “RTK” means that the GNSS position results are solved by the float RTK algorithm [26], and the subscript “NLS” represents that the GNSS velocity results are calculated from the standard non-linear least squared (NLS) method [37]. How to build Φ k , k 1 e and H k e , as well as how to form the process noise covariance matrix and the observation noise covariance matrix are referred to in [35].
After the system model was built, the recursive estimation of the EKF algorithm predicts and updates the state vector [38]. Finally, upon the time epoch, where base station information is available for the RTK algorithm, the navigation solutions corresponding to the velocity, position, and attitude information from the EKF algorithm are given by
C ^ G / I , b , k 1 e I 3 δ ψ ^ k 1 e × C ^ I , b , k 1 e
v ^ G / I , k 1 e = v ^ I , k 1 e δ v ^ k 1 e
p ^ G / I , k 1 e = p ^ I , k 1 e δ p ^ k 1 e
where · × denotes the skew matrix operator; I 3 is the 3-order identity matrix; δ v ^ k 1 e δ p ^ k 1 e , and δ ψ ^ k 1 e are the estimated state vectors about velocity and position errors, and attitude errors, and v ^ G / I , k 1 e , p ^ G / I , k 1 e and C ^ G / I , k 1 e are the estimated navigation vectors (corresponding to the respective velocity, position, and attitude); v ^ I , k 1 e , p ^ I , k 1 e and C ^ I , b , k 1 e are the counterparts solely upon the INS DR process, which are introduced later.
Within the epochs where the base station information is missing, the EKF-based results at the previous epoch can contribute to the INS DR process at the current epoch in the following way
v ^ G / I | D R , k e = v ^ G / I , k 1 e + C ¯ G / I , k 1 e f ˜ i b , k 1 b 2 ω i e × v ^ G / I , k 1 e + g e p ^ G / I , k 1 e Δ t I
p ^ G / I | D R , k e = p ^ G / I , k 1 e + v ^ G / I | D R , k e + v ^ G / I , k 1 e Δ t I 2
C ^ G / I | D R , b , k e = C i e Δ t I C ^ G / I , b , k 1 e I 3 + ω ˜ i b , k 1 b Δ t I ×
with
ω i e = 0 0 ω i e T
C i e Δ t I = cos ω i e Δ t I sin ω i e Δ t I 0 sin ω i e Δ t I cos ω i e Δ t I 0 0 0 1
where Δ t I is the updating interval of the EKF; f ˜ i b , k 1 b and ω ˜ i b , k 1 b are the specific force and angular rate measurement vectors of the body frame w.r.t. ECEF frame; ω i e is the Earth rotation rate, i.e., 7.292115 × 10−5 rad/s and ω i e is its vector form; g e p ^ G / I , k 1 e is the gravity acceleration vector function in the ECEF frame varying with the user’s position p ^ G / I , k 1 e (see Equations (2.133) and (2.142) in [27]); C i e Δ t I is the Earth rotation matrix from the Earth-centered inertial (ECI) to the ECEF coordinate frame varying with the updating interval Δ t I ; C ¯ G / I , b , k 1 e isthe averaging transformation matrix w.r.t. the body-to-ECEF-frame coordinate obtained from C ^ G / I , b , k 1 e (see Equations (5.84) and (5.85) in [27]).
Then, considering the case where the navigating solutions are derived from the INS DR process (see Figure 4b), the mechanization in the ECEF frame can be expressed as
v ^ I , k e = v ^ G / I | D R , k 1 e + C ¯ I , b , k 1 e f ˜ i b , k 1 b 2 ω i e × v ^ G / I | D R , k 1 e + g e p ^ G / I | D R , k 1 e Δ t I
p ^ I , k e = p ^ G / I | D R , k 1 e + v ^ I , k e + v ^ G / I | D R , k 1 e Δ t I 2
C ^ I , b , k e = C i e Δ t I C ^ G / I | D R , b , k 1 e I 3 + ω ˜ i b , k 1 b Δ t I ×
or
v ^ I , k e = v ^ I , k 1 e + C ¯ I , b , k 1 e f ˜ i b , k 1 b 2 ω i e × v ^ I , k 1 e + g e p ^ I , k 1 e Δ t I
p ^ I , k e = p ^ I , k 1 e + v ^ I , k e + v ^ I , k 1 e Δ t I 2
C ^ I , b , k e = C i e Δ t I C ^ I , b , k 1 e I 3 + ω ˜ i b , k 1 b Δ t I ×
where C ¯ I , b , k 1 e is the averaging transformation matrix computed from C ^ I , b , k 1 e .
It is worth mentioning that the tracking rate (200 Hz) was higher than the INS DR updating rate (50 Hz). So, three out of four tracking intervals did not have an update for the INS DR. Assuming that the user’s navigation results are not changed significantly over the time of 0.02s (i.e., 1 50 Hz ), when k = k / M , we could approximate that the navigation estimations in the following k + 1 th, ( k + 2 ) th, and k + 3 th tracking epochs were identical to the ones computed at the kth, to interpolate the tracking epochs without the INS updating.

2.2.3. RTK/INS APA Code Phase Tracking

The baseband TOA modeling at the start of the kth epoch, aided by the absolute positions from the integrated RTK/INS EKF and the INS DR, is estimated through
T O A ^ k i = c 1 ρ ˜ k i δ t ^ r , k
with the pseudorange model of
ρ ˜ k i ρ ˜ k 1 i + c f c 1 f c + f ^ c o d e , d o p , k i T c o h + Δ τ ^ c o d e , k , 0 i + , R T K / I N S
where ρ ˜ k 1 i and ρ ˜ k i are the instantaneous pseudorange measurements at the respective previous and current epochs; δ t ^ r , k is the estimated local clock bias error; f c and c are the spreading code rate and the speed of light, respectively; T c o h is the coherent integration time f ^ c o d e , d o p , k i is the estimated code Doppler frequency and Δ τ ^ c o d e , k , 0 i + , R T K / I N S is the proposed initial code phase error estimate in chips at the start of the kth epoch. The estimation processes are discussed later.
On the one hand, f ^ c o d e , d o p , k i can be written as
f ^ c o d e , d o p , k i = f c f r f ˜ c a r r , d o p , k + T c o h 1 Δ τ ^ r , k i +
f ˜ c a r r , d o p , k i = Δ f ^ c a r r , k i , a i d + T c o h 1 Δ φ ^ r , k i +
with
Δ f ^ c a r r , k i , a i d = f r c v ^ G / I , k 1 e · e ^ k i p ^ G / I , k 1 e v ^ k i · e ^ k i p ^ G / I , k 1 e + c δ t ˙ ^ r , k c δ t ˙ ^ k i
or
Δ f ^ c a r r , k i , a i d = f r c v ^ G / I | D R , k 1 e · e ^ k i p ^ G / I | D R , k 1 e v ^ k i · e ^ k i p ^ G / I | D R , k 1 e + c δ t ˙ ^ r , k c δ t ˙ ^ k i
Δ f ^ c a r r , k i , a i d = f r c v ^ G / I | D R , k e · e ^ k i p ^ G / I | D R , k e v ^ k i · e ^ k i p ^ G / I | D R , k e + c δ t ˙ ^ r , k c δ t ˙ ^ k i
Δ f ^ c a r r , k i , a i d = f r c v ^ I , k e · e ^ k i p ^ I , k e v ^ k i · e ^ k i p ^ I , k e + c δ t ˙ ^ r , k c δ t ˙ ^ k i
Δ f ^ c a r r , k i , a i d = f r c v ^ I , k 1 e · e ^ k i p ^ I , k 1 e v ^ k i · e ^ k i p ^ I , k 1 e + c δ t ˙ ^ r , k c δ t ˙ ^ k i
where f ˜ c a r r , d o p , k denotes the carrier Doppler frequency measurement; T c o h 1 Δ τ ^ r , k i + and T c o h 1 Δ φ ^ r , k i + are the filtered code phase error and the filtered carrier phase error through the loop filters, respectively, which have accounted for the coherent integration interval in tracking, and its input is Δ τ ^ x , k i which is explained later, with x I , G / I , G / I | D R ; Δ f ^ c a r r , k i , a i d is the aided Doppler frequency computed via the user’s velocity estimation, known as a VDFLL technique [32]; v ^ x , k / v ^ x , k and δ t ˙ ^ r , k are the predicted user’s velocity vector and the predicted user’s clock drift; v ^ k i and δ t ˙ ^ k i are the satellite velocity vector and the satellite clock drift predicted with the broadcast ephemeris; e ^ k i · is the operator of the unit cosine vector varied with the position estimation.
As mentioned above, Δ τ ^ x , k i is the APA discriminated code phase error. There are three ways to obtain this estimate in the code tracking loop: the respective RTK/INS EKF solution, the two-consecutive-epoch INS DR, and INS DR right after the EKF. These are computed as
Δ τ ^ G / I , k i = Δ τ ^ r , k i , S + Δ τ ^ r , k i , A P A r ^ G / I , k 1 i
Δ τ ^ I , k i = Δ τ ^ r , k i , S + Δ τ ^ r , k i , A P A r ^ I , k 1 i
Δ τ ^ G / I | D R , k i = Δ τ ^ r , k i , S + Δ τ ^ r , k i , A P A r ^ G / I | D R , k 1 i
with
r ^ G / I , k 1 i = p ^ k 1 i p ^ G / I , k 1 e
r ^ I , k 1 i = p ^ k 1 i p ^ I , k 1 e
r ^ G / I | D R , k 1 i = p ^ k 1 i p ^ G / I | D R , k 1 e
where Δ τ ^ r , k i , ( S ) is the traditional discriminated code phase error as introduced earlier; p ^ k 1 i is the satellite position vector computed from the broadcast ephemeris; Δ τ ^ x , k i , A P A · is the operator to obtain the absolute code phase error with the geometry distance prediction (i.e., the APA process) and the error models, and its analytical expression is defined as
Δ τ ^ r , k i , A P A r ^ x , k 1 i f c c ρ ˜ r , k 1 i r ^ x , k 1 i + B ^ r , ρ , t , k 1 + B ^ ρ , s y s , k 1 i κ D B ^ r , m p , k 1
Therefore, based on these discussions, it is easy to find that the absolute code phase error estimate Δ τ ^ c o d e , 0 , k i + , R T K / I N S in (4) (i.e., the difference between the received initial code phase and the counterpart of the local code replica synthesized with the NCO) can be alleviated by the proposed algorithm.
Finally, the proposed algorithm in this paper is summarized in Algorithm 1. This algorithm is realized in a GPS SDR prototype where L1 C/A signals are used to validate the TOA and position estimation performance.
Algorithm 1 High-accuracy APA GNSS code phase tracking based on RTK/INS deep integration
Require: k * k mod K M , subject to K , M Z + and k , k * N
1:while new digital IF samples (for a coherent processing interval) are received at the kth
epoch do
2: Synthesize the code and carrier local replicas with the code/carrier NCOs;
3: Produce the early- prompt- and late-branch samples through the I&D using the local replicas
 and the received IF samples;
4: Discriminate the code/carrier phase errors with the outputs of the I&D (i.e., correlator outputs);
5:if the base station information is available at the tracking epoch(s) k * 2 M , , k * M 1  then
6:  Compensate for the discriminated code phase error with (14);
7:else if the base station information is available at the tracking epoch(s) k * M , , k * 1 then
8:  Compensate for the discriminated code phase error with (12);
9:else
10:  Compensate for the discriminated code phase error with (13);
11:end if
12: Optimize the compensated code phase error from Step 6/8/10 with a 1-Hz 2nd-order loop filter;
13:if the vector tracking trigger (5 Hz) is activated then
14:  Optimize the discriminated carrier phase error with a 0.5-Hz 1st-order loop filter;
15:  if the RTK/INS EKF is updated at the epoch(s) k * , k * 2 M , k * 3 M , , k * K 1 M  then
16:   Predict the carrier Doppler with (10);
17:  else if the RTK/INS EKF is updated at the epoch(s) k * 2 M + 1 , , k * M 1  then
18:   Predict the carrier Doppler with (8);
19:  else if the RTK/INS EKF is updated at the epoch(s) k * M  then
20:   Predict the carrier Doppler with (9);
21:  else if the RTK/INS EKF is updated at the epoch(s) k * M + 1 , , k * 1 then
22:   Predict the carrier Doppler with (7);
23:   else
24:   Predict the carrier Doppler with (11);
25:   end if
26:  Compute the carrier frequency with (6) (for carrier NCO);
27:else
28:  Optimize and predict the carrier Doppler with a 15-Hz 3rd-order loop filter (for carrier NCO);
29:end if
30: Compute the code frequency with (5) (for code NCO);
31:end while

3. Results and Discussion

The experimental equipment was set up as shown in Figure 5. Two stationary data sets were collected in the real world to verify the proposed algorithm. A NovAtel antenna was used to receive the GPS L1 C/A IF signals through a Fraunhofer IIS RF frond-end, where the IF sampling rate was 10.125 MHz. The IMU raw data were collected from the Crossbow Nav 440 device, where the IMU’s gyro and accelerometer bias stability were 10 deg/h and 1 mg, respectively. It is worth mentioning that two samples were taken for updating the inertial sensor data for our navigation equation, so the updating rate of the INS DR was half (50 Hz) of the IMU raw data rate (100 Hz).
The reference positions of the two experiments were obtained by averaging the results provided by the Crossbow Nav440 GPS/INS integration solutions (the centers of the IMU sensor and the GNSS antenna were sufficiently close in the setup and neglected in this experiment). The reference position was accepted to validate the experiment. First, the experiment tested the GPS L1 C/A code signal, of which the code chip was around 293 m. Second, by observing the reference position, compared to the parking lines in Google Maps in the following positioning results, it was possible to approximately infer that the biased position error of the reference did not exceed 20 cm, as most of the random errors and only minor biased errors remained after the averaging operation. Third, the following ground-truth-based hardware-in-the-loop (HIL) test outperformed the positioning accuracy of all the other algorithms. So, the reference coordinates were acceptable in this experiment.
The proposed algorithm was tested in a GPS SDR platform where the coherent integration time was 5 ms, the classic discriminators were chosen as the noncoherent-early-minus-late-amplitude code discriminator and Costas carrier discriminator, and the early-late spacing was four IF sample intervals. Five types of tracking algorithms were compared in the same SDR conditions except for the parameter adjustment in Table 1.
First, an open sky area was chosen to carry out the experiment. The test spot in Google Map and the sky plot of the available GPS satellites are shown in Figure 6.
We first assessed the SPP results for the open-sky case. The SPP was based on the weighted NLS algorithm in the tested SDR, which referred to an open-source package RTKLIB [39]. Figure 7 depicts the dilution of precision (DOP) results, SPP errors, and the 3D position cumulative distribution function (CDF) curves of 3D SPP root-mean-squared errors (RMSEs).
Although the results showed that the proposed algorithm did not increase the SPP accuracy compared to the classic STL algorithm in the open sky, they proved that the APA-based VDFPLL algorithms enhanced the traditional RPA-based VDFLL in the static situation. Meanwhile, using the INS could moderately enhance the RTK-based APA tracking process.
Then, the RTK position errors for the different SDR algorithms were compared in Figure 8, where the position errors, horizontal position results for a Google Map show, and the CDF curves of 3D and 2D position estimates RMSE were included. The traditional RPA VDFLL did not help the RTK position accuracy in the open-sky and static case. The finding was that the RTK-based VDFPLL (i.e., the VDFPLL relied on the position solution solely computed from the RTK algorithm) improved the RTK results within a 3D range, while the RTK/INS-based VDFPLL slightly outperformed the STL-based horizontal positioning. The vertical INS DR position solution would cause more code phase errors (compared to the STL tracking in a static open-sky case) in terms of the vertical position estimation.
Next, we compared the RTK/INS integrated results of three SDRs in Figure 9, where “Ground-truth-based VDFPLL” meant that the SDR leveraged the actual position coordinates instead of on-the-fly RTK or integrated RTK/INS position estimates. It was a HIL simulation strategy to provide a reference for the proposed algorithm under the same SDR conditions. In other words, the HIL simulation results represented the upper bound of the performance that the SDR platform used could achieve.
Based on the CDF curves in Figure 9d, the proposed accuracy slightly exceeded the traditional STL-based integrated RTK/INS solution within the 78% probability. So, the large errors could be alleviated in the integration results using the proposed algorithm in the open sky area. In contrast, the traditional VDFLL-based integrated RTK/INS positioning accuracy decreased a lot in this well-conditioned static scenario.
TOA curves are evaluated on to examine the baseband processing discrepancy. The TOA estimation from the GPS SDR was computed via (3), where the ρ ˜ k i was the raw data from the loop filter output without the carrier-smoothing algorithm. Therefore, the measurement and reference TOA residuals in meters were computed as follows
TOA measurement residual k i = Δ ρ ˜ k i c T O A 0 i + δ t ^ r , 0 c f d , 0 i f r 1 + δ t ˙ ^ r , 0 k T c o h
TOA reference residual k i = Δ c T O A k i c T O A 0 i c f d , 0 i f r 1 k T c o h
TOA residual error = Δ TOA measurement residual k i TOA reference residual k i
where the TOA residuals excluded the initial pseudorange and initial Doppler frequency for the simplicity of analysis; subscript 0 and k denote the initial and the kth epoch, respectively; T O A 0 i and f d , 0 i represent the TOA and Doppler frequency reference at the initial epoch, and they are computed as
T O A 0 i = c 1 p g t , 0 p 0 i + B ^ I , 0 + B ^ T , 0 c δ t ^ 0 i
f d , 0 i = f r c v g t , 0 · e ^ 0 i v ^ 0 i · e ^ 0 i c δ t ˙ ^ 0 i
where p g t , 0 and v g t , 0 are the ground truth vectors in the ECEF coordinate frame for the user’s position and velocity in the stationary experiments, with v g t , 0 = 0 , 0 , 0 T ; p 0 i , v 0 i , δ t ^ 0 i , and δ t ˙ ^ 0 i are the satellite position and velocity vectors, satellite clock bias and drift errors, respectively, which were obtained and computed using the broadcast ephemeris. Meanwhile, B ^ I , 0 and B ^ T , 0 were the ionospheric error derived from the Klobuchar model and the tropospheric error calculated via the Saastamoninen model. e ^ 0 i is the unit cosine vector computed from p g t , 0 ; δ t ^ 0 i and δ t ˙ ^ 0 i are the estimated user’s clock bias and drift errors computed as
δ t ^ r , 0 = a v e r a g i n g c l o c k b i a s e r r o r n a v i g a t i o n t i m e s p a n n i n g 2 × δ t ˙ ^ r , 0
where δ t ˙ ^ r , 0 is the averaging value of the clock drift estimates from the “Ground-truth-based VDFPLL” SDR.
The given δ t ˙ ^ 0 i and δ t ^ 0 i references were not sufficiently accurate, but they were satisfactory in validating the TOA performance amidst the different SDR algorithms.
Figure 10 shows the error curves of the TOA residuals for the signals from the satellite of PRN1 (low elevation angle) and PRN22 (high elevation angle). It was proved that the APA-based vector tracking algorithms performed better in interference mitigation for the signals from the low satellite.
In summary, even if the proposed algorithm did not manifest results much better than the traditional STL in an open-sky static environment, it demonstrated a significant improvement in comparison with the traditional RPA vector tracking in the same condition. More specifically, it could be used as a boosting complement for the existing vector GNSS receivers.
Another set of data was collected under a semi-open-sky situation where the GPS antenna was receiving the signals affected by the eastern CCIT building at the campus of the University of Calgary. The Google Map of the test spot and the corresponding satellite sky plot are provided in Figure 11.
In this test, where the results are displayed in Figure 12, we also provided the DOP values to offer the satellite geometry status. The SPP error curves and their 3D CDF were provided as well.
First, it can be observed that the two VDFPLLs and the STL produced more reliable solutions than the position outliers of the two VDFLLs at around the 95th epoch. It is evident that the proposed algorithm embraced the highest SPP accuracy.
We also assessed the RTK solution accuracy related to the different SDRs. The RTK position error curves, position results in Google Map, and the 3D CDF curves are provided in Figure 13. After the SDR RTK solutions became stable, the RTK accuracy from the proposed SDR solutions still showed the highest performance. The RTK-only-based APA algorithm could reduce the random noise, but it was more biased than the traditional STL algorithm. The two RPA-only vector tracking techniques were still less capable of offering efficient assistance in the static test.
Next, the integrated RTK/INS solutions were compared in the semi-open-sky environment, as shown in Figure 14. In this case, the proposed algorithm significantly improved the 2D positioning performance. At the same time, the RTK/INS-based RPA method elevated the 3D positioning accuracy, compared to the STL-based integration. The RPA- and APA-based integrated navigation accuracies over the error range of approximately 55% probability outperformed the traditional STL one. Furthermore, the positioning results with the proposed algorithm performed more stably than the traditional vector tracking. Another finding was that RTK/INS-based APA vector tracking yielded a much more ideal horizontal positioning estimate than the RPA one. By contrast, the latter was superior to the former in the vertical direction. By comparing to the upper bound (i.e., the estimation from the ground-truth-based VDFPLL SDR), the fusion of the low-cost IMU had a side effect on the vertical position solution when it was applied to the proposed RTK/INS-based VDFPLL SDR in this stationary experiment.
Then, the raw TOA performance, in terms of the signal from the high-elevation-angle satellite (PRN3) and the one with a low elevation angle affected by the multipath interference (PRN6), were plotted in Figure 15. A more significant fluctuation in the TOA curves emerged at the PRN6 in this semi-open-sky experiment, compared to the open-sky PRN1 (see Figure 10). Both APA-based tracking loops were more capable of alleviating the TOA error varying with long-term time spanning (i.e., the level of dozens of seconds) than the RPA-based vector tracking and the STL. Nevertheless, the curves computed from the high-quality signal, PRN3, were highly homogeneous regarding all the tested tracking loop algorithms.
The next part quantitatively examines the exact improvement the proposed algorithm could offer for the GNSS baseband estimation. As mentioned, an upper bound of the instantaneous integrated positioning performance was obtained from the SDR under the HIL test using the “Ground-truth-based VDFPLL”. Therefore, the corresponding TOA error curve, representing the upper bound, could also be extracted from the tracking results. Then, we computed the TOA error of the PRN22 and PRN3 (with the highest elevation angles during the experiments) in the open-sky and semi-open-sky cases as the respective references. The proposed TOA error references reasonably modeled the remained local clock errors in meters, varying with time. The other biased errors, like the atmospheric delay and initial TOA errors, were assumed to be well removed by the given models.
Ultimately, the TOA curve references were derived and are illustrated in Figure 16. After that, the TOA accuracy of different satellites in the two testing situations was analyzed via these references in the following.
Table 2 summarizes the statistical analysis of the TOA performances of different tracking algorithms where the RMSE results were computed for the satellites used. Then, in regard to the traditional STL, the TOA accuracy improvements of the two RPA- and APA-based vector tracking algorithms operating in the GPS SDR were computed and are depicted in Figure 17.
The curves in Figure 17 indicate that both APA tracking methods outperformed the two RPA ones in elevating TOA accuracy. Furthermore, regarding the lower-elevation satellites and the smaller-TOA-error channels, the TOA errors induced by the navigation results through the vector feedback procedure were more likely to drop in the proposed RTK/INS-based APA approach than in the RTK-only APA one.
Figure 18 plots the APA error curves estimated from the proposed RTK/INS-based VDFPLL modeling the instantaneous initial/absolute code phase error in meters at each tracking epoch. The analytical expression is given by (15). Compared to the traditional tracking algorithms (scalar and old vector tracking loops), the proposed algorithm could individually discriminate the absolute code phase error unrelated to the frequency error given by the same epoch local replica subtracting incoming signals. This operation established through the proposed architecture was reasonable and it proved efficient. The implication from the results was that the RTK/INS integrated EKF navigator provided more accurate positioning than the code-based-only SPP method.
So, the dashed black lines in Figure 18 mean that the traditional scalar and vector tracking loops had nothing to recognize the code phase error not varying with the time spanning (the error residual remaining from the traditional code discriminating process). However, the proposed RTK/INS-based APA vector tracking could directly estimate the absolute code phase error at every tracking epoch. The APA code discriminated results showed how the code phases were corrected by the accurate user’s position solution, especially for the satellites wherein the deterministic biased error changed in cycles of dozens of seconds or longer. This phenomenon commonly occurs to static user antenna receiving incoming signals affected by the multipath effect.
Finally, it is worth mentioning that the proposed RTK/INS-based VDFPLL was a simplified prototype applying the APA discriminated error relying on the INS and RTK to the GNSS baseband processing. The tracking performance still has space to be further improved by redoing loop filter algorithms (e.g., the EKF) or other GNSS baseband optimizing methods (e.g., snapshot processing [40,41] and open-loop tracking [42,43]). In other words, the proposed algorithm has a broad scope of use towards GNSS signals at all frequencies and constellations, potentially contributing to the development of next-generation GNSS receivers and GNSS-based multi-sensor integrating navigation systems.

4. Conclusions

This work proposed a deep integration of RTK and INS, enhancing the instantaneous code phase tracking performance in challenging static environments. In the presented algorithm, the navigation solutions, especially the absolute position solution, from the integrated EKF navigator were deeply fused into the GNSS tracking loop, forming an APA code phase discriminator. The RTK/INS-based APA discriminator, combined with the vector tracking technique realized upon a GPS L1 C/A SDR, could serve for more satisfactory tracking and positioning results than the RTK-based-only APA vector tracking approach. Two real-world stationary experiments verified the performance. Finally, the conclusions of this work can be drawn as follows:
  • The proposed RTK/INS APA vector tracking improved the multipath mitigation performance of the GNSS baseband in static situations, compared to the traditional scalar/vector tracking and the RTK-aided-only APA vector tracking;
  • The deeply integrated INS in the proposed high-accuracy APA GPS SDR enhanced the TOA estimation accuracy more significantly regarding satellites with low elevation angles;
  • The technique regarding the tested low-cost IMU, deeply integrated into the RTK-position-aided vector GPS, proved to be inferior in improving the vertical positioning accuracy but could efficiently increase the horizontal positioning accuracy in challenging static environments.
Our future work will focus on base-station-free APA GNSS tracking upon INS DR and PPP technique.

Author Contributions

Conceptualization, Y.L. and L.-T.H.; methodology, Y.L.; software, Y.L.; formal analysis, Y.L., L.-T.H., Y.J., B.L., Z.Z. and Y.X.; data curation, Y.L. and Y.J.; writing—original draft preparation, Y.L.; writing—review and editing, Y.L., L.-T.H., Y.J., B.L., Z.Z., Y.X. and N.E.-S.; supervision, N.E.-S. All authors have read and agreed to the published version of the manuscript.

Funding

This research was supported by the funding of Proffessor Naser El-Sheimy from NSERC CREATE and Canada Research Chairs programs.

Data Availability Statement

The data presented in this study are available on request from the corresponding author.

Conflicts of Interest

The co-author, Li-Ta Hsu, is serving as the guest editor of the special issue. The other authors declare no conflict of interest.

Abbreviations

The following abbreviations were used in this manuscript:
APAAbsolute-position-aided
CDFCumulative distribution function
CDMACode division multiple access
DOPDilution of precision
DRDead reckoning
ECEFEarth-centered, Earth-fixed
ECIEarth-centered inertial
EKFExtended Kalman filter
GFTGraph Fourier transform
GNSSGlobal navigation satellite system
GPSGlobal positioning system
HILHardware-in-the-loop
I&DIntegration and dumping
IFIntermediate frequency
IMUInertial measurement unit
INSInertial navigation system
LOSLine-of-sight
NCONumerically controlled oscillator
NLOSNon-line-of-sight
NLSNon-linear least squared
OFDMAOrthogonal frequency division multiple access
PNTPositioning, navigation, and timing
PPPPrecise point positioning
RMSERoot-mean-squared errors
RPARelative-position-aided
RTKReal-time kinematic
SDRSoftware-defined radio
SPPSingle-point positioning
SRASuper-resolution algorithm
STLScalar tracking loop
TOATime of arrival
VDLLVector delay lock loop
VDFLLVector delay/frequency lock loop
VDFPLLVector delay/frequency/phase lock loop
VPLLVector phase lock loop

References

  1. Sharma, H.; Lichtenberger, C.A.; Pany, T. Multipath Error Modelling and Position Error Over-bounding for Precise RTK Positioning using GNSS Raw Measurements from Smartphone for Automotive Navigation. In Proceedings of the ION GNSS+ 2020, Online, 21–25 September 2020; pp. 1902–1924. [Google Scholar] [CrossRef]
  2. Zhang, G.; Wen, W.; Xu, B.; Hsu, L.T. Extending Shadow Matching to Tightly-Coupled GNSS/INS Integration System. IEEE Trans. Veh. Technol. 2020, 69, 4979–4991. [Google Scholar] [CrossRef]
  3. Liu, X.; Liang, M.; Morton, Y.; Closas, P.; Zhang, T.; Hong, Z. Performance evaluation of MSK and OFDM modulations for future GNSS signals. GPS Solut. 2014, 18, 163–175. [Google Scholar] [CrossRef] [Green Version]
  4. Cimini, L. Analysis and Simulation of a Digital Mobile Channel Using Orthogonal Frequency Division Multiplexing. IEEE Trans. Commun. 1985, 33, 665–675. [Google Scholar] [CrossRef] [Green Version]
  5. Koelemeij, J.C.J.; Dun, H.; Diouf, C.E.V.; Dierikx, E.F.; Janssen, G.J.M.; Tiberius, C.C.J.M. A hybrid optical–wireless network for decimetre-level terrestrial positioning. Nature 2022, 611, 473–478. [Google Scholar] [CrossRef]
  6. Krasner, N.; McBurney, P. Application of Super Resolution Correlation to Multipath Mitigation in an L5 Channel. In Proceedings of the ION GNSS+ 2022, Denver, CO, USA, 19–23 September 2022; pp. 3249–3269. [Google Scholar] [CrossRef]
  7. Luo, Y.; Hsu, L.T.; Pan, Y. A Super-Resolution Algorithm with FRFT Towards GNSS TOA Estimation for Multipath Channel. In Proceedings of the ION GNSS+ 2021, St. Louis, MO, USA, 20–24 September 2021; pp. 3350–3359. [Google Scholar] [CrossRef]
  8. Da Rosa Zanatta, M.; Da Costa, J.P.C.L.; Antreich, F.; Haardt, M.; Elger, G.; Lopes De Mendonca, F.L.; De Sousa, R.T. Tensor-Based Framework With Model Order Selection and High Accuracy Factor Decomposition for Time-Delay Estimation in Dynamic Multipath Scenarios. IEEE Access 2020, 8, 174931–174942. [Google Scholar] [CrossRef]
  9. Luo, Y.; El-Sheimy, N. Improving GNSS Positioning by De-noising Consecutive Correlator Outputs Using Graph Fourier Transform Filtering. In Proceedings of the ION GNSS+ 2022, Denver, CO, USA, 19–23 September 2022; pp. 3340–3348. [Google Scholar] [CrossRef]
  10. Suzuki, T.; Matsuo, K.; Amano, Y. Rotating GNSS Antennas: Simultaneous LOS and NLOS Multipath Mitigation. GPS Solut. 2020, 24, 86. [Google Scholar] [CrossRef]
  11. Hong, X.; Wang, W.; Chang, N.; Yin, Q. A subspace-based code tracking loop design for GPS multi-antenna receiver in multipath environment. GPS Solut. 2020, 24, 109. [Google Scholar] [CrossRef]
  12. Daneshmand, S.; Broumandan, A.; Sokhandan, N.; Lachapelle, G. GNSS multipath mitigation with a moving antenna array. IEEE Trans. Aerosp. Electron. Syst. 2013, 49, 693–698. [Google Scholar] [CrossRef]
  13. Lau, L.; Cross, P. Development and testing of a new ray-tracing approach to GNSS carrier-phase multipath modelling. J. Geod. 2007, 81, 713–732. [Google Scholar] [CrossRef]
  14. Yan, Z.; Chen, X.; Tang, X.; Zhu, X. Design and Performance Evaluation of the Improved INS-Assisted Vector Tracking for the Multipath in Urban Canyons. IEEE Trans. Instrum. Meas. 2022, 71, 8504816. [Google Scholar] [CrossRef]
  15. Smolyakov, I.; Rezaee, M.; Langley, R.B. Resilient multipath prediction and detection architecture for low-cost navigation in challenging urban areas. Navig. J. Inst. Navig. 2020, 67, 397–409. [Google Scholar] [CrossRef]
  16. Spilker, J.J., Jr. Fundamentals of signal tracking theory. In Global Positioning System: Theory And Applications, Volume 1; Parkinson, B.W., Spilker, J.J., Jr., Axelrad, P., Enge, P., Eds.; American Institute of Aeronautics and Astronautics, Inc.: Washington, DC, USA, 1996. [Google Scholar]
  17. Zhodzishsky, M.; Yudanov, S.; Veitsel, V.; Ashjaee, J. Co-OP Tracking for Carrier Phase. In Proceedings of the ION GPS 1998, Nashville, TN, USA, 15–18 September 1998; pp. 653–664. [Google Scholar]
  18. Henkel, P.; Giger, K.; Gunther, C. Multifrequency, Multisatellite Vector Phase-Locked Loop for Robust Carrier Tracking. IEEE J. Sel. Top. Signal Process. 2009, 3, 674–681. [Google Scholar] [CrossRef]
  19. Shafaati, A.; Lin, T.; Broumandan, A.; Lachapelle, G. Design and Implementation of an RTK-Based Vector Phase Locked Loop. Sensors 2018, 18, 845. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  20. Satyanarayana, S.; Borio, D.; Lachapelle, G. A Composite Model for Indoor GNSS Signals: Characterization, Experimental Validation and Simulation. Navigation 2012, 59, 77–92. [Google Scholar] [CrossRef]
  21. Kelly, J.; Braasch, M. Validation of theoretical GPS multipath bias characteristics. In Proceedings of the 2001 IEEE Aerospace Conference Proceedings (Cat. No.01TH8542), Big Sky, MT, USA, 10–17 March 2001; IEEE: Piscataway, NJ, USA, 2001; Volume 3, pp. 3/1317–3/1325. [Google Scholar] [CrossRef]
  22. Van Nee, R.D.J. Multipath Effects on GPS Code Phase Measurements. Navigation 1992, 39, 177–190. [Google Scholar] [CrossRef]
  23. Kaplan, E.D.; Hegarty, C. Understanding GPS/GNSS. Principles and Applications, 3rd ed.; Artech House: Norwood, MA, USA, 2017. [Google Scholar] [CrossRef]
  24. Lashley, M. Modelling and Performance Analysis of GPS Vector Tracking Algorithms. Ph.D. Thesis, Auburn University, Auburn, AL, USA, 2009. [Google Scholar]
  25. Dietmayer, K.; Kunzi, F.; Garzia, F.; Overbeck, M.; Felber, W. Real time results of vector delay lock loop in a light urban scenario. In Proceedings of the 2020 IEEE/ION Position, Location and Navigation Symposium (PLANS), Portland, OR, USA, 20–23 April 2020; IEEE: Piscataway, NJ, USA, 2020; pp. 1230–1236. [Google Scholar]
  26. Luo, Y.; Hsu, L.T.; Zhang, Z.; El-Sheimy, N. Improving GNSS baseband using an RTK-position-aided code tracking algorithm. GPS Solut. 2022, 26, 125. [Google Scholar] [CrossRef]
  27. Groves, P.D. Principles of GNSS, Inertial, and Multisensor Integrated Navigation Systems, 2nd ed.; Artech House: Boston, MA, USA; London, UK, 2013. [Google Scholar]
  28. Harke, K.; O’Keefe, K. Gyroscope Drift Estimation of a GPS/MEMSINS Smartphone Sensor Integration Navigation System for Kayaking. In Proceedings of the ION GNSS+ 2022, Denver, CO, USA, 19–23 September 2022; pp. 1413–1427. [Google Scholar] [CrossRef]
  29. Zhang, T.; Liu, S.; Chen, Q.; Feng, X.; Niu, X. Carrier-Phase-Based Initial Heading Alignment for Land Vehicular MEMS GNSS/INS Navigation System. IEEE Trans. Instrum. Meas. 2022, 71, 1–13. [Google Scholar] [CrossRef]
  30. Luo, Y.; Hsu, L.T.; Xiang, Y.; Xu, B.; Yu, C. An Absolute-Position-Aided Code Discriminator Towards GNSS Receivers for Multipath Mitigation. In Proceedings of the ION GNSS+ 2021, St. Louis, MO, USA, 20–24 September 2021; pp. 3772–3782. [Google Scholar] [CrossRef]
  31. Zhao, Q.; Su, J.; Xu, C.; Yao, Y.; Zhang, X.; Wu, J. High-Precision ZTD Model of Altitude-Related Correction. IEEE J. Sel. Top. Appl. Earth Obs. Remote Sens. 2022, 16, 609–621. [Google Scholar] [CrossRef]
  32. Lashley, M.V.; Martin, S.; Sennott, J. Vector Processing. In Position, Navigation, and Timing Technologies in the 21st Century: Integrated Satellite Navigation, Sensor Systems, and Civil Applications; Morton, Y.T.J., van Diggelen, F., Spilker, J.J., Jr., Parkinson, B.W., Lo, S., Gao, G., Eds.; John Wiley & Sons: Hoboken, NJ, USA, 2021; Volume 1. [Google Scholar]
  33. Lashley, M.; Bevly, D.M. Performance comparison of deep integration and tight coupling. Navig. J. Inst. Navig. 2013, 60, 159–178. [Google Scholar] [CrossRef]
  34. Herrera, A.M.; Suhandri, H.F.; Realini, E.; Reguzzoni, M.; de Lacy, M.C. goGPS: Open-source MATLAB software. GPS Solut. 2016, 20, 595–603. [Google Scholar] [CrossRef]
  35. Luo, Y.; Yu, C.; Xu, B.; Li, J.; Tsai, G.J.; Li, Y.; El-Sheimy, N. Assessment of Ultra-Tightly Coupled GNSS/INS Integration System towards Autonomous Ground Vehicle Navigation Using Smartphone IMU. In Proceedings of the 2019 IEEE International Conference on Signal, Information and Data Processing (ICSIDP), Chongqing, China, 11–13 December 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 1–6. [Google Scholar] [CrossRef]
  36. Luo, Y.; Li, Y.; Wang, J.; El-Sheimy, N. Supporting GNSS Baseband Using Smartphone IMU and Ultra-Tight Integration. arXiv 2021, arXiv:2111.02613. [Google Scholar]
  37. Luo, Y.; Li, J.; Yu, C.; Lyu, Z.; Yue, Z.; El-Sheimy, N. A GNSS software-defined receiver with vector tracking techniques for land vehicle navigation. In Proceedings of the Proc. ION 2019 Pacific PNT Meeting, Honolulu, HI, USA, 8–11 April 2019; Volume 2019, pp. 713–727. [Google Scholar] [CrossRef]
  38. Faragher, R. Understanding the basis of the kalman filter via a simple and intuitive derivation [lecture notes]. IEEE Signal Process. Mag. 2012, 29, 128–132. [Google Scholar] [CrossRef]
  39. Takasu, T.; Yasuda, A. Development of the low-cost RTK-GPS receiver with an open source program package RTKLIB. In Proceedings of the International Symposium on GPS/GNSS, Jeju, Republic of Korea, 4–6 November 2009; pp. 4–6. [Google Scholar]
  40. Luo, Y.; Hsu, L.T.; El-Sheimy, N. A Baseband MLE for Snapshot GNSS Receiver Using Super-Long-Coherent Correlation in a Fractional Fourier Domain. Navigation-Us 2023. accepted. [Google Scholar]
  41. Fernández-Hernández, I.; López-Salcedo, J.A.; Seco-Granados, G. 9 Snapshot Receivers. In GNSS Software Receivers; Borre, K., Fernández-Hernández, I., López-Salcedo, J.A., Bhuiyan, M.Z.H., Eds.; Cambridge University Press: Cambridge, MA, USA, 2022. [Google Scholar] [CrossRef]
  42. Tsang, C.L.; Luo, Y.; Hsu, L.T. Long Coherent Open-Loop GPS L5Q Signal Positioning: A Case Study for an Urban Area in Hong Kong. In Proceedings of the ION GNSS+ 2022, Denver, CO, USA, 19–23 September 2022; pp. 2025–2041. [Google Scholar] [CrossRef]
  43. van Graas, F.; Soloviev, A.; Uijt de Haag, M.; Gunawardena, S. Closed-loop sequential signal processing and open-loop batch processing approaches for GNSS receiver design. IEEE J. Sel. Top. Signal Process. 2009, 3, 571–586. [Google Scholar] [CrossRef]
Figure 1. Diagrammatic sketch reflecting the actual, and locally replicated, code signals varying with time regarding different algorithms, where colored curves correspond to the locally replicated code signals. (a) code phase misalignment is caused by the code frequency error and the initial (absolute) code phase error, light blue corresponds to the replicated signal based on STL (b) moderate frequency error is reduced, deep blue corresponds to the replicated signal based on standalone traditional VT (c) significant frequency error is reduced, light green corresponds to the replicated signal based on RTK/INS traditional VT (d) significant frequency error and moderate initial code phase error are reduced, deep green corresponds to replicated signal based on RTK VDFPLL (e) significant frequency error and significant initial code phase error are reduced, pink corresponds to replicated signal based on proposed RTK/INS VDFPLL. Dashed red lines correspond to timestamp.
Figure 1. Diagrammatic sketch reflecting the actual, and locally replicated, code signals varying with time regarding different algorithms, where colored curves correspond to the locally replicated code signals. (a) code phase misalignment is caused by the code frequency error and the initial (absolute) code phase error, light blue corresponds to the replicated signal based on STL (b) moderate frequency error is reduced, deep blue corresponds to the replicated signal based on standalone traditional VT (c) significant frequency error is reduced, light green corresponds to the replicated signal based on RTK/INS traditional VT (d) significant frequency error and moderate initial code phase error are reduced, deep green corresponds to replicated signal based on RTK VDFPLL (e) significant frequency error and significant initial code phase error are reduced, pink corresponds to replicated signal based on proposed RTK/INS VDFPLL. Dashed red lines correspond to timestamp.
Remotesensing 15 01114 g001
Figure 2. Comparison of the instantaneous code phase error at the timestamp (see the dashed red line in Figure 1) for extracting the instantaneous GNSS measurements (e.g., pseudoranges and carrier phases). It is worth mentioning that the code phase errors are exaggerated in this diagram by omitting random noise and raising the biased errors to show the differences in algorithms intuitively. The actual code phase errors usually do not exceed half of the early–late chip spacing. The numerical values in the figure correspond to the code phase.
Figure 2. Comparison of the instantaneous code phase error at the timestamp (see the dashed red line in Figure 1) for extracting the instantaneous GNSS measurements (e.g., pseudoranges and carrier phases). It is worth mentioning that the code phase errors are exaggerated in this diagram by omitting random noise and raising the biased errors to show the differences in algorithms intuitively. The actual code phase errors usually do not exceed half of the early–late chip spacing. The numerical values in the figure correspond to the code phase.
Remotesensing 15 01114 g002
Figure 3. Overview of the GNSS baseband architecture with the RTK-position-aided VDFPLL [26,30].
Figure 3. Overview of the GNSS baseband architecture with the RTK-position-aided VDFPLL [26,30].
Remotesensing 15 01114 g003
Figure 4. Architecture of the proposed VDFPLL-enhanced GPS SDR based on the deep integration of float RTK solutions and INS DR navigation results (detailed discussions refer to the Algorithm 1).
Figure 4. Architecture of the proposed VDFPLL-enhanced GPS SDR based on the deep integration of float RTK solutions and INS DR navigation results (detailed discussions refer to the Algorithm 1).
Remotesensing 15 01114 g004
Figure 5. Setup for the stationary experiments.
Figure 5. Setup for the stationary experiments.
Remotesensing 15 01114 g005
Figure 6. Open-sky test spot (Google Map show) and sky plot of available GPS satellites.
Figure 6. Open-sky test spot (Google Map show) and sky plot of available GPS satellites.
Remotesensing 15 01114 g006
Figure 7. Single point navigation results and statistical analysis of different SDRs in the open-sky situation where dashed lines correspond to outlier epochs. (a) DOP values (b) SPP results (c) CDF curves of 3D SPP RMSE.
Figure 7. Single point navigation results and statistical analysis of different SDRs in the open-sky situation where dashed lines correspond to outlier epochs. (a) DOP values (b) SPP results (c) CDF curves of 3D SPP RMSE.
Remotesensing 15 01114 g007
Figure 8. RTK position results and statistical analysis of different SDRs in the open-sky situation where dashed lines correspond to the outlier epochs. (a) RTK position errors (b) horizontal RTK results in Google Map (c) CDF curves of 3D RTK RMSE (d) CDF curves of horizontal (2D) RTK RMSE.
Figure 8. RTK position results and statistical analysis of different SDRs in the open-sky situation where dashed lines correspond to the outlier epochs. (a) RTK position errors (b) horizontal RTK results in Google Map (c) CDF curves of 3D RTK RMSE (d) CDF curves of horizontal (2D) RTK RMSE.
Remotesensing 15 01114 g008
Figure 9. RTK position results and statistical analysis of different SDRs in the open-sky situation where dashed lines correspond to the outlier epochs. (a) RTK position errors (b) horizontal RTK results in Google Map (c) CDF curves of horizontal (2D) RTK RMSE (d) CDF curves of 3D RTK RMSE.
Figure 9. RTK position results and statistical analysis of different SDRs in the open-sky situation where dashed lines correspond to the outlier epochs. (a) RTK position errors (b) horizontal RTK results in Google Map (c) CDF curves of horizontal (2D) RTK RMSE (d) CDF curves of 3D RTK RMSE.
Remotesensing 15 01114 g009
Figure 10. Error curves of the TOA residuals for the GPS satellites PRN1 and PRN22 in the open-sky situation.
Figure 10. Error curves of the TOA residuals for the GPS satellites PRN1 and PRN22 in the open-sky situation.
Remotesensing 15 01114 g010
Figure 11. Semi-open-sky test spot (Google Map show) and the sky plot of available GPS satellites.
Figure 11. Semi-open-sky test spot (Google Map show) and the sky plot of available GPS satellites.
Remotesensing 15 01114 g011
Figure 12. Single point navigation results and statistical analysis of different SDRs in the semi-open-sky situation where dashed lines correspond to the outlier epochs. (a) DOP values (b) SPP results (c) CDF curves of 3D SPP RMSE.
Figure 12. Single point navigation results and statistical analysis of different SDRs in the semi-open-sky situation where dashed lines correspond to the outlier epochs. (a) DOP values (b) SPP results (c) CDF curves of 3D SPP RMSE.
Remotesensing 15 01114 g012
Figure 13. RTK position results and statistical analysis of different SDRs in the semi-open-sky situation where dashed lines correspond to the outlier epochs. (a) RTK position error (b) horizontal RTK position results in Google Map (c) CDF curves of 3D RTK RMSE.
Figure 13. RTK position results and statistical analysis of different SDRs in the semi-open-sky situation where dashed lines correspond to the outlier epochs. (a) RTK position error (b) horizontal RTK position results in Google Map (c) CDF curves of 3D RTK RMSE.
Remotesensing 15 01114 g013
Figure 14. RTK/INS integration position results and statistical analysis of different SDRs where dashed lines correspond to the outlier epochs in the semi-open-sky situation. (a) RTK/INS integration position error (b) horizontal RTK/INS integration position results in Google Map (c) CDF curves of 2D RTK/INS integration position RMSE (d) CDF curves of 3D RTK/INS integration position RMSE.
Figure 14. RTK/INS integration position results and statistical analysis of different SDRs where dashed lines correspond to the outlier epochs in the semi-open-sky situation. (a) RTK/INS integration position error (b) horizontal RTK/INS integration position results in Google Map (c) CDF curves of 2D RTK/INS integration position RMSE (d) CDF curves of 3D RTK/INS integration position RMSE.
Remotesensing 15 01114 g014
Figure 15. Error curves of the TOA residuals for the GPS satellites PRN6 and PRN3 in the semi-open-sky situation.
Figure 15. Error curves of the TOA residuals for the GPS satellites PRN6 and PRN3 in the semi-open-sky situation.
Remotesensing 15 01114 g015
Figure 16. TOA curve references (regarding the error curves of the TOA residuals) derived from the ground-truth-based VDFPLL SDR. (left) TOA reference from PRN22 for the open-sky experiment (right) TOA reference from PRN3 for the semi-open-sky experiment.
Figure 16. TOA curve references (regarding the error curves of the TOA residuals) derived from the ground-truth-based VDFPLL SDR. (left) TOA reference from PRN22 for the open-sky experiment (right) TOA reference from PRN3 for the semi-open-sky experiment.
Remotesensing 15 01114 g016
Figure 17. Comparison of TOA accuracy improvements varying with the satellite elevation angles and the TOA errors (positive and negative values represent the improved and reduced performance percentages, respectively).
Figure 17. Comparison of TOA accuracy improvements varying with the satellite elevation angles and the TOA errors (positive and negative values represent the improved and reduced performance percentages, respectively).
Remotesensing 15 01114 g017
Figure 18. APA code phase errors from the proposed RTK/INS-based VDFPLL SDR where the numbers correspond to the satellite PRN numbers and dashed black lines correspond to the estimates from the traditional scalar and vector tracking algorithms (a) open sky (b) semi-open sky.
Figure 18. APA code phase errors from the proposed RTK/INS-based VDFPLL SDR where the numbers correspond to the satellite PRN numbers and dashed black lines correspond to the estimates from the traditional scalar and vector tracking algorithms (a) open sky (b) semi-open sky.
Remotesensing 15 01114 g018
Table 1. Parameter settings of the SDR regarding the real-world experimental validation.
Table 1. Parameter settings of the SDR regarding the real-world experimental validation.
SDR TypeRelative Position/ Velocity AidingRTKPosition AidingINS Deep IntegrationRTK/INS Integration Navigation SolutionTracking Loop Filter
STL (traditional) [23]NoNoNoNo1-Hz 2nd-order DLL & 18-Hz 3rd-order PLL
RTK-based VDFLL [32]YesNoNoNo1-Hz 2nd-order DLL & 0.5-Hz 1st-order PLL & 15-Hz 3rd-order PLL (see Algorithm 1)
RTK/INS-based VDFLL [32]YesYesYesYes
RTK-based VDFPLL [26]YesYesNoNo
RTK/INS-based VDFPLL (proposed)YesYesYesYes
Table 2. RMSEs of the TOA estimates from the active satellites regarding the two stationary experiments where the reference curves for the error of residuals of TOA refer to Figure 16 (“OS” and” SOS” correspond to “open-sky” and “semi-open-sky” testing situations, respectively; “Averaging C / N 0 ” is estimated from the “Ground-truth-based VDFPLL” SDR).
Table 2. RMSEs of the TOA estimates from the active satellites regarding the two stationary experiments where the reference curves for the error of residuals of TOA refer to Figure 16 (“OS” and” SOS” correspond to “open-sky” and “semi-open-sky” testing situations, respectively; “Averaging C / N 0 ” is estimated from the “Ground-truth-based VDFPLL” SDR).
PRN NumbersElevation Angle [ ]Averaging C / N 0 [dB-Hz]PRN Numbers of the TOA Error ReferenceRMSE for the Error of Residuals of TOA [m]
STLRTK VDFLLRTK/INS VDFLLRTK VDFPLLProposed RTK/INS VDFPLL
SOS-258.243.4SOS-0310.929.039.1214.1711.85
OS-3213.945.2OS-222.624.214.171.801.80
SOS-0615.039.6SOS-0314.4913.3113.247.189.05
OS-2515.244.8OS-2213.2312.1212.1614.0813.22
SOS-1617.443.5SOS-033.899.399.229.818.08
OS-0124.137.4OS-228.319.189.194.804.61
SOS-1426.244.2SOS-0315.1816.9216.8912.8713.67
OS-2626.541.0OS-2219.4524.6824.5418.9618.97
OS-2332.347.4OS-2219.2323.9623.9120.0719.24
SOS-2636.046.8SOS-033.477.667.516.225.65
OS-1436.246.9OS-224.786.196.174.314.46
SOS-2342.245.6SOS-038.305.065.102.753.23
SOS-3149.051.4SOS-0312.6411.3411.3814.1214.17
OS-3159.352.9OS-222.162.492.491.631.67
SOS-2261.648.2SOS-032.542.572.583.583.54
OS-0365.449.8OS-227.6310.2310.187.877.52
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Luo, Y.; Hsu, L.-T.; Jiang, Y.; Liu, B.; Zhang, Z.; Xiang, Y.; El-Sheimy, N. High-Accuracy Absolute-Position-Aided Code Phase Tracking Based on RTK/INS Deep Integration in Challenging Static Scenarios. Remote Sens. 2023, 15, 1114. https://doi.org/10.3390/rs15041114

AMA Style

Luo Y, Hsu L-T, Jiang Y, Liu B, Zhang Z, Xiang Y, El-Sheimy N. High-Accuracy Absolute-Position-Aided Code Phase Tracking Based on RTK/INS Deep Integration in Challenging Static Scenarios. Remote Sensing. 2023; 15(4):1114. https://doi.org/10.3390/rs15041114

Chicago/Turabian Style

Luo, Yiran, Li-Ta Hsu, Yang Jiang, Baoyu Liu, Zhetao Zhang, Yan Xiang, and Naser El-Sheimy. 2023. "High-Accuracy Absolute-Position-Aided Code Phase Tracking Based on RTK/INS Deep Integration in Challenging Static Scenarios" Remote Sensing 15, no. 4: 1114. https://doi.org/10.3390/rs15041114

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop