Network Code DGNSS Positioning for Faster L1–L5 GPS Ambiguity Initialization

This paper presents DGNSS network code positioning using permanent geodetic networks, commonly used in GNSS measurements. Using several reference stations at the same time allows for the independent control of GNSS positioning and facilitates the more realistic estimation of accuracy. Test calculations were made on the basis of real GPS data, using one TRIMBLE mobile receiver and four nearest reference stations of the ASG-EUPOS geodetic system. In addition, DGNSS positioning computational simulations were performed for a case where one mobile GNSS receiver would be able to be used with two (e.g., GPS + Galileo or GPS + GLONASS) or four different positioning systems and different GNSS reference station systems at the same time. To reduce the deviations of the DGPS positioning from a true value, the Kalman filtering for horizontal coordinates and vertical ones was used. The result shows a significant improvement in DGPS positioning accuracy. Based on the numerical analysis carried out, it can be seen that when four GNSS systems are used, it is possible to achieve a DGNSS accuracy of 0.1 m and 0.2 m for horizontal and height coordinates, respectively, using only code measurements. Additionally, the paper presents the impact of the DGNSS code positioning accuracy on the effectiveness of determining ambiguities of phase observations on individual measurement epochs, using the L1–L5 observations of the GPS system and the precise and fast method of ambiguity resolution (PREFMAR). The developed DGNSS positioning methodology can be applied for reliable GNSS navigation using at least two independent GNSS systems.


Introduction
Differential global positioning system (DGPS) measurements have been known since the beginning of GPS technology. In general, this positioning technology is based on the use of only code receivers, mainly civil code (CA), which is available in every GPS receiver. In differential positioning, code-based DGPS is also widely used not only in navigation, but also in surveying and mapping [1][2][3][4][5]. It has the advantages of simplified algorithms and preferable precision. Although the accuracy of code measurements is incomparably worse than phase measurements, paradoxically, code measurements are nowadays indispensable in every GNSS receiver. Even when we get centimeter and even millimeter accuracy, at some stage, the code measurements must always take part in determining the exact coordinates, and more importantly, the phase positioning efficiency depends on the code measurements [6]. Therefore, as there is currently little research on the effectiveness of DGNSS positioning in favor of real time kinematic (RTK) phase positioning, DGNSS positioning may play an important role in the future. This is due to the expansion of satellite positioning systems and the possibility of independent and reliable GNSS positioning, especially for precise and reliable navigation.
where P(t) is the measured pseudorange, ρ(t) is the true receiver-to-satellite geometric range, c is the speed of light, dt(t) is the satellite clock error, dT(t) is the receiver clock error, d ION (t) is the ionospheric delay error, d TROP (t) is the tropospheric delay error, d EPHEM (t) is the satellite ephemeris error, and d P (t) represents other pseudorange errors, such as multipath, interchannel receiver biases, thermal noise, receiver and satellite hardware delay, as well as pseudorange measurement noise. The pseudorange correction (PRC) for a satellite i at the epoch (t) is calculated by the Equation [29]: where: The determined values PRC i (t) for some satellites are included in the mathematical model of autonomous positioning in a GNSS receiver, the coordinates of which should be determined in the reference stations' frame. Therefore, for satellites i, j, k, l, and the designated station M, we can use a system of Equations in the form of a matrix [29]: where L and A matrixes are as follows: and the solution with the least squares method is: where P is a unit diagonal weight matrix. After determining the coordinates in the ETRF2000 system, based on Equation (8), the coordinates were transformed to the PL2000 planar system, obtaining the N (northing) and E (easting) coordinates, while the ellipsoidal height H was obtained by converting the Cartesian coordinates (XYZ) to BLH (Latitude, Longitude, and Ellipsoid Height) geodetic coordinates. In further analysis, the coordinates  (1):  (3): All the calculations presented in this paper were performed using our own software, both for DGPS positioning, using the least squares method [30] as well as our own algorithms using Kalman filtering to smooth the obtained coordinates from the LS method, which were also used for effective EGNOS positioning [31]. The noise of the observation model (for N, E, H) in the Kalman filtering was assumed at the level of 1.75 m, but the accuracy of the kinematic model in the Kalman filtering was set at 0.1 m for the north, east and height coordinates. The use of Kalman filtering significantly reduces the standard deviation of code GNSS positioning [32,33].

