Results of an Internet-Based Dual-Frequency Global Differential GPS
System

Ronald J. Muellerschoen, Willy I. Bertiger, Michael F. Lough

Jet Propulsion Laboratory, California Institute of Technology

# Biography

*Ronald Muellerschoen* received a B.S. degree in physics at Rensselaer
Polytechnic Institute and a M.S. degree in applied math at the
University of Southern California. He is currently a Member of the
Technical Staff in the Orbiter and Radio Metric Systems Group at the Jet
Propulsion Laboratory (JPL). His work at JPL has concentrated on the
development of filtering software for processing GPS data and
development of wide area differential systems.

*Willy Bertiger* received his Ph.D. in Mathematics from the University
of California, Berkeley, in 1976. In 1985, he began work at JPL as a
Member of the Technical Staff in the Orbiter and Radio Metric Earth
Systems Group. His work at JPL has been focused on the use of GPS,
including high precision orbit determination, positioning, geodesy,
remote sensing, and wide area differential systems.

*Michael Lough* obtained a Ph.D. in Applied Mathematics from the
California Institute of Technology in 1995. Since 1997, he has worked in
JPL\'s Orbiter and Radio Metric Systems Group. His current interests
include the development of techniques for improving GPS-based precise
orbit determination (POD) strategies for low-Earth orbiters as well as
the development of real-time tools for GPS analysis.

# Abstract

Observables from a global network of 18 GPS receivers are returned in
real-time to JPL over the open Internet. Global GPS orbits accurate to
30-40 cms RSS and precise dual-frequency GPS clocks are computed in
real-time with JPL\'s Real-Time Gipsy (RTG) software. Corrections to the
broadcast orbits and clocks are communicated to the user over the open
Internet via a TCP server. Tests of user positioning show real-time RMS
accuracy of 8 cms RMS in horizontal and 20 cms RMS in the vertical.

# Introduction

The JPL architecture for a global real-time GPS differential system was
first put forward by Tom Yunck et al. \[*1995, 1996*\]. A commercial
North American Wide Area Differential GPS (WADGPS) system based on the
JPL architecture and software was implemented in 1997 \[*Whitehead et
al. 1998; Bertiger et al. 1998*\]. In 1996 the Federal Aviation
Administration (FAA) selected the JPL architecture and software as a
prototype for their Wide Area Augmentation System (WAAS). WAAS as well
as all other existing differential systems are optimized for users with
a single-frequency GPS receiver, whose receiver observables are
susceptible to large, unknown ionospheric delays. In order to compensate
for this error source, these differential systems employ a dense network
of reference stations over their service area (for example, WAAS uses 24
reference stations over the continental US). Maps of the total electron
content (TEC) must be transmitted to their single-frequency users. In
contrast, a dual-frequency system does not need this information, hence
greater accuracy is achievable and fewer reference sites are needed.
Furthermore, all existing differential systems are regional, in that
they serve a portion of the Earth\'s surface. Many of NASA's projects
are global in nature and require the highest possible accuracy. The
system discussed in this paper addresses the issues of accuracy and
global coverage.

