SOLUTION SEPARATION METHOD AND APPARATUS FOR GROUND-AUGMENTED GLOBAL POSITIONING SYSTEM

Abstract: For accuracy and reliability reasons, GPS systems have traditionally not been used for critical phases of aircraft navigation and guidance, such as aircraft landings. Accordingly, the inventor devised a ground-augmented GPS system that incorporates a better method for determining the accuracy of its position solution. One exemplary embodiment determines a main position solution and one or more position subsolutions, with the main solution using all broadcast correction data and each subsolution using a respective subset of the correction data. Differences or separations between the main position solution and the subsolution are then used to determine accuracy, or protection, limits for the main position solution. Another embodiment uses Kalman filters to incorporate vehicle motion data into the calculation of the main solution and the subsolutions, enabling the determination of protection limits during periods lost GPS or correction data.

Description: SOLUTION SEPARATION METHOD AND APPARATUS FOR GROUND-AUGMENTED GLOBAL POSITIONING SYSTEM Technical Field The present invention concerns the problem of improving reliability of radio navigation and guidance systems, particularly ground-augmented or differential global positioning systems. Background of the Invention A global positioning system (GPS) measures the three-dimensional, global position of a radio receiver, using the distances between the radio receiver and a number of earth-orbiting satellite transmitters. The receiver, usually mounted to a vehicle such as a commercial passenger aircraft, receives signals from the satellite transmitters. Each signal indicates both the position of its transmitter and its transmission time, enabling the receiver, equipped with its own clock, to approximate signal transit times and to estimate the distances to the transmitters. A processor coupled to the receiver uses at least four of these distances, known as pseudoranges, to approximate or estimate the position of the receiver and the associated vehicle. The accuracy of these estimates, or position solutions, depends on a number of factors, for example, changing atmospheric conditions and performance of individual satellite transmitters. In commercial aircraft navigation and guidance, global positioning systems (GPSs) have traditionally been used only for determining position of an aircraft during non-critical portions of a flight, that is, between takeoff and landing. However, in recent years, researchers have started extending GPSs for use during landings. These extended systems have taken the form of ground-augmented or differential global positioning systems which typically include two to four ground- based GPS receivers and a ground-based differential correction processor (DCP) and a correction-data transmitter, all located around an aircraft landing area. (These systems are sometimes called GPS-based Local-Area- Augmentation Systems, or GPS-based LAASs.) The ground-based GPS receivers, each with a known position, work as normal GPS receivers in determining respective sets of pseudoranges based on signals from at least four earth-orbiting satellite transmitters. These pseudoranges are fed to the ground-based DCP, which uses them and the known positions of the ground receivers to determine correction data. The correction-data transmitter then transmits to aircraft approaching the landing area. These approaching aircraft use the correction data to correct position estimates of on-board GPS receivers, providing better position solutions than possible using their on-board GPS receivers alone. These corrected position solutions are then compared to a reference landing path to determine course deviations necessary to ensure the aircraft follows the reference landing path. The course deviations are input to an autopilot system which guides the aircraft during automatic landings. For the autopilot system to function within safety limits set by the Federal Aviation Administration, the position estimates are required to stay within minimum accuracy limits known as vertical and horizontal alert limits. Failure to stay within accuracy limits causes issuance of an alert, signaling a pilot to abort the automatic landing and to restart the landing process. Unfortunately, conventional methods of determining the accuracy of the corrected position estimates lack the ability to cope with loss of satellite signal receptions or correction data stemming from ionospheric effects, unintentional jamming, satellite failures, or fading of correction-data transmissions. As a result, systems using these methods are prone to more aborted landing attempts than acceptable. Accordingly, there is a need for better ways of determining accuracy in ground-augmented or differential global positioning systems. Summary of the Invention To address this and other needs, the inventor devised a ground-augmented (or differential) navigation and guidance system that incorporates a unique method for determining the accuracy of its position solution. In a first exemplary embodiment, the system includes a receiver for receiving signals from several satellite transmitters and a processor for determining a main position solution and one or more position subsolutions. The main position solution incorporates a set of pseudoranges corrected using all available correction data from a ground transmitter, and each subsolution based on a subset of the available correction data. Differences or separations between the main position solution and the subsolution are then used to determine accuracy or protection limits for the main position solution. ' In a second exemplary embodiment, the navigation system further includes inertial sensors, for example, accelerometers and gyroscopes, for providing vehicle motion data to the processor. The processor uses Kalman filters to determine the . main position solution, subsolutions, protection limits, and course deviationsifrom the motion data as well as past and present values of the satellite and/or correction- data signals. i.r • Adding motion data further improves reliability, because the processor can compute protection limits during brief periods when there is insufficient data for computing the position solution. In a sense, the Kalman filters and the motion data enable the processor to build up "momentum" for coasting through periods-of lost GPS or differential correction information. ' Brief Description of the Drawings Figure 1 is a block diagram of a first exemplary navigation and guidance system 100 incoφorating the present invention. Figure 2 is a flow chart illustrating a first exemplary method of operating the system of Figure 1 according to the present invention. Figure 3 is a block diagram of a second exemplary navigation and guidance system 300 incorporating the present invention. Figure 4 is a flow chart showing an exemplary method of operating the system of Figure 3 according to the present invention. Detailed Description of the Preferred Embodiments The following detailed description, which references and incorporates Figures 1-4, describes and illustrates specific embodiments of the invention. These embodiments, offered not to limit but only to exemplify and teach the concepts of the invention, are shown and described in sufficient detail to enable those skilled in the art to implement or practice the invention. Thus, where appropriate to avoid obscuring the invention, the description may omit certain information known to those of skill in the art. As used herein, the term Apseudorange≡ includes smoothed pseudoranges and carrier-propagated pseudoranges. Also, the term Apseudorange corrections≤ includes corrections to smoothed pseudoranges and corrections to carrier-propagated pseudoranges. Carrier-propagated pseudoranges are pseudoranges that areupdated using only carrier measurments, not code measurments. The exemplary ' embodiments use smoothed pseudoranges; however, other embodiments substitute carrier propagated pseudoranges using differential carrier corrections. First Exemplary Embodiment Figure 1 shows a differential radio navigation system 100 incorporating teachings of the present invention. The system includes several moving transmitters 1-N, several GPS ground receivers 1-M, a differential-correction processor (DCP) 110, a ground-correction transmitter 120, a GPS vehicle receiver 130, a landing unit 140, and an autopilot system 150. Vehicle receiver 130, landing unit 140, arid autopilot system 150 are mounted to an aircraft or other vehicle (not shown.) Transmitters 1-N, in the exemplary embodiment, are a subset of the NAVSTAR GPS constellation of satellite transmitters, with each transmitter visible from respective antennas of ground receivers 1-M and vehicle receiver 130. Transmitters 1-N broadcast N respective signals indicating respective transmitter positions and signal transmission times to ground (or local-area) receivers 1-M and to vehicle receiver 130, which use the signals to determine respective pseudoranges for the ground receivers and the vehicle receiver. Although the satellites transmit their positions in World Geodetic System of 1984 (WGS-84) coordinates, a Cartesian earth-centered earth-fixed system, the exemplary embodiment determines the position solutions in a local reference frame RLV, which is level with the north-east coordinate plane and tangential to the Earth. This frame choice has a first direction (R) parallel to a given landing runway, a second direction (L) lateral, or cross-track, to the first direction, and a third direction (V) vertical relative to first and second directions. However, frame choice is not critical, since it is well-understood how to transform coordinates from one frame to another. Differential correction processor 110 receives the pseudoranges from the GPS ground receivers and determines correction data, which correction-data transmitter 130 transmits to a correction-data receiver 142, within landing unit 140. Landing unit 140 also includes a processor 144 and a memory 146. Memory 146 stores one or more software modules 146a which govern operation of processor 144 in accord with the present invention. (The invention is not limited to any form, type, or number of receivers, transmitters, processors, or memory.) Processor 144 uses the correction data from transmitter 120 and the pseudoranges from vehicle receiver 130 to determine a main position solution and one or more position subsolutions. The main position solution is differentially corrected using all the correction data, and the position subsolutions are differentially corrected based on subsets of the correction data. Processor 144 uses the main solution and the subsolutions to compute vertical and lateral (or horizontal) protection limits, which it compares to vertical and lateral alert limits. The exemplary embodiment uses alert limits for a particular weather minimum, such as Category I, II, or III as defined by the Federal Aviation Administration. (For more details on these limits, see RTCA publication DO-245, which is incorporated herein by reference.) If either protection limit falls outside its respective alert limit, the processor signals an integrity failure to the cockpit of the aircraft. Additionally, the processor uses the main position solution to calculate and output angular and/or linear course deviations or corrections relative a reference path to autopilot system 150. System 150 in turn generates signals for actuators (not shown), to correct the flight path of the aircraft. More particularly, Figure 2 shows an exemplary flow chart 200, illustrating operation of system 100 and especially processor 144 in accord with software modules or computer programs 146a. Flow chart 200 includes blocks 202-222, which are executed serially or in parallel in the exemplary embodiment. Some embodiments organize the exemplary process using a greater or lesser number of blocks. Other embodiments implement the blocks as two or more specific interconnected hardware modules with related control and data signals communicated between and through the modules. Thus, the exemplary process flow is applicable to software, firmware, and hardware implementations. In most, if not all instances, the process sequence can be varied from the order shown and described. At block 202, exemplary operation begins with processor 144 obtaining a set of N pseudoranges from GPS vehicle receiver 130 and correction data from correction-data receiver 142. The correction data can take any form that facilitates or enables the processor to correct or adjust one or more of the N pseudoranges. For example, in one embodiment, this data includes (NxM) pseudoranges and the known positions of the M ground receivers, allowing processor 144 to compute its own differential corrections for the N pseudoranges of the vehicle receiver. In the exemplary embodiment, correction-data transmitter 120 transmits correction data, twice per second, for each of the N satellite transmitters, with each set of correction data taking the form shown in the following table: Of specific interest to the exemplary embodiment are the psuedorange correction, the B values (Bι-B M ), and σ pr _ gtld . The psuedorange correction of the n-th satellite transmitter is defined as the average of the differential psuedorange corrections for ι M M , the M ground receivers, or mathematically as where δp n denotes the differential correction for the n-th satellite transmitter, M denotes the number of ground receivers, and δp n , m denotes the differential pseudorange correction for the n-th satellite transmitter at the m-th ground receiver. The B values for the n-th satellite transmitter are defined as where B n? k denotes the k-th B value for the n-satellite; the summation is over all M except for m=k; and k ranges from 1 to M . σ pr _ gnd denotes the Gaussian distribution that overbounds the error in the broadcast correction and depends on the elevation of the satellite, observed signal-to-noise ratio (S/N 0 ), and convergence status. In block 204, the processor defines M+l different N-element correction vectors δp -δp , based on the full set of N differential corrections for each ground receiver M. The full set of N differential corrections are derived from the M different B values for each of the N satellites, δp , the main correction vector, is δ p° = [δ p t , δ p 2 , ...., δ p N f defined as where each element δp n denotes a uniform or nonuniform weighted average of the differential corrections from all the ground receivers 1 to M for the n-th satellite δ p m = [δ p l m , δ p 2 m , ...., δ p m f transmitter. δp m (for m= 1 to M) is defined as where element δp n , m is defined as a uniform or non-uniform weighted average of all but the m-th differential correction for the n-th satellite. Thus, each element δp n , m excludes correction information from the m-th ground receiver. Mathematically, this is expressed as where n denotes the n-th satellite and ranges from 1 to N; k ranges from 1 to M; and C denotes a respective weight, which in the exemplary embodiment is unity. Block 206 entails forming an N-element measurement vector p meas of pseudoranges from vehicle receiver 130 and Alinearizes≡ it around an initial estimate of the position solution and an initial receiver clock offset estimate. The linearized measurement vector, denoted Δp mea s, is defined according to ^meas A' nieas " est where p est is an N-element vector of the estimated pseudoranges derived from the initial position estimate and the initial clock offset estimate. After linearizing the vehicle pseudoranges around the initial estimate to determine Δp meas , the processor applies the correction vectors δp°-δp M to determine a set of M+l N-element corrected measurement (or pseudorange) vectors Δp° m ea s -Δp M meas - More precisely, Δp° meas , the main corrected measurement vector including correction information Δ r/9 meas = Δ r p meas + δ r p from all M ground receivers, is defined as Δ m A . m r p meas = Δ r p meas + δ r p and Δp m meas is defined as where N-element correction vectors δp and δp m follow the definitions of Eqns 3, 4, and 5. In block 208, the processor determines a main position solution Δr 0 , using the main corrected measurement vector Δp° meas . The processor may use any technique for solving a system of overdetermined algebraic equations, for example, weighted or non-weighted least-squares estimation. "Overdetermined" refers to the presence of redundant pseudoranges. The solution Δr 0 , defined as the main position solution because it incorporates the correction information from all M ground receivers, is defined as where So is a 4HN weighted or non-weighted least-squares solution matrix. Block 210 entails calculating several corrected subsolutions Δ , Δr 2 , ... ΔT M , each based on a respective subset of the M differential corrections. In the exemplary embodiment, each subset includes only M-l differential corrections, with the m-th subset excluding the correction data based on the m-th ground receiver. Thus, the m-th subsolution includes an average correction based on all but the m-th differential correction. The preference for excluding one ground reference receiver stems from the low likelihood that more than one of these receivers will ever fail or otherwise present an abnormal correction circumstance to the landing unit. However, if desirable, other embodiments can exclude corrections from more than one ground receiver. Similar to the main solution Δr 0 , the m-th subsolution Δr m is defined as where S m is a weighted or non-weighted 4HN least-square subsolution matrix. In the exemplary embodiment, the main solution Δr 0 and the subsolutions ΔΓ I -ΔΓ M are four-element vector quantities with three elements representing respective runway, lateral, and vertical coordinates and a fourth element cΔt representing the distance related to the receiver clock offset, where c is the speed of light, and Δt is the receiver clock offset. The center of the runway-lateral-vertical (RLV) frame is the initial position estimate. (However, other initial position estimates can also be chosen.) Thus, the three RLV coordinates actually represent a position relative the initial position estimate because of the linearization of the governing equations around the initial estimate. Hence, to obtain an absolute position solution, the RLV coordinates must be added to the corresponding coordinates of the initial position estimate. However, as used herein, position solution broadly connotes any relative position or absolute position solution. In block 212, the processor computes lateral separations b i-b M and vertical separations b ι-bv M based on respective mathematical distances between the main position solution Δr 0 and the respective subsolutions Δrι-Δr M . The exemplary embodiment defines separations b L i-b LM as the respective lateral distance between the main solution Δro and respective subsolutions ΔΓ I -ΔΓ M . In the lateral direction relative the aircraft glide path, the distance b n between subsolution Δr m and main b Lm = ( Δ ro(L) - Arm( )) 2 solution Δr 0 is where (L) denotes lateral components of the position solutions. Similarly, the exemplary embodiment defines the vertical separations bvi-bvM as the actual vertical distances between the main solution Δr 0 and respective subsolutions ΔΓ I -ΔΓ M . In the vertical plane relative the aircraft glide path, the distance b m between subsolution Δr m and main solution Δr 0 is where the V denotes the vertical component of the main solution and the m-th subsolution. Operation then proceeds to block 214. Block 214 entails determining lateral and vertical error parameters, A LI - A LM AVI-AV , based on the noise-induced errors in respective subsolutions ΔΓI-ΔΓ M . The noise-induced errors force each subsolution away from the actual position of vehicle receiver 130. In determining the error parameters, the processor first calculates error covariance matrices P I -P M describing the statistics of the noise-induced errors for corresponding subsolutions Δr t - Δr M . The m-th error covariance matrix P m is defined as δτ m = S m , where δr m represents the effect of noise on the m-th subsolution and is defined as E[wW ] - σ P r-a,r + — j " r σ P r-gnd where w is the M-dimensional measurement noise vector. E[ww τ ] is defined as where σ pr a , r depends on the aircraft and σ pr gnd is defined in the correction data from correction-data transmitter 120. In the exemplary embodiment, processor 144 calculates matrices P I -P M from The exemplary implementation assumes the errors are zero-mean with Gaussian distribution. Thus, the subsolution errors are confined to corresponding ellipsoidal volumes in the RLV coordinate system. Each point within the region corresponds to a different possible error, with the center corresponding to zero error and the maximum error at either end. After determining the covariance matrices, the processor determines the variances of the lateral and vertical errors. These variances are available from the diagonals of the covariance matrices P I -P M - The variances define the spreads of the errors around the average errors, and thus control the magnitudes of the maximum lateral and vertical errors between the m-th subsolution Δr m and the actual position. With the variances, the processor computes the lateral and vertical error parameters A L I-A L M and A I-A V M using Avm = VARvm Q " ' (PMD) ALm = VVARLm Q ' ' (PMD) where VAR Lm and VARv m denote the lateral and vertical variances from the m-th covariance matrix ; P MD is a given probability of missed detection; and Q "1 denotes Q(x) = - e 2 dt !2π the inverse of the well-known normalized cumulative distribution function. Some embodiments use missed-detection probabilites promulgated by the Federal Aviation Adminstration in RTCA publication DO-245. In block 216, the processor determines a lateral and a vertical protection limit, using one or more of the lateral and vertical solution separations bu-b LM and bvi-bv M and one or more of the lateral and vertical subsolution error parameters A LI -A LM and Ay ι -AV M - h the exemplary embodiment, the process determines the lateral protection limit (LPL) according to LPL = max {LPL H 0 , LPL H 1 } where max denotes the maximum of the quantities in the brackets; LPL HO is AMD LPLH O = VARLO Q ' 2 j defined as LPL H I = max {b Lm + A Lm } over m = 1 , M and LPLH I is defined as VAR LO , the lateral variance of the error in the main position solution, is determined from the error covariance matrix for the main position solution. P f MD is a probability of fault-free missed detection, such as that defined in RTCA publication DO-245. Similarly, the exemplary embodiment determines the vertical protection VPL = max {VPL H 0 , VPL H 1} limit (VPL) according to 15 AMD VPLH O = VvARvo Q V * J where VPL H o is given by VPLH 1 = max {b Vm + Av m } over m = 1 , M and VPL H I is given by VARvo, the vertical variance of the error in the main position solution, is determined from the error covariance matrix for the main position solution. Having determined the lateral and vertical protection limits, processor 144 executes block 218 which entails comparing them to respective predetermined lateral and vertical alarm limits LAL and VAL. If either the lateral protection limit or the vertical protection limits exceeds its alarm limit, the processor signals the aircraft cockpit, alerting the pilot or other predetermined system that the lateral or vertical protection limits is out of bounds. Optionally, if the actual lateral or vertical separations between the m-th solution Δr m and the main position solution Δr 0 exceeds a threshold based on a selected probability of false detection, the processor sets a failure flag indicating a ground-receiver fault. However, in conventional LAAS, this failure detection is handled by the differential correction processor. At block 220, after calculating the protection limits, the processor computes angular and/or linear course deviations based on the main position solution and the reference path to autopilot system 150. And, at block 222, the autopilot system automatically corrects or adjusts the glide path of the aircraft. After executing block 220, the processor returns to block 202 to get new data from the vehicle receiver and new correction data to generate a new position solution, protection limits, and course deviations. In sum, the first embodiment applies a unique solution-separation technique for determining protection limits of a differentially corrected position solution. Although the first embodiment explicitly operates only on present GPS measurement and correction data, in so-called "snapshot" fashion, its chief advantage is its unique suitability for Kalman filter implementations. Through the use of Kalman filters, the processor incorporates not only present measurement and correction data, but also past measurement and correction data into the integrity monitoring process. Moreover, Kalman filters enable the processor to incorporate inertial sensor data into the calculation of the position solutions and protection limits, as evidenced in the second embodiment. Second Exemplary Embodiment Figure 3 shows a radio navigation system 300 which extends radio navigation system 100 of Figure 1 with the addition of inertial reference unit 160 for providing inertial data to processor 144. The resulting combination constitutes a hybrid navigation system. In the exemplary embodiment, inertial reference unit 160, mounted to the aircraft (not shown), includes three accelerometers 162a-162c for measuring acceleration in three dimensions and three gyroscopes 164a- 164c for measuring angular orientation, or attitude, relative a reference plane. Inertial reference unit 160 also includes inertial processor 166 which determines an inertial position solution r„ as for example a three-element vector in an earth-fixed reference frame. Inertial processor 166, in the exemplary embodiment, also converts the acceleration data into raw acceleration vector a raw and attitude data into raw angular velocity vector ω raw . The exemplary angular velocity vector defines the rotation of the body frame (fixed to the aircraft) in three dimensions, and the exemplary inertial acceleration defines the three components of acceleration in body frame coordinates. Inertial processor 166 also determines a transformation matrix C for transforming body frame coordinates to local vertical frame L, a three-element rotation vector CD IE which describes rotation of the earth-based inertial frame I transformed to L frame, and rotation vector O> EL which describes rotation of the earth-fixed frame E versus inertial frame I transformed to L frame. The details of this inertial processing are well known in the art. At the heart of the exemplary Kalman filter implementation are the hybrid state vectors ΔX 0 - ΔX M , each of which has (20+N) error states. ΔXo incorporates all of the differential corrections from the M ground receivers and ΔX m excludes the m-th differential correction from the m-th ground receiver. More specifically, the Δχ m T = > l , Δv, Δr m , Δrtc, Δvfc, A ωo , Δ ao , v x , v y , g z , Δ eN ] m-th state vector ΔX m is defined as where Ψ • Three-element attitude error vector; Δv ■ Three-element velocity error vector; Δr • Three-element hybrid position solution excluding m-th differential correction; Δrtc ■ One-element receiver clock phase error expressed as a distance (analogous to cΔt in first embodiment); Δvfc • One-element receiver clock frequency error expressed as a velocity; Δoo ■ Three-element vector of gyro biases modeled as first-order Markov processes with 100 hour-time constant; Δao • Three-element vector of accelerometer biases modeled as first-order Markov processes with 100-hour time constant; and v x • gravity deflection in east direction of north-east coordinate plane; v y • gravity deflection in north direction of north-east coordinate plane; g z • gravity anomaly in z direction relative the north-east coordinate plane; Δe N • N-element smoothing-error state vector which compensates for correlation of the correction data that results from carrier smoothing. (For clarity, the "m" subscripts are not shown on each state variable in ΔX m .) Thus, hybrid state vector ΔX o -ΔX M include respective position solutions Δr 0 -Δr M , where the subscript again defines the excluded differential correction data. Note that Δr in the this embodiment includes only three spatial components, whereas in the first embodiment, it included three spatial components and cΔt, the distance associated with the receiver clock offset. The state vector ΔX identifies this variable as Δrtc. The exemplary embodiment orders the (20+N) state variables as shown; however, other greater or lesser numbers of state variables and other variable sequences are equally feasible. Figure 4 shows a flow chart 400 which illustrates the important operative aspects of the exemplary hybrid navigation system. The flow chart, similar to that in Figure 2, includes process blocks 402-424. These blocks can not only be ordered, but are equally applicable to hardware, firmware, and software implementation. In some embodiments, the processor cycles through this process loop every 1-10 seconds. In particular, the operation begins at block 402 when the processor retrieves inertial, vehicle receiver, and correction data. The exemplary embodiment retrieves the following inertial data from inertial reference unit 160: inertial position solution r„ raw acceleration vector a raw , raw angular velocity vector ω raw , transformation matrix C, rotation vector CO IE , and rotation vector DEL- Other embodiments use other forms of equivalent raw or processed inertial data, such as estimated or predicted inertial data. After retrieving this inertial data, the processor models the inertial error dynamics based on motion of the aircraft. This occurs within the context of a linearized inertial error model, which is referenced to local vertical coordinate frame L. This inertial error model defines an attitude error vector ψ, a velocity error vector Δv, and a hybrid position solution Δr, each stemming from the solution of the following three differential equations: ψ x Ca raw + CΔaiB + ( fl)ι E + α> EL ) x Δv Δv + GΔr + Δg Δr = Δ v + &>EL x Δr where Δω 0 Gyro biases modeled as first order Markov processes with a 100 hour time constant; ΔCOIB Δcoo + scale factor and misalignment errors; Δao Accelerometer biases modeled as first order Markov processes with a 100 hour time constant; ΔaiB Δao + scale factor and misalignment errors; Δg Gravity deflections and anomaly (v x g, v y g, Δg z ) G is a 3x3 matrix defined as where R denotes the radius of the earth, and g(0) denotes gravity at zero height. The superscripts [1] and [2] identify the specific terms affecting accuracy. In particular, [1] identifies the two gravity terms responsible for Schuler feedback, and [2] identifies the gravity term responsible for the vertical feedback. In block 402, the processor also retrieves psuedoranges from vehicle receiver 130 and correction data from receiver 144. After retrieving the psuedoranges and correction data, the processor determines the number of pseudoranges N and the number of differential corrections M, before proceeding to block 404. In block 404, the processor defines M+l different N-element correction vectors δp°-δp M , based on the full set of N differential corrections for each ground receiver M. The full set of N differential corrections are derived from the M different B values and the average differential correction (from the correction-data tranmitter ) for each of the N satellites. δp°, the main correction vector, is defined as δ p° = [δ p x , δ p 2 , ...., δ p N f where each element δp n denotes a uniform or nonuniform weighted average of the differential conections from all the ground receivers 1-M for the n-th satellite δ p m = [δ p λ m , δ p 2 m , ...., δ p N m f transmitter. δp m (for m= 1 to M) is defined as where element δp n, is defined as a uniform or non-uniform weighted average of all but the m-th differential correction for the n-th satellite. Thus, as in the first embodiment, each element δp n, m excludes correction information from the m-th ground receiver. At block 406, the processor applies the correction vectors δp°-δp M to determine a set of (M+l) N-element corrected measurement (or pseudorange) vectors Δp° meas (k)-Δp M meas (k) linearized around the initial or previous position estimate. This first entails determining (M+l) N-element pseudorange residual Δ s( k ) = m eas( k ) - e m s.( k ) vectors Δp°(k) - Δp M (k), with the m-th pseudorange residual Δp m (k) defined as In this equation, p meas are the actual pseudorange measurements and p m est (k) are the estimated pseudoranges based on the previous m-th absolute hybrid subsolution r m (k) and the receiver clock offset Δrtc m , with the subscript m denoting exclusion of the m-th pseudorange corrections from the vector. r m (k), the m-th absolute hybrid r m (k) = ri ( ) + Δ rm (k) subsolution, is defined as where the supercript E denotes that the relative hybrid position solution Δr m has been transformed from the L frame to the earth-fixed frame for addition to the inertial position solution . In short, p m est (k) means an N-vector of pseudoranges which would yield r m (k) as a position solution. Moreover, since p m est (k) depends on the inertial position solution r, and the measured pseudoranges p m meas , Δp m meas (k) includes both inertial and pseudorange information. Defining the pseudorange residual relative the previous solution establishes a dynamic reference trajectory for the solutions. Kalman filters that rely on this kind of iteratively updated residual are known as extended Kalman filters. After linearizing the vectors around the p m est (k), the processor applies the correction vectors to each of the pseudorange residuals. Δp m ea s , the main corrected measurement vector including correction information from all M ground receivers, is defined as and Δp m me as is defined as where N-element correction vectors δp and δp m follow the definitions of equations 3, 4, and 5. Blocks 408 and 410 respectively entail computing the main solution Δr 0 (k) and subsolution Δrι(k) - Δr M (k). In the Kalman implementation, these solutions depend on the Kalman gain vectors. Thus, as part of the computations for these solutions, the processor first determines Kalman gain vectors g° n (k) - g M n (k) (one for each of the N satellites) for updating all the states of corresponding hybrid state vectors ΔX 0 - ΔX M - Updating these state vectors also updates corresponding solution Δro(k) and subsolutions Δrι(k) - Δr M (k). The m-th Kalman gain vector g m n (k) is defined as In this relation, P m (k) is the error covariance matrix for the m-th receiver, and h n is a 1H(20+N) measurement matrix, which selects the combinations of enor states hl = [( 0 3 - Uπ 1 0 0 3 0 3 0 he] inco orated in the m-th measurement. h n is defined as where 0 is a three-element zero vector, and U n is a 3-element line-of-sight, or unit direction, vector pointing from the m-th ground receiver to the n-th satellite. (The components of the line-of-sight vector are called direction cosines, in classical navigation geometry.) h e is an N-element vector, such as (0, 0, ..., 1, ..., 0), which selects the associated smoothing error states that are involved in the GPS measurement, with all elements except the n-th one set to zero. The dimensions of h depend on the number of states in the Kalman filter, r is the carrier measurement r + , M noise variance and is defined as <Tcr-rec , 2 A » , CTcr-air M-l for the main filter and for the subfilters. In the Kalman gain equation, n ranges from 1 to N for each m = 1 to M. This "n-loop" portion for determining the Kalman gain shows that this Kalman filter implementation follows a measurement-by-measurement approach, rather than a batch-processing approach. Although the two approaches are mathematically equivalent, the measure-by-measurement approach reduces the number of processor operations required for the Kalman filter calculations. With the Kalman gain vectors, the processor can now update hybrid state vectors ΔX 0 - ΔX M and thereby determine the position solutions Δro(k) - Δr M (k), as Δ X o (k) = Δ Xo (k) + g° (k) [Δ p° π (k) - h^ Δ χ 0 (k)] Δ χ m (k) = Δ Xm (k) + § (k) [Δ P (k) - hi Δ X m (k)] blocks blocks 408 and 410 indicate. The recursive updates follow: where Δp n m (k) are sequentially updated measurement vectors, with Δpι m (k) = Δp m meas (k). The update stems from the change in r m (k) in each iteration, for n=l to N. After updating the hybrid state vectors ΔX 0 - ΔX M , which include corresponding solutions Δro(k) - Δr (k), the processor determines the lateral and vertical separations, error parameters, and protection limits. As Figure 4 shows this entails executing blocks 412, 414, and 416. More particularly, in block 412, the processor computes lateral separations b L ι(k)-bLM(k) and vertical separations bvι(k)-bvM(k). The exemplary embodiment b Lm (k) = V(Δro( ) - Δr m ( )) 2 defines separations bLi(k)-b L M(k) as where (L) denotes lateral components of the position solutions and for convenience the temporal notation for the solution components has been omitted. Similarly, the bv m (k) = V(Δro(V) - Δr m (V)) 2 exemplary embodiment defines the vertical separations bvι(k)-bv M (k) as where the (V) denotes the vertical component of the main solution and the m-th subsolution and again the temporal notation has been omitted for convenience. Operation then proceeds to block 414. In block 414, the processor determines the lateral and vertical error parameters Aι_ι(k)-Aι_ M (k) and Avι(k)-AγM(k) from error covariance matrices Pι(k)- A Lm (k) = vAR L m(k) Q " ' (PMD) Avm(k) = vARv m (k) Q " ' (PMD) P M (k). The lateral and vertical parameters are defined as where VAR ΠI and VAR Vm denote the lateral and vertical variances from the m-th covariance matrix ; P MD is a given probability of missed detection; and Q "1 denotes the inverse of the well-known normalized cumulative distribution function Q(x). The error covariance matrices Pι(k)-P M (k), which define the statistics, including the lateral and vertical variances, of the corresponding subsolution errors, follow the P m (k) = Pm (k) - g (k)h^P m (k) recursive relation where m ranges from 1 to M. Then, in block 416, the processor uses the separation and the error parameters to compute the lateral and vertical protection limits LPL(k) and VPL(k) LPL(k) = max {LPL H 0(k) , LPL H l(k)} VPL(k) = max {VPL H 0(k) , VPL H l(k)} according to which, except for the iterative notation, follow the same form and definitions as used in the first embodiment at Eqns. 20-25. However, because of the recursive derivation of the solutions Δr 0 - Δr M , and more particularly, the error covariance matrices Pι(k)-P M (k), the protection limits incorporate not only inertial data but also present and past GPS measurement and correction data. Having determined the lateral and vertical protection limits, processor 144 executes block 418 which entails comparing them to respective predetermined lateral and vertical alarm limits LAL and VAL. If either the lateral protection limit or the vertical protection limits exceeds its alarm limit, the processor signals the aircraft cockpit, alerting the pilot of the integrity failure. Optionally, if the actual lateral or vertical separations between the m-th solution Δr m and the main position solution Δro exceeds a threshold based on a selected probability of false detection, the processor sets a failure flag indicating a ground-receiver fault. At block 420, the processor computes angular and/or linear course deviations based on the main position solution and the reference path to autopilot system 140. In response, the autopilot system automatically corrects or adjust the glide path of the aircraft as indicated in block 422. To complete the k-th iteration, the processor projects, or propagates, forward one iteration as indicated in step 424. This entails determining the next, or k+l th , ΔX m (k+l) = Φ(k)ΔX m (k) hybrid state vectors ΔXo(k+l) through ΔX M (k+l) using P m (k+ 1 ) = Φ(k) P m (k)Φ(k ) τ + Q ^ (k) and estimating the k+l th error covariance matrices P 0 (k+1) through P M (k+l) using In these relations, Φ(k) is the state transition matrix relating the k-th hybrid state vector to the next (k+l)-th estimate, according to the inertial dynamics defined by the linearized inertial error model of equations 27-29. And, Q mm (k) is the noise Q mm (k) = E[v(k)v(k) T ] covariance matrix given by where v(k) is the process noise vector which defines the noise in the inertial measurements. In implementations which use carrier smoothing, the differential corrections will be strongly conelated and thus contradict a conventional Kalman filtering assumption that the observations, that is, measurement data such as the differential corrections, be uncorrelated. Thus, to compensate for the correlation that exists in these implementations, the exemplary embodiment extends the 20-state enor vector with N additional enor states Δe n which estimate the smoothing error, that is, the enor resulting from use of carrier smoothing. The smoothing filter is equivalent to a signal block that provides the correct pseudorange with carrier noise only summed with the smoothing enor Δe n obtained by filtering white noise through a first order linear filter with a 100 second time constant. One complication is that there are M+l independent noise contributions, one from each of the M ground receivers and one from the correction-data receiver in the landing unit. Under normal conditions all M noise contributions have been filtered long enough (about 200 seconds) to assure convergence before they are used in the Kalman filters. The process noise q e added to the smoothing error states should conespond to the received σ pr _ grd . Δe(k+l) = e " 7Δe(k) + w The exemplary embodiment derives the process noise q e as follows: Pe (k+l) = e - 2 7 Pe (k) + q e The variance update is (q e = E[w 2 ]) In stationary (or slowly changing) conditions p e (k+l). p e (k), so that the process noise q e is given by n _ M 2 2 Pe ^ » , CTpr-gnd τ CJ " pr-aιr For the main filter, the noise variance is And, for the subfilters, the noise variance is When satellites are temporarily lost by the landing unit because of masking during maneuvers or interference, the exemplary embodiment restarts the smoothing filters. Generally, it will take up to 200 seconds before the satellite has converged in a standard LAAS. The filters of the exemplary embodiment will use the inertially propagated information and the other satellite measurements to restore the original accuracy. This mechanism will work regardless of how many satellites are lost. If all satellites are temporarily lost, the restoration is based entirely on inertially propagated information. Moreover, the integrity of guidance signal remains valid throughout this period. After completing the update indicated at block 424 , the process returns to block 402 to repeat the entire process loop shown in Figure 4. In sum, the second embodiment provides a simple Kalman-filter extension of the first embodiment, which incorporates not only inertial data but also present and past GPS measurement and correction data into the position solution and protection limit calculations. The past data effectively substitutes for any unavailable pseudorange measurement data that would otherwise prevent calculation of the protection limit, enabling the processor to compute the protection limit without interruption. Moreover, the conection-data exclusion mechanism in the subfilters ensures that at least one subfilter, that is, subsolution, remains immune to failures or outages of ground receivers. Even if the failure occurs over a long time, the subfilter still provides a true reference for integrity monitoring. And, the incorporation of inertial data into the Kalman filters allows the landing unit to operate or coast through most, if not all, stemming from insufficient satellite or correction data. Conclusion In furtherance of the art, the inventor has presented unique ground- augmented radio navigation systems and methods which address reliability and continuity shortcomings of conventional ground-augmented GPS navigation and guidance systems. In particular, one embodiment computes a position solution based on GPS satellites and uses correction data from ground receivers to develop one or more position subsolutions. Separations or differences between the position solution and subsolutions and subsolution enor variances are used to determine accuracy or protection limits. Another embodiment follows a similar methodology using Kalman filtering techniques to incorporate past and present inertial data and conection date into the solution and subsolution computations, thereby facilitating continued reliance on the system during loss of satellite or conection data. Although the present invention has been described with reference to preferred embodiments, workers skilled in the art will recognize that changes may be made in form and detail without departing from the spirit and scope of the invention. In particular, those in the art will recognize that a single processor could perform all the operations for implementing the invention or that multiple processors could share these operations. Moreover, the method itself could be divided over distinct functional unit other than those used for illustration here. Of course, other changes in form and detail are also within the spirit and scope of the invention as defined in the following claims.

