Attitude change kalman filter measurement apparatus and method

A navigation system includes a Kalman filter to compensate for bias errors in inertial sensing elements. An observed pitch, roll or heading change is input to the Kalman filter either from an aiding source or when the navigation system is in a known condition. The Kalman filter generates a correction signal that is provided to the navigation computation system.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates generally to a method and apparatus for correction of bias errors in a navigation system, and in particular to correction of bias errors in an inertial navigation system through the use of change in attitude measurements processed by a Kalman Filter.

2. Description of the Related Art

Inertial navigation is based on systems first built using gyros and accelerometers located on a moving platform or gimbal, which required very complicated technical and power consuming constructions that were prone to failure. Later on, solid state solutions have been realized by using only discrete integrated electromechanical or electro-optical sensors attached directly to the vehicle or strapdown. These solid state systems have minimal moving parts, and consist of laser-gyros, mechanical accelerometers and/or integrated gyros and accelerometers manufactured using MEMS (Micro Electro-Mechanical System) technology.

Inertial navigation systems (INS) are used in a wide variety of applications, including civil and military aviation, cruise missiles, submarines and space technology. According to these areas of operation, the entire system and all components have to be very precise and reliable. As a consequence, the costs for such a system are still relatively high and the size is not yet so small that it can be used for mobile roboting, wearable computing, automotive or consumer electronics.

But navigation systems designed for these mobile applications require a very small and inexpensive implementation of such an INS. Industrial demand for low-cost sensors (in car airbag systems, for example) and recent progress in MEMS integration technology have led to sophisticated sensor products, which are now both small (single chips) and inexpensive.

A body's actual spatial behavior/movement can be described with six parameters: three translatory (x-, y-, z-acceleration) and three rotatory components (x-, y-, z-angular velocity). To be able to define the movement of the body, three acceleration sensors and three gyros have to be put together on a platform in such a way that they form an orthogonal system either physically or mathematically. The distance translated and the angle the body has actually rotated can be obtained by integration of the individual translatory and rotatory components. Performing these calculations accurately and periodically enables the INS to trace its movement and to indicate its current position, velocity, pitch, roll, and heading.

The main limitation of the system performance is due to the finite precision or accuracy of the sensors. For example, a continuous small error in acceleration will be integrated and results in a significant error in measured or predicted velocity. The velocity is then integrated a second time and will result in a position error. Therefore very precise sensors and error correction mechanisms are necessary for an accurate inertial navigation platform.

A paper published by R. E. Kalman in 1960, “A New Approach to Linear Filtering and Prediction Problems”, Transactions of the ASME-Journal of Basic Engineering, 82(Series K): pages 35-45(1960) described a recursive solution to the discrete-data linear filtering problem. The Kalman filter is a set of mathematical equations to provide a computational solution of the least-square method.

Greg Welch et al. review use of the Kalman filter in the area of autonomous or assisted navigation in the paper, “An Introduction to the Kalman Filter”, UNC-Chapel Hill, TR 95-041, Mar. 11, 2002.

SUMMARY OF THE INVENTION

The present invention provides an application of a Kalman filter to determine and remove gyro bias errors from an inertial navigation system. This implementation adds an attitude change measurement to the Kalman filter. This change may be made in the heading measurement and/or the level attitudes (pitch and roll), and provides the observability needed to estimate the gyro biases in the inertial system. For example, when the system is stationary it is undergoing zero change in heading, pitch, and roll relative to the earth. This contrasts with the conventional approach of using a known pitch, roll, and heading as the measurement for the Kalman filter.

