GNSS Precise Relative Positioning Using A Priori Relative Position in a GNSS Harsh Environment

To enable Global Navigation Satellite System (GNSS)-based precise relative positioning, real-time kinematic (RTK) systems have been widely used. However, an RTK system often suffers from a wrong integer ambiguity fix in the GNSS carrier phase measurements and may take a long initialization time over several minutes, particularly when the number of satellites in view is small. To facilitate a reliable GNSS carrier phase-based relative positioning with a small number of satellites in view, this paper introduces a novel GNSS carrier phase-based precise relative positioning method that uses a fixed baseline length as well as heading measurements in the beginning of the operation, which allows the fixing of integer ambiguities with rounding schemes in a short time. The integer rounding scheme developed in this paper is an iterative process that sequentially resolves integer ambiguities, and the sequential order of the integer ambiguity resolution is based on the required averaging epochs that vary for each satellite depending on the geometry between the baseline and the double difference line-of-sight vectors. The required averaging epochs with respect to various baseline lengths and heading measurement uncertainties were analyzed through simulations. Static and dynamic field tests with low cost GNSS receivers confirmed that the positioning accuracy of the proposed method was better than 10 cm and significantly outperformed a conventional RTK solution in a GNSS harsh environment.


Introduction
Precise relative positioning is an important capability for the applications that involve the cooperation of multiple vehicles, and it has typically been achieved by using carrier-based differential Global Navigation Satellite Systems (GNSS), such as Real Time Kinematic (RTK) systems [1][2][3]]. An RTK system consists of reference and rover receivers with high-grade antennas and can provide centimeter-level positioning accuracy by using double difference code and carrier phase measurements. An RTK system must solve integer ambiguities in carrier phase measurements, for instance, by using Least-squares Ambiguity Decorrelation Adjustment (LAMBDA) algorithms [4][5][6] or a PREcise and Fast Method of Ambiguity Resolution (PREFMAR) method [7,8]. The LAMBDA method has been widely used in GNSS communities and it consists of three steps including a float solution generation, a decorrelation of double difference measurements, and an integer ambiguity search. The more recent PREFMAR method does not require a float baseline solution with a variance-covariance matrix but uses the correlation characteristics of double difference measurements on two or three frequencies to resolve integer ambiguities. Since the ambiguity values would change when the cycle slips of a carrier phase occur, an RTK system should detect and repair cycle slips if possible. Although some GNSS receivers report the occurrence of cycle slips, more can be made by using dual or triple frequency carrier phase measurements through cycle slip detections [9][10][11]. The confidence level determination of the resolved integer ambiguity is another challenging problem. There are a number of various statistical methods based on ratio tests, F-distribution, t-distribution, and Chi-square distribution [12][13][14].
While a dual-frequency receiver with a high-grade antenna is typically employed for a reliable RTK performance, a single-frequency multi-constellation RTK has been actively researched. The single-frequency multi-constellation RTK uses double difference code and carrier phase measurements and could provide equivalent positioning accuracy to the dual-frequency RTK with a short baseline of up to 10 km or so [15][16][17][18][19][20]. Verhagen et al. investigated the single-frequency RTK integer ambiguity resolution and positioning performance for different GNSS configurations [15]. Robert et al. investigated single-frequency Global Positioning System (GPS)/BeiDou Navigation Satellite System (BeiDou) RTK positioning performance with low-cost Ublox receivers compared to dual-frequency GPS with survey-grade receivers [16,17]. Jackson et al. evaluated the commercial low-cost singlefrequency RTK and found that many of them suffered from performance degradation and wrong integer ambiguity fixes particularly when using a patch antenna [18]. To improve the single-frequency RTK, Lee et al. proposed an adaptive GPS/Inertial Navigation System integration that estimated a double difference noise covariance matrix on-the-fly [19]. Furthermore, Liu proposed a Kalman filter with the partial ambiguity fix method [20].
There are also several algorithms that take advantage of a known geometry of two GNSS receivers for precise positioning or attitude estimation. For a GNSS-based attitude determination, the fixed length of a baseline is typically used as a constraint in integer ambiguity search strategies [21][22][23][24][25][26]. The author of [6,21] introduced a detailed description of a modified LAMBDA method for a so-called GNSS Compass. Giorgi et al. developed search and shrink strategies for a baseline-constrained LAMBDA method [22]. Wang et al. used a fixed baseline to reduce the integer ambiguity search spaces that had been first expanded due to an inaccurate float solution [23].
Liu et al. introduced a single-epoch single-frequency algorithm based on partial least-squares ambiguity decorrelation adjustment that employed baseline constraints [24]. The authors of [25] performed a similar research with GPS/Galileo multi-constellation for a bridge dynamic monitoring problem. More recently, the authors of [26] introduced a precise positioning method based on an array of GNSS reference receivers. The fixed baseline lengths as well as the orientations between the array of the reference receivers helped to improve a float solution, then the integer ambiguity solution was obtained using LAMBDA.
However, the RTK based on LAMBDA and baseline-constrained LAMBDA may result in large positioning errors up to several meters due to wrong integer fixes and may take a long time to first fix in a harsh environment for GNSS. The main cause is the small number of satellites commonly in view between two receivers [23]. This paper presents a novel GNSS carrier phase-based precise relative positioning method using a known baseline information of two GNSS receivers that could outperform the conventional RTK approaches in a GNSS harsh environment.
In this paper, the baseline length was assumed to be accurately known up to a couple of centimeters, and the baseline heading direction was assumed to be measured from magnetometers. This baseline information was used to estimate an a priori relative position and its associated uncertainty. The a priori relative position uncertainty was derived by parameterizing the baseline length, baseline length measurement error, heading measurement error, and height measurement error.
In general, the a priori relative position and its uncertainty can be used to resolve integer ambiguities by using rounding, bootstrapping, and LAMBDA methods [27,28]. In this paper, a sequential rounding scheme is proposed for an integer ambiguity resolution with the a priori relative position. While the a priori relative position is valid in the beginning of operation, the proposed rounding scheme first computes a required averaging time for double difference carrier phase measurements of each satellite. The required averaging time may vary for each satellite depending on the relationship between the direction of a user-to-satellite line-of-sight vector and the direction of the a priori relative position error. After resolving the integer ambiguities of all double difference measurements, precise relative positioning can perform as a conventional RTK. Therefore, GNSS receivers should maintain the a priori relative position until all of the integer ambiguities are resolved. The paper will show that this initialization time is a function of baseline lengths and the uncertainty of the a priori relative position. The paper will also show that the initialization time can be significantly shortened from using the proposed sequential rounding scheme. Section 2 reviews the GNSS double difference measurements and introduces an integer ambiguity fix approach utilizing the known geometry of two Unmanned Aerial Vehicles (UAV) placed on a levelled launchpad. Section 3 analyzes the impact of the errors in the a priori relative position and the geometry of the satellites in view on the integer ambiguity resolution with rounding schemes. Section 4 introduces a sequential rounding scheme approach that may accelerate the integer ambiguity fix process in the presence of the a priori baseline relative position errors. Section 5 presents the results of the static and dynamic field test of the proposed method and compares them with an open source RTK solution using LAMBDA and baseline-constrained LAMBDA methods.