To address the issue of global coverage, we take advantage of NASA\'s
Global GPS Network (GGN), which is operated and maintained by JPL. The
GGN consists of approximately 50 sites which are mostly operated in
batch mode over the Internet
\[[http://igscb.jpl.nasa.gov](http://igscb.jpl.nasa.gov/)\]. To return
data in real-time a new software set called Real-Time Net Transfer
(RTNT) was developed. One Hz. phase and range observables are returned
over the open Internet using User Datagram Protocol (UDP). More than 98%
of the data is returned in less than 2 seconds. Currently 18 global
sites are returning data in real-time to JPL. We expect to add several
key additionally sites in the next few months. These new sites will
increase the accuracy of the orbits and clocks, and also system
reliability by having redundant receivers in the reference network.

To address the issue of accuracy, the system has been optimized for
dual-frequency users. Both range and phase dual-frequency observables
are used from geodetic reference receivers. The user\'s software uses
the phase observable, not to smooth the range data, but as a basic data
type in the user\'s positioning filter, whose states include along with
the user\'s position and clock, the necessary phase biases and an
optional slowly varying zenith troposphere parameter. Tests of user
positions show 8 cms RMS accuracy in horizontal and 20 cms RMS accuracy
in vertical.

The global differential corrections computed by RTG are packaged into a
560 bit/sec message, and are made available on the open Internet via a
TCP server running at JPL.

# Enabling Software

## RTG (Real-Time GIPSY)

RTG provides real-time estimates of the dynamic GPS orbits, and
one-second GPS clocks \[*Bertiger et al. 1998\].* Orbit estimates are
needed less frequently than the clocks due to their slower varying
physical behavior. RTG contains many of the precise models contained in
JPL\'s GIPSY OASIS II (GOA II) software. GOA II has a long history in
precise orbit determination of GPS and other spacecraft equipped with
GPS receivers \[*Muellerschoen, 1994,1995*; *Bertiger,1994*;
*Gold,1994*; *Haines,1995\]*, and in precise GPS geodetic applications
\[*Heflin,1994*; *Argus,1995*\]. Post-processing of global GPS data with
GOA II routinely yields GPS orbits with accuracies better than 10 cms.

Additionally, RTG has been embedded in real-time user equipment for
flight on the X33 sub-orbital vehicle, and has flown on the NASA DC-8
SAR flights \[*Muellerschoen, 1999*\].

## RTNT (Real-Time Net Transfer)

RTNT returns 5 of the 6 GPS data types: CA range, P1 and P2 ranges, and
P2 phase, and either the P1 or CA phase, plus signal to noise ratios.
The data is edited, smoothed, and compressed down to 21 bytes/GPS, with
17 bytes of overhead needed for time-tag, site id, navigation solution,
sequence number, and status flags. For example, if a remote site tracks
10 GPS satellites, 227 bytes/sec are transmitted to a central data
daemon at JPL. Additionally, the broadcast ephemerides are included in
this transmission when new iode numbers are observed.

For improved reliability, the central data daemon keeps track of the
sequence number of the packets from each remote site and may request
retransmission of up to 3 missed data epochs. The central data daemon
may have a twin data daemon running on another computer. The central
data daemon relays all of its incoming GPS data to its twin also via
socket communications. Should the twin no longer see any data flow, it
will send out a request to the entire global network to request
re-routing of the real-time data to itself. It would then serve as the
central data daemon until the primary daemon is brought back on-line. It
is also possible to chain these data daemons in order to export the
real-time GPS data to any other computer on the open Internet, and also
merge streams from regional data daemons or additional receivers.

The remote sites minimally have a dual-frequency GPS receiver, a PC
running linux operating system, and connectivity to the open Internet.
RTNT currently supports the data streams from Ashtech Z-12, Turbo-Rogue,
and AOA-ACT Benchmark GPS receivers. A particular data daemon running on
a PC at the remote site establishes communications with the receiver
through its serial port, and places the data in a revolving buffer of
shared memory. A second process that is independent of receiver type,
reads this shared memory and opens a socket connection to the central
data daemon. The data is checked and flagged for phase breaks, and then
transmitted over the socket connection. In addition, \"soc\" files are
constructed which contain the data packets transmitted over the socket.
These are later retrieved in batch mode to support JPL\'s GGN
activities. Conversion routines are available from soc files to standard
rinex files.

# System Overview

## Data Collection

Fig. 1 shows a map of the current real-time receiver network. Data
returned includes dual-frequency phase measurements with a resolution of
0.02 mm, and dual-frequency range measurements with a resolution of 1
mm, the receiver\'s solution for its time, and broadcast information. At
JPL, these data are collected by a central data daemon that sorts the
data according to time-tag, rejects duplicate transmissions, and makes
requests for retransmission of missed data packets. At specified latency
times of 2 and 6 seconds, all data with common epochs are written into
circular shared memory buffers. In general, these two buffers contain
the same data, however data that arrives late, such as retransmitted
data, can still be included to the 6 second latency buffer. This buffer
is then used by the RTG orbit process since the orbits have a slower
varying behavior. The clocks on the other hand are less predictable, and
hence use the 2 second latency buffer.

![](media/image1.pct)Figure 1.) Network of dual-frequency GPS reference
receivers returning data to JPL in real-time. Current network consists
of 4 AOA-ACT Benchmarks, 3 Turbo-Rogues, and 11 Ashtech Z-12s.

## Data Latencies

Data latency is the difference between the GPS time-tag and the time the
data arrives at JPL. The web page
<http://gipsy.jpl.nasa.gov/igdg/demo/index.html> shows the current data
latencies and the number of GPS satellites tracked from the real-time
network for the last 60 minutes. The recurrent 15 minute spikes in some
of the data latency plots, *guaz* and *gala* for instance, corresponds
to the batch retrieval of the 15 minute soc files. Some of the global
sites do not have sufficient bandwidth to fully support both
simultaneous transmission of the real-time stream and the batch
retrieval of the soc files. The batch retrieval process of the soc files
is performed sequentially from a separate computer at JPL, so these
brief periods of delay in the real-time stream are staggered. Hence the
impact on the system is minimized. Additionally evident in some of these
latency plots, *madr* and *okc1* for instance, is the 5 minute
meteorological data retrieval activity that also is sharing bandwidth
with the real-time stream. The 0.1 second scatter in the floor of the
latency plots is a consequence of an imposed 0.1 second sleep at the
remote sites to minimize CPU usage on the remote PCs.

## Orbit Determination and Clock Estimation

RTG reads the shared memory output of the central data daemon process.
Orbit and troposphere estimates at the reference stations are computed
once per minute by the orbit process. These estimates are then placed
into another revolving buffer of shared memory so that they may be used
by the clock process to compute clock solutions at 1 Hz.

Fig. 2 shows a plot of the real-time and post-processed wet-zenith
troposphere estimates of the Oklahoma receiver on June 19, 2000. The
post-processed troposphere estimate is obtained by point-positioning the
GGN rinex file with GOA II using precise orbits and clocks. These
post-processed troposphere solutions are known to be accurate to 1 cm.
The RMS difference between the real-time and post-processed \"truth\"
troposphere estimates is 1.0 cm.

![](media/image2.pct)

Figure 2.) Truth and the real-time wet-zenith troposphere estimates
agree to 1.0 cm. (RMS)

