Abstract
Precise attitude determination with low-cost GPS receivers requires integer ambiguity resolution and reliable cycle slip correction. In this paper, a tree search of cycle slips is proposed, which combines double difference GPS carrier phases from all visible satellites, gyroscope and acceleration measurements, and a priori information on the baseline length between both GPS receivers. The proposed method was verified in both a slalom drive with high vehicle dynamics and a drive below trees with shadowed GPS signals: The residuals of the fixed phase measurements were reduced to less than 15 cm throughout the measurement period.
Attitude determination • Cycle slip correction • Integer ambiguity resolution
The availability of mass-market GPS receivers with carrier phase tracking has led to a wide range of new applications of RTK and attitude determination. However, the measurements of low-cost GPS receivers differ in three aspects from the measurements of geodetic receivers: First, code multipath is much larger due to the small size of the patch antennas. atmospheric delays are eliminated (except for the drift which is in general negligible for periods of less than 1 s). This leaves the change in position and the cycle slips as unknowns. The change in position is predicted by an inertial sensor. Thus, cycle slips can be determined on a satellite by satellite basis by simple rounding. Du and Gao (2012) applied a cascaded approach to two dual-frequency Novatel OEM4 receivers, i.e. the widelane cycle slips were determined first. Subsequently, the extra-widelane cycle slips were resolved and, finally, the L1 and L2 cycle slips were derived from the widelane and extra-widelane cycle slips. Dai et al (2009) proposed a cycle slip detection and correction method for triple frequency GNSS receivers. They used two triple frequency geometry-free phase combinations and performed an integer least-squares estimation using the LAMBDA method of Teunissen (1995).
Colombo et al (1999) also proposed a cascaded cycle slip detection for dual frequency receivers. The widelane cycle slips were fixed as described by Du and Gao (2012). The individual L1 and L2 cycle slips were then directly fixed with the help of the widelane cycle slips. They used an Ashtech receiver and high-grade IMU with a gyroscope drift of only 3 ı /h, and were able to correct 99:1% of cycle slips for data gaps of 5 s.
Introduction
The availability of mass-market GPS receivers with carrier phase tracking has led to a wide range of new applications of RTK and attitude determination. However, the measurements of low-cost GPS receivers differ in three aspects from the measurements of geodetic receivers: First, code multipath is much larger due to the small size of the patch antennas. It can be 10 m even in open-sky conditions, which is a challenge for ambiguity resolution. Secondly, half cycle slips occur much more frequently and at multiple satellites simultaneously. Today, cycle slip detection and correction can be performed reliably for geodetic receivers with inertial sensors: Du and Gao (2012) differenced the carrier phase measurements between two satellites and two subsequent epochs such that clock offsets, ambiguities, biases and atmospheric delays are eliminated (except for the drift which is in general negligible for periods of less than 1 s). This leaves the change in position and the cycle slips as unknowns. The change in position is predicted by an inertial sensor. Thus, cycle slips can be determined on a satellite by satellite basis by simple rounding. Du and Gao (2012) applied a cascaded approach to two dual-frequency Novatel OEM4 receivers, i.e. the widelane cycle slips were determined first. Subsequently, the extra-widelane cycle slips were resolved and, finally, the L1 and L2 cycle slips were derived from the widelane and extra-widelane cycle slips. Dai et al (2009) proposed a cycle slip detection and correction method for triple frequency GNSS receivers. They used two triple frequency geometry-free phase combinations and performed an integer least-squares estimation using the LAMBDA method of Teunissen (1995) . Colombo et al (1999) also proposed a cascaded cycle slip detection for dual frequency receivers. The widelane cycle slips were fixed as described by Du and Gao (2012) . The individual L1 and L2 cycle slips were then directly fixed with the help of the widelane cycle slips. They used an Ashtech receiver and high-grade IMU with a gyroscope drift of only 3 ı /h, and were able to correct 99:1% of cycle slips for data gaps of 5 s. These methods can not be used for low-cost singlefrequency mass-market GNSS receivers and inertial sensors: The receivers show half cycle slips, i.e. jumps of integer multiples of =2 D 9:5 cm, and substantial phase and code multipath. The measurement model must be strengthened, e.g. by including baseline a priori information as described by Henkel and Kiam (2013) .
A third difference between low-cost and geodetic GNSS receivers is that the receiver clock offsets are in the order of milliseconds instead of nanoseconds (see Henkel and Gunther 2013) , which implies that the satellite movement within the time span of the differential receiver clock offset is no longer negligible. A synchronization correction is required to preserve the integer property of the double difference (DD) ambiguities.
Therefore, we include the receiver clock offset explicitly in our model for the DD carrier phase measurements. As the baseline is short for attitude determination, atmospheric and orbital errors can be neglected and we obtain
with the carrier wavelength , the undifferenced phase measurement ' k r of receiver r and satellite k, the receiver clock offset ı r , the receiver position x r , the satellite position x k , the DD integer ambiguity N . The synchronization correction is given by
We linearize the norms in (1), apply the synchronization correction of (2) and a cycle slip correction to write the linearized corrected DD phase and code measurements in matrix-vector notation as
with H and A being the implicitly defined DD geometry and ambiguity coefficient matrices, and b 12 being the baseline between both receivers. The integer least-squares estimation of the DD integer ambiguities and baseline coordinates is improved by some a priori information l on the baseline length, which leads to the constrained integer least-squares estimation problem:
A solution to this problem was developed in Teunissen (2006 Teunissen ( , 2010 . Figure 1 shows the fixed phase residuals of this estimator for DD phase measurements from two u-blox LEA 6T GPS receivers mounted on the roof of a car. The residuals are clearly smaller than the wavelength and are drift-free, which indicates a correct integer ambiguity resolution. The biases of up to 2 cm arise most likely from a bias in the baseline length constraint due to antenna phase center offsets.
Initial Calibration of Inertial Sensors
We start with a rough alignment by transforming the measured acceleration a s and angular rotation rate ! s from the sensor-fixed (s-) frame to the body-fixed (b-) frame (aligned with longitudinal and transversal axis of car), i.e.
where the roll angle 
The acceleration measurements are also averaged over time in static conditions to reduce the noise. The obtained N a b is expressed in terms of the Euler angles , Â, and the gravitational acceleration g, i.e.
with the bias b N a b and noise Á N a b . The biases and misalignment errors Â and between GPS and INS sensors are determined by least-squares estimation once the car is moving, i.e.
The roll and pitch angles can then be derived from (7) without the need of knowing g as
We initialize the heading from the GPS fixed solution.
Once the Euler angles and a rough estimate of the absolute position (longitude , latitude ') is available from GPS, the coordinate frame transformation from the b-frame to the ECEF e-frame is determined as
with
and
is then transformed to a Quaternion as described in Jekeli (2001) :
with the four quaternion elements q a , q b , q c and q d .
Integration of Orientation with Quaternions
Jekeli ( 
where the angular rotation rates ! i of the e-frame w.r.t. the b-frame are obtained from (6) by subtracting the earth rotation rate, i.e.
The differential equation of (13) shall be solved with Quaternions. Jekeli (2001) transformed the 3 3 matrix equation of (13) to the 4 1 vector equation
with the quaternion q and the matrix of angular velocities A q . The latter one is given by
We performed the integration of the Quaternion with the third order Runge-Kutta method (see Jekeli 2001) , i.e. the Quaternion at time t nC1 is given by
where h D 2ıt denotes the integration time and ıq 0 , ıq 1 and ıq 2 denote the coefficients given by
Once the integrated quaternion is determined, it is transformed back to a rotation matrix.
Cycle Slip Detection and Correction
The fixed double DD carrier phase measurement for satellite pair fk; lg is modeled as
with the single difference e kl between the unit vectors pointing from the satellites to the receiver, the baseline vector b 12 between both receivers, the carrier wavelength , the fixed DD integer ambiguity N .'
where OE denotes the rounding operator and O b IMU denotes the baseline estimate of the IMU that was obtained in four steps: First, the IMU was initialized with the validated GPS attitude solution of the last GPS measurement epoch. Subsequently, the orientation was integrated using IMU measurements between the epochs of the last and current GPS measurement. The integration was performed with quaternions as described in the previous section. In a third step, the quaternions were transformed to Euler angles and, finally, the horizontal baseline estimate was obtained from the heading IMU and baseline length a priori information l as
The cycle slip correction of (21) might be erroneous if the initial calibration of the IMU was erroneous. In this case, the cycle slip correction (CSC) can be improved by jointly estimating the CSC and baseline coordinates using fixed DD phase measurements from all available satellites, the IMU baseline estimate of (22) 
and H being the redefined .K C 3/ 3 DD geometry matrix, A. =2/ is the extended .K C 3/ q CSC coefficient matrix for q DD cycle slips, and l describes the a priori information on the baseline length. The minimization of (23) includes a search of N 12 inside a predefined search space volume 2 and an iterative computation of b 12 for each integer candidate vector N 12 . We use the orthogonal decomposition of Teunissen (1995) to rewrite the sum of squared errors of (23) as 
Setting O b 12 . / into the length constraint finally results in a root finding problem:
As the roots of f . / can not be found in closed form, we use the iterative Newton method. The Lagrange parameter is given at the .n C 1/-th iteration by
and
Measurement Analysis
In this section, the proposed cycle slip detection and correction method is verified with real data. We used the following measurement setup:
• -mounting of GPS antennas on roof of car -alignment of baseline between antennas with longitudinal axis of car -baseline length: Figure 2 shows selected sections of the test drive. In the first two sections, the car was passing below trees and between two buildings. The code and carrier phase signals of all visible satellites are temporarily affected by significant multipath. The last subfigure shows a slalom drive with high receiver dynamics. Figure 3 shows the fixed double difference phase residuals before cycle slip detection and correction over time. In the upper left corner, a skyplot shows the satellite geometry. We applied an elevation mask of 20 ı . At 176, 241 and 401 s, the car was passing below trees or between two buildings, which resulted in phase jumps of more than 10 half cycles. The largest residuals correspond to the satellites of lowest elevation. Numerous additional slips of f 2; 1; 0; C1; C2g cycles can be observed in between the major jumps. Figure 4 shows the fixed double difference phase residuals after cycle slip detection and correction (CSC) using only GPS measurements in (23). The residuals are substantially lower than in Fig. 3 but there remain numerous undetected cycle slips. Figure 5 shows the fixed double difference phase residuals after GPS/INS-based cycle slip detection and correction. The residuals of all satellites are substantially reduced to less than 15 cm. Variations of the residuals of more than 1 cm correspond mainly to the double difference phase multipath. The subplot in the lower right corner shows the fixed phase residuals only for the three satellites of highest elevation. One can observe three sections with severe multipath. Figure 6 shows a comparison of the heading estimates with GPS-only CSC and with GPS/INS combined CSC. In the first 100 s, the car was standing. The noise of the heading estimates is in the order of 0:1 ı only. In the test drive, the heading with GPS-only CSC differs by up to 30 ı from the heading with GPS/INS combined CSC, as the GPS-only CSC can not correct for all cycle slips in heavy multipath environments. The enlarged periodic heading variations between 330 and 380 s indicate high receiver dynamics and correspond to the slalom drive. The GPS-only based CSC corrects at 341 s its erroneous ambiguities and, thus, follows the combined GPS/INS solution. The enlarged heading between 390 and 405 s shows some ripples in the heading estimate for the GPS/INS CSC. In this section, the car was passing below a tree and all code and carrier phases were affected by substantial multipath.
The reliability of the GPS/INS combined CSC depends on the drift of the IMU. We re-initialize the IMU at every GPS measurement epoch after cycle slip correction with the GPS solution. Consequently, the drift of the IMU only between two subsequent GPS measurement epochs (0.2 s) is relevant. Figure 7 shows the difference between the heading of the IMU without continuous GPS-based calibration and the heading of the GPS/INS-combined solution. We can observe a slight continuous drift of less than 0:5 ı with temporarily increased variations. The increased variations of up to 1 ı =0:2 s are most likely caused by heading errors of the GPS/INS-combined solution (in multipath environments) and not by changes of the IMU's drift. A cycle slip correction can still be performed reliably.
The proposed CSC of (27) jointly determines the baseline coordinates and integer cycle slips using both GPS DD carrier phases and the IMU-predicted baseline. It finds the optimized trade-off between minimizing the GPS measurement residuals and minimizing the IMU-predicted baseline residuals. We compare the performance of this optimized approach to the performance of an integer least-squares CSC estimation with the baseline vector considered known and fixed from the IMU. This alternative approach also combines GPS and INS measurements. However, the integer leastsquares estimation only of the CSC does not guarantee a final baseline estimate to be close to the one from the IMU. Figure 8 shows that the heading of the integer leastsquares estimation can differ by up to 20 ı from the combined solution. This shows again the need for the proposed cycle slip detection and correction method, which combines all available measurement and a priori information and minimizes the sum of the measurement residuals and a priori information residuals.
The reliability of cycle slip detection and correction can also be verified by adding artificial cycle slips to the raw phase measurements. We have tested all f 2; 1; 0; C1; 2g cycle slip combinations for f1; 2; 3g simultaneous cycle slips at a moment of high receiver dynamics (t D 342 s), and observed that all cycle slip combinations were correctly found.
Conclusion
In this paper, a method for reliable cycle slip detection and correction was proposed for low-cost GPS receivers with high receiver dynamics in challenging environments. It combines double difference GPS carrier phases from all visible satellites, gyroscope and acceleration measurements, and a priori information on the baseline length. It performs a tree search for finding the cycle slip corrections. The estimator was first tested by a simulation of artificial cycle slips. It turned out to be extremely powerful if the IMU was properly calibrated, i.e. it was able to correct simultaneous cycle slips at all visible satellites. Subsequently, the proposed method was verified in a test drive with two low-cost GPS receivers and a low-cost 9-axes INS. The residuals of the fixed phase measurements after cycle slip correction remained less than 15 cm in both a slalom drive with high receiver dynamics and passages below trees.

{'paper_id': '131698445', 'title': 'Cycle Slip Detection and Correction for Heading Determination with Low-Cost GPS/INS Receivers', 's2_url': 'https://api.semanticscholar.org/CorpusID:131698445', 'source': 'S2ORC'}