1. Introduction
In the past decade or so, Precise Point Positioning (PPP) has received a significant amount of attention in the GNSS community as a new and effective option for precise real-time positioning [
1,
2]. PPP is a technique in which the user only estimates receiver-specific parameters such as receiver clock offsets and zenith tropospheric delays, whereas the satellite orbits and clocks are provided by a global GPS analysis center [
3]. Dual-frequency receivers are usually involved in PPP to remove the ionospheric delay effect. However, in the PPP-Real Time Kinematic (RTK) mode of PPP, one can get tropospheric and ionospheric delays generated from a GNSS network. Thus, PPP-RTK can be defined as a positioning technique in which the user obtains satellite-orbit, -clock, and -bias corrections from a service provider. The ionospheric delay is removed either through ionosphere-free combinations or by applying the total electron content (TEC) information generated from a network. Finally, the tropospheric delay is considered through a stochastic estimation or by utilizing zenith hydrostatic delay (ZHD) and zenith wet delay (ZWD) information available from the network.
One of the most prominent PPP services is the IGS-RTS, which is managed by the International GNSS Service (IGS). RTS stands for real-time service, and thus, real-time streams of satellite orbits and clock-offset corrections can be obtained through the IGS-RTS service. When such corrections are applied to broadcast navigation messages, the accuracies of three-dimensional orbits improve to the level of ~5 cm, and clock offsets are at a level of ~8 cm compared with the European Space Agency/European Space Operations Centre final product [
4]. Notable validation studies on IGS-RTS corrections include those by [
5,
6]. Won [
5] developed PPP algorithms and applied IGS-RTS corrections to them. For static positioning, they obtained a level of accuracy of ~10 cm in the horizontal direction compared to RTK when integer ambiguities are estimated as float numbers. For a mobile platform, the absolute accuracy was within the range of 20 to 30 cm. The real-time performance of IGS-RTS was evaluated by comparing the positioning accuracies obtained using IGS-RTS and IGS rapid products [
6]. They obtained a positioning accuracy of 20 cm with IGS-RTS. When IGS rapid products were used instead of IGS-RTS, the horizontal accuracy achieved was approximately 40 cm. Thus, with IGS-RTS, the accuracy improved by approximately 50%.
As noted above, several studies have applied IGS-RTS corrections in processing the carrier phase data. However, case studies implementing IGS-RTS corrections to pseudorange measurements are difficult to find. The only publication combined pseudorange observations with highly accurate satellite orbits and clock offsets was [
7], which applied IGS precise SP3 and CLK products instead of real-time corrections. In place of ionospheric and tropospheric corrections, however, they used global ionospheric maps for the ionospheric delay and pre-processed stochastic tropospheric delay estimates. For four days’ worth of data, the horizontal and vertical accuracies were in the range of 0.8–1.6 m and 1.6–2.2 m, respectively. When the same data were processed using Differential GPS (DGPS) positioning mode, PPP outperformed DGPS by 20–70%.
In this paper, we developed PPP algorithms that consider real-time State Space Representation (SSR) corrections for GPS pseudorange processing. SSR corrections have been produced by Seoul Broadcasting System, who operates 20-site GNSS network and a GNSMART server. We start with a pseudorange measurement equation and describe how major error sources were modeled with SSR corrections. The SSR data formats, the categories of information contained in SSR messages, and how they are applied in real-time positioning are explained in detail. Finally, static and kinematic positioning results using GPS pseudorange measurements are described.
2. Code-Pseudorange Measurement Equation
Pseudorange measurements are the range or distance from the user antenna to each satellite, and are calculated based on the signal transmission time from the satellites to the user. Such observables, however, contain clock offsets at both the satellite and the user receiver, and are thus not exactly “true” or “geometric” ranges. To make things worse, ionospheric and tropospheric delays, in addition to hardware effects and multipath, come into play. To achieve reliable positioning results, a variety of error sources have to be corrected or compensated for using measurement and force models. A general pseudorange measurement equation can be represented by the following equation:
where
p is the pseudorange measurement,
is the three-dimensional distance from the receiver to a satellite,
c is the speed of light,
δtr is the receiver clock offset,
δts is the satellite clock offset,
I is the ionospheric delay,
T is the tropospheric delay,
M is a multipath error,
bs is a satellite bias error,
br is a receiver bias error, and
is a random error [
8].
In the above equation, considerations regarding the multipath error were not included in our positioning algorithm. This is not because its effects are small, but rather because we were unable to find a reliable and real-time multipath correction model to apply to pseudorange measurements. The satellite ephemeris, e.g., the three-dimensional coordinates
in WGS-84, and an unknown receiver position
are included as
in Equation (1). Both the satellite ephemeris and the satellite clock offsets are broadcast from the satellite and can be extracted from real-time navigation messages. However, the accuracy of broadcast orbit is at the level of 1 to 2 m [
9], it is insufficient for use in precise point positioning. Thus, the first priority is for us to correct them with SSR messages, the procedure of which is explained in
Section 3.2.1 and
Section 3.2.2Although the satellite hardware bias
bs is included in the navigation message as
Tgd, whose value was set up in the satellite manufacturing stage, but the current and up-to-date value should be estimated on the user side because it is a variable quantity [
10]. For this reason, the satellite bias is also included in SSR messages, and satellite-dependent values are given as piecewise constants. The ionospheric and tropospheric errors are the two most prominent medium-dependent error sources, and are usually provided at pre-defined grid points. How these three quantities (
bs,
I, and
T) are handled with SSR messages is explained in
Section 3.2.3,
Section 3.2.4 and
Section 3.2.5. Now, the remaining error source is the receiver bias,
br. This quantity applies to every satellite, and thus, it can be estimated as one lumped value with the receiver clock offset,
δtr [
11].
The gravitational attraction of the moon and sun causes periodic deformations of the solid earth, which is referred to as earth tides. The combined tidal variation can reach up to 5 and 30 cm in the horizontal and vertical directions, respectively [
12]. Earth tides are expressed using Laplace equations, and the second degree of spherical harmonics account for 98% of the total variation [
13]. It is advised to consider only second and third degree of spherical harmonics in space geodetic technology using GNSS. Thus, we considered only the second and third degrees. Although a solid earth tide is not included in Equation (1), we corrected its effect by following the procedure suggested by IERS convention [
14].
In summary, if the multipath error is neglected in Equation (1), the pseudorange-based measurement equation has four unknowns: three-dimensional receiver coordinates implicit within range , the lump sum of the receiver clock offset δtr and the receiver hardware bias br. In estimating four states, we used an extended Kalman filter (EKF) in addition to the usual weighted least squares (LS). In the case of the EKF, a priori states were obtained through an LS estimation of the first-epoch measurements.
5. Conclusions
We developed PPP programs to process GPS code-pseudorange observables with real-time SSR corrections, and validated their performance through static and kinematic positioning tests. The performance of PPP algorithm was assessed based on the convergence time and positioning accuracy. With CROC, convergence was considered to be achieved when the rate of change in each direction was less than 1 cm/s. Among the 44 datasets, the average convergence times were found to be 48, 35, and 74 s for the north, east, and vertical directions, respectively. In performance analysis, we evaluated the positioning accuracy after all three directions converged. The proposed algorithm in static modes achieves horizontal and vertical RMSE of 0.32 and 0.40 m, respectively. To examine PPP algorithm for a moving platform, we test drove an automobile on a freeway. The horizontal and vertical RMSE along the test route were 0.53 and 0.69 m, respectively. From the above result, it was verified that the developed PPP algorithm utilizing SSR corrections can be provide reliable sub-meter level accuracy in both static and kinematic modes.