Fig. 3 shows a plot of GPS 16 orbit error over a 3 day period, along
with the number of ground receivers tracking GPS 16. This plot includes
a cold-start of the orbit process with initial conditions obtained from
the broadcast ephemerides. It takes about 6 hours for the orbit filter
to reduce all orbit errors to under 1 meter. If the orbit process is
initialized with IGS predicted orbits, this settling time is around 3
hours.

![](media/image3.pct)

Figure 3.) Bottom line is the real-time 3D RSS orbit errors for GPS 16
for a 3 day period. The top line is the number of reference receivers
tracking GPS 16 with the current 18 station global network.

Fig. 3 also shows that when GPS 16 is poorly tracked the orbit errors
are held in check due to the dynamic and predictable nature of the
orbits. However the errors do tend to increase to meter-level shortly
after these periods. These outage periods are occurring mainly over
Africa and the Western Indian Ocean. We anticipate that a receiver
scheduled to be installed before September 2000 in Uganda, Africa will
reduce these holes in the GPS coverage.

The orbit process also estimates x and y polar motion parameters and
their rates, along with a ut1-utc rate term. Figs. 4 and 5 show plots of
the real-time polar motion estimates and the IGS rapid service
combination solution for the period May 31 to June 9, 2000. For x and y
polar motion, the RMS differences with the IGS solution are 0.376 and
0.378 masc., respectively.

In our initial results \[*Muellerschoen, 2000*\] the global GPS orbit
error was about 1 meter (3D RSS of the three position components). Since
then we have included and tuned stochastic dynamic partials for 3
solar-scale factors and a y-bias parameter. Also the orbit integrator
now includes the effects of solid earth tides, pole tides, and ocean
tides. Fig. 6 shows a plot of the 3D RSS orbit difference with the
next-day-available IGS rapid service combined orbit solution. A
scheduled power outage at JPL occurred over the weekend of 10-June, and
additional s/w changes were made on 12-June. The orbit process was
restarted on 13-June; the orbit settling errors for this day are not
shown in Fig. 6.

![](media/image4.pct)

Figure 4.) IGS rapid combined solution and the real-time x pole
estimates agree to 0.376 masc. (RMS)

![](media/image5.pct)

Figure 5.) IGS rapid combined solution and the real-time y pole
estimates agree to 0.378 masc. (RMS)

![](media/image6.pct)

Figure 6.) RMS of the 3D orbit differences between the real-time GPS
orbits and the next-day-available IGS rapid service combined solution
(truth). IISC (India) was pulled out of service on day 30-May and
returned to the real-time stream on 6-June. PIMO (Philippines)
experienced a network failure on 18-June due to a lighting strike.

[Fig. 6 shows that when all 18 of the global real-time sites are
transmitting to JPL, the 3D GPS orbit error is 30-40 cms.]{.underline}

## Global Differential Correctors

To provide corrections to the broadcast ephemerides and broadcast
clocks, we difference the orbit and clock solutions with the broadcast
values. These corrections are packaged into a 560 bit message. Each
message contains xyz orbit corrections and meter-level clock corrections
for 4 prns, and cm-level clock corrections for 32 prns. The total clock
correction is the sum of meter-level correction and the cm-level
correction. It requires then 8 seconds for the user to initialize all 32
orbit and clock correctors. The resolution of the clock corrections is
1.5625 cms. This is 8 times better than the WAAS resolution, which is
12.5 cms. The resolution of the orbit corrections is 6.25 cms, which is
the same as WAAS\'s orbit resolution. iode ephemeris changes are held 2
minutes after new iodes are observed. This gives the user sufficient
time to also accumulate the newest ephemeris message.

