|
|
Functional Overview
IGDG consists primarily of two modules.
- The RTNT (Real Time Net Transfer) module on-the-fly collects, edits,
and compresses the raw GPS observables at the remote reference site.
It then transmits the packetized data over the open internet to the processing center.
At the processing center the global data from a network of remote sites (nominally the NASA Global GPS Network (GGN)) is sorted by RTNT.
Here, a powerful and unique feature of RTNT allows for multiply redundant operations centers
to receive the data over the internet and provide seamless backup in case of failure
at the primary operations center, or in its internet connectivity.
- The GPS data is then analyzed by the real time orbit determination module, RTG (Real Time GIPSY),
to produce precise GPS orbits and clocks.
These are formatted as corrections to the GPS broadcast ephemerides, encoded, and are provided over the internet to authorized users.
A user equipped with a GPS receiver and a facility to receive the correction message
will use a local version of RTG to precisely compute its position in real time.
RTG includes precise orbital dynamics models to support onboard orbit determination.
RTG implements some of the precise measurement algorithms present in the GIPSY-OASIS II software package,
but is fundamentally different in its architecture, programming language and concept of operations,
which are optimized for demanding real time applications and embedded operations.
RTNT (Real Time Net Transfer)
- Remote reference sites
The remote reference sites minimally have a dual-frequency GPS receiver, a PC running linux operating system, and connectivity to the open Internet.
A receiver-specific data daemon running on a PC at the remote site establishes communications with the receiver through its serial port, and places the raw GPS data (phase and range) 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 edited, and then sent out the socket.
This is a critical step because certain percentage of the data is lost in the transmission over the internet, which makes data editing at the processing center impossible.
A remote site tracking 10 GPS satellites transmits over the open internet 227 bytes/sec to a central data daemon.
- Central processing site(s)
At the central processing site, the transmitted data are collected by another RTNT process, which monitors the state of the whole system.
This central data daemon sorts the data according to timetag, rejects duplicate transmissions, and at a specified drop-dead time, outputs all the data at a common epoch into a circular buffer of shared memory.
Reliability is a key consideration in an operational differential service.
For improved reliability, the central data daemon keeps track of the sequence number of packets that arrive from each remote site, and may request up to 3 retransmissions of missed 1-sec data epochs.
A unique architecture of fully redundant processing centers guarantees continuous service even if one processing center unexpectedly goes down.
The central data daemon has a twin data daemon running on another computer.
The central data daemon relays all of its incoming GPS data to its twin 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 even merge streams from various data daemons or additional receivers.
- Broadcast of global differential corrections
The global differential corrections produced by RTG are packaged into a 560 bit/sec message, and are available on the open internet via a TCP server running at JPL.
Due to the low bandwidth of the correction message it can be easily broadcast over most communications channels, such as cellular telephony, radio modems, and geostationary relay satellites.
|
|
RTG (Real Time GIPSY)
- RTG at central processing site(s)
RTG provides real-time estimates of the dynamic GPS orbits, and one-second GPS clocks.
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.
These corrections are then placed into another revolving buffer of shared memory
so that they may be read by the clock correction process which produces corrections at 1 Hz.
- RTG for user positioning and navigation
RTG is also used for onboard, autonomous user positioning.
In this mode RTG ingests the correction message as well as the raw GPS data from the flight receiver
and provides precise estimates of the user position.
For users with known dynamics (such as spacecraft), it performs orbit determination.
For users with unknown dynamics (vehicles, airplanes), it provides kinematic positioning.
RTG compile options allow for small load size in embedded real application such as low Earth orbiters.
|
|
|