Integer Ambiguity Resolution with Rounding Using a Known Relative Position
The carrier phase measurements of GNSS satellites can be modeled as shown in [29,30]: where Φ is carrier phase measurements, r is the true range between a user and a satellite, and t u and t s are the receiver and satellite clock errors, respectively. I is an ionospheric delay and T is a tropospheric delay. N is an integer ambiguity. λ is the wavelength of the carrier phase. ε includes the multipath, thermal noises, and modeling errors in the carrier phase measurements. When two GNSS receivers, master (M) and follower (F), are within several kilometers, the double difference formulation of the satellites k and l can be modeled as where ∆Φ k MF and ∇∆Φ kl MF are the single and double difference carrier phase measurements, respectively, between the receivers M and F. 1 k M is the direction cosine vector from the receiver M to satellite k in East-North-Up (ENU) coordinates. l indicates a pivot satellite.
x MF is the relative position vector from the receiver M to the receiver F in ENU coordinates. ∇∆N kl is the double differenced integer ambiguity, and ∇∆ε kl includes the double difference noise and multipath. In a conventional RTK system, ∇∆N kl is resolved using various algorithms, such as LAMBDA [4][5][6]. The LAMBDA method does not place any constraints on x MF and uses no a priori information of x MF when searching for the integer ambiguty values. If the length of x MF is fixed in some cases like GNSS attitude determination problems, this constraint is used in baseline-constrained LAMBDA methods to more efficiently search for the integer ambiguity values [21][22][23][24][25][26]. Through those algorithms, centimeter levels of positioning accuracy can be obtained. However, as stated before, the integer ambiguity is still challenging in a GNSS harsh environment. Unlike the prior arts, the paper aims to find the integer ambiguity values with an a priori relative position, which would provide a more accurate estimation of the integer ambiguity in a GNSS harsh environment.
Let us denote the true and estimated initial baseline as x MF andx MF , respectively. Then,x MF can be modeled asx where b 0 is the position bias of the known initial baseline. Using Equation (3), Equation (2) can be expressed as In Equation (4), the double differenced integer ambiguities can be reliably and instantly measured if b 0 is sufficiently small. In practice, accurately surveyed locations will not be available at all times. A practical approach to obtainx MF is to use a tool that allows a user to conveniently place two receivers at a known baseline length and height. As an example, Figure 1 shows two UAVs equipped with a GNSS receiver and a magnetometer on a launchpad. The GNSS receiver antenna is to be placed in the marked point on the launchpad, and the distance, d, between the marks is fixed. The origin of a local coordinate system, [X L , Y L , Z L ], in the launchpad is located at the position of the master receiver. θ is the baseline heading or X L direction with respect to North and is measured from the onboard magnetometers aligned with the baseline.
where 0 b is the position bias of the known initial baseline. Using Equation (3), Equation (2) can be expressed as In Equation (4), the double differenced integer ambiguities can be reliably and instantly measured if 0 b is sufficiently small. In practice, accurately surveyed locations will not be available at all times. A practical approach to obtain ˆM F x is to use a tool that allows a user to conveniently place two receivers at a known baseline length and height. As an example, Figure 1 shows two UAVs equipped with a GNSS receiver and a magnetometer on a launchpad. The GNSS receiver antenna is to be placed in the marked point on the launchpad, and the distance, d, between the marks is fixed. The origin of a local coordinate system, [XL, YL, ZL], in the launchpad is located at the position of the master receiver. θ is the baseline heading or XL direction with respect to North and is measured from the onboard magnetometers aligned with the baseline. Assuming that the two GNSS receivers are in the same height above the ground and that there are no measurement errors in d andθ , then the a priori relative position in ENU coordinates, Then, , MF aprioi x in Equstion (5) can be substituted into Equation (2) and integer ambiguities can be found from a roundoff, such that where     roundoff is a roundoff operator. Assuming that the two GNSS receivers are in the same height above the ground and that there are no measurement errors inand d and θ, then the a priori relative position in ENU coordinates,x MF,aprioi , in a vector form is computed aŝ Then,x MF,aprioi in Equstion (5) can be substituted into Equation (2) and integer ambiguities can be found from a roundoff, such that where [ ] roundo f f is a roundoff operator. The correctness of the ∇∆N kl , of course, depends on the errors in the measurements of d and θ, which will be further discussed in the next section. After finding ∇∆N kl for n-1 satellites, the a-posteriori relative position computed from using GNSS measurements, x MF,GNSS , can be obtained from solving the following equation. where W is a weighting matrix. The superscript T indicates a transpose.
In the next section, the expression ofx MF,aprioi is derived with small measurement errors. Moreover, a metric that quantitatively evaluates the impact of the measurement errors on the integer ambiguity fix will be discussed.

