WikiPatents - Community Patent Review
Create Free Account  |  License or Sell Your Patent  |  WikiPatents Marketplace  |  WikiPatents Blog
Username:  Password:  
    
Advanced Search
Separated GPS sensor and processing system for remote GPS sensing and centralized ground station processing for remote mobile position and velocity determinations    
United States Patent5420592   
Link to this pagehttp://www.wikipatents.com/5420592.html
Inventor(s)Johnson; Russell K. (Half Moon Bay, CA)
AbstractA rawinsonde system embodiment of the present invention includes a digital GPS snapshot buffer and 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 radio band to a ground station. Substantially all of the conventional GPS digital signal processing is performed by the ground station, including 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.



 Title Information Submit all comments and votes
 
Patent Text Patent PDF Print Page Summary File History
Plain text PDF images Print Summary File History
Drawing from US Patent 5420592
Separated GPS sensor and processing system for remote GPS sensing and

     centralized ground station processing for remote mobile position and

     velocity determinations - US Patent 5420592 Drawing
Separated GPS sensor and processing system for remote GPS sensing and centralized ground station processing for remote mobile position and velocity determinations
Inventor     Johnson; Russell K. (Half Moon Bay, CA)
Owner/Assignee     Radix Technologies, Inc. (Mountain View, CA)
Patent assignment
All assignments
Publication Date     May 30, 1995
Application Number     08/042,551
PAIR File History     Application Data   Transaction History
Image File Wrapper   Patent Term   Fees
Litigation
Filing Date     April 5, 1993
US Classification     342/357.12 342/357.09
Int'l Classification     H04B 007/185 G01S 005/02
Examiner     Blum; Theodore M.
Assistant Examiner    
Attorney/Law Firm     Schatzel; Thomas E.
Address
Parent Case    
Priority Data    
USPTO Field of Search     342/357
Patent Tags     separated gps sensor processing remote gps sensing and centralized ground station processing remote mobile position and velocity determinations
   
Enter a comma (,) or semicolon (;) between multiple tag words/phrases.
Describe this patent:
 Amusing   
 Clever   
 Complex   
 Efficient   
 Historic   
 Important   
 Innovative   
 Interesting   
 Practical   
 Simple   
[no votes]
Patent WIKI

Share information and news about this patent, including information and news about the technology, inventors, company, ligation and licensing.

 References Submit all comments and votes
 
*references marked with an asterisk below are user-added references
 U.S. References
 
Add a new US reference:  
ReferenceRelevancyCommentsReferenceRelevancyComments
5347285
MacDoran
342/357.12
Sep,1994

[0 after 0 votes]
5323322
Mueller
701/215
Jun,1994

[0 after 0 votes]
5185610
Ward
342/357.11
Feb,1993

[0 after 0 votes]
5119102
Barnard
342/357.09
Jun,1992

[0 after 0 votes]
 Foreign References
 Other References
 Market Review Submit all comments and votes
   
Market Size
Estimate the gross annual revenues of the relevant market sector:
> $10B
$5B - $10B
$2B - $5B
$500M - $2B
$100M - $500M
$10M - $100M
$1M - $10M
$500K - $1M
$100K - $500K
< $100K
[No votes]
$0
 
$0   $2.5B   $5B   $7.5B   $10B
Market Share
Estimate the percentage of the relevant market sector this invention will capture:
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Reasonable Royalty
What percentage of gross sales should the inventor or assignee be paid?
75% - 100%
50% - 74.99%
25% - 49.99%
10 - 24.99%
5 - 9.99%
2 - 4.99%
1 - 1.99%
< 1%
[No votes]
0.0%
 
0%   25%   50%   75%   100%
Public's "Guesstimation" of Royalty Value
Market SizeN/A[No votes]
xMarket ShareN/A[No votes]
xReasonable RoyaltyN/A[No votes]

N/A

License Availablity
If you are NOT the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
License Availablity
If you ARE the owner or assignee, answer here:
Yes, license is available for purchase

No, license is not currently available



[No votes]
Competitive Advantage
Does this invention have a significant competitive advantage over similar technologies?
Yes

No



[No votes]
Most helpful competitive advantage comment
[No comments]

Commercial Alternatives
Are there viable commercial alternatives for this invention?
Yes

No



[No votes]
Most helpful commercial alternative comment
[No comments]

 Technical Review Submit all comments and votes
 Claims Submit all comments and votes
 


What is claimed is:

1. A two-part system for navigation solution determination of tile position of a remote mobile sensor in receipt of transmissions from orbiting navigation satellites and in communication with a main station, comprising:

a microwave signal downconverter disposed in said remote mobile sensor and in a first part of said two-Dart system with means for receiving signals from said orbiting navigation satellites visible to said remote mobile sensor;

timing means connected to the microwave signal downconverter for establishing coherency of a user clock bias associated with said received orbiting navigation satellite signals wherein the starting points of collection and transmission of data from the microwave signal downconverter are synchronized to occur at integer multiples of a code epoch of said orbiting navigation satellite signals with a constant user clock bias;

main station navigation processing means disposed in a second part of said two-part system and independent from said first part and connected to remotely receive down converted signals from the microwave downconverter means and a coherent user clock from the timing means for computing navigation solutions of the position of said first part from data periodically received from said remote mobile sensor; and