The global differential corrections are made available currently over
the open Internet via a TCP server running at JPL. Code to obtain the
real-time global differential corrections is available at:

<ftp://sideshow.jpl.nasa.gov/pub/rjm/jplGdGPS/>

Note however that both the server IP and port number may change as the
system further develops.

# User Positioning Tests

To test the accuracy of the global differential GPS correctors, we
kinematically position a stationary GPS receiver at a known location at
1 Hz. The same RTG s/w used on the DC-8 flights \[*Muellerschoen,
Bertiger 1999*\] is used with the global differential GPS correctors
obtained through a socket connection from JPL\'s global differential TCP
server.

A plot of kinematic positioning of a static user is shown at
<http://gipsy.jpl.nasa.gov/igdg/demo/index.html>. In this live demo, a
GPS receiver on JPL\'s Mesa uses RTNT to transmit its data to a laptop
computer at the author\'s desk, where it is kinematically positioned at
1 Hz. in real-time using the global differential corrections. The
resulting solutions are used to update the web display every 30 minutes.

Figs. 7 and 8 show the horizontal RMS errors of the demo receiver at
JPL\'s Mesa over 6 hour periods. Fig. 9 shows the vertical errors. The
gap in the middle is related to the previous mentioned scheduled power
outage at JPL. [The RMS error over all these 6 hour periods is 8 cms in
East, 7 cms in North, and 21 cms in Vertical]{.underline}.

![](media/image7.pct)

Figure 7.) East error of user positioning.

![](media/image8.pct)

**Figure 8.) North error of user positioning**.

![](media/image9.pct)

**Figure 9.) Vertical error of user positioning.**

To demonstrate the effectiveness of separation of clock and orbit error
with the state-space approach, we ran the 1 Hz. clock process without
the Goldstone, California reference site and kinematically positioned
JPL\'s Mesa demo receiver. Figs. 10 and 11 demonstrate the horizontal
positioning of JPL\'s Mesa demo receiver with and without Goldstone in
the clock process. Fig. 12 shows the vertical errors. Without the
Goldstone site, the nearest reference receiver in the real-time network
is in Oklahoma. The overall RMS error without Goldstone in the 1 Hz.
clock process is 7 cms in East, 8 cms in North, and 20 cms in Vertical.
With Goldstone in the clock process, the overall RMS for the same period
is 8 cms in East, 9 cms in North, and 23 cms in Vertical. The reason for
this contradiction appears to be multipath error on the order of several
meters at Goldstone for low-elevation (\< 25 degrees) data. This problem
has since been corrected, and now only data above 25 degrees at
Goldstone is processed by both the orbit and clock processes. Regardless
of this contradiction, the results demonstrate that it is not necessary
to be near a reference receiver to obtain similar accuracies.

![](media/image10.pct)

**Figure 10.) East error of user positioning with and without Goldstone,
CA reference receiver in the 1 Hz. clock process.**

![](media/image11.pct)

Figure 11.) North error of user positioning with and without Goldstone,
CA reference receiver in the 1 Hz. clock process.

![](media/image12.pct)

Figure 12.) Vertical error of user positioning with and without
Goldstone, CA reference receiver in the 1 Hz. clock process.

# Summary

The open Internet is a reliable choice to return GPS data for a
state-space dual-frequency global differential system. Results show user
positions of 8 cms horizontal accuracy and 20 cms vertical accuracy.
When all 18 of the global real-time sites are transmitting to JPL, the
3D GPS orbit error is 30-40 cms. As more stations come on-line, the GPS
orbit errors will be reduced, and the overall system will be made more
robust through redundancy of the network.

# Acknowledgments

The work described in this paper was carried out in part by the Jet
Propulsion Laboratory, California Institute of Technology, under
contract with the National Aeronautics and Space Administration.

# References

Argus, D., M. Heflin, Plate Motion and Crustal Deformation Estimated
with Geodetic Data from the Global Positioning System, Geophys. Res.
Lett., Vol. 22, No. 15 , 1973-1976, 1995.

Bertiger, W. I., Y. E. Bar-Sever, E. J. Christensen, E. S. Davis, J. R.
Guinn, B. J. Haines, R. W. Ibanez-Meier, J. R. Jee, S. M. Lichten, W. G.
Melbourne, R. J. Muellerschoen, T. N. Munson, Y. Vigue, S. C. Wu, and T.
P. Yunck, B. E. Schutz, P. A. M. Abusali, H. J. Rim, M. M. Watkins, and
P. Willis, GPS Precise Tracking Of Topex/Poseidon: Results and
Implications, *JGR Oceans Topex/Poseidon Special Issue*, vol. 99, no.
C12, pg. 24,449-24,464 Dec. 15, 1994.