To improve the performance of the inertial sensors, a Kalman filter is employed to estimate the inertial sensors errors using measurements from a variety of sources. Measurements are processed in the Kalman filter. For example, the fact that the INS (inertial navigation system) is stationary (at a known position and heading, and zero velocity), information from a Global Positioning System (GPS), or information from another INS can be a measurement. The processing by the Kalman filter algorithm results in an estimate of the sensor errors (e.g. bias, scale-factor, non-linearity) which is used to correct the errors.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 1is a block diagram showing a navigation system10, such as may be used in a vehicle or other moving body, which receives as inputs three signals from accelerometers12and three signals from gyros14. The navigation system performs a strapdown navigation reference computation and provides as an output a navigation state signal (x) on16. This navigation state signal is provided to a Kalman filter18. In some applications, an aiding source20is connected to the Kalman filter18is to provide a change in attitude measurement. In other applications, the aiding source is the act of performing the measurements while the body is stationary. The Kalman filter18generates a signal on20that is returned to the navigation system10, to thereby correct the bias errors which would otherwise cause significant errors in the navigation system's estimate of the vehicle's (or body's) movement.

FIG. 2provides further detail of the present invention. Relevant additional details of the navigation portion10and of the Kalman filter portion18fromFIG. 1are shown separated by a broken line22. The navigation portion10has the input14for the gyro compensated incremental angles which is provided to an adder24, that is in turn connected to a navigation computation portion26where the compensation is computed using information from a factory calibration or previous usages of the INS. The adder24also receives an input from a multiplier unit29. The multiplier unit28scale the accumulated total bias rate correction from the summing unit28to incremental rates. The input to the multiplier unit29is a summing unit28, which represents the Kalman filter's accumulated estimate of the gyro bias. The output of the adder28are provided to an attitude and heading reference function unit30in the navigation computation portion26. The attitutude and heading reference function unit30produces a signal hdg(tk) that is forwarded to the Kalman filter portion18.

The detail for the Kalman filter operation shown inFIG. 2shows only the heading error correction. The preferred embodiment of the invention has similar signal paths for pitch and roll correction which are the same, but these are omitted for clarity. In the Kalman filter function, the signal hdg(tk) is sent to two sub-functions. The first sub-function is a delay unit32to delay by a factor of Δt(kf)to generate a signal hdg(t(k−1)). The two signals hdg(tk) and hdg(t(k−1)) are forwarded to an adder34, with the signal hdg(tk) being fed to the adding input of the adder34and the signal hdg(t(k−1)) being fed to the subtracting input of the adder34. The output of the adder is fed to the adding input of a further adder36. This further adder36also has an input38connected to receive the observed heading change relative to an Earth over the time ΔTKF. In the case where the INS is at rest (stationary) this measurement is zero. The further adder has another subtracting input40which will be discussed later.

The output of the further adder36is provided to the Kalman filter engine42as a signal yk. The Kalman filter operation will be discussed in detail hereinafter. The two outputs44and46of the Kalman filter engine42are an attitude (pitch and roll) and heading reset signal on44and a gyro bias reset rate signal on46. The attitude and heading reset signal44is input to the attitude and heading function30and to an attitude and heading reset summer48. The gyro bias rate resets signal46goes to the integrator28. The integrator28integrates the gyro bias rate resets signal46over the time ΔTKF, the time period of the delay unit32. The integrated output of the integrator48is fed to the subtracting input40of the further adder36.

In detail, the Kalman filter state vectorxis defined,
x=[ΨxnΨynΨznδωxsδωysδωzs]rwhere:Ψn=the 3-dimensional vector (or 3-vector) representing the errors in the computed sensor-to-navigation frame tranformation matrix Csn,δωs=3-vector representing the angular drift rate errors (or biases) of the three gyros in the sensor frame.

Typically, in most attitude reference and inertial navigation applications, the filter state vector is larger due to inclusion of other elements, but the six-element vector shown here suffices to describe the present invention.

The continuous time dynamical model is
Ωn=−(Ωn+ρn)×Ψn−Csnδωs+ηARW,
δ{dot over (ω)}s=ηδωwhere:Ωn=the earth spin rate vector in the navigation frame,ρn=the transport rate vector in the navigation frame,Csn=3×3 direction cosine matrix defining the transformation of a vector from the sensor frame to the navigation frame,ηδω=a three vector white noise process causing a random walk in the gyro drift error vectorδωs, andηARW=a three vector white noise process causing an “angle random walk” attitude/heading error growth.

This can be written in partitioned form as[Ψ.n_δ⁢⁢ω.s_]=[-{Ωn_+ρ_n}-Csn00]⁡[Ψn_δ⁢⁢ωs_]+[ηARW_ηδ⁢⁢ω_]or in more compact form as
{dot over (x)}=Fx+ηwhere (in this example) F is a 6×6 matrix and thexandηvectors are a 6×1 matrix. Note that the matrix[-{Ω_n+ρ_n}-Csn00]
depicts a 6×6 matrix, where each quadrant is a 3×3 matrix. That is, “0” represents a 3 by 3 matrix containing all zeroes, and the notation {Ω+ρ} defines a 3×3 matrix[0-Ωz-ρzΩy+ρyΩz+ρz0-Ωx-ρx-Ωy-ρyΩx+ρx0]

The usual representation of the model is in discrete time:
xk+1=Φxk+wkwhere Φ is normally approximated by a series expansion in F, such as the second order approximation:
Φ=I+FΔt+(FΔt)2/2

The Kalman filter state vector is propagated between measurements as
{circumflex over (x)}k+1=Φ{overscore (x)}k; {overscore (x)}(0)=0

The error covariance propagation is
Pk+1=ΦPkΦT+Qk; P(0)=P0where Qk=E[WkWkT], Pkis the covariance matrix of the error in the estimate {circumflex over (x)}kand P0represents the initial uncertainty in the state vector elements.

An attitude or heading change measurement update is made wherein the Kalman filter's measurement is the difference between, on one hand, the inertially computed attitude or heading change of the KF update interval ΔtKF(less any attitude or heading resets applied by the filter during the interval) and, on the other hand, the externally observed attitude or heading change over the ΔtKFupdate interval.

For a non-rotating IMU, the externally observed attitude or heading change (at the aiding source) is taken to be zero. For a rotating IMU platform, the externally observed attitude or heading change would be determined using other sensors, such as a compass INS, or magnetometer, a star tracker, etc. and provided to the input38as shown in FIG.2.

The following paragraph describes only the heading change measurement. The attitude change measurement is identical except that is uses pitch or roll rather than heading and uses the pitch or roll components of the attitude matrix (C) and the state vector. The change in heading measurement is

yk=[(inertial heading attk−inertial heading attk−1−sum of all heading resets applied by the filter during the ΔtKFinterval)]−[observed heading attk−observed heading attk−1]

The KF measurement model is
yk=Hkxk+vk,where Hkis the 1×6 measurement sensitivity matrix
Hk=[(Ωyn+ρyn),−(Ωxn=ρxn),0,−{overscore (C)}sn(3,1),−{overscore (C)}sn(3,2),−{overscore (C)}sn(3,3)]·ΔtKFwhere {overscore (Csn)}(i, j) is the average of the i,j elementof Csnover the measurement ΔtKFinterval, andvkrepresents the noise in the heading change difference measurement, with
E{vk2}=Rk

The filter's measurement update of the state vector and the covariance matrix proceed in the usual fashion. One implementation being
Kk=PkHkT[HkPkHkT+Rk]−1
{circumflex over (x)}k+={circumflex over (x)}k−+Kk(Yk−Hk{circumflex over (x)}k−)
Pk+=(I−KkHk)Pk−

There are many well known alternative methods in the published literature defining alternative implementations of the Kalman gain and covariance update calculations, all of which can be used in lieu of the above form, and are within the scope of the present invention.

The post measurement update state vector {circumflex over (x)}k+can be used to reset the attitude and heading direction cosine matrix Csnand the gyro drift compensation parameters.

One example of the the software implementation of the change in heading measurement to the Kalman filter is, as follows:

The Kalman filter is modified to include a change in heading measurement. Once again only the change in heading measurement is shown for simplicity. A similar implementation is used for the level attitudes. The detailed software implementation is as follows for a heading change measurement:

The present invention permits the inertial system to estimate bias errors, thereby permitting the use of poorer performing gyros, which cost less, yet achieve the performance of a INS containing better performing gyros.

The present system can be used on a wide variety of vehicles. For example, robotic vehicles may benefit from the present system. The present system may also be used on missiles, rockets and other guided bodies. The present system augments the performance of a INS that relies on GPS (Global Positioning Satellite) systems, which are subject to being blocked by obstructions and which may be jammed whether or not the GPS is configured to provide attitude information.