Claims: CLAIMS 1. A navigation system for a vehicle, comprising: first receiving means for mounting to the vehicle and for receiving a plurality of signals from a plurality of satellite transmitters; ground means for determining differential conections based on signals from the plurality of satellite transmitters; transmission means for transmitting conection data based on the differential conections; second receiving means for mounting to the vehicle and for receiving the conection data; solution means for determining a position solution for the vehicle, based on the plurality of signals and the received conection data; subsolution means for determining a plurality of position subsolutions for the vehicle, with each position subsolution based on the plurality of signals and a portion of the received conection data; solution separation means for determining a plurality of separations, with each separation based on a difference between the position solution and a respective position subsolution; means for determining a protection limit based on at least one of the separations; and means for detecting a failure of the ground means based on at least one of the separations. 2. A navigation system for a vehicle, comprising: first receiving means for mounting to the vehicle and for receiving a plurality of signals from a plurality of satellite transmitters; second receiving means for mounting to the vehicle and for receiving correction data; and solution means for determining a position solution for the vehicle, based on the plurality of signals and at least a first portion of the received conection data; subsolution means for determining a plurality of position subsolutions for the vehicle, with each position subsolution based on the plurality of signals and another portion of the conection data different from the first portion. 3. A navigation system for a vehicle, comprising: receiving means for mounting to the vehicle and for receiving correction data; solution means for mounting to the vehicle and for determining a position solution for the vehicle, based on a plurality of pseudoranges and received conection data; and subsolution means for determining a one or more position subsolutions for the vehicle, with each position subsolution based on the plurality of pseudoranges and a respective portion of the received correction data. 4. A system for a vehicle, comprising: solution means for determining a position solution for the vehicle, based on the plurality of pseudoranges and a plurality of differential pseudorange conections; subsolution means for determining one or more position subsolutions for the vehicle, with each position subsolution based on the plurality of pseudoranges and a subset of the differential pseudorange conections; solution separation means for determining one or more separations, with each separation based on a difference between the position solution and at least one of the position subsolutions; and means for determining a protection limit based on at least one of the separations. 5. The system of claim 4: wherein the solution means determines the position solution using a least- squares estimation; and wherein the subsolution means determines each position subsolution using a least-squares estimation. 6. The system of claim 4: wherein the solution means determines the position solution from past and present values of the pseudoranges and the differential pseudorange corrections; and wherein the subsolution means determines each position subsolution from past and present values of the pseudoranges and its respective subset of the pseudorange corrections. 7. The system of claim 4: wherein the solution means includes Kalman filtering means for determining the position solution from past and present values of the pseudoranges and the pseudorange conections; and wherein the subsolution means includes Kalman filtering means for determining each position subsolution from past and present values of the pseudoranges and the subset of pseudorange conections. 8. The system of claim 4 further comprising: sensing means for sensing motion of the vehicle and providing motion data to the solution means and the subsolution means; wherein the solution means determines the position solution from the motion data and past and present values of the pseudoranges and pseudorange conections; and wherein the subsolution means determines each position subsolution from the motion data and past and present values of its respective subset of the pseudorange conections. 9. The system of claim 8 wherein the sensing means includes: one or more accelerometers for providing acceleration data to the solution means and the subsolution means; and one or more gyroscopes for providing attitude data to the solution means and the subsolution means. 10. A navigation system for a vehicle, comprising: a GPS receiver for determining a plurality of pseudoranges; a receiver for receiving a plurality of pseudorange conections; a processor and software means operative on the processor for: determining a position solution based on the plurality of pseudoranges and the plurality of pseudorange conections; determining one or more position subsolutions, with each position subsolution based on the plurality of pseudoranges and a portion of the differential pseudorange corrections; determining one or more separations, with each separation based on a difference between the position solution and at least one of the position subsolutions; and determining a protection limit based on at least one of the separations. 11. The system of claim 10, further including one or more inertial sensors for sensing motion of the vehicle and providing motion data to the processor, wherein the software means is further operative on the processor for determining the position solution and the position subsolutions based also on the motion data. 12. A machine-readable medium comprising: means for determining a position solution for the vehicle, based on the plurality of pseudoranges and a plurality of differential pseudorange conections; means for determining one or more position subsolutions for the vehicle, with each position subsolution based on the plurality of pseudoranges and a subset of the differential pseudorange conections; means for determining one or more separations, with each separation based on a difference between the position solution and at least one of the position subsolutions; and means for determining a protection limit based on at least one of the separations. 13. A machine-readable medium, comprising: means for determining a position solution for a vehicle, based on a plurality of pseudoranges and a plurality of pseudorange conections; and means for determining a plurality of position subsolutions for the vehicle, with each position subsolution based on the plurality of pseudoranges and a subset of the plurality of pseudorange conections. 14. A method of determining a protection limit for a navigation or guidance system, comprising: determining a position solution based on the plurality of pseudoranges and a plurality of differential pseudorange conections; determining one or more position subsolutions, with each position subsolution based on the plurality of pseudoranges and a portion of the differential pseudorange corrections; determining one or more separations, with each separation based on a difference between the position solution and at least one of the position subsolutions; and determining a protection limit based on at least one of the separations. 15. A method of determining a protection limit for a navigation or guidance system, comprising: a step for determining a position solution based on the plurality of pseudoranges and a plurality of differential pseudorange conections; a step for determining one or more position subsolutions, with each position subsolution based on the plurality of pseudoranges and a portion of the differential pseudorange conections; a step for determining one or more separations, with each separation based on a difference between the position solution and at least one of the position subsolutions; and a step for determining a protection limit based on at least one of the separations. 16. A method comprising: determining a position solution for a vehicle, based on a plurality of pseudoranges and a plurality of pseudorange conections; and determining one or more position subsolutions for the vehicle, with each position subsolution based on the plurality of pseudoranges and a subset of the plurality of pseudorange conections. 17. A method comprising: a step for determining a position solution for a vehicle, based on a plurality of pseudoranges and a plurality of pseudorange corrections; and a step for determining one or more position subsolutions for the vehicle, with each position subsolution based on the plurality of pseudoranges and a subset of the plurality of pseudorange conections. 18. A method comprising: determining a position solution for a vehicle, based on a plurality of pseudoranges, a plurality of pseudorange conections, and inertial sensory data; and determining one or more position subsolutions for the vehicle, with each position subsolution based on the plurality of pseudoranges, a subset of the plurality of pseudorange corrections, and inertial sensory data. 19. A method of operating and monitoring a differential position measurement system for a vehicle, the method comprising: determining a position solution for the vehicle, based on past and present values of a plurality of pseudoranges, past and present values of a plurality of pseudorange corrections, and past and present values of vehicle motion data; determining one or more position subsolutions for the vehicle, with each position subsolution based on the past and present values of pseudoranges, past and present values of the pseudorange conections, and past and present values of the vehicle motion data; and determining one or more protection limits based on the position solution and one or more of the position subsolutions.

Inventors: BRENNER NATS A, BRENNER, NATS, A.
Applicants: HONEYWELL INC, HONEYWELL INC.
Application year: 2000
Main classification: G01S1
IPC codes: B64D45, G01C21, G01S1, G01S5