|
Description  |
|
|
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates generally to global positioning system (GPS)
equipment and methods, and more particularly to separating GPS receiver
front-ends from GPS processing such that the GPS front-ends may be placed
in expendable launch vehicles, such as radiosondes and sonobuoys.
2. Description of the Prior Art
Weather balloons typically carry aloft radio transmitters that broadcast
humidity, temperature and atmospheric pressure at various altitudes of a
flight. Such instruments are called radiosondes, and when tracked by
transducers to gauge wind velocities, the radiosondes are referred to as
rawinsondes. Balloon launched rawinsondes (sondes) are used throughout the
world on test ranges to measure and radio-telemeter the balloon's
position, altitude, upper atmosphere wind velocities, air temperature,
relative humidity and barometric pressure. Such data supports
meteorological reporting for the National Weather Service and is used on
Department of Defense (DOD) test ranges to validate vehicle wind load
limits on days scheduled for launches.
The prior art measures balloon position using several techniques, e.g., a
transponder and radiotheodolite, long range navigation (LORAN) and OMEGA,
none of which are capable of precise altitude and latitude/longitude
resolutions. The radiotheodolite technique requires manning of ground
equipment. OMEGA has poor geo-location capability. The reliable reception
range of LORAN-C navigation data can be reduced by hundreds of miles
during thunderstorm activity. Rain showers, wet fog and snow flurries
along a LORAN-C chain can produce "precipitation static" which degrades
LORAN-C reception. External man-made interference is also a problem at the
100 KHz frequency used by LORAN-C, due to the long range propagation
characteristics of such low frequency signals.
Among existing long range navigational aids, OMEGA, LORAN, TRANSIT and
global positioning system (GPS), the GPS system obtains the best
accuracies. GPS signals are inherently immune to interference, in part due
to its direct sequence, spread spectrum, signal structure and a
line-of-sight radio signal propagation characteristic of the two GPS
satellite's carrier frequency signals, L1 and L2. Code division multiple
access (CDMA) is used to separate signals from the individual GPS
satellites. Each GPS satellite transmits a pseudo-random number (PRN) key
that is needed by the receiver to decipher information. The L1 GPS band at
1,575.42 MHz, also provides a degree of immunity to terrestrial signals at
long ranges, which are over-the-horizon. The GPS L1 C/A signal occupies
slightly less than two MHz of bandwidth. The accuracies needed in
rawinsonde applications can be obtained worldwide with GPS. Positional
accuracies on the order of fifteen meters are possible when using a
differentially corrected C/A signal during periods the DOD has engaged a
deliberate dither called Selective Availability (SA). Under normal
operating conditions, the DOD introduces errors via SA into the GPS system
so that unauthorized receivers cannot use the GPS system at its most
precise levels of accuracy against the United States or its armed forces
in military actions.
In conventional GPS receivers, navigation signals are continuously
processed in real-time. A conventional GPS receiver tracks a plurality of
PRN phases corresponding to multiple GPS satellites, all in real-time. The
ephemeris and catalog data are also extracted in real-time. GPS ephemeris
data informs a GPS digital signal processor of the precise orbit of a
corresponding GPS satellite. Such real-time, wide-bandwidth tracking of
multiple satellites necessitates sophisticated and complex hardware and
software.
A major drawback to GPS systems, however, are their cost. Such systems are
too expensive to be considered disposable or expendable. It would be
prohibitively expensive to most weather data gathering institutions to fly
a complete GPS receiver aboard a non-recoverable sonde. The same is true
for sonobuoy launchings. GPS receivers are expensive because of the
complex signal processing required to extract the positional data from the
GPS signal.
One approach to making GPS systems affordable in launch vehicles, e.g.,
rawinsondes and sonobuoys, is to concentrate the overall system costs in
the centralized ground processing equipment. A rawinsonde or sonobuoy
could be adapted to relay the raw GPS signals it receives over a radio
band, e.g., 1600 MHz or 400-406 MHz which are reserved for meteorological
use. Relaying uncorrelated GPS signals to a ground station for GPS
processing there would involve a minimum of equipment in the launch
vehicle. But a two MHz downlink channel, for example, in the
meteorological band, would be needed and would be susceptible to
interference. This technique would also require a relatively high power
relay transmitter due to the inherent wide bandwidths of the GPS signals
and their CDMA spread spectrum modulation.
SUMMARY OF THE INVENTION
It is therefore an object of the present invention to provide a radiosonde
with GPS-based position and altitude determinations.
It is a further object of the present invention to provide a GPS-based
positioning system with an expendable GPS front-end for use in a remote
sensor.
Briefly, a rawinsonde embodiment of the present invention includes a
digital GPS snapshot buffer, a serial communications controller for
transmitting message frames formed of a combination of digital GPS data
from the snapshot buffer and digitized hardwired meteorological data input
from a humidity-temperature-pressure instrument. The message frames are
telemetered at a relatively low rate over a meteorological band to a
ground station. Substantially all of the conventional GPS digital signal
processing is performed by the ground station. Such processing
traditionally includes carrier recovery, PRN code locking, pseudo-range
extraction, ephemeris data extraction, almanac collection, satellite
selection, navigation solution calculation and differential corrections.
Ground processing further includes Kalman filter wind velocity
calculation. The GPS signal is buffered and processed by the ground
station in pseudo real-time by a commercially-available microcomputer
platform. A digital signal processing accelerator card is included in the
computer to improve system throughput such that balloon navigational fixes
may be determined at least once a second.
An advantage of the present invention is that a system is provided in which
the user clock bias between snap-shot collections of GPS data is coherent,
thus permitting a single GPS satellite's range data to be used in the
Kalman filter to update position information for the GPS front-end.
An advantage of the present invention is that a rawinsonde system is
provided in which SA errors are dramatically reduced by employing
differential corrections.
Another advantage of the present invention is that a rawinsonde system is
provided that has a differential operating mode, wherein a ground
processor provides its own self-generated differential corrections. The
system computes ranges to each of the GPS satellites from a separate set
of GPS signals received directly by the ground processor. It then
generates pseudo-range errors based on a known, previously surveyed
position, from the computed pseudo-ranges (PR). These ground based PR
error terms are then subtracted from the calculated balloon PR
measurements to fine tune the airborne GPS measurements. This technique
cancels several error sources, including selective availability and
atmospheric propagation delays.
A further advantage of the present invention is that a one-bit
analog-to-digital converter is provided that insures low manufacturing
costs and maintains a high level of performance that is consistent with
the rawinsonde mission. The single-bit nature of the digitization has the
advantages of requiring only a low-cost comparator, the GPS receiver
front-end need not employ automatic gain control, the GPS front-end
amplifiers can be simple limiting amplifiers and only 4K bytes of buffer
memory is required aboard the rawinsonde.
These and other objects and advantages of the present invention will no
doubt become obvious to those of ordinary skill in the art after having
read the following detailed description of the preferred embodiment which
is illustrated in the various drawing figures.
IN THE DRAWINGS
FIG. 1 is a block diagram of a rawinsonde system embodiment of the present
invention;
FIG. 2 is a block diagram of a GPS front-end, a local oscillator and a dual
single-bit digitizer included in the system of FIG. 1; and
FIG. 3 is a block diagram of a digital card for time tagging messages that
is included in the system of FIG. 1.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
A meteorological measurement system embodiment of the present invention,
referred to herein by general reference numeral 10, is illustrated in FIG.
1. System 10 comprises an airborne rawinsonde 12 for attachment to a
weather balloon, and a ground station 14. The present invention is not
limited to weather balloon applications, and practically any remote sensor
requiring accurate position determination and expandability can benefit,
e.g., sonobuoys. Airborne rawinsonde 12 includes a GPS antenna 16; a GPS
front-end 18; a comparator 20; a memory 22; a memory address generator 24;
an analog-to-digital converter (ADC) 26 that receives a set of
meteorological input signals related to atmospheric pressure (P), relative
humidity (H) and air temperature (T); a parallel to serial converter 28; a
cyclic redundancy code (CRC) generator 30; a meteorological band frequency
shift keyed (FSK) radio transmitter 32; a transmitter antenna 34 and a
read only memory (ROM) sequencer and address generator 36. The GPS antenna
16 is preferably a right-hand, circular polarized (RHCP) GPS patch
antenna.
A millisecond counter 37 paces the ROM sequencer 36 to provide coherency to
the user clock bias. In other words, the starting points of collection and
transmission of data from rawinsonde 12 to ground station 14 (data
"snap-shots") are synchronized to occur, as near as is practical, on the
same exact points of whole integer millisecond periods. Each millisecond
period represents a GPS epoch in which the pseudo random number (PRN) code
is repeated. The maintenance of the user clock bias coherence from
measurement to measurement permits a more effective application of an
extended Kalman filter in centralized ground station processing.
The ground station 14 comprises a meteorological band receiver antenna 38,
a meteorological band receiver 40, a GPS antenna 42, a GPS receiver 44, a
personal computer (PC) 46, a digital signal processing (DSP) accelerator
48, a digital card 50, an "RS-422" type serial interface card 52 and a
printer 54. PC 46 may comprise a commercially available microcomputer
system with a hard disk, a keyboard and a monitor, such as the Macintosh
IIfx, as marketed by Apple Computer Corporation (Cupertino, Calif.).
FIG. 2 shows that GPS front-end 18 includes a 1575.42 MHz bandpass filter
(BPF) 60 with a bandwidth of ten MHz, a radio frequency (RF) amplifier 62,
a band reject filter (BRF) 63 with a notch frequency of 1509.948 MHz, a
mixer 64, a first 32.736 MHz bandpass filter (BPF) 66 with a bandwidth of
1.3 MHz, a first intermediate frequency (IF) amplifier 68, a second 32.736
MHz bandpass filter (BPF) 70 with a bandwidth of 1.3 MHz, a second IF
amplifier 72 and a 90.degree. phase shifter 73. A local oscillator (LO) 74
comprises a 8.184 MHz crystal oscillator (OSC) 76, a divide-by-eight
circuit 78, a phase lock loop (PLL) amplifier 80, a 1542.684 MHz
voltage-controlled oscillator (VCO) 82, a frequency divider 86 nominally
programmed to divide by 1508 and a phase comparator 88. Comparator 20 has
an in-phase (I) digitizer 90 that includes a comparator 91 and a D-type
latch 92. Comparator 20 further has a quadrature-phase (Q) digitizer 94
that includes a comparator 95 and a D-type latch 96.
Preferably, the user clock bias between snap-shot collections of data from
rawinsonde 12 is coherent. Although four milliseconds of down-converted
GPS signal data is typically collected each second, the start of each
collection is substantially exactly an integer number of millisecond
"epochs" from corresponding previous starting points of collection. This
then allows the collected data to be processed by an extended Kalman
filter in ground station 14. Such a Kalman filter allows averaging,
regardless of unavoidable balloon pendulum motion that can limit
low-elevation GPS satellite visibility at any one instant. Therefore,
navigation updates are possible when less than a full constellation of
four GPS satellites is available. The Kalman filter provides
mathematically optimal updates from the available information, because a
Kalman filter's "time constant" may be varied. The Kalman filter also
permits the input of a current pseudo range signal-to-noise ratio.
Whenever the user clock bias is not coherent between measurements,
measurements from at least four GPS satellites are required to update the
position of rawinsonde 12.
In operation, only a very short snap-shot of a GPS signal is actually
required to locate the position of a balloon carrying rawinsonde 12, e.g.,
two to four milliseconds per measurement. During each collection period, a
"snap-shot" of 32,000 bits of data may be collected and stored by
rawinsonde 12. This data is preferably collected at precise integer number
of millisecond points from a previous collecting. Since the GPS coarse
acquisition (C/A) code repeats each millisecond, this generates user clock
bias coherency between snap-shots, which allows the use of an extended
Kalman filter to process the data. This data is then transmitted to ground
station 14 periodically in a one second interval within a thirty-two KHz
channel located in the meteorological radio frequency band. Fast
correlation techniques are used to extract pseudo-ranges from GPS signal
collection segments. Fast correlation differs from conventional delay lock
loop techniques in tracking a GPS signal in that fast Fourier transforms
are used to compute all correlation lags for initial lock-on.
Within PC 46, a set of navigational algorithms take the measured
pseudo-ranges to as many as four satellites, and generates the user x, y
and z Earth Centered Earth Fixed (ECEF) coordinates. A conversion of the
ECEF coordinates is made to WGS-84 Earth ellipsoid latitude, longitude and
altitude. With the user's estimated x, y and z position denoted as (Ux,
Uy, Uz), the four satellite pseudo-ranges denoted as (r.sub.1, r.sub.2,
r.sub.3, r.sub.4), the i.sup.th satellites x, y and z, ECEF coordinates
represented as (S.sub.xi, S.sub.yi, S.sub.zi), and B representing the user
clock bias, the pseudo-ranges to each of the four satellites may be
expressed as follows:
##EQU1##
The r.sub.i are pseudo-ranges in that they each are a sum of the actual
ranges plus an offset due to a user clock bias. Equation (1) may be
written in a more compact form as follows,
##EQU2##
In practice, a user has only an estimate of an actual position. The
estimated pseudo-ranges are denoted r.sub.ei and are calculated based on
an estimated user location (U.sub.ex, U.sub.ey, U.sub.ez). The estimated
pseudo-range may be expressed as,
##EQU3##
An alternative, and less preferable, non-Kalman filter navigation algorithm
adjusts its estimate of a user position in such a manner as to reduce any
error between a measured and an estimated pseudo-range. The error terms
may be represented as,
e.sub.i =r.sub.i -r.sub.ei. (4)
Such an algorithm will adjust (U.sub.ex, U.sub.ey, U.sub.ez) So as to drive
an error term described by equation (4) towards zero. Let .delta.e.sub.i
be a change in an error term generated by a change in estimated user
position. A relation between the change in estimated user position and the
change in the error term may be expressed using a total differential. An
analytic expression for the total differential is,
##EQU4##
To adjust an estimated user position such that the total error in
pseudo-range is zero,
e.sub.i +.delta.e.sub.i =0. (6)
Equation (5) may be expressed in a matrix form as follows,
##EQU5##
Evaluating each of the partial derivatives using equations (4) and (1)
yields,
##EQU6##
Equations (8) through (10) can be given geometric interpretations. These
equations equal the cosines of the angles between the x, y and z
coordinate axes and a range vector to the selected satellite. Therefore,
they are the dot product between a unit vector along the corresponding
coordinate axis and the range vector, divided by the magnitude of the
range vector. By the definition of a dot product, this is the cosine of
the angle between the vectors.
Equation (7) may be written even more compactly by defining
.delta.e=[.delta.e.sub.1, .delta.e.sub.2, .delta.e.sub.3, .delta.e.sub.4
].sup.T, .delta.U.sub.e =[.delta.U.sub.ex, .delta.U.sub.ey,
.delta.U.sub.ez, .delta.B.sub.e ].sup.T and G is the matrix of partial
derivatives,
.delta.e=G.delta.U.sub.e. (13)
Equation (13) relates changes in the estimated user position to changes in
the error terms. The equivalent expression relating changes in
pseudo-range errors to user position is,
.delta.U.sub.e =G.sup.-1 .delta.e. (14)
Equation (6) expresses a relation between the measured errors and the
change in the error required to drive the algorithm to convergence.
Substituting in the value for the measured errors yields,
.delta.U(n)=-G.sup.-1 (n)e(.eta.), (15)
where e is given by [e.sub.1,e.sub.2, e.sub.3 ].sup.T. To improve the
estimated user location, the estimated user location at iteration n is
updated as follows,
U.sub.e (n+1)=U.sub.e (n)+.delta.U(.eta.). (16)
This new estimated user location will have smaller pseudo-range error than
the previous estimated user location. This type of algorithm requires that
four GPS satellites be in view to compute a navigation solution. During
periods of balloon swinging, for example, four satellites may not be
simultaneously in view. A similar situation can occur in the "urban
canyon" of large cities where tall buildings can obstruct four-satellite
GPS signal reception by vehicles on the streets between the buildings. For
this reason, Kalman filter processing is preferred.
The position and velocity of rawinsonde 12 are averaged by an extended
Kalman filter, which permits solutions in spite of the fact the object
being tracked is in motion. The Kalman filter is preferably implemented in
software running on PC 46. A dynamic model of the motion is formed which
includes estimates of the current position and velocity as well as user
clock bias. User clock bias is preferably coherent between updates.
Millisecond counter 37 provides such coherency. As long as a balloon
travels at constant velocity, e.g., both speed and direction remain
constant, a Kalman filter will optimally improve the estimated position
and velocity estimates. Kalman filters were initially developed to solve
just this type of navigation problem. Kalman filters average the
measurements to obtain better measurements. The Kalman filter also allows
navigation updates during severe balloon swinging when a full
constellation may not be visible due to shadowing. The filter will obtain
optimal position estimates from the reduced constellation. Prior to
incorporating a current measurement, a balloon position is estimated,
which is referred to as the "a priori" position estimate. As such, it is
the estimated position prior to GPS data incorporation. A GPS-based
position is then calculated, and an error between the GPS derived position
and the dynamic model position, based on prior velocity and position
estimates, is also estimated. A pair of dynamic model estimates of both
position and velocity are then refined by adding a weighted error term,
the "a posteriori estimate", or a position estimate, post-GPS. The
weighting is optimized to minimize an error covariance, and includes such
effects as geometric dilution of precision (GDOP).
##EQU7##
The equations for a dynamic model of the vehicle motion is constructed. A
dynamic model may be expressed in terms of a state transition matrix,
which states that the position at a time .DELTA.t after the last
observation is equal to the last position plus the velocity times
.DELTA.t. The velocity and user clock bias remain unchanged from update to
update.
The velocity, speed and direction, may change as rawinsonde 12 rises. These
changes are unpredictable and are incorporated into the model via a random
variable, w. The covariance of w is assumed known. The assumed covariance
of w is utilized to control the time constant of the Kalman filter.
A first equation, x(n+1)=.PHI.(n).multidot.x(n)+.omega., is a model of the
linearized error in pseudo range versus a delta in the x vector. The error
in pseudo range is measured by PC 46. However, the final vehicle position
must be expressed as x (x,y,z position and velocity). This linearization
is thus essential to subsequent mathematics.
A second equation,
##EQU8##
allows the Kalman filter to set a new estimated position equal to the old
estimated position plus the estimated velocity times the elapsed time
between the updates, plus a weighted error between the measured
pseudo-ranges and the predicted pseudo-ranges. The Kalman filter then
derives an optimal weighting or blending factor K.
##EQU9##
A pseudo range to a satellite is the actual ranges plus a common offset due
to a user clock bias. The relation between pseudo range and x, y or z
position is non-linear. A derivative of these equations are necessary to
generate a linear model.
The derivatives of the pseudo ranges versus x, y, z position and user clock
bias are then derived (see equations 8-12). These are required by an
extended Kalman filter (EKF). The Kalman filter first projects a state
vector ahead via a state transition matrix, to yield an "a priori"
estimate. The "a priori" estimate is then improved via pseudo-range
measurements. A weighted version of the difference between an expected and
measured pseudo range is added to the "a priori" estimate to improve it.
The challenge is to find the optimal K which minimizes the error covariance
of the estimate. A seven-state vector is used to define the system state
and four pseudo-ranges are utilized by the system.
An extended Kalman filter operates by projecting a current state ahead via
the transition matrix, this involves no measurements. The projection is
the "a priori" estimate. Next the measurement is included in the model,
the weighed error between the measured pseudo ranges and the estimated
pseudo ranges are added to the estimate to reduce the resulting error.
An error covariance is defined as the mean of the square of a difference
between a true "a posteriori" filter state and the estimated "a
posteriori" state. An expression for the "a posteriori" error, expressed
in terms of the "a priori" error, is substituted into an equation for the
error covariance, and then expanded out. The derivative of the trace of
this expression with respect to K are evaluated and set to zero. This will
yield an optimal blending factor.
The derivative of a trace of the covariance matrix is evaluated using a
matrix calculus. This derivative is set to zero and the resulting equation
solved for an optimal Kalman gain, which is also referred to as weight or
blending factor.
A Kalman filter loop or recursion is executed each time a new measurement
arrives, e.g., once a second for rawinsonde 12. The loop is entered with
estimates of the error covariance, e.g., estimated errors in launch
location and launch velocity. The Kalman gain is then computed. The errors
between the estimated satellite pseudo ranges and computed pseudo ranges
are computed and weighed by K to determine a correction to a state model,
e.g., corrections to position, velocity and user clock bias.
The error covariance is then updated. This gives a user direct real-time
feedback on the accuracy of the current velocity and position estimates.
The "a priori" error covariance determined prior to GPS measurement
corrections (using a state transition model only) is updated along with
the state vector for a next iteration of the algorithm. A new estimated
position is generated which is simply the old position plus the velocity
times the time difference between measurements.
In the dynamic model covariance, entries which account for rawinsonde 12
velocity changing may be altered to effectively change the Kalman filter's
time-constant. The measurement covariance, is determined by the
correlation time and the receiver noise figure.
GDOP is automatically incorporated into the model via partial derivatives
of the H matrix. If a satellite constellation changes during operation,
then either the dynamic model or the measurement model are emphasized by
the filter, and such a decision occurs automatically within the filter.
If one or more of the four satellites in a chosen constellation is not
visible, a corresponding entry is set very large and an iteration
performed, which optimally updates rawinsonde 12 position even with
reduced satellite sets. Reduced visibility will almost certainly occur due
to pendulum swinging of rawinsonde 12 on its balloon carrier. The Kalman
filter allows this to occur and still optimally updates vehicle position.
The Kalman update loop is as follows:
##EQU10##
It is often desirable to transform ECEF coordinates into latitude,
longitude and altitude. The GPS-rawinsonde navigation algorithm determines
a user position in ECEF coordinates. Such an algorithm is used to convert
the ECEF navigation solution to WGS-84 Earth ellipsoid latitude, longitude
and altitude and vice-versa. The WGS-84 latitude, longitude and altitude
to ECEF transformation are presented first.
A transformation from WGS-84 Earth ellipsoid latitude-longitude-altitude to
ECEF coordinates is given below:
##EQU11##
where: f=flattening of the WGS-84 ellipsoid,
e=eccentricity of the WGS-84 ellipsoid,
a=semi-major axis of the WGS-84 ellipsoid,
R.sub.N = radius of curvature of the prime vertical,
lt=latitude,
lg=longitude,
h=altitude, and
x, y, z=ECEF coordinates.
Such an algorithm is needed to transform the initial launch point of the
weather balloon (latitude, long and altitude) to ECEF coordinates. This
position will be used to initialize the navigation algorithm iterations.
It is also necessary for satellite visibility calculations.
A simple iterative algorithm is used to transform from ECEF coordinates to
WGS-84 Earth ellipsoid latitude-longitude-altitude. This is necessary for
converting the navigation solution back to latitude-longitude-altitude.
The longitude can be determined in closed form without iteration as,
lg=atan (y/x). (24)
No closed-form solution exists for latitude or altitude, so an iterative
algorithm is included herein. On each iteration, estimated latitude and
altitude are taken (lt.sub.e, h.sub.e) First, an algorithm error metric is
defined as a difference between actual ECEF coordinates and ECEF
coordinates generated by an estimated latitude, calculated longitude and
estimated altitude:
e.sub.x =x-(R.sub.N +h.sub.e)cos(lt.sub.e)cos(lg),
e.sub.y =y-(R.sub.N +h.sub.e)cos(lt.sub.e)sin(lg),
e.sub.z =z-(R.sub.N (1-e.sup.2)+h.sub.e)sin(lt.sub.e), (25)
where
##EQU12##
The error may be expressed as a vector, e=[e.sub.x, e.sub.y, e.sub.z
].sup.T. In a manner similar to the above navigation algorithm, using the
concept of total differential, a matrix is constructed relating changes in
an error metric to changes in latitude and altitude.
.delta.e=J.delta.wgs.sub.e, (27)
where, wgs.sub.e =[lt.sub.e, lg, h.sub.e ].sup.T are an estimated latitude,
calculated longitude and estimated altitude and J is,
##EQU13##
Evaluating the indicated partial derivatives yields:
##EQU14##
Here, J only contains derivatives relative to latitude and altitude, since
longitude is known analytically.
Such an algorithm will adjust an estimated latitude and altitude at each
step so that the sum of the error and the change in the error approach
zero. Therefore, an estimated latitude and longitude are changed so that
the error on the next iteration will be small (near zero). A squared error
term for a next iteration is the sum of the current error plus an
estimated change in the error (equation (27)). The square of this is given
by,
.parallel.E.parallel..sup.2 =(e+.delta.e).sup.T (e+.delta.e). (36)
Substituting in equation (27) and differentiating with respect to
.delta.wgs yields,
##EQU15##
Setting this derivative to zero yields the optimal iteration update
(smallest error)
.delta.wgs=-(J.sup.T J).sup.-1 J.sup.T e. (38)
The change in the wgs vector expressed by equation (38) is the optimal
linear correction to drive the error defined by equation (36) towards
zero. The complete algorithm is to calculate a longitude, using equation
(24). The wgs vector is initialized with an estimate of the latitude and
altitude of the remote sensor. This is either a weather balloon launch
point or its last calculated position. This estimate of the wgs vector is
then repeatedly improved using,
wgs(n+1)=wgs(n)+.delta.wgs(n)wg, (39)
where .delta.wgs is defined by equation (38). Such an algorithm continues
to iterate until .delta.wgs falls below a user defined threshold.
Typically, only two or three iterations are required.
The pseudo-range measurements made by PC 46 contain several error terms.
The major sources of error are SV clock and ephemeris errors, atmospheric
delays, group delay, multipath, receiver noise, resolution and vehicle
dynamics.
Typically, these errors combine to an uncertainty of about six meters for
each pseudo-range measurement if selective availability is off. With
selective availability on, these errors average about one hundred meters.
In a differential mode, all errors cancel except receiver noise,
measurement resolution and some ephemeris errors. Differential
pseudo-range errors average about five meters with selective availability
on. Pseudo-range errors are multiplied by a geometric dilution of
precision (GDOP) to obtain the geo-location accuracy.
GDOP is a multiplication factor by which pseudo-range standard deviations
are multiplied to obtain a navigation solution standard deviation. GDOP
errors are highly dependent on the geometry of a set of four space
vehicles (SVs) selected by a navigation algorithm. GDOP can be used as a
satellite constellation selection criteria. One arrangement selects four
space vehicles which yield either an optimal GDOP or an acceptably low
GDOP. The PC 46 precomputes GDOP and satellite elevation angles prior to
balloon launch. It then selects the highest four satellites which yield an
acceptably low GDOP at the time of a measurement. The highest satellites
are selected to improve the altitude resolution of system 10 and to avoid
losing a satellite signal due to any balloon payload swinging which
affects the hemispherical reception lobe of GPS antenna 16.
GDOP is analytically developed by considering equation (14). This equation
relates the error in user navigation solution ECEF coordinates to errors
in the pseudo-range measurements,
.delta.U=G.sup.-1 .delta.e. (40)
A vertical dilution of precision (VDOP) and a horizontal dilution of
precision (HDOP) are measured as well as GDOP. VDOP indicates the
precision estimate of the altitude measurement. HDOP indicates the
latitude, longitude position accuracy. This requires rotating the ECEF
coordinate system to a local coordinate system defined by local vertical,
north and east vectors (V, N, E). A rotation matrix R is defined as
follows,
##EQU16##
Multiplying any ECEF coordinates, M, by R, will project M onto the local
vertical, north and east basis vectors. R is an orthonormal rotation
matrix which converts from ECEF coordinates to local coordinates. Equation
(40) can be rewritten in terms of the local vertical and horizontal
coordinates as follows,
.delta.L=RG.sup.-1 .delta.e. (42)
The term, .delta.L is the error in a local coordinate system vector caused
by errors in the pseudo-range measurements. The error covariance matrix is
a four-by-four matrix composed of the expected values of the squares and
products of the errors in a user position. The diagonal terms of the
covariance matrix, namely the squares of the expected errors, are the
variances (the squares of the expected 1.sigma. values of the local
coordinates). The off-diagonal terms are the covariances between the local
coordinates and reflect the correlations between these measurements,
cov(.delta.L)=E[(.delta.L)(.delta.L).sup.T ], (43)
where:
E[.cndot.] indicates the expected value.
Substituting equation (42) into (43) yields:
cov(.delta.L)=E[RG.sup.-1 .delta.e.delta.e.sup.T (G.sup.-1)R.sup.T ]. (44)
But the pseudo-range measurements are uncorrelated and have a variance of
.sigma..sup.2,
##EQU17##
Under these conditions, equation (44) may be written as,
cov(.delta.L)=.sigma..sup.2 [RG.sup.-1 (G.sup.-1).sup.T R.sup.T
]=.sigma..sup.2 R[G.sup.T G].sup.-1 R.sup.T. (44)
The diagonal terms of the covariance matrix represent the variances of the
local vertical, north, east and B terms of the navigation solution. Since
only the spatial accuracy of such an algorithm is of concern, only the
first three terms of the trace of the covariance represent the variance of
the spatial measurement. The square root of the sum of the first three
terms of the correlation matrix divided by the pseudo-range standard
deviation is defined as the geometric dilution of precision (GDOP),
##EQU18##
Similarly, VDOP is simply the square root of the vertical component of the
covariance divided by the standard deviation of the pseudo-range
measurement,
##EQU19##
HDOP is the square root of the sum of both horizontal components of the
covariance divided by the standard deviation of the pseudo-range
measurement,
##EQU20##
Equations (47) through (49) indicate that GDOP, HDOP and VDOP are functions
of the satellite locations relative to a user only. GDOP is multiplied by
the standard deviation of the pseudo-range measurement to obtain the
standard deviation in a user location. The standard deviation of the
pseudo-range measurements is about 3.6 to 6.3 meters, total.
A satellite selection algorithm helps determine which satellites to use and
organizes visible satellites according to their respective elevation
angles. It then selects a combination of four visible satellites that have
the greatest elevation angles and acceptably low GDOP. Such a combination
of satellites forms a settled navigation constellation that remains
undisturbed until GDOP levels degrade or the satellites' elevation angles
become too acute. The selection criteria tends to maximize the altitude
resolution of a system, and reduces the possibility of a satellite signal
loss due to adverse motion of the remote sensor. Rawinsondes tend to
pendulum swing, and sonobuoys tend to bob in the water. Both such motions
can be adverse to good GPS satellite visibility.
Signals from satellites low on the horizon may be in a reception lobe of
the GPS antenna due to the swing of the weather balloon | | |