Analysis on the Impact of Errors in the A Priori Relative Position
An integer ambiguity resolution would be a trivial problem if the relative position of the baseline between the two antennas was accurately measured. The impact of the measurement errors of d, θ, and height difference of the pads, h, on the integer ambiguity is analyzed as follows.
Let us introduce the additive measurement errors δd and δθ of the baseline length and heading, respectively. The height measurement error between the two pads is denoted as δh. Then, the estimated relative position in ENU coordinates can be expressed aŝ In practice, the baseline length error, δd and δh can be controlled better than one centimeter. The azimuth angle measurement errors of low-cost magnetometers have been reported as 0.25-2.0 degrees [31,32].
Assuming that δd, δθ, and,δh are small and δh is insignificant compared tod, such thatα is also small, then Thus, b 0 can be approaximated as Equation (11) indicates that the impact of the errors inx MF,aprioi becomes small as the baseline length, d, decreases. Therefore, a shorter baseline length is preferred if the measurement errors cannot be maintained as small. Figure 2 shows two examples, satellite 1 (Sat1) and satellite 2 (Sat2), of residual double difference carrier phase measurements in cycles subtracted from the correct integer ambiguities. The examples were generated using the SatNav simulator [33] with d as 2 m, and δd and δh were assumed to follow a zero-mean Gaussian distribution with standard deviations of 1 cm. δθ was assumed to follow a zero-mean Gaussian distribution with 1.0 degrees standard deviations. In Figure 2, the red line indicates the integer ambiguity offsets resulted from using Equation (6) with measurements at one epoch only. The standard deviations of the carrier phase residuals of Sat1 and Sat2 are 0.12 cycles and 0.19 cycles, and there are many cases of one cycle integer ambiguity offsets in Sat2. ard deviations of 1 cm. δθ was assumed to follow a zero-mean Gaussian distribut with 1.0 degrees standard deviations. In Figure 2, the red line indicates the integer am guity offsets resulted from using Equation (6) with measurements at one epoch only. standard deviations of the carrier phase residuals of Sat1 and Sat2 are 0.12 cycles and 0 cycles, and there are many cases of one cycle integer ambiguity offsets in Sat2. The reason for the relatively large residual carrier phase and many wrong inte ambiguities in Sat2 is that the direction of the double difference line-of-sight vector is most parallel to the direction of 0 b , which amplifies the overall error term in Equat (4). Figure 3 shows the statistics of the relative angles between the double difference li of-sight vectors of Sat1 and Sat2 and 0 b in the left column. Figure 3 also shows the c responding projected baseline errors onto the double difference line-of-sight vector cycles in the right column. Unlike Sat1, there is a significant number of relative ang close to 0 and 180 degrees in Sat2, which results in the much larger projected errors t could induce wrong integer fixes. The reason for the relatively large residual carrier phase and many wrong integer ambiguities in Sat2 is that the direction of the double difference line-of-sight vector is almost parallel to the direction of b 0 , which amplifies the overall error term in Equation (4). Figure 3 shows the statistics of the relative angles between the double difference lineof-sight vectors of Sat1 and Sat2 and b 0 in the left column. Figure 3 also shows the corresponding projected baseline errors onto the double difference line-of-sight vectors in cycles in the right column. Unlike Sat1, there is a significant number of relative angles close to 0 and 180 degrees in Sat2, which results in the much larger projected errors that could induce wrong integer fixes.  From the above analysis, it is possible to discern which satellite combinations would suffer from a wrong integer ambiguity fix by comparing the double difference line-ofsight vectors and b 0 . However, b 0 is unknown and is a function of random variables of δd, δθ, and δh. As b 0 cannot be explicitly obtained, the impact of the measurement errors is predicted by using the baseline geometry and sensor measurement uncertainty in this paper.
Let us treat δd, δθ, and δh. as random variables with Gaussian distributions, such that δd ∼ N(0, σ δd ), δθ ∼ N(0, σ δθ ), and δh ∼ N(0, σ δh ). With that, the variance of the vector of double difference carrier phase residuals in cycles, ∇∆N, after applyingx MF,aprioi can be modeled as from Equations (6) and (11). and where P is the covariance matrix of b 0 based on the baseline geometry and sensor measurement accuracies. Var( ) denotes the variance of the variable or matrix inside the parenthesis. ∇∆ε is the vector of the double difference noise and multipath. The diagonal element of the Var(∇∆N) can be used as a metric to discern troublesome satellites for a reliable integer ambiguity estimation. This can also be used to determine the number of averaging lengths to reduce the effect of b 0 in the next section.