Description of Measurements and Numerical Analysis
GPS test measurements were conducted on two different points, located between four reference stations: ELBL (Elbląg), OLST, KROL and ILAW ( Figure 1). The receiver TRIMBLE SPS centered over the observation point (M), recorded GPS data with a measurement interval of 1 s.
Four thousand consecutive epochs were recorded on each point. For each measurement session, independent DGPS calculations were made for the M mobile receiver using the four closest reference stations located around the observation point. Therefore, four independent DGPS solutions based on the least squares method (LS) were obtained for each session: ELBL-M; ILAW-M; KROL-M and OLST-M ( Figure 2). In addition, the Kalman filter (KF) was used for each solution (Figure 3).

Description of Measurements and Numerical Analysis
GPS test measurements were conducted on two different points, located between four reference stations: ELBL (Elbląg), OLST, KROL and ILAW ( Figure 1). The receiver TRIMBLE SPS centered over the observation point (M), recorded GPS data with a measurement interval of 1 s.     Table 1.  Table 1.    Figure 5, while the average RMS errors are presented in Table 2. Similar RMS errors were obtained for both session I and session II, i.e., for coordinate N the average DGMS network positioning RMS error was 0.232 and 0.217 m, for the E coordinate was 0.313 and 0.304 m, respectively, and for the heights 0.562 and 0.523 m. In the case of additional Kalman filtering, the average RMS errors were reduced by approximately 50%, and were as follows: for coordinate N: 0.131 and 0.100 m; for coordinate E, 0.167 and 0.135 m, and for coordinate H: 0.299 and 0.241 m.   Figure 5, while the average RMS errors are presented in Table 2. Similar RMS errors were obtained for both session I and session II, i.e., for coordinate N the average DGMS network positioning RMS error was 0.232 and 0.217 m, for the E coordinate was 0.313 and 0.304 m, respectively, and for the heights 0.562 and 0.523 m. In the case of additional Kalman filtering, the average RMS errors were reduced by approximately 50%, and were as follows: for coordinate N: 0.131 and 0.  Therefore, having two independent observation sessions, we carried out computational simulations, using real errors of DGPS network positioning for two GNSS systems and for four GNSS systems, including the results of DGPS network positioning for sessions I and II. Graphical results of this solution are shown in Figures 6 and 7, respectively, for two and four GNSS systems. Based on Figures 6 and 7, we can see a significant accuracy improvement in relation to traditional DGPS positioning. When using a Kalman filter for the DGNSS network positioning case using two independent positioning systems, the average RMS errors were 0.08, 0.11 and 0.19 m for the N, E, H coordinates, respectively. In the case of the simulation for four DGNSS network positioning systems, the average errors were 0.04, 0.06 and 0.12 m, respectively, for N, E, H coordinates.   Therefore, having two independent observation sessions, we carried out computational simulations, using real errors of DGPS network positioning for two GNSS systems and for four GNSS systems, including the results of DGPS network positioning for sessions I and II. Graphical results of this solution are shown in Figures 6 and 7, respectively, for two and four GNSS systems. Based on Figures 6 and 7, we can see a significant accuracy improvement in relation to traditional DGPS positioning. When using a Kalman filter for the DGNSS network positioning case using two independent positioning systems, the average RMS errors were 0.08, 0.11 and 0.19 m for the N, E, H coordinates, respectively. In the case of the simulation for four DGNSS network positioning systems, the average errors were 0.04, 0.06 and 0.12 m, respectively, for N, E, H coordinates.

Influence of DD Code Accuracy on Ambiguity Initialization and Methodology of Ambiguity Searching in L1-L5 GPS Data
Although code measurements are of much lower accuracy than precise phase measurements, they are nevertheless necessary in the ambiguity determination process. In the PREFMAR method [34], the determination of the most probable ambiguity sets is performed for the L1 and L5 frequencies, using the following function: (11) where N L1,0 and N L5,0 represent a float solution or are calculated for a single double difference (DD) measurement as follows: We used the function expressed by Formula (11) for a single DD observation, i.e., for phase observations: φ L1 (t), φ L5 (t) and the code observation P L5 (t). However, the observation P L5 (t) can be replaced by a more precise pseudo-observation ρ DGNSS (t), determined from the network DGNSS positioning: The analysis of such a strategy was tested for real GPS data, for a 4 km baseline. The tests used GPS observations carried out on 22 January 2020 [35], for a ten minute session with an interval of 1 s. The satellite situation during the measurements is shown in Figure 8. The analyses were performed using observations from four GPS satellites: G04, G06, G09 and G26, for which code and phase measurements were recorded at the frequencies L1 = 1575.42 MHz and L5 = 1176.45 MHz. Solutions of float ambiguities, determined only for single DD observations from two satellites, based on Formulas (12) and (13) are shown in Figures 9 and 10. Additionally, these figures show the sets of the most probable ambiguities N1-N5 depending on the assumed relative errors of the L1 and L5 phase observations, using the function used in the PREFMAR method and expressed by Formula (11).

