*4.3. Ambiguity Resolution Analysis*

In the triangle network formed by BONE-STNY-NEWH, all baselines shared the common pivot satellite, and the closure residual of DD ambiguities should meet the following constraint: ∇Δ*N*closure = ∇Δ*N*BONE-STNY + ∇Δ*N*STNY-NEWH + ∇Δ*N*NEWH-BONE = 0. Thus, ∇Δ*N*closure could be used to verify the proposed DF data-aided AR method. It should be noted that only DF data from GPS is used for a long baseline test since only GPS signal is stably received.

To illustrate the reasonability for setting the window width of the moving average to be five epochs, Figure 9 gives the differential residuals of adjacent ∇Δ*Nw* on each baseline. The statics of results are shown in Table 3 and the results within ±1 cycle are shown for easy observation. The threshold of ±0.1 cycles, ±0.15 cycles, and ±0.5 cycles are also illustrated as limitations bounds.



**Figure 9.** The ∇Δ*N*<sup>w</sup> for each baseline of the triangle closure network. (**a**) BONE-STNY; (**b**) NEWH-BONE; (**c**) STNY-NEWH.

In Table 3, the proportion of residuals suppressed within ±0.1 cycles is 98.6679% for BONE-STNY, 98.3097% for NEWH-BONE, and 98.8000% for STNY-NEWH, respectively. Meanwhile, the results increase slightly when the threshold bounds increase. Thus, setting the threshold to 0.1 cycles is reasonable and conservative, as most validated epochs are included.

The ∇Δ*N*closure of all available satellites is shown in Figure 10. It could be found that, for most satellites, the ∇Δ*N*closure converges to 0 once they are used and ∇Δ*N*closure = 0 accounts for the majority. This means that ∇Δ*N*BONE-STNY, ∇Δ*N*STNY-NEWH, ∇Δ*N*NEWH-BONE are fixed correctly without initialization. The outliers usually appeared at discrete epochs contaminated by cycle slip and could be further eliminated by refined data synchronization and cycle-slip detection.

**Figure 10.** ∇Δ*N*closure in the network. (**a**) ∇Δ*N*closure for SV1-SV16; (**b**) ∇Δ*N*closure for SV17-SV32.

Figure 11 shows the detailed results of ∇Δ*N*closure with a total of 23377 effective epochs used. The minimum and maximum outliers accompanied by the cycle slip are (−283.56 cycles, 365.86 cycles). According to Table 4, the ∇Δ*N*closure < 0.5 cycles in most epochs, meaning that the ∇Δ*N*<sup>w</sup> can be correctly fixed by integer rounding with a success rate of not less than 93%. The 1.7154% epochs fall into 0.5–1 cycles and 2.7848% fall into 1–5 cycles are treated as small residuals and could be improved by synchronization and cycle-slip repair. However, at least one of the three baselines fails to fix its ambiguity for the remaining 1.6041% of epochs that include residuals larger than 10 cycles. Once the ∇Δ*N*<sup>w</sup> is fixed, the corrected ∇Δ*ϕ* is used for the float solution, which is expected to be with a small variance.

**Figure 11.** Ambiguity closure residual in the network.


**Table 4.** The statistics of ∇Δ*N*closure.

The BONE-GSBN and BONE-GSBN with the distance of 106.877 km and 58.942 km, respectively, are used for the long baseline test. The improvements are both benefiting from the 'DF Data-aid AR stage' and the 'filter stage'. Figure 12 and Table 5 show the positioning error on ENU components. The AMC-KF maintains the positioning error around 0 and no obvious difference occurs in all directions. 

It can be inferred the proposed filter strategy suppresses the noise in DD measurements on the whole, as the correntropy can measure the similarity between the random variables through PDF.

For AMC-KF, the RMS is improved by (+78.60%, +88.85%, +77.74%) at BONE-WBEE and (+57.49%, +69.52%, +42.31%) at BONE-GSBN than DD-KF. The STD is improved by (+64.97%, +66.26%, +60.81%) at BONE-WBEE and (+51.10%, +46.89%, +40.34%) at BONE-GSBN, respectively. The proposed filter strategy can reduce the positioning error significantly for the long baseline.

**Figure 12.** Positioning error on ENU. (**a**) Positioning error of BONE-WBEE; (**b**) positioning error of BONE-GSBN.