Sequential Integer Ambiguity Resolution with Rounding
To reduce the impact of sensor measurement errors and noise, it is desirable to take the averages of multi-epoch measurements to compute integer ambiguities. This section first discusses how to determine an averaging time and proposes iterative methods that would help to reliably fix the integer ambiguities based on roundoff approaches.
From Equation (6), the averaged integer ambiguity estimate can be obtained from where N kl avg is the number of an averaging epoch for the double difference measurements of k and l satellites. t indicates an epoch. N kl avg is computed based on the uncertainty of a sample mean as follows: σ ∇∆N avg is a desired standard deviation in estimating the double difference integer ambiguity and is conservatively set to 0.1 cycles in this paper. The subscript (k,k) denotes the kth row and kth column element. [ ] round-up is a round-up operator. Based on Equations (12) and (13), Var(∇∆N) would increase as the baseline length increases. To see the effects of the baseline length on the number of averaging epochs, a GPS/Galileo satellite constellation was simulated as shown in Figure 4. The baseline vector is toward the North, and five cases of baseline lengths ranging from 0.5 m to 10.0 m were tested. δd and δh were assumed to follow a zero-mean Gaussian distribution with standard deviations of 1 cm. δθ was assumed to follow a zero-mean Gaussian with 1.0 degrees of standard deviations. σ ∇∆N was set to 0.1 cycles.    Table 1 lists the computed N avg and confirms that it increased as the baseline length increased. For the relatively long baseline lengths of 5.0 and 10.0 m, there were large differences between the maximum and the minimum values of N avg . For example, when the baseline length was 10.0 m, the maximum value was 121, and the minimum was 4. Among the thirteen satellites, the N avg values of seven satellites were less than 10 epochs.   Table 2 lists the N avg values when the heading measurement accuracy degrades to 2.0 deg. The impact of the degraded heading measurement accuracy was minimal when the baseline length as less than 2.0 m. However, the impact became significant when the baseline lengths were larger than 5.0 m. Figure 5 illustrates the impact of d and σ δθ on the N avg from Tables 1 and 2. As with Table 1, there was a large difference between the minimum and maximum values of N avg in the cases of 5.0 and 10.0 m baseline lengths. In this type of situation, rather than waiting for the maximum N avg epochs to resolve all of the integer ambiguities, a user can instead fix integer ambiguities of the subset of the satellites requiring a relatively smaller N avg . The partially fixed integer ambiguities can provide an intermediate relative position solution that will be used to fix the integer ambiguities of the remaining satellites. This approach is referred to as partial integer ambiguity fix mode in this paper and is further described in the next subsection. Table 2. The number of required averaging epochs to achieve σ ∇∆N of 0.1 cycles with five cases of baseline lengths. The simulation set up is identical to the one used in Table 1