a Kalman filter connected to the main station GPS processing means for accurately estimating and removing said user clock bias.

2. The system of claim 1, wherein:

the Kalman filter uses said user clock bias coherency in averaging positional estimates and wherein such coherency allows navigation updates with reduced GPS satellite constellations due to adverse random motion of said remote mobile sensor that affects reception of GPS signals from less than all said GPS satellites visible at any one instant, said updates enabled by setting a corresponding element of an R-matrix of blocked satellites to relatively large values.

3. The system of claim 1, wherein:

the Kalman filter includes outputs for position and velocity estimates derived over several seconds of observation.

4. The system of claim 1, wherein:

the Kalman filter has outputs for instantaneous performance measures including estimated position and velocity variance.

5. An expendable mobile remote sensor for GPS determination of the remote sensor position by a ground station, the sensor comprising:

GPS downconverter means for receiving a plurality of GPS signals from GPS satellites and for outputting an in-phase (I) intermediate frequency (IF) signal;

a ninety-degree phase shifter for generating a quadrature-phase (Q) IF signal from said in-phase intermediate frequency signal;

dual single-bit digitizer means for simultaneously sampling said in-phase intermediate frequency and quadrature-phase intermediate frequency at a first bit rate to produce corresponding in-phase sample and quadrature-phase sample serial signal outputs;

buffering means for organizing said In-phase samples and said quadrature-phase samples serial signals into a serial data stream having a second bit rate; and

radio transmitter means for periodically broadcasting said serial data stream.

6. The sensor of claim 5, wherein:

the GPS downconverter means includes filtering means for producing a receiver bandwidth of approximately 1.3 MHz with a relatively low group delay variation; and

the ninety-degree phase shifter has a substantially constant phase shift over the bandwidth of the GPS downconverter.

7. The sensor of claim 5, wherein:

the dual single-bit digitizer means comprises for each channel of the in-phase and quadrature-phase sampling a comparator which drives a D-type latch clocked at said first rate.

8. The sensor of claim 5, wherein:

the GPS downconverter means includes filtering means for producing a receiver bandwidth of approximately 1.3 MHz with a relatively low group delay variation;

the ninety-degree phase shifter has a substantially constant phase shift over the bandwidth of the GPS downconverter; and

the dual single-bit digitizer means comprises for each channel of the in-phase and quadrature-phase sampling a comparator which drives a D-type latch clocked at said first rate which is approximately four MHz.

9. A mobile remote sensing system with GPS determination of the remote sensor position by a system ground station, the system comprising:

GPS downconverter means for receiving a plurality of GPS signals from GPS satellites and for outputting an in-phase intermediate frequency (IF) signal;

a ninety-degree phase shifter for generating a quadrature-phase IF signal from said in-phase intermediate frequency signal;

dual single-bit digitizer means for simultaneously sampling said in-phase intermediate frequency and quadrature-phase intermediate frequency at a first bit rate to produce corresponding in-phase sample and quadrature-phase sample serial signal outputs;

buffering means for organizing said in-phase samples and said quadrature-phase samples into a serial data stream having a second bit rate; and

radio transmitter means for periodically broadcasting said serial data stream;

meteorological measuring instrument means for periodically testing an ambient atmosphere and for outputting a serial digital signal comprising information related to said tests; and

frame formatting means for combining said meteorological information serial digital signal in meteorological words with said in-phase sample and a quadrature-phase sample pair of serial outputs for periodic transmission to said ground support station by the radio transmitter means.

10. The system of claim 9, further comprising said ground station which includes:

GPS receiver means for obtaining ephemeris, clock and almanac information directly from a constellation of GPS satellites in view for said remote sensor;

radio means for receiving said broadcasts of said serial data stream; and

computer means for determining a position of said remote sensor from information derived from said serial data stream and said ephemeris, clock and almanac information.

11. The system of claim 10, wherein:

the GPS receiver means further includes GPS positioning determination means wherein a differential correction may be applied to a computed position of said remote sensor by comparing a computed position for said ground station to a previously determined actual position for said ground station.

12. A rawinsonde for GPS position determination support by a ground station, comprising:

balloon means for carrying the rawinsonde aloft in the atmosphere in a free-flight;

GPS downconverter means for receiving a plurality of GPS signals from GPS satellites and for outputting an in-phase (I) and a quadrature-phase (Q) intermediate frequency (IF) pair of signals comprising pseudo-random number (PRN) code division multiple access (C/A) information;

single-bit digitizer means for sampling said in-phase intermediate frequency and quadrature-phase intermediate frequency at a first rate to produce an in-phase sample and a quadrature-phase sample pair of serial outputs;

meteorological measuring instrument means for periodically testing said atmosphere and for outputting a signal comprising information related to said tests;

frame formatting means for combining said meteorological information signal with said in-phase sample and a quadrature-phase sample pair of serial outputs; and

radio transmitter means for periodically broadcasting said frame formatted signals including said in-phase sample and a quadrature-phase sample pair of serial outputs and said meteorological information signal.
 Description Submit all comments and votes
 


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