**Table 5.** The RMS and STD of position error on the ENU component.

#### **5. Conclusions**

In terms of the timeliness and accuracy of RTK in harsh environments, both the measurement quality and the filter robustness need to improve, especially with the presence of non-Gaussian noise. This paper focus on multi-GNSS DF applications and a new nonlinear filter strategy is proposed. It consists of the DF data-aided AR method and the AMC-KF based on MCC and adaptive KBW. The superiorities are verified through tests with various baselines. First of all, ionosphere-free and wide-lane measurements are used for the DF data-aided AR method. The ambiguities on each frequency are directly converted without searching. Then, the corrected carrier measurements are used for the float solution by the proposed AMC-KF. The AMC-KF is robust to non-Gaussian noise and sparking noise as it employs MCC and adaptive KBW to measure the similarity between the input and output. Compared to the conventional DD-KF, the proposed strategy achieves higher accuracy and efficiency. The following conclusions are obtained:


Our future work focuses on deriving the sequential form of the proposed nonlinear filter strategy and applying it to smartphone RTK applications. To improve the precision and reliability of dynamic navigation in urban environments, the integration of the proposed method with vector-tracking GNSS receivers will also be explored.

**Author Contributions:** Conceptualization, J.L.; methodology, J.L.; software, J.L. and T.L.; investigation, Y.J., B.X., and Z.L.; data curation, J.L., M.S. and T.L.; writing—original draft preparation, J.L.; writing—review and editing, B.X., M.S., M.L., Z.L. and G.X.; supervision, Y.J., B.X., Z.L., and G.X. All authors have read and agreed to the published version of the manuscript.

**Funding:** This study is supported by the Guangdong Basic and Applied Basic Research Foundation (No. 2021A1515012600); the Opening Project of Guangxi Wireless Broadband Communication and Signal Processing Key Laboratory (No. GXKL06200217); the Open Fund of Key Laboratory of Urban Land Resources Monitoring and Simulation, Ministry of Natural Resources (No. KF-2021-06-104).

**Data Availability Statement:** The authors are grateful to the Global Navigation Satellite System Data Centre of Australia for publicly sharing their GNSS data.

**Acknowledgments:** We are grateful to the anonymous reviewers and editors for their helpful and constructive suggestions, which significantly improved the quality of the paper.

**Conflicts of Interest:** The authors declare no conflict of interest.

#### **Appendix A**

Defining the common geometry distance *ρ* + *c*(*δt*<sup>u</sup> − δ*t* s) + *T* without considering ionosphere delay as *Θ*. The carrier phase measurement *ϕ* (in cycles) with wavelength *λ* and code measurements *P* (in meters) are defined as follows:

$$\begin{cases} \begin{aligned} \varphi\_1 &= \frac{f\_1}{c} \Theta - \frac{A}{\mathcal{L}f\_1} + N\_1 + \xi\_{,\varphi\_1} \\ \varphi\_2 &= \frac{f\_2}{c} \Theta - \frac{A}{\mathcal{L}f\_2} + N\_2 + \frac{\mathcal{X}}{\xi\_{,\Psi\_2}} \\ P\_1 &= \Theta + \frac{A}{f\_1^2} + \varepsilon p\_1 \\ P\_2 &= \Theta + \frac{A}{f\_2^2} + \varepsilon p\_2 \end{aligned} \end{cases} \tag{A1}$$

where *f* <sup>1</sup> and *f* <sup>2</sup> represent different frequencies, *t*<sup>u</sup> and *t* <sup>s</sup> are the clock errors from the user receiver and satellite and *ξ* and *ε* are the unmodelled noise on *ϕ* and *P*. The *c* denotes the speed of light. The *Θ* and *A* can be expressed by *P*<sup>1</sup> and *P*<sup>2</sup> as follows:

$$A = \frac{f\_1^2 f\_2^2 \left[ (P\_1 - P\_2) - \left( \varepsilon\_{P\_1} - \varepsilon\_{P\_2} \right) \right]}{f\_2^2 - f\_1^2} = \frac{f\_1^2 f\_2^2 (P\_1 - P\_2)}{f\_2^2 - f\_1^2} + \varepsilon\_A \tag{A2}$$