Bertiger, W. I., Y. E. Bar-Sever, B. J. Haines, B. A. Iijima, S. M.
Lichten, U. J. Lindqwister, A. J. Mannucci, R. J. Muellerschoen, T. N.
Munson, A. W. Moore, L. J. Romans, B. D. Wilson, S. C. Wu, T. P. Yunck,
G. Piesinger, and M. Whitehead, "A Prototype Real-Time Wide Area
Differential GPS System," ION National Technical Meeting, Santa Monica,
CA, Jan., 1997.

Bertiger, W.I., Y. E. Bar-Sever, B. J. Haines, B. A. Iijima, S. M.
Lichten, U. J. Lindqwister, A. J. Mannucci, R. J. Muellerschoen, T. N.
Munson, A. W. Moore, L. J. Romans, B. D. Wilson, S. C. Wu, T. P. Yunck,
G. Piesinger, and M. Whitehead, "A Real-Time Wide Area Differential GPS
System," *Navigation: Journal of the Institute of Navigation*, Vol. 44,
No. 4, 1998, pgs. 433-447.

Gold, K., W. I. Bertiger, S. C. Wu, T. P. Yunck, GPS Orbit Determination
for the Extreme Ultraviolet Explorer, *Navigation: Journal of the
Institute of Navigation*, Vol. 41, No. 3, Fall 1994, pp. 337-351

Haines, B.J., S.M. Lichten, J.M. Srinivasan, T.M. Kelecy, and J.W.
LaMance, GPS-like Tracking (GLT) of Geosychronous Satellites: Orbit
Determination Results for TDRS and INMARSAT, AAS/AIAA Astrodynamics
Conference, Halifax, Nova Scotia, Aug.14-17, 1995 (AIAA, 370 L'Enfant
Promenade, SW, Washington DC 20024).

Heflin, M.D., D. C. Jefferson, Y. Vigue, F. H. Webb, J. F. Zumberge, and
G. Blewitt, Site Coordinates and Velocities from the Jet Propulsion
Laboratory Using GPS, SSC(JPL) 94 P 01, IERS Tech. Note 17, 49, 1994.

Muellerschoen, R. J., W. I. Bertiger, S. C. Wu, T. N. Munson, J. F.
Zumberge, B. J. Haines, Accuracy of GPS Determined Topex/Poseidon Orbits
During Anti-Spoof Periods, Proceedings of ION National Technical, San
Diego, California, January 1994.

Muellerschoen, R. J., S. M. Lichten, U. J. Lindqwister, W. I. Bertiger,
Results of an Automated GPS Tracking System in Support of Topex/Poseidon
and GPSMet, Proceedings of ION GPS-95, Palm Springs, CA, September,
1995.

Muellerschoen, R. J., W. I. Bertiger, Flight Tests Demonstrate Sub 50
cms RMS. Vertical WADGPS Positioning, Proceedings of ION GPS-99,
Nashville, Tenn. September 1999.

Muellerschoen, R. J., W. I. Bertiger, M. F. Lough, D. Dong, An
Internet-Based Global Differential GPS System, Initial Results,
Proceedings of ION National Technical Meeting, Anaheim, California,
January, 2000.

Yunck, T.P., W. I. Bertiger, S. M. Lichten, A. J. Mannucci, R. J.
Muellerschoen, and S. C. Wu, "A Robust and Efficient New Approach to
Real Time Wide Area Differential GPS Navigation for Civil Aviation", JPL
Report D-12584, 1 April, 1995.

Yunck, T. P., Y. E. Bar-Sever, W. I. Bertiger, B. A. Iijima, S. M.
Lichten, U. J. Lindqwister, A. J. Mannucci, R. J. Muellerschoen, T. N.
Munson, L. Romans, and S. C. Wu, "A Prototype WADGPS System for Real
Time Sub-Meter Positioning Worldwide," Proceedings of ION GPS 96, Kansas
City, Kansas, September, 1996.

Whitehead, M. L., G. Penno, W. J. Feller, I. C. Messinger, W. I.
Bertiger, R. J. Muellerschoen, and B. A. Iijima, "A Close Look at
Satloc\'s Real-Time WADGPS System GPS Solutions," GPS Solutions, Vol 2,
No. 2, John Wiley & Sons, Inc., 1998.