Partial integer ambiguity fix mode for faster integer ambiguity resolution
In the partial integer ambiguity fix mode, the required averaging epochs are recom- , can be expressed as follows:

Partial Integer Ambiguity Fix Mode for Faster Integer Ambiguity Resolution
In the partial integer ambiguity fix mode, the required averaging epochs are recomputed by using the intermediate relative position obtained from the subset of satellites with lower N avg . Assuming that the integer ambiguities of the subset of the satellites are correct and the position estimate with the subset of the satellites isx MF,PAR , the uncertainty of the position estimate, Px MF,PAR , can be expressed as follows: G PAR is the geometry matrix used to estimatex MF,PAR , and W PAR is the corresponding weighting matrix. Now, the integer ambiguities of the remaining satellites can be found using the variance of the double difference carrier phase in Equation (17) and averaging in Equation (18) as follows: where G REM is the geometry matrix for the remaining satellites. Then, where N avg,PAR is the number of averaging epochs computed using Var(∇∆N PAR ) and Equation (15). As Var(∇∆N PAR ) is small, N avg,PAR in the partial integer ambiguity fix mode becomes small as well. The immediate consequence is that the remaining integer ambiguities can now be fixed with much lower averaging epochs. Figure 6 shows the overall procedure of the proposed integer ambiguity fix strategies, including the partial integer ambiguity fix mode. To determine the effectiveness of the partial ambiguity fix, a total of 1000 cases were tested using the same simulation set-up for a 10 m baseline length with δθ σ = 2.0 deg in Table 2. Figure 7 shows the simulated instantaneous a priori relative position errors in which the follower positioning errors in the North were much larger than in East and Up due to inaccurate heading measurements and the relatively long baseline. In practice, it is To determine the effectiveness of the partial ambiguity fix, a total of 1000 cases were tested using the same simulation set-up for a 10 m baseline length with σ δθ = 2.0 deg in Table 2. Figure 7 shows the simulated instantaneous a priori relative position errors in which the follower positioning errors in the North were much larger than in East and Up due to inaccurate heading measurements and the relatively long baseline. In practice, it is recommended to apply a Kalman or an averaging filter to enhance the accuracy of the relative position before using it asx MF,aprioi . However, in order to access the performance of the proposed partial integer ambiguity with possible launchpad and magnetometer calibration errors, the instantaneous relative position shown in Figure 7 was used aŝ x MF,aprioi .  Table 2 in the simulation. Therefore, the partial int ambiguities of Sat 1, 3, 4, 7, 10, and 13 were fixed at the 16 th epoch, and  As the required averaging number of epochs, N avg , is computed based on the double difference line-of-sight vectors and the covariance ofx MF,aprioi , the N avg for all satellites remained constant as shown in Table 2 in the simulation. Therefore, the partial integer ambiguities of Sat 1, 3, 4, 7, 10, and 13 were fixed at the 16th epoch, andx MF,PAR was computed with those satellites. Figure 8 shows the distribution of the averaged positioning errors inx MF,PAR .x MF,PAR is averaged to reduce the multipath and noise effects assuming that the two GNSS receivers did not move. Withx MF,PAR and Px MF,PAR , N avg,PAR for the remaining satellites was less than N avg ; therefore, the integer ambiguities of the remaining satellites could be immediately resolved. As a result, the required averaging epochs for all satellites was effectively N avg , and no wrong integer fixes occurred in all 1000 cases. Figure 9 shows the distribution of the positioning errors using all satellites. maining satellites was less than avg N ; therefore, the integer ambiguities of the remai satellites could be immediately resolved. As a result, the required averaging epoch all satellites was effectively avg N , and no wrong integer fixes occurred in all 1000 ca Figure 9 shows the distribution of the positioning errors using all satellites.