$$\Theta = \frac{\left(f\_1^2 P\_1 - f\_2^2 P\_2\right) - \left(f\_1^2 \varepsilon\_{P\_1} - f\_2^2 \varepsilon\_{P\_2}\right)}{f\_1^2 - f\_2^2} = \frac{f\_1^2 P\_1 - f\_2^2 P\_2}{f\_1^2 - f\_2^2} + \varepsilon\_{\Theta} \tag{A3}$$

where, *<sup>ε</sup><sup>A</sup>* <sup>=</sup> *<sup>f</sup>* <sup>2</sup> <sup>1</sup> *<sup>f</sup>* <sup>2</sup> <sup>2</sup> (*εP*1−*εP*<sup>2</sup> ) *f* 2 <sup>2</sup> <sup>−</sup>*<sup>f</sup>* <sup>2</sup> 1 and *εΘ* <sup>=</sup> (*<sup>f</sup>* <sup>2</sup> <sup>2</sup> *<sup>ε</sup>P*2−*<sup>f</sup>* <sup>2</sup> <sup>1</sup> *<sup>ε</sup>P*<sup>1</sup> ) *f* 2 <sup>1</sup> <sup>−</sup>*<sup>f</sup>* <sup>2</sup> 2 are the noise on *A* and *Θ*, respectively. The wide-lane combination of *ϕ* is expressed as:

$$
\varphi\_{WL} = \varphi\_1 - \varphi\_2 = \left(\frac{f\_1}{c} - \frac{f\_2}{c}\right)\Theta - \left(\frac{f\_2 - f\_1}{c f\_1 f\_2}\right)A + N\_w + \zeta\_w \tag{A4}
$$

where *Nw* is the wide-lane ambiguity, *ξ<sup>w</sup>* = (*ξ*<sup>1</sup> − *ξ*2). Then, the following expression can be obtained:

$$\begin{array}{lcl}\mathcal{O}\_{WL} &= \frac{f\_1 - f\_2}{\varepsilon} \cdot \frac{f\_1^2 P\_1 - f\_2^2 P\_2}{f\_1^2 - f\_2^2} - \left(\frac{f\_2 - f\_1}{\varepsilon f\_1 f\_2}\right) \cdot \frac{f\_1^2 f\_2^2 (P\_1 - P\_2)}{f\_2^2 - f\_1^2} + N\_{\text{av}} + \varepsilon \\ &= \frac{f\_1^2 P\_1 - f\_2^2 P\_2}{\lambda\_w \left(f\_1^2 - f\_2^2\right)} + \left(\frac{f\_1 - f\_2}{\varepsilon f\_1 f\_2}\right) \cdot \frac{f\_1^2 f\_2^2 (P\_1 - P\_2)}{f\_2^2 - f\_1^2} + N\_{\text{av}} + \varepsilon \\ &= \frac{f\_1^2 P\_1 - f\_2^2 P\_2}{\lambda\_w \left(f\_1^2 - f\_2^2\right)} + \frac{f\_1 f\_2 \left(P\_1 - P\_2\right)}{\lambda\_w \left(f\_2^2 - f\_1^2\right)} + N\_{\text{av}} + \varepsilon \\ &= \frac{\left(f\_1^2 P\_1 - f\_2^2 P\_2\right) - f\_1 f\_2 \left(P\_1 - P\_2\right)}{\lambda\_w \left(f\_1^2 - f\_2^2\right)} + N\_{\text{av}} + \varepsilon \\ &= \frac{\left(f\_1 P\_1 + f\_2 P\_2\right)}{\lambda\_w \left(f\_1 + f\_2\right)} + N\_{\text{av}} + \varepsilon \end{array}$$

where *ε* is the combination of the noise terms which can be expressed as *ε* = *ξ<sup>w</sup>* + *<sup>f</sup>*<sup>1</sup> *<sup>c</sup>* <sup>−</sup> *<sup>f</sup>*<sup>2</sup> *c εθ* <sup>−</sup> *<sup>f</sup>*2−*f*<sup>1</sup> *c f*<sup>1</sup> *<sup>f</sup>*<sup>2</sup> *εA*. Finally, the *Nw* can be obtained as follows:

$$N\_{WL} = (\varphi\_1 - \varphi\_2) - \frac{(f\_1 P\_1 + f\_2 P\_2)}{\lambda\_{\text{w}}(f\_1 + f\_2)} + \varepsilon \tag{A5}$$

In addition, the corresponding DD wide-lane ambiguity can be obtained by:

<sup>∇</sup>Δ*Nw* <sup>=</sup> (∇Δ*ϕ*<sup>1</sup> − ∇Δ*ϕ*2) <sup>−</sup> (*f*1∇Δ*P*<sup>1</sup> <sup>+</sup> *<sup>f</sup>*2∇Δ*P*2) *<sup>λ</sup>*w(*f*<sup>1</sup> <sup>+</sup> *<sup>f</sup>*2) <sup>+</sup> <sup>∇</sup>Δ*<sup>ε</sup>* (A6)

#### **Appendix B**

According to Equation (5), the ionosphere-free measurement is defined as ∇Δ*ϕ*IF <sup>=</sup> *<sup>m</sup>*∇Δ*ρ*<sup>1</sup> <sup>−</sup> *<sup>n</sup>*∇Δ*ρ*2. Where *<sup>m</sup>* <sup>=</sup> *<sup>f</sup>* <sup>2</sup> 1 *f* 2 <sup>1</sup> <sup>−</sup>*<sup>f</sup>* <sup>2</sup> 2 and *<sup>n</sup>* <sup>=</sup> *<sup>f</sup>* <sup>2</sup> 2 *f* 2 <sup>1</sup> <sup>−</sup>*<sup>f</sup>* <sup>2</sup> 2 , the definition of symbols and variables stay the same as those above. Thus, we have the following expansion:

$$\begin{array}{lcl}\nabla\Delta\boldsymbol{\uprho}\_{IF} &= m\left[\nabla\Delta\boldsymbol{\uprho}\_{1} + \nabla\Delta\boldsymbol{N}\_{1}\boldsymbol{\uplambda}\_{1} - \frac{A}{f\_{1}^{2}}\right] - n\left[\nabla\Delta\boldsymbol{\uprho}\_{2} + \nabla\Delta\boldsymbol{N}\_{2}\boldsymbol{\uplambda}\_{2} - \frac{A}{f\_{2}^{2}}\right] \\ &= m\nabla\Delta\boldsymbol{\uprho}\_{1} + m\nabla\Delta\boldsymbol{N}\_{1}\boldsymbol{\uplambda}\_{1} - n\nabla\Delta\boldsymbol{\uprho}\_{2} - n\nabla\Delta\boldsymbol{N}\_{2}\boldsymbol{\uplambda}\_{2} \\ &= m\nabla\Delta\boldsymbol{\uprho}\_{1} - n\nabla\Delta\boldsymbol{\uprho}\_{2} + m\boldsymbol{\uplambda}\_{1}\nabla\Delta\boldsymbol{N}\_{1} - n\boldsymbol{\uplambda}\_{2}(\nabla\Delta\boldsymbol{N}\_{1} - \nabla\Delta\boldsymbol{N}\_{w}) \\ &= m\nabla\Delta\boldsymbol{\uprho}\_{1} - n\nabla\Delta\boldsymbol{\uprho}\_{2} + m\boldsymbol{\uplambda}\_{1}\nabla\Delta\boldsymbol{N}\_{1} - n\boldsymbol{\uplambda}\_{2}\nabla\Delta\boldsymbol{N}\_{1} + n\boldsymbol{\uplambda}\_{2}\nabla\Delta\boldsymbol{N}\_{w} \\ &= m\nabla\Delta\boldsymbol{\uprho}\_{1} - n\nabla\Delta\boldsymbol{\uprho}\_{2} + (m\boldsymbol{\uplambda}\_{1} - n\boldsymbol{\uplambda}\_{2})\nabla\Delta\boldsymbol{N}\_{1} + n\boldsymbol{\uplambda}\_{2}\nabla\Delta\boldsymbol{N}\_{w} \end{array}$$

In addition, then, we have

$$\begin{cases} (m\lambda\_1 - n\lambda\_2)\nabla\Delta N\_1 = \nabla\Delta\varrho\_{IF} - m\nabla\Delta\varrho\_1 + n\nabla\Delta\varrho\_2 - n\lambda\_2\nabla\Delta N\_w\\ \nabla\Delta N\_1 = \frac{1}{m\lambda\_1 - n\lambda\_2}[\nabla\Delta\varrho\_{IF} - m\nabla\Delta\varrho\_1 + n\nabla\Delta\varrho\_2 - n\lambda\_2\nabla\Delta N\_w] \end{cases}$$

#### **References**

