The present invention generally relates to aviation electronics, and more particularly relates to multi-sensor navigation systems, and even more particularly relates to methods and systems for fault detection and fault exclusion in multi-sensor navigation systems.
In the past, multi-sensor navigation systems have been used with much success. These multi-sensors typically use global positioning system (GPS) receivers in combination with other inertial sensors to generate position information. However, due to the inadequate signal-in-space integrity currently provided by GPS for civil aviation, it is generally necessary to also employ real-time fault detection and exclusion (FDE) schemes, especially when the multi-sensor system is used for primary means of navigation. Since the current assumptions about the GPS constellation and its measurement accuracy often do not provide high enough availability of FDE to meet the primary means objectives for all phases of flight, integration of GPS with inertial sensors for integrity monitoring has received considerable attention. See Brenner, M., “Integrated GPS/Inertial Fault Detection Availability”, ION GPS-95, Palm Springs, Calif., Sep. 2–15, 1995, pp. 1949–1958, hereafter referred to as “Ref [1].” Also see Vanderwerf, K., “FDE Using Multiple Integrated GPS/Inertial Kalman Filters in the Presence of Temporally and Spatially Correlated Ionospheric Errors”, ION GPS-2001, Salt Lake City, Utah, Sep. 11–14, 2001, pp. 2676–2685, hereafter referred to as “Ref [2]”. Also see Diesel, J., Luu, S., “GPS/IRS AIME: Calculation of Thresholds and Protection Radius Using Chi-Square Methods”, ION GPS-95, Palm Springs, Calif., Sep. 12–15, 1995, pp. 1959–1964, hereafter referred to as “Ref [3].” Prior art GPS integrity algorithms can be classified into two broad categories based on the method employed for computing the navigational solution—snapshot approaches and filtered approaches. Snapshot approaches are generally based on least-squares (LS) methods, while filtered approaches generally utilize multiple Kalman filters with different fault hypothesis models.
In addition to the snapshot vs. filtered classification, the prior art GPS integrity algorithms can also be classified into two different categories based on the characteristics of their test statistics for the FDE function—range domain methods vs. position domain methods. For example, the solution separation algorithms described in Refs. [1], [2], and in Brumback, B. D., Srinath, M. D., “A Chi-Square Test for Fault Detection in Kalman Filters”, IEEE Transactions on Automatic Control, Vol. AC-32, No. 6, June, 1987, pp. 552–554, hereafter referred to as “Ref. [4]” are position domain methods, and the measurement residual algorithm in Ref. [3] is a range domain method.
The prior art multi-sensor systems and FDE algorithms have several common characteristics and requirements. The FDE function is typically required to ensure the integrity of the navigation solution and prevent the use of hazardous and misleading information. The prior art FDE function typically consists of two distinct parts—fault detection and fault exclusion. The purpose of prior art fault detection has been to detect the presence of an unacceptable error, and the purpose of the typical prior art fault exclusion has been to identify and exclude the culprit causing the unacceptable error with high confidence. The FDE function is also often required to provide a statistical bound, horizontal protection level (HPL), which the FDE function often guarantees that the horizontal position error can only exceed it prior to fault detection within the specified probability of missed detection (PMD).
After a fault is detected in prior art systems, the HPL is often operationally of little value because HPL no longer bounds the true error at the specified statistical level. The horizontal uncertainty level (HUL) can provide a bound on the horizontal position error after fault detection and before the correct fault exclusion can be performed. Thus, it typically enables the pilots or airborne equipment to determine whether the navigation solution is still acceptable at a given phase of flight. The operational differences between HPL and HUL are discussed in Young, R. S. Y., McGraw, G. A., Driscoll, B. T., “Investigation and Comparison of Horizontal Protection Level and Horizontal Uncertainty Level in FDE Algorithms”, ION GPS-96, Kansas City, Mo., Sep. 17–20, 1996, pp. 1607–1614, hereafter referred to as “Ref. [5].”
While these prior art multi-sensor systems and FDE algorithms have enjoyed success in the past, they have some drawbacks in certain circumstances. Often these systems fail to provide a sufficiently precise probability level for the detection threshold and HPL. Additionally, in some prior art systems, it is necessary to make real GPS measurements to achieve a requisite level of predictability.
Consequently, there exists a need for improvement in the FDE algorithms for multi-sensor navigation systems.
It is an object of the present invention to provide a multi-sensor GPS navigation system which provides data which is sufficient to serve as a primary navigation source for commercial air transport aircraft.
It is a feature of the present invention to utilize a fault detection algorithm which is based on normalized solution separation which uses a normalized approach to determine statistical properties of a test statistic.
It is an advantage of the present invention to provide enhanced ability to obtain sufficient probability levels for the detection threshold and HPL.
It is another advantage of the present invention to predict HPL without the need for making real GPS measurements.
It is another object of the present invention to provide a tightly integrated GPS/inertial sensor system which can be used for the primary means of navigation from oceanic/remote down to non-precision approach phases of flight.
It is another feature of the present invention to employ a hybrid algorithm which combines two independent and parallel methods for fault detection and fault exclusion.
It is an advantage of the present invention to provide for speedier determination of fault exclusions in some circumstances.
It is another feature of the present invention to provide an indication of HUL for a combined GPS/inertial navigation system.
It is another advantage to provide additional valuable information to the pilot.
It is yet another feature of the present invention to provide for parallel independent processing schemes for fault exclusion, which schemes include a post update residual monitoring scheme, together with a well-known least squares scheme.
It is yet another advantage of the present invention to eliminate the need for making at least six GPS measurements to exclude a fault in circumstances having medium to fast failure rates.
The present invention is a system, method and apparatus designed to achieve the above-mentioned objects, include the earlier-listed features and provide the already articulated advantages.
Accordingly, the present invention is a combined GPS/inertial sensor system which uses independent fault detection and fault exclusion schemes, as well as improved methods for fault detection by determining B(k) (the covariance of solution separation vector) in a more efficient way and a post-update residual monitoring scheme for fault exclusion.
Now referring to the Figures, where like numerals refer to like matter and text throughout, and more particularly referring to
Now referring to
The present invention can be better understood by first understanding and then contrasting it with the prior art GPS integrity algorithms, where test statistics for both the fault detection function and the fault exclusion function are in the same domain; i.e., both in the position domain or both in the range domain. In such prior art systems, the processing of the fault exclusion function is usually started after a fault is detected by the fault detection function.
In contrast, for the FDE algorithm of the present invention, the test statistics for the fault detection function 208 and the fault exclusion function 210 are in different domains; i.e., the former is in the position domain, and the latter is in the range domain. Therefore, for some failure types, the test statistic for the fault exclusion function 210 may detect the presence of the failure earlier than that for the fault detection function 208. To take advantage of this characteristic and achieve better FDE performance, it is proposed to treat the fault detection function 208 and the fault exclusion function 210 as two independent processes that run in parallel.
The simulation results presented herein are based on design with 31 Kalman error states for each filter. The states are as follows:
The first 9 error states are referenced to the local navigation frame. The accelerometer and gyro biases are referenced to the body frame. The GPS pseudorange biases are along the Line-Of-Sight (LOS) of each satellite in view. The accelerometer and gyro biases are each modeled as a first-order Markov process. The GPS pseudorange with Selective Availability absent is also modeled as a first-order Markov process. The pseudorange measurement noise was modeled as a zero mean, Gaussian white sequence. To balance between the computational burden and navigational accuracy, the measurement update period TB for all Kalman filters was chosen to be greater than one second.
The normalized solution separation algorithm for the fault detection function was adapted from the chi-square test developed by Brumback and Srinath in Ref. [4]. The assumptions, processing, and essential properties of the algorithm are discussed below.
Assume the following discrete state space model for the true system error state x(k) and the measurement z(k) for the Full-Filter.
x(k)=Φ(k,k−1)x(k−1)+ω(k)
z(k)=H0(k)x(k)+υ0(k)+b(k)u(k,k0) (1)
where x(k) is a l×1 vector and z(k) is a n×1 vector. ω(k) and υ0(k) are independent, zero means, Gaussian white sequences having covariance of Q(k) and R0(k), respectively (the subscript “0” denotes parameters associated with the Full-Filter). The initial state x(0) is a Gaussian random vector independent of ω(k) and υ0(k) and has mean x0 and covariance
When the jth measurement is excluded, the measurement vector in Eq. (1) is modified as
zj(k)=Ejz(k) (2)
where Ej=In−ejejT and ej≡[0, . . . , 0, 1, 0, . . . , 0]T, which is the jth unit standard basis in Rn.
The initial condition and covariance for both Full-Filter and jth Sub-Filter are
{circumflex over (x)}0(0/0)={circumflex over (x)}j(0/0)=E{x(0)}=x0 (3)
P0(0/0)=Pj(0/0)=
Since the jth Sub-Filter uses one less measurement than the Full-Filter, there is one pseudorange bias error state used by the Full-Filter, but not by the jth Sub-Filter. However, with Eq. (3), this unused pseudorange bias error state in the jth Sub-Filter is initialized to be equal to the Full Filter's counterpart. It can be shown that this approach has no effect on the performance of the jth Sub-Filter since this SV is not used. However, for real-time software, this unused bias state can be dropped for the jth Sub-Filter to save computational time.
Define the estimation errors, {tilde over (x)}0h and {tilde over (x)}jh, as:
{tilde over (x)}0h(k)={tilde over (x)}0h(k/k)−xh(k) (5)
{tilde over (x)}jh(k)={tilde over (x)}jh(k/k)−xh(k) (6)
where {circumflex over (x)}0h is the horizontal position error estimate (a 2×1 vector) from the Full-Filter, {circumflex over (x)}jh is the horizontal position error estimate (a 2×1 vector) from the jth Sub-Filter and xh is the true horizontal position error.
The solution separation vector between the Full-Filter and the jth Sub-Filter is defined as
βj(k)={tilde over (x)}0h(k)−{tilde over (x)}jh(k)={circumflex over (x)}0h(k/k)−{circumflex over (x)}jh(k/k) (7)
Prior to the onset of the failure, i.e., k<k0, E{βj(k)}=0 since each filter is linear and each estimate is unbiased. The covariance of the solution separation vector is
Bj(k)=P0h(k/k)−P0jh(k/k)−Pj0h(k/k)+Pjh(k/k) (8)
where
P0h(k/k)=E{{tilde over (x)}0h({tilde over (x)}0h)T}
Pjh(k/k)=E{{tilde over (x)}jh({tilde over (x)}jh)T}
Pj0h(k/k)=E{{tilde over (x)}jh({tilde over (x)}0h)T}=(P0jh(k/k))T (9)
However, it is shown in a dedicated section below that in fact P0jh(k/k)=P0h(k/k). Therefore,
Bj(k)=Pjh(k/k)−P0h(k/k) (10)
This simplification yields considerable computational savings as compared to the dual covariance propagator presented in Refs. [1] and [2].
The normalized solution separation test statistic is given by
λj(k)=βjT(k)Bj#(k)βj(k) (11)
where Bj# denotes the Moore-Penrose generalized inverse, as discussed in Horn, R. A., Johnson, C. R., Matrix Analysis, Cambridge University Press, 1985, hereafter referred to as Ref [6] of Bj and λj(k) is chi-square distributed. A fault is declared if λj1/2(k)≧TD2 for any j, where TD2 is the detection threshold. To be consistent with the detection criterion used in Brown, R. G., Chin, G. Y., “GPS RAIM Calculation of Thresholds and Protection Radius Using Chi-Square Methods—A Geometric Approach”, Red Book Series, Vol. V, of the Institute of Navigation on Global Positioning System, The Institute of Navigation, Alexandria, Va., 1998, pp. 155–178, hereafter referred to as Ref [7], λj1/2(k) instead of λj(k) is chosen as the test statistic in this paper. Since the relationship between λj1/2(k) and λj(k) is monotonic, the fault detection algorithm can be developed based on the chi-square statistics and the appropriate conversion is used to obtain the corresponding result for λj1/2(k). The determination of the TD2 will be discussed below.
In this case, the Moore-Penrose inverse in Eq. (11) becomes a regular matrix inverse. However, for reasons of numerical stability in on-line computations and consistency with the general case of Bj(k) being rank deficient, the computation in Eq. (11) is implemented as follows:
Denote the eigenvalue decomposition of Bj(k) as
Bj(k)=Vj(k)Sj(k)VjT(k) (12)
with
V
j(k)=[v1(k) v2(k)] (14)
where v1(k) and v2(k) are the eigenvectors of Bj(k) and σ1,Bj≧σ2,Bj. The normalized solution separation vector is given by
yj(k)=Sj−1/2(k)VjT(k)βj(k) (15)
with
and the detection statistic becomes
λj(k)=yjT(k)yj(k) (17)
In the full-rank case, λj(k) is chi-square distributed with two degrees of freedom and the selection of TD2 to meet the required false alarm probability is straightforward. Because there are multiple filters and any of the filters can cause a false alert, TD2 needs to be determined from PFA/N, where PFA is the specified false alert rate and N is the number of available measurements.
Prior solution separation FDE approaches in the literature (e.g., Refs [1] and [2]) have used the unnormalized test statistic ∥βj(k)∥ along with a one-dimensional Gaussian statistics and standard deviation of σ1,Bj to compute the detection threshold and HPL. Since ∥βj(k)∥ is not a Gaussian variable, the use of the 1-DOF Gaussian statistics in determining the detection threshold and HPL may result in an underestimate of the actual error.
When Bj(k) is either rank-1 or ill-conditioned, the inverse of Sj(k) does not exist or its computation will lead to numerical difficulties. This numerical stability issue could be resolved if the detection statistic is treated as 1-DOF Gaussian distributed (i.e., ignore error contribution along the v2(k) direction) by computing Sj−1/2(k) through the Moore-Penrose generalized inverse:
However, this approach compromises false alert and missed alert probabilities for the ill-conditioned case. This is because, unlike the least-squares case where both the solution bias and noise lie only in the v1(k) subspace, in the filtered case there are noise and parts of the solution separation bias that are along the v2(k) direction, which would not be accounted for if the detection statistic is treated as 1-DOF Gaussian distributed. Therefore, it is proposed to modify Eq. (16) and detection threshold as follows to both preserve numerical stability and provide better false alert and missed alert protection than just using 1-DOF Gaussian approximation.
In the ill-conditioned or rank-1 case, it is proposed to use
A fault is declared if
λj1/2(k)≧(1+σ2,Bj(k)/σ1,Bj(k))1/2TD1, for any j (20)
where TD1 is determined from 1-DOF Gaussian statistics to meet the probability of false alarm PFA/N. When Bj(k) is a rank-1 matrix, there is no noise in the v2(k) subspace. Therefore, assigning the second diagonal term in Eq. (19) as σ1,Bj−1/2(k) does not introduce additional noise on λj(k). In addition, Eq. (20) provides the exact false alert probability. When Bj(k) is rank-1 or ill-conditioned, the second diagonal term in Eq. (19) enables the component of the solution separation bias vector along the v2(k) direction to be properly scaled in λj(k) so it can be accounted for in the computation of the estimated horizontal position error later through the multiplication of λ1,Bj1/2(k) in Eq. (34). Therefore, with Eq. (19), the exact magnitude of the solution separation bias vector is captured in λj(k) and accounted for in the estimated horizontal position error, which the 1-DOF approximation does not since it ignores any error contribution along the v2(k) direction. When Bj(k) is ill-conditioned, with TD1 scaled as in Eq. (20), a portion of the noise in the v2(k) direction is accounted for, which the 1-DOF approximation does not.
If the horizontal position error exceeds the HPL, it can be due to a measurement fault incorporated into the navigational solution or the rare normal fault-free event. See “Minimum Operation Performance Standard for Global Positioning System/Wide Area Augmentation System Airborne Equipment”, Appendix R, RTCA/DO-229C, hereafter referred to as Ref. [8]. Therefore, HPL is determined as follows:
HPL=max{HPLH0, HPLH1} (21)
where HPLH0 is based on the rare normal fault-free hypothesis and HPLH1 is based on the fault-in-progress hypothesis. The algorithms for HPLH1 and HPLH0 are derived below.
The estimated horizontal position error vector from the Full-Filter at the fault detection can be expressed as follows:
{circumflex over (x)}0h(kTD)=xh(kTD)+bias0(kTD)+ω0(kTD) (22)
where kTD is the time at fault detection, ω0(kTD) is the noise vector with zero mean from the Full-Filter and bias0(kTD) is the horizontal position bias vector of the Full-Filter.
Since the solution from the Full-Filter is output for use by external airborne equipment, the true horizontal position error vector is defined as follows:
Err(kTD)={circumflex over (x)}0h(kTD)−xh(kTD)=bias0(kTD)+ω0(kTD) (23)
Err(kTD) cannot be computed directly because both bias0(kTD) and ω0(kTD) are unknown. Therefore, we need to estimate Err(kTD) based on some parameter that can be computed directly, namely the solution separation vector, βj, in Eq. (7).
Before proceeding to the HPLH1 algorithm, we introduce the following notation to facilitate the mathematical derivation.
R(ω,PMD) is the radius such that Prob{∥ω∥>R(ω,PMD)}=PMD (24)
R(ω,m,PMD) is the distance such that Prob{∥m+ω∥>∥m∥+R(ω,m,PMD)}=PMD (25)
Note that R(ω, 0.5) is the standard circular error probability for a two-dimensional random variable ω. When ∥m∥=0, R(ω,PMD)=R(ω,m,PMD).
Now referring to
α=∥bias0(kTD)∥+R(ω0(kTD),bias0(kTD),PMD) (26)
Since bias0(kTD) is unknown, the solution separation vector βj is used to estimate it with (1−PMD) probability. At the fault detection, the solution separation vector for the jth Sub-Filter not using the failed measurement can be written as
βj={circumflex over (x)}0h−{circumflex over (x)}jh=bias0+ω0−ωj=bias0−ω′j (27)
where ωj is the noise vector from the jth Sub-Filter and ω′j is the component of ωj independent of ω0 (Note: the index kTD is suppressed here and below for notational convenience).
As shown in Eq. (27), using βj to estimate bias0 introduces an additional noise term ω′j that does not exist in Eq. (26). To properly account for the effect of this additional noise term, Eq. (26) is re-arranged as
α=∥bias0∥+R(ω′j,bias0,PMD)+R(ω0,bias0,PMD)−R(ω′j,bias0,PMD) (28)
Based on Eq. (28), the algorithm for the ideal horizontal position error bound α is divided into two parts. The first part is to estimate the first two terms at the right hand side of Eq. (28) due to bias0 and uncorrelated noise ω′j with βj. The second part is to estimate the last two terms at the right hand side of Eq. (28) due to the noise ω0 and ω′j.
The mean of the normalized solution separation vector and the test statistic can be written as:
λj=yjTyj=({tilde over (y)}j(1)+mj1)2+({tilde over (y)}j(2)+mj2)2 (30)
where the noise components, {tilde over (y)}j(1) and {tilde over (y)}j(2), are independent with N(0, 1) and the means for yj(1) and yj(2) are mj1 and mj2, respectively.
With an orthonormal rotation, λj can be shown to be noncentral chi-square distributed. Therefore, we can compute the noncentrality parameter that makes the noise inside the detection threshold to be PMD. With normalization, this noncentrality parameter is the “Pbias” in parity space FDE algorithms Ref. [7].
Now referring to
The relationship between Pbias and its corresponding bias vector, γPbias, in the horizontal position domain can be defined as:
Pbias=√{square root over (
After determining the Pbias in the normalized solution separation (y) domain, we need to convert it back to determine ∥γPbias∥ since our main interest is the horizontal position error. ∥γPbias∥ can be computed as
∥γPbias∥=√{square root over (
To compute Eq. (33), we need to know the
where σ1,Bj is the largest eigenvalue of the Bj matrix and HPE_Bj is the horizontal position error bound of ∥γPbias∥ with a specified probability of missed detection (PMD).
Since the worst case assumption is used in Eq. (34) and βj=bias0−ω′j, it can be shown
HPE—Bj≧∥bias0∥+R(ω′j,bias0, PMD) (35)
The last two terms at the right hand side of Eq. (28) can be related to the radii determined with the circular error probability calculation as
R(ω0,bias0,PMD)=R(ω0,PMD)−ε1 (36)
R(ω′j,bias0,PMD)=R(ω′j,PMD)−ε2 (37)
It can be shown that ε1≧0 and ε2≧0.
Now, by substituting Eqs. (35)–(37) into Eq. (28), Eq. (28) can be re-written as
α≦HPE—Bj+R(ω0,PMD)−R(ω′j,PMD)+ε2−ε1 (38)
R(ω0,PMD) in Eq. (38) can be decomposed as
R(ω0,PMD)=R(ωj,PMD)−ε3 (39)
Since ωj=ω0+ω′j, ε3≧0. With Eq. (39), Eq. (38) can be re-arranged as
α≦HPE—Bj+R(ωj,PMD)−R(ω′j,PMD)+ε2−ε1−ε3 (40)
Now, let us examine the error term, ε2−ε1−ε3, in Eq. (40). For the limiting case E{ω′j(ω′j)T}=0, ε2=0, ε3=0, and ε1≧0. Therefore, for the limiting case, α will be bounded by
α≦HPE—Bj+R(ωj,PMD)−R(ω′j,PMD) (41)
It has been found by simulation that Eq. (41) appears to be always valid. Therefore, Eq. (41) provides the required statistical bound for horizontal position errors.
The last two terms in Eq. (41) can be computed through their respective noise covariance Pj and Bj by the following two steps.
(1) The noise on the X and Y axes in the horizontal navigational coordinates are likely to be correlated, i.e., the covariance has non-zero off-diagonal terms. Therefore, a coordinate transformation should be used to transform the X-Y plane to a principal X1-Y1 plane such that noise components in X1 and Y1 axes are not correlated.
(2) After the coordinate transformation, the noise components in X1 and Y1 axes are independent Gaussian noise with, in general, unequal standard deviations. The upper bound of the horizontal position error for a specified probability can be computed by using circular error probability (CEP) table look-up, Beyer, W. H., “Handbook of Tables for Probability and Statistics”, The Chemical Rubber Company, Cleveland, Ohio, 1966, pp. 146–148 hereafter referred to as Ref. [9] or a polynomial approximation. For our applications, a CEP table look-up suffices since a constant PMD is required.
Following the above two steps, R(ωj,PMD) can be computed as
HPE—NPj=R(ωj,PMD)=Kcep,j√{square root over (σ1,j)} (42)
where σ1,j and σ2,j are the eigenvalues of Pj, σ1,j≧σ2,j, and Kcep,,j is a function of (1−PMD) probability and (σ1,j/σ2,j)1/2 in the CEP look-up table.
R(ω′j,PMD) is computed as
HPE—NBj=R(ω′j,PMD)=Kcep,Bj√{square root over (σ1,Bj)} (43)
where σ1,Bj and σ2,Bj are the eigenvalues of Bj, σ1,Bj≧σ2,Bj, and Kcep,,Bj is a function of (1−PMD) probability and (σ1,Bj/σ2,Bj)1/2 in the CEP look-up table.
The total estimated horizontal position error for the jth Sub-Filter is computed as
HPEj=HPE—Bj+HPE—NPj−HPE—NBj (44)
Since there are multiple Sub-Filters, HPLH1 is determined as follows:
If there is no fault in the navigation solution, the Kalman error covariance from the Full-Filter can be used to determine HPLH0 by following steps (1) and (2).
HPLH0=Kffd√{square root over (σ1,0)} (46)
where σ1,0 and σ2,0 are the eigenvalues of P0h, σ1,0≧σ2,0, Kffd is a function of (1−PH0) probability and (σ1,0/σ2,0)1/2 in the CEP look-up table, and PH0 is the fault-free integrity probability.
The algorithm for the Horizontal Uncertainty Level is adapted from the algorithm developed for the HPL. Therefore, like the HPL, HUL consists of two components—HULH0 and HULH1. By proceeding with the same argument in developing Eq. (46), it can be shown HULH0=HPLH0.
Since λj(k) contains the information about the bias0(k) vector, it can be used to estimate the portion of the true horizontal position error due to the bias and uncorrelated noise at time k. By proceeding with arguments similar to those used for Eq. (34), the horizontal uncertainty error due to the bias0(k) vector can be computed for a specified probability as follows:
HUE—Bj(k)=∥bias0(k)∥≦√{square root over (σ1,Bj(k))}(√{square root over (λj(k))}+Δpj), k≧kTD (47)
where Δpj is intended to compensate for the reduction of
Now, the question is how to determine Δpj such that Eq. (47) will bound the current horizontal position error induced by the bias and uncorrelated noise with the (1−PMD) confidence. As derived in Eq. (28) of Ref. [5], Δpj can be approximated as follows:
Δpj≈Pbias−Td (48)
where Pbias is given in Eq. (32) and Td is the detection threshold used in the fault detection.
So, Eq. (47) can be rearranged as follows:
HUE—Bj(k)≦√{square root over (σ1,Bj(k))}(√{square root over (λj(k))}+Pbias−Td) (49)
The horizontal position errors due to noise derived in Eqs. (42) and (43) can be used to compensate HUE_Bj(k). Therefore, the total estimated horizontal uncertainty error for the jth Sub-Filter can be computed as follows:
HUEj(k)=HUE—Bj(k)+HPE—NPj(k)−HPE—NBj(k) (50)
Since there are multiple Sub-Filters, the HULH1(k) is determined as follows:
Therefore, HUL at time step k is determined as follows:
HUL(k)=max {HULH0(k), HULH1(k)} (52)
In this embodiment of the present invention, measurement residual monitoring is proposed for the fault exclusion function. There are two requirements for fault exclusion.
(I) Fault identification: Identify the failed measurement with the probability of (1−PMI), where PMI is the specified probability of misidentification.
(II) Post-exclusion fault detection: If the failed measurement is excluded, the fault detection function based on remaining measurements should be available for the given phase of flight.
Now referring to
The blocks with bold solid lines are designed to meet the first requirement for fault exclusion, and the block with bold dashed lines is designed to satisfy the second requirement. The function of each of these blocks in
As shown in
The fault isolation algorithm presented in Parkinson, B. W., Axelrad, P., “Autonomous GPS Integrity Monitoring Using the Pseudorange Residual”, NAVIGATION, Journal of the Institute of Navigation, Vol. 35, No. 2, Summer 1988, pp. 255–274 hereafter referred to as Ref. [10] is adapted below for our applications. The post-update residual vector at time k for each Sub-Filter is computed as follows:
{tilde over (z)}i(k)=zi(k)−Hi(k){circumflex over (x)}i(k/k), i=1, . . . , N (53)
where {tilde over (z)}i is the post-update residual vector for the ith Sub-Filter and zi is the linearized measurement vector for the ith Sub-Filter.
For applications related to Kalman filters, the innovation, {tilde over (z)}i−(k), is generally used to exclude abnormal measurements Ref. [3], where
{tilde over (z)}i−(k)=zi(k)−Hi(k){circumflex over (x)}i(k/k−1) (54)
However, for the following reasons, the post-update residual vectors are used instead.
The post-update residual vector for the jth Sub-Filter not using the failed measurement can be shown to be zero mean and have a covariance, Λj(k), as given by
Λj(k)=Rj(k)−Hj(k)Pj(k/k)HjT(k) (55)
Now, we define the residual test statistic, γj(k), for the jth Sub-Filter as
γj(k)={tilde over (z)}jT(k)Λj−1(k){tilde over (z)}j(k) (56)
The direct computation of Λj−1(k) in Eq. (56) can be avoided by computing the Cholesky decomposition,
Λj(k)=Lj(k)LjT(k) (57)
where Lj(k) is a lower-triangular matrix. The residual test statistic is then computed as
ζj(k)=Lj−1(k){tilde over (z)}j(k) (58)
γj(k)=ζjT(k)ζj(k) (59)
where Eq. (58) is computed via forward substitution.
It can be shown that γj(k) is central chi-square distributed with (N−1) degrees of freedom since the jth Sub-Filter does not use the failed measurement. It can be further shown that γi(k) for i≠j would be noncentral chi-square distributed with (N−1) degrees of freedom because all other Sub-Filters use the failed measurement. This difference in the statistical distribution between γj(k) and γi(k) is used as the basis for the fault identification. The required correct fault identification with the probability of (1−PMI) for a particular j is
(γj)1/2≦TI and (γi)1/2>TE, i≠j, i=1, . . . , N (60)
where TI is the isolation threshold and the determination of (TI)2 is based on the central chi-square statistics with (N−1) degrees of freedom and probability of (1−PMI), TE is the exclusion threshold whose determination is discussed later.
Since the post-update residual vector can be shown to be uncorrelated with previous post-update residual vectors, the performance of the fault identification process can be further improved by averaging the post-update residual vector over several measurement update cycles to reduce noise. However, as mentioned in Ref. [8], the averaging technique would result in the reduction of the detection performance for failures with dynamics that are fast relative to the averaging period. Therefore, to isolate failures due to different failure rates, the post-update residuals are averaged over three different intervals (in terms of update cycles)—1, 10, and 30. So, there are three averaged residual parameters in all for each Sub-Filter.
As shown in
It has been found that there is one drawback in using the post-update residual monitoring to perform fault identification. Even with the averaging technique, this form of monitoring may not be able to isolate failures induced by slow pseudorange failure rates (e.g., 0.02 m/s or lower). However, when there are six or more measurements available, the following LS FDE method can be used to complement the post-update residual monitoring method.
As shown in Young, R. S. Y., “Oceanic/Remote FDE Algorithm Design”, internal memo, Rockwell Collins Inc., Aug. 16, 1996 and Lee, Y., “New Techniques Relating Fault Detection and Exclusion Performance to GPS Primary Means Integrity Requirements”, ION GPS-1995, Palm Springs, Calif., Sep. 12–15, 1995, pp. 1929–1939 hereafter respectively referred to as Refs. [11] and [12], when there are at least six measurements available, the snapshot algorithms can be used to perform fault isolation. Since the performance of the snapshot algorithms is independent of failure rates, they effectively complement the post-update residual monitoring method. The fault isolation algorithm in Ref. [11] requires less computational time since they do not require multiple navigation solutions.
The drawback of using snapshot methods for isolating slow ramp failures is that it requires at least six measurements. Therefore, when there are less than six measurements available and the pseudorange failure rate is slow, the fault identification process may not be able to isolate the failed measurement. In this situation, the HUL should be used to monitor the horizontal position error. If HUL is greater than the HAL for the given phase of flight, the navigation solution from the integrated GPS/inertial sensor should not be used. Otherwise, the navigation solution is tolerable and can still be used.
The second requirement for the fault exclusion indicates that, after the failed measurement is excluded, the HPL based on the remaining measurements (post-HPL) should be less than the HAL for the given phase of flight. The primary purpose of this requirement is to ensure the integrity function can detect another measurement failure that occurs after the first failure is isolated.
If the failed measurement is correctly identified and excluded, the jth Sub-Filter omitting the failed measurement should be fault-free. Therefore, the solution from the jth Sub-Filter can be used to re-initialize the Full-Filter and other Sub-Filters. However, before the failed measurement can be excluded, the second requirement for fault exclusion needs to be met. At the time of fault isolation, the post-exclusion HPL is the HPLH0 from the jth Sub-Filter since all filters will be initialized with the same solution. So, if the HPLH0 from the jth Sub-Filter is less than the HAL for the given phase of flight, the failed measurement can be excluded.
After the re-initialization, the Full-Filter would only use (N−1) measurements and each Sub-Filter would only use (N−2) measurements. The post-HPL is computed from the HPL algorithm proposed before.
A more thorough understanding of the present invention may be achieved by reviewing the more detailed description below regarding the covariance of the solution separation vector, Bj(k).
The computation for the covariance of the solution separation vector, Bj(k), defined in Eq. (8) will be derived here. Since the jth Sub-Filter uses one less measurement than the Full-Filter, there is one pseudorange bias error state used by the Full-Filter, but not by the jth Sub-Filter. However, to simplify the derivation, it is assumed the jth Sub-Filter still carries this unused pseudorange bias error state. It can be shown later that carrying an unused pseudorange bias error state, which is modeled as a first-order Markov process, does not affect the computation of Bj(k) and the performance of the jth Sub-Filter.
The time evolution of estimation errors for the Full-Filter and jth Sub-Filter is shown as follows:
{tilde over (x)}0(k/k−1)=Φ(k,k−1){tilde over (x)}0(k−1/k−1)−ω(k) (A1)
{tilde over (x)}j(k/k−1)=Φ(k,k−1){tilde over (x)}j(k−1/k−1)−ω(k) (A2)
When the filter processes measurements, these two errors are changed according to
{tilde over (x)}0(k/k)=(I−K0(k)H0(k)){tilde over (x)}0(k/k−1)+K0(k)υ0(k) (A3)
{tilde over (x)}j(k/k)=(I−Kj(k)Hj(k)){tilde over (x)}j(k/k−1)+Kj(k)υj(k) (A4)
where K0(k) and Kj(k) are the Kalman gains for the Full-Filter and the jth Sub-Filter, respectively.
By combining Eqs. (A1)–(A4), the evolution of the cross-covariance P0j(k/k) can be computed as follows:
P0j(k/k)=Ψ0(k,k−1)P0j(k−1/k−1)ΨjT(k,k−1)+Γ0(k)Q(k)ΓjT(k)+K0(k)R0j(k)KjT(k) (A5)
where
Ψ0(k,k−1)=[I−K0(k)H0(k)]Φ(k,k−1) (A6)
ΨjT(k,k−1)=ΦT(k,k−1)[I−Kj(k)Hj(k)]T (A7)
Γ0(k)=[I−K0(k)H0(k)] (A8)
ΓjT(k)=[I−Kj(k)Hj(k)]T (A9)
R0j(k)=E{υ0(k)υjT(k)} (A10)
The observation matrix of the jth Sub-Filter, Hj(k), is related to the observation matrix of the Full-Filter, H0(k), as follows:
Hj(k)=EjH0(k) (A11)
The measurement covariance of the jth Sub-Filter, Rj(k), is related to the measurement covariance of the Full-Filter, R0(k), as follows:
Rj(k)=EjR0(k)Ej (A12)
With Eq. (A12), we can see that the jth column and jth row of Rj(k) are all zeros.
Kj(k) is computed as follows:
Kj(k)=Pj(k/k)HjT(k)Rj#(k) (A13)
where Rj#(k) denotes the Moore-Penrose generalized inverse of the Rj(k) matrix. With Eq. (A13), we can see that the jth measurement is not used by the jth Sub-Filter. Therefore, carrying the pseudorange bias error state for the jth measurement has no effect on the performance of the jth Sub-Filter.
The initial value for P0j can be determined as
P0j(0/0)=E{({circumflex over (x)}0(0/0)−x(0))({circumflex over (x)}j(0/0)−x(0))T}=E{{circumflex over (x)}0(0/0){circumflex over (x)}jT(0/0)}−E{x(0)xT(0)} (A14)
With the initialization specified by Eq. (3), Eq. (A14) can be re-arranged as
P0j(0/0)=E{{circumflex over (x)}0(0/0){circumflex over (x)}0T(0/0)}−E{x(0)xT(0)}=P0(0/0) (A15)
With Eqs. (4) and (A15), we can show
P0j(0/0)=P0(0/0)=Pj(0/0)=
From Kalman filter theory, we know
P0(k/k)=[I−K0(k)H0(k)]*[Φ(k,k−1)P0(k−1/k−1)ΦT(k,k−1)+Q(k)] (A17)
Define
Aj(k)−Kj(k)Hj(k) (A18)
With Eqs. (A16)–(A18), Eq. (A5) can be re-arranged as follows for k=1.
P0j(1/1)=P0(1/1)−P0(1/1)AjT(1)+K0(1)R0j(1)KjT(1) (A19)
K0(1) and R0j(1) in Eq. (A19) can be shown as:
K0(1)=P0(1/1)H0T(1)R0−1(1) (A20)
R0j(1)=R0(1)Ej (A21)
Now, let us examine the last two terms at the right hand side of Eq. (A19).
−P0(1/1)AjT(1)+K0(1)R0j(1)KjT(1)=[−P0(1/1)+P0(1/1)]AjT(1)=0 (A22)
With Eq. (A22), Eq. (A19) can be simplified as:
P0j(1/1)=P0(1/1) (A23)
Now, the process between Eq. (A19) and Eq. (A23) can be repeated for k=2,3 . . . . Therefore, by induction, Eq. (A23) is valid for all k.
With P0j(k/k)=P0(k/k) established for all k, Bj(k) can be computed as
Bj(k)=Pjh(k/k)−P0h(k/k), k=0,1,2, . . . (A24)
where Pjh(k/k) is the matrix containing the first 2×2 elements of Pj(k/k) and P0h(k/k) is the matrix containing the first 2×2 elements of P0(k/k).
In Ref. [4], a similar result as Eq. (A24) was derived for the more restricted case—a Full-Filter using all measurements and a Sub-Filter using no measurement. Since Pjh(k/k) and P0h(k/k) are already available from the normal Kalman filter processing, Bj(k) can be easily obtained as the difference of these two covariance matrices. Therefore, the special dual covariance propagator used in Refs. [1] and [2] to compute Bj is not required.
Due to Eqs. (A16) and (A24), there is a singular point (B(0)=0) for the fault detection function at initialization. This characteristic is expected since there is no difference between {circumflex over (x)}0(0/0) and {circumflex over (x)}j(0/0).
A more thorough understanding of the present invention can be achieved by reviewing the following conclusory statements: A real-time fault detection and exclusion algorithm is presented for tightly integrated GPS/inertial sensors. The fault detection algorithm is based on normalized solution separation. With normalization, the proper probability levels for the detection threshold and HPL can be obtained. In addition, HPL is predictable without real GPS measurements, which is an important operational requirement.
A hybrid algorithm that combines two independent methods that complement each other is proposed for the fault exclusion function. For medium-to-fast failure rates, the post-update residual monitoring scheme performs better and does not require a minimum of six measurements. For slow failure rates, the least-squares fault identification scheme performs better when there are at least six measurements available. In addition, since it takes an extremely long failure exposure time for slow ramp failures to corrupt the navigation solution to be above HAL, the continuous constellation change due to satellite motion may provide enough observability during some periods of the long failure exposure time to permit the correct fault isolation. During the periods when the correct fault isolation cannot be performed, HUL can be used to monitor the horizontal position error.
It is thought that the system, apparatus and method of the present invention can be understood from the above description. It should be understood that the above description is not exhaustive and is an example of one of many variations of the present invention which could be performed based upon the spirit and scope of the invention. It is the intention of the inventors to claim all such variations within the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
6311129 | Lin | Oct 2001 | B1 |
6424914 | Lin | Jul 2002 | B1 |
6515618 | Lupash | Feb 2003 | B1 |
6549829 | Anderson et al. | Apr 2003 | B1 |