Positioning with Large Measurement Biases in A priori Relative Position
The integer ambiguity fix methods proposed in the prior subsections work best if the a priori relative position is accurately measured. As discussed before, an accurate a priori relative position is resulted in the proposed launchpad set-up particularly when the heading measurement errors can be characterized as zero mean with small standard deviations. However, when the heading measurement errors have a bias,

Positioning with Large Measurement Biases in A Priori Relative Position
The integer ambiguity fix methods proposed in the prior subsections work best if the a priori relative position is accurately measured. As discussed before, an accurate a priori relative position is resulted in the proposed launchpad set-up particularly when the heading measurement errors can be characterized as zero mean with small standard deviations. However, when the heading measurement errors have a bias,x MF,aprioi and the corresponding integer ambiguity fix may have biases as well even with averaging.
Although a user may not be aware if the azimuth measurements have a bias or not, the integer ambiguity estimated through Equation (4)  an accuratex MF,aprioi is provided. However, as the biases inx MF,aprioi become larger, the fractional values of some ∇∆N avg can drift with respect to time and could pass ±0.5 cycles, such that the integer ambiguity estimate changes.
To minimize the effect of large heading measurement biases, a weighting matrix can be used by applying the following rules. For example, if a satellite has ∇∆N avg between ±0.4 and ±0.6 cycles, its ranging accuracy is designated as 100λσ ∇∆ε , where λ is the GNSS carrier phase wavelength, and σ ∇∆ε is the standard deviation of the carrier phase multipath and noise in meters. The reason is that the heading measurement bias is assumed to cause up to one cycle deviation from the correct integer ambiguity. In addition, a float value of ∇∆N avg is used for the position computation rather than being rounded off to an integer to avoid a roundoff error. The ranging accuracy of the remaining satellites is designated as σ ∇∆ε , and ∇∆N avg is rounded to an integer. Since the heading measurement bias may cause a large bias in the integer ambiguity fix in a relatively long baseline length, a short baseline is recommended in this case.