Influence of DD Code Accuracy on Ambiguity Initialization and Methodology of Ambiguity Searching in L1-L5 GPS Data
Although code measurements are of much lower accuracy than precise phase measurements, they are nevertheless necessary in the ambiguity determination process. In the PREFMAR method [34], the determination of the most probable ambiguity sets is performed for the L1 and L5 frequencies, using the following function: where , and , represent a float solution or are calculated for a single double difference (DD) measurement as follows: We used the function expressed by Formula (11) for a single DD observation, i.e., for phase observations: ( ), ( ) and the code observation ( ). However, the observation ( ) can be replaced by a more precise pseudo-observation ( ), determined from the network DGNSS positioning: The analysis of such a strategy was tested for real GPS data, for a 4 km baseline. The tests used GPS observations carried out on 22 January 2020 [35], for a ten minute session with an interval of 1 s. The satellite situation during the measurements is shown in Figure 8. The analyses were performed using observations from four GPS satellites: G04, G06, G09 and G26, for which code and phase measurements were recorded at the frequencies L1 = 1575.42 MHz and L5 = 1176.45 MHz. Solutions of float ambiguities, determined only for single DD observations from two satellites, based on Formulas (12) and (13) are shown in Figures 9 and 10. Additionally, these figures show the sets of the most probable ambiguities N1-N5 depending on the assumed relative errors of the L1 and L5 phase observations, using the function used in the PREFMAR method and expressed by Formula (11).          quite a large value, suitable for baselines with a length of even several or several dozen kilometers, depending on the observation conditions, i.e., depending on the activity of the ionosphere or depending on the position of the satellites above the horizon. In the case of the use of the three reference stations available, there is no need to determine long baselines between the mobile receiver and any of these reference stations. We only determine the baseline with respect to the virtual reference station. As is known, a reference station can be created at any position, e.g., at a distance of several meters, with respect to our 3D position. In such cases, we can therefore assume that the relative errors of phase observations do not exceed, for example, 7 cm. This immediately results in a reduction of the number of possible ambiguity sets that can potentially be searched unknowns ( Figure 10). Thus, for relative errors smaller than 7 cm, based on the P (L5) code observations only, we have for each pair of satellites six ambiguity pairs for validation, which for three DD observations gives 6 3 = 216 combinations. Therefore, quite a lot of combinations as for RTK measurements. However, if we increase the accuracy of DD code observations to 0.47 m, we will reduce the number of potential ambiguities to three sets for each pair of satellites, and this for relative errors up to 7 cm. Thus, for three independent DD observations, we get 3 3 = 27. If we increase even more the accuracy of the code measurements to 0.38 m, then for relative errors less than 7 cm, we get only 2 3 = 8 combinations for four satellites. Such a small number of combinations will significantly reduce the initialization time of the determined ambiguities. It should also be noted that for code errors below 0.38 cm and for relative errors of phase observations below 3 cm, we are able to unambiguously determine the searching ambiguity sets for a given DD observation [34]. In practice, for RTK measurements, we should safely use the range (−7 cm; +7 cm), which should be sufficient for RTK positioning using virtual reference stations, or for baselines in fast static measurements, with lengths of about a few kilometers. Furthermore, it is also safe to use the N1-N5 ambiguity search range for L1-L5 frequencies below 0.47 m; which results in obtaining 27 combinations for relative errors of up to 7 cm for three independent DD phase observations obtained from individual measurement epochs.
The presented analysis of DGNSS network positioning accuracy indicates that obtaining network positioning accuracy below 0.47 m is already possible with the use of only the GPS system and the civil code P (L1). However, for the full structure of the GPS signal, that is, the L5 frequency, there will be the possibility of a greater use of the P (L5) code which will further increase the accuracy of the DGNSS network positioning.
Thus, we can see how important code measurements are in the ambiguity initialization process. Therefore, the use of a DGNSS network solution will significantly accelerate the ambiguity determination, both in static and kinematic measurements. It should also be noted that in this methodology, for determining ambiguity sets, based on the function expressed by Equation (11), we need only single phase observations of the second differences, without the need to determine the approximate ambiguities of the float type. Moreover, it is not necessary that the DD phase observations for the satellite pairs: G09-G04, G09-G06 and G09-G26 be at the same time (t). Each observation may be from a different observation epoch, furthermore, we only need one DD epoch to indicate the probable ambiguity sets for validation. Moreover, using the function expressed by Equations (11) with (14) and (15), we were also able to indicate the ambiguity sets for the remaining combinations of satellite pairs: G06-G26; G26-G04 and G06-G06. Such a solution can be effective for precise positioning with the use of smartphones. This is related to the selection of the reference satellite when determining DD observations, i.e., GNSS antennas in mobile phones have much worse access to satellites than traditional antennas in GNSS receivers, especially when the smartphone is in a vertical position above the observed point, while reference satellites are selected as those that are at the zenith [35]. While for geodetic receivers it is an optimal solution when the reference satellite is in zenith, and for precise phase positioning with the use of mobile phones, it is a big problem, because the reference satellite located at the zenith, due to the housing of the cell phone, will have a significantly worse signal than the satellites lower above the horizon if the phone is oriented vertically during the measurement.

