Finding the Right Algorithm
Low-Cost, Single-Frequency GPS/GLONASS RTK for Road Users
Receiver (on the right) and antenna (on the left) comprised the on-board unit used in both data collections (Click image to enlarge.)
Urban navigation would greatly benefit from higher-accuracy and more reliable positioning, especially in signal-challenged environments. Multi-constellation real-time kinematic (RTK) techniques can contribute to a solution, but typically they require expensive equipment. A team of research engineers tested a new algorithm on low-cost consumer GNSS receiver with promising results.
Working Papers explore the technical and scientific themes that underpin GNSS programs and applications. This regular column is coordinated by Prof. Dr.-Ing. Günter Hein, head of Europe's Galileo Operations and Evolution.
GPS receivers have become devices used by millions of drivers or pedestrians every day. Current positioning accuracy is usually sufficient to guide a car driver or a pedestrian through an unknown area. However, stand-alone positioning techniques are not precise enough for a number of demanding applications. Driving assistance systems, precise agriculture or mobile mapping systems typically require decimeter or even centimeter accuracy, regardless of the environment.
To reach this level of accuracy, techniques have been developed using raw carrier phase measurements, which are more precise than code measurements by a factor of a 100. However, they are ambiguous by an a priori unknown integer number of cycles called the ambiguity. This ambiguity remains constant as long as the carrier phase tracking is continuous.
Many techniques use the precision of the carrier phase to improve the accuracy of the final position. In particular, real-time kinematic (RTK) and precise point positioning (PPP) turn carrier phase measurements into very precise absolute pseudoranges by estimating the value of the ambiguity.
These methods do so by removing all biases affecting the carrier-phase measurements and using either precise satellite ephemeris and parameter estimation (for PPP) or by differencing with measurements coming from a spatially close reference station (for RTK). In particular, RTK can typically provide centimeter-level positioning with only a few seconds of convergence time, in a short-baseline configuration and a clear-sky environment.
However, the use of RTK in road user environment is challenging. Indeed environments encountered by road users range from a clear-sky environment on rural roads to constrained environments such as urban canyons. In the latter, users can expect frequent signal blockages, high-power multipath signals, and low availability of measurements (especially carrier phase).
A further consideration is that RTK is generally applied only on high-precision receivers for various reasons, probably the most important of which are that raw measurements are not always available on low-cost receivers and that the quality of measurements from low-cost systems using only GPS satellites is not sufficient to perform reliable integer-ambiguity resolution, particularly under dynamic conditions.
However, very low-cost multi-constellation (GPS/GLONASS L1) receivers have been released recently on the market, capable of outputting raw code, Doppler, carrier phase and C/N0 measurements at a cost of around US$50. With this kind of low-cost, multi-constellation receiver, the improved satellite visibility is expected to increase the reliability and the success rate of ambiguity resolution even in challenging environments.
The goal of the research on which this article is based was to determine the possibility of applying RTK algorithms on such user equipment in various environments encountered by road users.
Challenges of Low-Cost GPS/GLONASS RTK for Road Users
GPS and GLONASS Measurement Model. The code and carrier phase measurement model for GPS/GLONASS measurements is:
Separating GPS and GLONASS measurement model and differencing measurements between two spatially close reference receivers give:
As seen on Equation (1b), the FDMA modulation of GLONASS signals implies that
Differences between a Low-Cost Receiver and a High-End Receiver. Low-cost receivers are usually designed to target mass-market applications, nested in embedded devices. Constraints in power consumption and costs are then very stringent and result in significant differences in the following factors:
The low-cost receiver hardware limitations result in lower-quality measurements compared to high-end receivers. Also relevant to our present investigation, GLONASS FDMA structure implies that code measurements can be offset by inter-channel biases. In the case of high-end receivers, specific care is taken by the manufacturers in order to calibrate these biases. For low-cost GLONASS-enabled receivers, however, discussion in the article by S. Carcanague (2013), referenced in the Additional Resources section near the end of this article, indicates that:
Differences between a Low-Cost Patch Antenna and a Geodetic Antenna. From a satellite navigation user’s point of view, a good antenna is characterized by good multipath mitigation, characterized by the axial ratio and the gain pattern of the antenna; low-noise characteristics, and a calibrated phase center position.
Regarding the final point in this list, the position of the phase center of a well-designed antenna is calibrated and usually almost coincides with the physical center of the antenna. However, in the case of a low-cost patch antenna, differences can exist. Moreover, this position can vary depending on the quality of the ground plane.
So, even if the position of the phase center can be determined at the centimeter-level using RTK, the position of the physical center of the antenna should not be considered as precise. In the case of a low-cost antenna, the phase center variation remains uncontrolled and biases carrier phase measurements, making integer ambiguity resolution and validation more difficult.
A comparison between different types of receivers and antennas described in the article by T. Takasu and A. Yasuda (2008b) listed in Additional Resources showed that the antenna is one of the most important factor for mitigating code and carrier phase multipath. The article reported very similar performances between a low-cost GPS L1 receiver, and a multi-frequency GPS/GLONASS receiver connected to the same geodetic antenna.
Related research measured the phase center offset of a low-cost patch antenna and reported it to be a few centimeters away from the physical center of the antenna, essentially in the up direction. Phase center variations in this patch antenna were also shown to be at the centimeter-level. Finally, the previously mentioned research by S. Carcanague (2013) showed that ground plane quality considerably influences the accuracy of carrier phase measurements on a low-cost patch antenna.
A Solution for Precise Positioning in Cities
The pre-processing module
The PVT module
Features of Pre-Processing Module
Code Measurement Weighting Scheme. Various weighting schemes have been proposed in the literature, including some relying on internal receiver parameters. However, these parameters are usually not available to the user. Moreover, as multipath error can be significantly higher than the noise error, the weighting formula may be overly optimistic in the case of a multipath-contaminated environment.
E. Realini has proposed a weighting scheme based on both carrier-to-noise ratio (C/N0) and elevation and adapted these for measurements from a low-cost receiver. However, his proposed empirical model was determined using only static measurements, which may not reflect the actual multipath error encountered by a road user. So, our solution also incorporates a model for the variance of the code measurements as proposed by H. Kuusniemi (see Additional Resources) specifically for difficult environments based on the function:
As code measurement errors due to multipath are significantly different if the receiver is in semi-urban environment or in urban environment, two sets of parameters were determined, by analyzing real data from a single-frequency, low-cost receiver with a patch antenna for use in two environments: semi-urban environment, a = 1 and b = 2812 for GPS code measurements; and urban environment, a = -1.5 and b = 7312 for GPS code measurements.
To determine in which environment the receiver is, the receiver can use embedded maps. In the present case, vehicle speed was used. As soon as the vehicle exceeded 50 km/h, the vehicle was considered to be in a semi-urban environment. Otherwise, urban environment weighting scheme was used.
To handle the GLONASS code inter-channel biases, our solution calibrates these as described in the article by S. Carcanague (2013). This correction can also be easily applied by changing the GLONASS code biases correction inside the chip. To take into account the lower chip rate of GLONASS signals, our solution down-weights GLONASS pseudoranges variance by a factor of 1.3 compared to GPS code variance, also as proposed by S. Carcanague (2013).
Doppler Measurement Weighting Scheme. In a static environment, the influence of multipath on Doppler measurements is null, as the frequency of the reflected signals and the direct signal are equal. Then measurements can be weighted using frequency lock loop (FLL) tracking loop jitter due to thermal noise, as proposed in the articles by N. Kubo or B. Aminian (Additional Resources).
However, this weighting would also be overly optimistic in the case of a moving user. So, we adopted the Doppler measurement weighting scheme introduced in S. Carcanague (2012), taking into account the vehicle speed. Similarly to the code-weighting scheme, this weighting is based on a real-data analysis of Doppler multipath as provided in Figure 1.
Multipath Detection. As explained earlier, two strategies are proposed to remove frequent multipath-contaminated measurements that can be found on a low-cost high-sensitivity receiver: 1) applying a very high C/N0 mask together with different code, Doppler, and carrier phase mask values and 2) using a fault-detection algorithm.
The best mask combination for code, Doppler, and carrier phase measurements was determined a-posteriori in S. Carcanague (2013). Only three values of C/N0 were tested to limit the computation load: 32, 36, and 40 decibel-Hertz for code, Doppler, and carrier phase measurements, which produced a total of 27 tested combinations.
The best combination was found to be for mask values of 32, 40, and 40 decibel-Hertz for carrier phase, Doppler, and code measurements, respectively. This combination had in general resulted with the best horizontal performance error statistics with the proposed RTK algorithm in the different environments encountered.
For the second strategy, we implemented the “Danish method” as in the paper by H. Kuusniemi to detect and exclude multipath on both Doppler and code measurements. This method was chosen for its ease of implementation, but more refined techniques should be investigated in the future.
Cycle Slip Resolution Method. Although relatively rare in static conditions, cycle slips can occur very frequently with low-cost receivers in motion. In that case, detecting and, if possible, repairing these is very important in order to estimate ambiguities as constants. However, repairing cycle slip in the case of a single-frequency user is still an open problem. Various methods have been proposed; however, most of these methods either treat each satellite separately, or do not take into account the integer property of the full cycle-slip vector.
S. Carcanague (2012) introduced a cycle slip resolution method based on Doppler and carrier phase measurements that, compared to other proposed techniques, has several advantages:
The proposed method allows the full resolution of the cycle slip vector with measurements from a low-cost receiver in dynamic conditions. Being able to repair cycle slips allows the estimation of carrier phase ambiguities as constants in the RTK Kalman filter. It also improves the observability of estimated parameters compared to single-epoch RTK, which is usually recommended for a moving receiver in difficult environments.
Description of PVT Module
RTK Kalman Filter. The core of the PVT module is an extended Kalman filter, estimating position, velocity, acceleration, GPS/GLONASS float ambiguities, differential receiver clock offset, and GLONASS code biases (offset+slope). The Kalman filter has the following features:
σvirtualvelocity = 0.02 * ||v||
where v is the user velocity estimated at the previous epoch, as in S. Carcanague (2012). Figure 2 presents a schematic of the proposed filter.
Additionally, GPS/GLONASS differential code and carrier phase measurements in the Kalman filter are modeled as follows:
In the model proposed in Equation (3), GLONASS code and carrier phase do not share the same differential receiver clock offset+receiver hardware bias term, as only GLONASS differential code measurements are offset by a bias br. This differs from the usual design of a GLONASS measurement esti-mation filter.
However, as explained in S. Carcanague (2013), this enables us to avoid introducing GLONASS code receiver hardware biases in the estimates of GLONASS carrier phase ambiguities. This “trick” was found to make the GLONASS ambiguities bias caused by code-phase offsets stable in time on the tested receiver.
GLONASS Ambiguities Bias Calibration and Integer Resolution. As explained in the paper by J. Sleewaegen et alia, a difference between GLONASS code and carrier phase hardware biases translates into a bias in estimates of float ambiguities. Without removing this bias, GLONASS ambiguities cannot be estimated as integers. These biases are usually constant on high-end receivers and similar for receivers of the same brand. Biases for various geodetic receiver brands can be found in the article by L. Wanniger (Additional Resources).
To determine the bias in float ambiguities of the tested receiver, we used an algorithm described in the article by S. Carcanague (2013). Static data was collected and a baseline established in combination with a nearby reference station. GPS ambiguities were fixed so that we could determine single-differenced GLONASS ambiguities to a very precise value. Biases were then deduced from adjusted GLONASS float ambiguities and stored in a table.
Once these biases are known, they can be subtracted from GLONASS float ambiguities estimated in the Kalman filter. Then GPS and GLONASS ambiguities are all estimated together as integers using the LAMBDA method, as depicted in Figure 3.
To validate the ambiguity vector, we employed two criteria: a minimum of five ambiguities, i.e., six carrier phase measurements, and a value of 2 applied as a ratio-test threshold when the receiver operated in a semi-urban environment and a value of 3,when the user was in an urban environment.
Road Measurement Campaign
A patch antenna connected to a 32-channel GPS/GLONASS receiver module was magnetically attached to the test vehicle’s roof and driven at traffic speed in downtown Toulouse and on the beltway. (See accompany photo of the test receiver and patch antenna.)
In both data sets, the reference station was TLSE in the RGP (Réseau GPS Permanent) network set up by the Institut Géographique National (IGN) and situated in the south of Toulouse. Maximum baseline length was about 11 kilometers in both data sets, when the vehicle reached the upper part of Toulouse beltway.
Data Sets. The first data set has a total duration of one hour, with approximately half coming from driving in an urban environment and half in a beltway environment. Data was recorded as the vehicle drove through the main streets of Toulouse city center, excluding the narrow streets of the old downtown.
The second data set had a total duration of two hours with approximately one hour in urban environments, including narrow old downtown streets, and one hour on the beltway. It therefore represents a very constrained data set. These routes are shown in Figure 4.
Performance Metrics. We assessed the improvement brought by the proposed algorithms based on five values:
Performance from COTS GNSS Receivers
The first data set included position solutions from the following equipment:
The second data set included position solutions of:
The high-precision GNSS receivers could not be tested in RTK mode, as no real-time equipment (modem and so forth) was available. Table 1 presents the results from the road trials.
Our goal in this article is not to compare raw performance among the various navigation algorithms because the position accuracy can be refined using multiple parameters, especially for the high-end receivers.
Rather, these results demonstrate that default settings performance in single-point positioning mode are clearly above the meter-level on the beltway and that dozens of meters error may be expected in the most constrained environments, even with geodetic-grade equipment. These results underline the difficulty in performing satellite-based navigation in the tested environments.
Moreover, directly applying RTK algorithms on low-quality measurements leads to unreliable ambiguity fixing. Figure 5 gives an example of this when applying RTK processing (continuous mode) using RTKLib on measurements from the GPS/GLONASS receiver with patch antenna in the second data collection (beltway).
The spikes are due to frequent filter re-initializations. Ambiguity fixing is obviously very unreliable as more than 56 percent of all ambiguity fixes are fixed wrongly in semi-urban environments, (80 percent in urban environments) and that the resulting position error frequently exceeds 10 meters.
Ambiguity-fixing reliability must be the Number One concern when dealing with RTK software. Indeed, while on the field, the user (and the positioning filter) assumes that the position is at centimeter-level when the ambiguities are validated. This centimeter-level position is very difficult to cross-check unless high-grade equipment is available, particularly for a moving vehicle. Therefore, a RTK receiver with a high rate of incorrect fixes due to low-quality data is unusable.
Performance of the Proposed Algorithm
C/N0zenith is taken equal to 54 dB-Hz
C/N0 is the estimated C/N0 value in dB-Hz
σ is the standard deviation of the observation at the zenith.
Standard deviations at the zenith for code, Doppler, and carrier phase measurements are expressed as follows:
σcode = 3 m
σDoppler = 0.087 m
σcarrier = 0.007 m
Observations from satellites with elevations lower than 10 degrees are discarded.
Then, the different proposed ideas to improve the performance of the basic RTK filter are sequentially added. In particular, we tested the effects on performance of the following factors:
Fix rates and wrong-fix rates of the various solutions from the onboard receiver can be found in Table 2. Table 3 presents the horizontal position error percentiles in the two road tests. From these we can see the following:
1) Similarly to RTKLib solution, the baseline RTK solution has a very low fix rate and a very high wrong-fix rate, in both semi-urban and urban environments.
2) The use of the proposed weighting scheme for code and Doppler measurements, as well as the correction of GLONASS code biases, provide a significant jump in terms of horizontal position error statistics and fix rate, notably on the beltway. However, the wrong-fix rate remains very high.
3) The fix rate on the beltway using the proposed weighting scheme and GLONASS code corrections is significantly lower in the second data set than in the first. This has been interpreted as coming from the poor placement of the antenna on the vehicle roof during the second data collection. Indeed, during the second data collection, the patch antenna was placed on a rail that was about five centimeters above the metallic roof, which then worsened the ground plane quality.
4) The correction of cycle slips and the continuous estimation of ambiguities have a smoothing effect on the positioning domain and generally a positive effect on the wrong-fix rate. The fix rate is, however, generally slightly decreased, as the wrong fixes have been removed.
5) The use of the “Danish method” to detect and exclude multipath-contaminated measurements improves the fix rate and decreases the wrong-fix rate. However, the effect in the position domain is marginal.
6) GLONASS integer ambiguity resolution, realized by calibrating GLONASS ambiguity biases — using the proposed Kalman filter measurement model and the previously described ambiguity correction algorithm — was shown to tremendously improve the frequency and the reliability of the ambiguity resolution.
7) The high fix rate obtained in this last case has a very positive effect on the horizontal position error (HPE) 68th percentile, falling below 10 centimeters in the case of semi-urban environment data set.
8) The tail of the distribution error (99th percentile), however, is not improved by the various proposed measures. Indeed, extreme error values occur when GNSS signals are not available, i.e., when the Kalman filter is using prediction-only to provide a position.
As can be seen in Table 4, the full, low-cost RTK solution that we have proposed brings very promising results with a 1σ-HPE of only about 10 centimeters in the beltway environment and 1.5 meters in the urban environment. The 99th HPE percentile is at the meter level for the beltway.
Conclusions & Future Work
The proposed precise positioning software was tested using two data sets collected in downtown Toulouse and on Toulouse beltway. The results showed that, despite the very low cost of the tested system, reliable integer ambiguity resolution could be performed in a semi-urban environment, typically a beltway. Indeed fix rates of 73 and 59 percent, respectively, achieved on the beltway in the first and the second data set.
This high success rate reduces the 95th percentile HPE to less than 70 centimeters for both data sets and the 68th percentile HPE to around 10 centimeters. These results prove that the proposed algorithm is adapted to land vehicle precise positioning in semi-urban environments.
In a fully urban environment, multipath and reduced geometry prevented frequent and fully reliable ambiguity fixes. Indeed, ambiguities were fixed 17 and 8 percent of the time in urban environments in both data sets, with a wrong fix rate of 2 and 11 percent, respectively.
However, the proposed measurement weighting scheme, continuous estimation of carrier phase ambiguities, and the multipath detection module greatly improves the horizontal position error statistics, as the 95th percentile HPE was found to be below 3.5 meters for both data sets in the urban environment with a 68th percentile HPE around 1.5 meters. This result is particularly satisfactory considering the very difficult environment encountered and the performance of basic navigation filters from off-the-shelf receivers.
Different investigations could be performed to further extend this study, for example:
ManufacturersThe low-cost GPS/GLONASS in-vehicle unit incorporated an NV08C-CSM NVS Technologies AG connected to a TW2410 patch antenna from Tallysman Wireless Inc., Ottawa, Ontario, Canada. The low-cost GPS/SBAS receiver also present during the road tests was the LEA-6H from u-blox AG, Thalwil, Switzerland. The reference trajectory equipment for Data Set 1 was SPAN equipment from NovAtel, Inc., Calgary, Alberta, Canada, composed of a Novatel OEMV GPS L1/L2 receiver and a Novatel ANT-532-C antenna connected to a FSAS inertial module with fiber optical gyrometers from iMAR GmbH, St. Ingbert, Germany, but operated in single-point mode (without INS coupling) with real-time output. The reference trajectory equipment for Data Set 2 was a NovAtel OEMV GPS/GLONASS L1/L2 receiver plugged into a tactical-grade inertial measurement unit (IMU) from Northrop-Grumman Litef GmbH, Freiburg, Germany. The multi-frequency GPS/GLONASS/Galileo receiver also on board the test vehicle was the AsteRx3 connected to a L1/L2 geodetic antenna PolaNt* MC antenna, both from Septentrio Satellite Navigation NV, Leuven, Belgium. The reference station that collected static data to help remove integer ambiguities used a NETR9 receiver from Trimble, Sunnyvale, California USA.
Copyright © 2017 Gibbons Media & Research LLC, all rights reserved.