Experimental Test Results
The previous section details the processing algorithms, and this section presents the positioning performance of the proposed relative positioning method in a GNSS harsh environment. Figure 10 shows a launchpad testbed where two UAVs were placed with approximately 2 m separation during the test. Each UAV was equipped with Ublox ZED-F9P (Ublox, Thalwil, Switzerland)receivers and a Raspberry PI (Raspberry PI Foundation, Cambridge, England) to record the raw GNSS measurements. The heading direction from onboard the ST Micro LSM3030D (STMicroelectronics, Geneva, Switzerland) magnetometers was −3.7 degrees and was measured at 10 Hz. The heading measurement is shown in Figure 11.     Figure 10. The measurements were obtained from a ST Micro LSM3030D magnetometer at a rate of 10 Hz. The mean value of the measurement data was -3.1 °, and the standard deviation was 0.05 ° Figure 11. Heading measurements of the baseline shown in Figure 10. The measurements were obtained from a ST Micro LSM3030D magnetometer at a rate of 10 Hz. The mean value of the measurement data was −3.1 • , and the standard deviation was 0.05 • The height of two active antennas was calibrated to be on the same height using a laser level. During the static test, two Ublox ZED-F9P GNSS receivers were configured to output single-frequency GPS and BeiDou measurements at a rate of 1 Hz. The surveyed baseline relative position using a high-grade dual-frequency RTK system was −0.24, 2.02, and 0.02 m in East, North, and Up. Therefore, the true heading was −6.8 degrees with respect to North, and the heading error from the onboard magnetometer was about −3.1 degrees. The height difference of the two receivers was 1.6 cm. Figure 12 shows the GPS and BeiDou satellite locations, and there were four GPS and four BeiDou satellites. Figures 13-15 compare the positioning errors of the conventional LAMBDA, baseline constrained LAMBDA, and the proposed method with the a priori baseline information.
The position solutions of the LAMBDA and the baseline constrained LAMBDA were obtained using RTKLIB [34]. In the proposed method, the maximum number of the averaging time was nine seconds after the partial ambiguity fix mode. The LAMBDA converged to a fixed solution after six minutes, and the baseline constrained Lambda never converged with relatively large position errors. The Root Mean Squares (RMS) of the positioning errors of the proposed method with the a priori baseline information were 3.7, 0.99, and 3.6 cm, and the position error characteristic was mostly a bias. There were no integer ambiguity candidates near ±0.5 cycles.       For the dynamic test, the follower receiver was installed on the roof of a car, and the master receiver was fixed on a tripod. The initial baseline vectors from the master receiver to the follower receiver were −5.56, −6.23, and −2.76 m in the East, North, and Up directions. Like the static test, single-frequency GPS and BeiDou measurements were used. In this test, a total of twenty one satellites were in view and some of the satellites were intentionally removed to compare the positioning performance based on LAMBDA with all satellites in view, LAMBDA with partial satellites in view, and the proposed method with partial satellites in view. The partial satellites in view consisted of a total of eight satellites, including four GPS and four BeiDou satellites. The heading measurement error was 1.2 degrees. Again, RTKLIB was used to obtain positioning solutions using LAMBDA methods.   With the proposed method, all of the integer ambiguities were resolved after 16 s in the test. Figure 16 shows the trajectories of the rover receiver from using LAMBDA with all satellites in view, LAMBDA with a partial satellite view, and the proposed method with a partial satellite view. While the trajectory of LAMBDA with all satellites in view and the proposed method with a partial satellite in view well matched, LAMBDA with the partial satellite view never reached a fixed solution and deviated from the other two solutions. Compared with LAMBDA with all satellites in view, the positioning errors of the proposed method with the partial satellites in view were 4.07, 11.03, and 13.12 cm, respectively. The slightly larger error of the dynamic test compared with the static test appeared to be caused by a small time delay in RTKLIB solutions.