Discussion
The accuracy and reliability of GNSS positioning depends on several major factors, such as the type of equipment (hardware), software (algorithms used), measurement technology and processing GNSS data. Each of these elements is crucial. To obtain accurate and reliable coordinates, especially for precise navigation purposes, we must use both the appropriate class of GNSS satellite receivers as well as know the capabilities of the used algorithms. Only then should we choose the appropriate measurement and validation technology for the coordinates being determined. Therefore, GNSS positioning is quite complicated, and requires from a user both theoretical and practical knowledge of GNSS positioning techniques, as well as knowledge of the characteristics of various errors occurring in satellite observations. One of the ways for a reliable GNSS navigation is the use of several GNSS systems independently, e.g., GPS, GLONASS, Galileo and BeiDou. The use of such a number of satellites results in a significant increase in DGNSS positioning accuracy from about 1-2 m to about 0.1-0.2 m, using Kalman filtering. Reliability in aerial navigation plays an important role. Therefore, it can be obtained by using at least two or four independent GNSS navigation systems. Based on the conducted research, it can be concluded that obtaining 3D accuracy at a level below 0.47 m using only code observations and a network solution is possible with the use of only one GNSS system. Such accuracy already causes a significant reduction in the probable sets of ambiguities for relative errors of the L1-L5 phase observations from the interval (−7 cm; +7 cm). Such accuracy of the DGPS network positioning means that for four satellites and three independent DD observations, we have 3 3 = 27 combinations in the ambiguity initialization process.
In the case of network DGNSS positioning, using only two independent satellite systems, it is possible to obtain an accuracy below 0.4 m, which immediately reduces the possible ambiguity sets up to two for each pair of satellites. Which for four satellites gives us 2 3 = 8 independent combinations, that is, reducing all combinations from 216 to 8. Such accuracy of the GNSS network code positioning will therefore enable much faster ambiguity determination for L1-L5 phase measurements for a single measurement epoch.

Conclusions
This paper presents the possibilities of GNSS network positioning in the case of one, two and four independent DGNSS reference station positioning systems. The calculations were made using code measurements on the L1 frequency. The research was carried out in the scope of DGNSS code technology accuracy using GPS system and permanent reference stations of the ASG-EUPOS system.
While the measurement accuracies of code observations (meters) are significantly inferior to the measurement accuracy of phase observations (millimeters), the importance of code observations is fundamental for all GNSS systems. Without code measurements, there would be no GNSS navigation and there would be no possibility of precise phase positioning. Therefore, in this work, computational simulations were carried out based on real GPS observations, for the case of using two or four independent and equivalent GNSS positioning systems.
On the basis of real DGPS network positioning tests performed using only the GPS system, the average RMS errors were obtained at the level of 3 decimeters for the horizontal position and at the level of 6 decimeters for the vertical position, but only using the least squares method. However, in the case of using additional Kalman filtering, the average RMS errors were obtained at the level of 15 cm for the horizontal coordinates and at the level of 30 cm for the vertical coordinate.
The simulation tests were conducted on the basis of GPS observations only. Therefore, it was assumed that all current independent GNSS systems (e.g., GPS, GLONASS, Galileo or BeiDou) have similar positioning accuracy. Therefore, such simulations can be performed, which largely make it possible to evaluate the integration of any number of independent satellite positioning systems. Based on the conducted computational simulations, in which scenarios for two and four different GNSS systems were created, a significant increase in accuracy was obtained. For two systems, the average RMS errors were 0.08, 0.11 and 0.19 m for the N, E, H coordinates. In the case of simulation for four DGNSS network positioning systems, the average errors were 0.04, 0.06 and 0.12 m, respectively for the N, E, H coordinates. Such accuracy allows instantaneous ambiguity initialization using PREFMAR and other methods.