Discussion
Through the simulations and short baseline field tests, the precise positioning capability of the proposed method was confirmed in the GNSS harsh environment with a small number of satellites in view. In the statics test, the maximum number of satellites used in the field tests was eight, which resulted in six single-frequency double difference measurements. In this environment, the proposed method significantly outperformed the position solutions of the LAMBDA and baseline constrained LAMBDA methods. The reason why the proposed method can provide near centimeter-level positioning capability with Figure 16. Comparison of the trajectory of a follower receiver using LAMBDA with all satellites in view, LAMBDA with partial satellites in view, and the proposed method with partial satellites in view. The LAMBDA solutions were obtained using RTKLIB. The test data were taken at the fourth industry revolution test site of Hongik University, Korea, on 12 September 2019.

Discussion
Through the simulations and short baseline field tests, the precise positioning capability of the proposed method was confirmed in the GNSS harsh environment with a small number of satellites in view. In the statics test, the maximum number of satellites used in the field tests was eight, which resulted in six single-frequency double difference measurements. In this environment, the proposed method significantly outperformed the position solutions of the LAMBDA and baseline constrained LAMBDA methods. The reason why the proposed method can provide near centimeter-level positioning capability with this low number of satellites in view is that most integer ambiguity in the double difference carrier phase measurements can still be accurately resolved through the aid of an a priori relative position. The dynamic test results also showed that the positioning performance of the proposed method with a small number of satellites in view is comparable with the LAMBDA using all satellites. Of course, the positioning capability of the proposed method will degrade as the accuracy of the a priori relative position degrades. To achieve the best performance, a fixed geometry, like the launchpad shown in Figure 1, with well calibrated magnetometers is recommended. Like other GNSS carrier-based positioning methods, cycle slips must be detected and remedied if possible.
While the proposed method performed well, an a priori relative position can be used to enhance the performance of the LAMBDA because the a priori relative position could be used instead of a float solution and would help LAMBDA to search for a smaller and proper set of integer candidates. This approach may resolve accurate integer ambiguities in a GNSS harsh environment even when a magnetometer has a large bias, which is our future research activity. Instead of using the proposed launchpad geometry, a priori relative position can be also obtained from using a precise distance measurement sensor like Ultra Wideband, which would lead to another form of a sensor fusion method.

Conclusions
The paper presented a novel GNSS carrier phase-based precise relative positioning method that used an a priori relative position to resolve the integer ambiguity. The a priori relative position allows observing the integer ambiguity in the double difference carrier phase measurements. Because the observed integer ambiguity also included noise and errors introduced by the imperfect a priori relative position, the proposed method used the iterative rounding scheme that sequentially resolved integer ambiguities based on the required averaging epochs. The formulations used to determine the required number of averaging epochs were also discussed in the paper. The static and dynamic field tests showed that the proposed method could provide a near centimeter-level positioning accuracy with a small number of satellites in view. In the same test environment, the LAMBDA and baseline constrained LAMBDA methods significantly underperformed in the aspects of a positioning accuracy and a time to first fix the integer ambiguity.
The contribution of this paper is how the GNSS carrier phase-based precise positioning can be accomplished in a GNSS harsh environment having a small number of satellites in view. Another benefit of the proposed method is that it can be applied for the low-cost single or dual frequency GNSS receivers. Although the set-up of the a priori relative position between two GNSS receivers may require a cumbersome procedure in general, a tool like the suggested launchpad would be helpful. The limitation of the proposed method is that the two GNSS receivers should maintain the a priori relative position until all of the integer ambiguities are resolved. Furthermore, another limitation might be the preferred short baseline of the a priori relative position within several meters. Therefore, the targeted application of the proposed method could be the formation flight of UAVs using a launchpad and an automatic take-off and landing of UAVs on cars or ships in a GNSS harsh environment.
Author Contributions: E.K. developed the algorithms, performed the simulation, and wrote the paper. All authors have read and agreed to the published version of the manuscript.