#### Abstract

Conventional fault detection and isolation technology cannot fully ensure system redundancy features when sensors experience drift in a redundant inertial navigation system. A new fault tolerant control method employs state estimation and state feedback techniques to compensate the sensor drift. However, the method is sensitive to measurement noise characteristics, and the performance of the method nearly depends on the feedback gain. This paper proposes an improved fault tolerant control algorithm, which employs an adaptive extended Kalman particle filter (AEKPF) to deal with unknown noise characteristics and model inaccuracies. In addition, a drift factor is introduced in the improved fault tolerant controlin order to reduce the dependence of compensation system on the feedback gain. Simulation results show that the improved fault tolerant control algorithm can effectively correct the faulty sensor even when the multiple erroneous sensors are producing faulty outputs simultaneously. Meanwhile, the AEKPF is able to solve the problem of unknown non-Gaussian noise characteristics. Moreover, the feedback gain is significantly improved by the drift factor.

#### 1. Introduction

The reliability of inertial sensor affects the reliability of the entire inertial navigation system. A redundant technology is applied to improve the precision and reliability of the inertial navigation system, that is, by means of increasing numbers of gyro and accelerometer [1–3]. In order to monitor a redundant system, an effective fault detection and isolation scheme has to be designed to detect and isolate the fault in time once a sensor failure occurs [4–8]. For the redundant strapdown inertial navigation system usually working in dynamic environments, the performance of fault detection depends not only on the detecting method but also on the constraint from errors of inertial sensors. Nowadays, many fault detection and isolation techniques are constructed based on the geometric redundancy and parity space approach, involving identical inertial sensors deployed at various locations to establish algebraic equations for each inertial sensor output [1, 9–11]. These equations are referred to as either parity equations or voting equations. The erroneous sensor unit can be identified by such equations and excluded from the sensor array. As far as the parity space approach is concerned, the fault identification is solved by some voting equations [9, 10]. Both the threshold value and observation period should be set up to watchdog the contaminated outputs by noise. When outputs from the voting equations exceed the threshold value at the end of an observation period, a faulty sensor recognition is active [12]. However, the parity space approach has following faults: the threshold value and the observation period are empirical, and the inappropriate values will lead to failure of fault detection system, the need for an observation period indicates that this approach cannot be done in real time [6], and the redundant inertial navigation system would lose its redundancy easily.

Conventional fault-identification algorithms are difficult to maintain the redundancy of the redundant inertial navigation system. This is simply because each sensor in a sensor array is drifting from time to time due to the nature of the drift. Moreover, after the first few drifting sensors are identified and excluded from the sensor array, the system would lose its redundancy and identify other drifting sensors. Therefore, the redundant inertial navigation system should have the capability of self-repairing to maintain its redundancy.

A fault tolerant control algorithm for fault-tolerant sensor systems was proposed by Chen and You in [12]. The state estimation and state feedback techniques were used in fault tolerant control algorithm. Due to its capability of the real time fault correction, the fault tolerant control algorithm is able to compensate sensor fault drifts. The sensor which has experienced fault drift is no longer isolated, but compensated in real time. Therefore, it maintains the system’s redundancy [12–14]. However, the fault tolerant control algorithm is sensitive to the priori knowledge of the measured noise and the feedback gain. Inappropriate measurement of the noise covariance and the feedback gain will cause the compensation algorithm invalidity. Meanwhile, it requires that the measured noise must be white Gaussian noise. Moreover, the range of its feedback gain is narrow, and a lot of experiments should be done to determine the feedback gain.

This paper proposes an improved fault tolerant control algorithm based on the work [12], which employs an AEKPF to deal with unknown noise characteristics and model inaccuracies, and a drift factor is introduced in the improved fault tolerant control to reduce the dependence of compensation system on the feedback gain. The algorithm has the following advantages. First, the drift sensors are compensated in real time. Secondly, the improved algorithm does not need the threshold value and the observation period. Thirdly, the improved algorithm uses the AEKPF to solve the problem of unknown noise characteristics and model inaccuracies. Fourthly, the improved fault tolerant control algorithm is insensitive to the feedback gain, and it can enlarge the range of feedback gain due to the drift factor. Last but not the least, the redundant inertial navigation system with the improved fault tolerant control is unconditionally stable, even if all inertial sensors have experienced drift at certain circumstances.

This paper is arranged as follows. The basic theory of the fault tolerant control algorithm is introduced in Section 2. The proposed improved fault tolerant control algorithm is explained in Section 3. Simulation results of the improved fault tolerant control algorithm are shown in Section 4. Section 5 discusses both the certain circumstances and the unique features of the improved fault tolerant control algorithm. Finally, Section 6 concludes the paper.

#### 2. The Basic Theory of the Fault Tolerant Control Algorithm

A reasonable redundant configuration of inertial sensors can improve the reliability of the inertial navigation system. Assuming that there are similar inertial sensors in the redundant inertial navigation system, the measurement equation is given by where is a vector of sensor measurements, is measurement matrix, is the state vector to be measured by sensors, and is the sensor noise with zero mean. Let be the transpose conjugate of and let be the null space of ; then, The parity equations are defined as

As shows in previous researches [1–6], if there are n gyroscopes to measure three angular rates in redundant inertial navigation system, the navigation system can form parity equations. Assuming that only one faulty sensor exists in a sensor array, the system needs at least two parity equations to locate it [12, 13]. This means that one state needs at least three sensors to measure it if the system needs to locate the faulty sensor. So the number of parity equation must be more than or equal to 2; that is, . These parity equations are often converted into equations in linear transformation. In other words, the matrix can be converted into a matrix where all of the diagonal terms are equal to zeros while nonzero elsewhere. The newly formed equations are referred to as voting equations with an associated voting matrix to distinguish them from the parity equations. Furthermore, the voting matrix is derived from the parity equations, resulting in a rank of .

The voting equations are defined as where represent measurements from the sensors, and are the row vectors of . The voting equation (5) is derived from the parity equations of (3). By means of linear transformations, the parity equations can be converted into voting equation. A faulty sensor can be more easily identified from voting equations than from parity equations. For example, if the output of the first voting equation is zero but the rest are non-zeros, one can determine that sensor is faulty. When sensor measurements are contaminated by noise, the above fault-finding method cannot be done in real time, since at any time instant, none of the voting equation outputs is zero. In addition, the above method cannot be used in the system when incorporated sensors experience sensor drifts, because every sensor in a sensor array is drifting, and thus the assumption of only one faulty sensor in a sensor array can hardly be satisfied [12].

#### 3. The Improved Fault Tolerant Control Algorithm

The improved fault tolerant control algorithm is designed under the condition when outputs of incorporated sensors are contaminated by noise and signal drifts. This is done by formulating the conventional fault-identification algorithm into a real time state estimation and state compensation algorithm.

##### 3.1. Real Time Sensor Drifts Estimation

The state estimation techniques are used to identify sensor drifts in sensor outputs, and the drift of sensor is separated from sensor measurements and modeled as a system which meets where is the drift of sensor is the sensor output with drift and white noise, and is the sensor output with white noise. When these drifts are treated as system states, their governing equations can be written as where is the change of drift.

From a system observability point of view, the above system needs output equations to observe states. These parity equations, which are used to describe the relations between outputs of sensors, can be processed to obtain output equations for the estimation. They can be arbitrary chosen from row vectors in the voting matrix, such as shown as There are only equations in (8), so the system at least need is 3 equations which are not linear correlation with (8) in addition. As stated as before, assuming that there is only one fault sensor existed in the sensor array, the remaining output equations can written as Equation (9) also implements the constraint of only one faulty sensor array. For example, the multiplication of any two drifts is equal to zero (). If only one faulty sensor existed in the sensor array, the row vector is a zero vector; otherwise, is not a zero vector. With both the system governing equations (7) and the output equations (8) and (9), one can estimate these drifts in real time by constructing a state observer. Since the associated output equations are nonlinear, a nonlinear filter should be chosen to serve as the state observer [12, 13].

In fact, the expression of is hard to get since sensor drifts are random. In order to facilitate the establishment of system model, the governing equations can be written as if assuming , which means that all of drifts are assumed as dc offset. However, when the sensor errors are drifting, the real time drifts estimation would fail because the new governing equation is incapable of describing time-varying signals. In this case, the estimation failure would be attributed to the system modeling error. Some “fading memory” techniques [15–17] were developed to ensure the state convergence in the presence of model error. These techniques were applied to ensure the state convergence by eliminating the effect of older data from current state estimation if they are no longer valid [12]. If the measurement noise is non-Gaussian noise in a variety of applications, the performance and convergence of adaptive extended Kalman filter cannot be ensured. This paper uses an AEKPF to solve the problem that the measurement noise is not white Gaussian noise and the system model is inaccurate.

Assume that the state equation and measurement equation of estimation system can be written as The AEKPF algorithm is expressed by following steps.

* Initialize the Particles.* The particle number is initialized as . The particle is sampled from the proposal distribution , ; at the same time, the particle weights are set as . That is, .

* Sequential Importance Sampling. *Every particle with EKF is updated firstly. The project error covariance is
The Kalman gain is
The update error covariance is
The update estimates is
The observation matrix is
where is the estimated value of , is the fading factor, is the observer gain, is the state covariance matrix, is the measurement noise covariance matrix, and is the output equation for sensor measurements. If
The fading factor is
With above equations, we can deduce the mean value and variance of the particles and sample particles from the importance density function .

Secondly, the particle weights are updated. If the importance density is a first-order Markov process and expressed in a recursively form, the expression of the particle weights can be written as The particle weights are normalized as

* Resample the Particles*. The effective particle number is given by
If (here is the threshold of effective particle number, i.e., ), then the particles and the new particles are determined by
By means of the resampling operation, those particles with larger weights will be reserved, and those with smaller weights be killed.

* Output. *The expectation is assumed as
And the covariance is

* Replace ** and Return to Step *.

##### 3.2. Real Time Sensor Drifts Compensation

Once the drift in each sensor output is estimated in real time, the drift compensation can be done by the state feedback technique, as Equations (24) and (25) can also be written in a discrete time form aswhere is the feedback gain, and is the drift factor.

Since the drift is changed by the estimated drift in the compensation system, the output equations, namely, (8) and (9) which are used in the drift estimation system, are no longer valid. The output values of output equations for the compensation system are obtained by processing the compensated drift values to obtain compensated sensor outputs, as the shown in the following: and then should be replaced by in (8) to obtain new equations, the new equations remain the same as shown in (9), where is the drift value after compensation, is the drift value, is compensated drift values, is the feedback gain, and is the drift factor, and is discrete time form of in (8). As shown in (27), the compensated drift values is

As shown before, the state feedback technique is chosen for the real time sensor fault drift compensation system, and the compensation system is stated as discrete time form. Figure 9 shows the block diagram of compensation system. In the compensation system, the system feedback value is the compensated drift values ; the input of estimation system is the compensated sensor outputs . This approach is very similar to the conventional linear quadratic Gaussian methods; the only difference is that the Kalman filter is replaced by the AEKPF [13].

Since equations are incorrect in the compensation system, the compensation system is no longer restricted to the constraint of only on faulty sensor in a sensor array. In turn, the proposed compensation algorithm can process multiple erroneous sensors especially when they produce faulty outputs simultaneously.

##### 3.3. The Drift Factor

The performance of real time compensation algorithm largely depends on the choice of feedback gain since the inappropriate feedback gain will lead to the system failure [12]. Due to lack of a guiding theorem and method, the choice of feedback gain relies on empirical values. The feedback gain which is selected by experience cannot always guarantee the system validation along with the environmental change. Moreover, the feedback gain is not only related to system features and drift characteristics but also related to noise characteristics. The feedback gains of some sensors are interrelated to each other. Therefore, the choice of feedback gain is a complex problem. This paper introduces a drift factor, which can increase and reduce the sensitivity of real time compensation system to the feedback gain. The drift factor makes compensation system less dependent on feedback gain. It includes the prior drift factor and the current drift factor.

* The Prior Drift Factor. *The prior drift factor represents the change of sensor drift in previous. The greater the rate of change of predrift is, the greater the prior drift factor is. The rate of change of sensor predrift is given by
And the change of sensor predrift is
Here is normalized as

* The Current Drift Factor. *The current drift factor represents the change of sensor drift currently, which relates with the amplitude and the rate of change of the current drift. The greater the amplitude and the rate of change of the current drift, the greater the current drift factor. The current drift factor is given by
Here is normalized as

* The Drift Factor. *The drift factor is defined as
Here is normalized as
If , then . Therefore, the drift factor is

#### 4. Simulation Results

A six-sensor configuration is preferred in the strap-down inertial navigation system because of its powerful error calibration and fault detection capabilities. In this configuration, six sensors are mounted on a regular polyhedron with 12 faces, which is a specific symmetric structure. All the sensors have an angle of to each other, and each two measurement axes are in one orthogonal plane of the reference coordinate [1–4]. Taking the gyros as an example, the measurement equation can be written as where represent measurements from the six gyros, is measurement matrix, and , , represent the three angular velocities. The three parity equations can be found from . Assuming that then . According to (3), the parity equation can be written as In this configuration, there are six gyros to measure three angular velocities. The three parity equations, which are used to describe the relations between outputs of six gyros, can be processed to obtain three output equations for estimation. Let ; the output matrix can be written as In order to get the associated output equations , the output matrix can be converted into . The associated output matrix is defined as The system measurement equation is where and are respectively.

Assume that the measurement noise is glint noise which describes the long-tailed nature of noise distribution. The model of glint noise is expressed by a mixture of two Gaussian components. One Gaussian component has a large variance and a small occurring probability, and the other has a small variance but a large occurring probability. The weighting coefficient (glint probability) in the mixture (percentage of contamination) is used to the non-Gaussian nature of the glint spikes. Further, assuming that the Gaussian terms are denoted by and , then the mixture distribution has the following form [18, 19]: where is a small positive value, represent the means, and , represent the variances. The measurement noise is expressed by a mixture of and , and the weighting coefficient is 0.4. The feedback gain in the compensation algorithm is 40, and the particle number is 100. Three experiments were done as follows.

*Experiment 1. *Six gyros outputs are all drifting and these drifts are initialed at different time instant. The drifting signal with the gyro is starting at the 2nd second. The drifting signal with the gyro is starting at the 6th second. The dc offset with the gyro is 2 starting at the 12th second. The dc offset with the gyro is −2 starting at the 20th second. The dc offset with the gyro is 2 starting at the 26th second. The drifting signal with the gyro is starting at the 32nd second. Simulation results are shown in Figures 1 and 2.

**(a)**

**(b)**

**(c)**

**(a)**

**(b)**

**(c)**

*Experiment 2. *The drifting signals with the gyros , are the same as Experiment 1. The drifting signal with the gyro is starting at the 26th second. Simulation results are shown in Figures 3 and 4.

**(a)**

**(b)**

**(c)**

**(a)**

**(b)**

**(c)**

*Experiment 3. *The drifting signals with the gyros are the same as Experiment 1. When the feedback gains are 5, 10, 40, 60, 80, and 120, respectively, the outputs of gyro are shown in Figures 5 and 6.

**(a)**

**(b)**

**(c)**

**(a)**

**(b)**

**(c)**

#### 5. Discussion

The real time sensor drift estimation algorithm (Section 3.1) can estimate the dc offset value when the faulty sensor is experiencing dc offset. The feedback compensated values are constant due to the constant dc offsets. Those sensors experiencing dc offset can be considered as not experienced drift when the dc offset is compensated by real time sensor drifts compensation algorithm (Section 3.2). Since the inertial navigation system requires at least three of gyroscope to measure three-directional speed of rotation, there are at least three sensors that do not experience fault drift to measure speed of rotation in the navigation system. If multisensors experience fault drift, the system should have at least three sensors that do not experience fault drift, otherwise the navigation system cannot work. The proposed algorithm can correct the faulty sensor. The substance of the proposed algorithm is used to estimate the fault drift value of the faulty sensor by the measurement of other sensors. If two sensors break down at the same time, parity equations would failure. In this situation, the algorithm cannot estimate the fault drift of the sensors. All in all, to ensure the effectiveness of the compensation algorithm, the sensors should not fail simultaneously, but the fault drift can exist at the same time. The impact of both drift and the feedback gain on the compensation system and the estimation of the error signal will be discussed one by one.

* The Impact of Drift on the Compensation System.* As shown in Figures 1 and 2, all drifts of gyros are compensated. Can we draw the conclusion that the proposed fault tolerant control algorithm can correct all these drifting gyros in the redundant inertial navigation system? The answer is obviously not. As shown in Figures 3 and 4, the proposed improved fault tolerant control algorithm can correct the drifting gyros . However, the improved fault tolerant control algorithm fails when the gyro starts drift at the 32nd second. That implies that the improved fault tolerant controlalgorithm cannot correct all these drifting gyros. Now the upcoming issue is under what circumstances, that the improved fault tolerant control algorithm can correct all these drifting gyros. According to the simulation results of Experiments 1 and 2, when a sensor starts drift, the sensor can be corrected by the improved fault tolerant control algorithm if the sum of the number of the sensor that did not experience drift and the sensor experienced dc offset but had been corrected is not less than three sensors. For example, the drifting gyros were corrected by the improved fault tolerant control algorithm in Figures 1 and 3. More than three gyros did not drift when the gyros experienced drift. In Figures 2 and 4, the drifting gyros were corrected by the proposed algorithm due to the gyros which did not drift and the gyro which experienced dc offset but had been corrected when gyros started drift. The drifting gyros were corrected by the proposed algorithm due to the gyros which did not drift and the gyro which experienced dc offset but had been corrected when gyros started drift.

The drifting gyros were corrected by the improved fault tolerant control algorithm in Figure 2 due to the gyro which experienced dc offset but had been corrected when gyros started drift. However, the improved fault tolerant control algorithm was failure when gyros started drift in Figure 4. This is because there were only two gyros and which experienced dc offset and had been corrected when gyros started drift. Therefore, the conclusion is that the improved fault tolerant control algorithm can correct the drifting sensor if the sum of the number of the sensor that did not drift and the sensor that experienced dc offset but had been corrected is not less than three.

* The Impact of the Feedback Gain on the Compensation System.* Figures 5 and 6 show the convergence of gyro outputs used in the improved fault tolerant control algorithm for various feedback gains, ranging from 5 to 120. According to the simulation results shown in Figure 5, the feedback gain of 5 is too small to reduce sensor errors quickly. It needs 3 seconds to eliminate gyro error when the feedback gain is 5. Intuitively, a large feedback gain in this compensation algorithm is preferred for two reasons. It can compensate for the fast changing drift signals, and it can quickly decrease the magnitudes of current errors, so that the constraint of local stability can be satisfied for the incoming sensor errors. On the other hand, the large feedback gain may lead to the oscillation of the system, and this oscillation would be beyond the stability region and stability constraint. This is the case of feedback gain 80 and 120, as shown in Figure 6.

The performance of the fault tolerant control algorithm largely depends on the choice of feedback gain. The inappropriate feedback gain will lead to the system failure [12]. The drift factor in the improved fault tolerant control algorithm is introduced, which can eliminate the dependence of the feedback gain in fault tolerant control system. As shown in the Figures 5 and 6, the improved fault tolerant control algorithm can correctly compensate the drift for the sensor when the feedback gain is 5, 10, 40, or 60. However, only the case with feedback gain of 8 can correctly compensate for the sensor drifts in the compensation algorithm proposed by Chen and You [12].

* The Estimation of the Error Signal*. Figure 7 shows the estimation of the error signal of the adaptive extended Kalman particle filter (AEKPF) and the traditional particle filter (TPF). The particle number is 800 in the TPF. As shown in plot, the AEKPF and the TPF can correctly estimate the drift for each sensor when the sensors do not experience fault drifts. The TPF cannot work well when the sensors experience fault drift, but the AEKPF can correctly estimate the drift for each sensor in real time.

**(a)**

**(b)**

**(c)**

**(d)**

**(e)**

**(f)**

Figure 8 shows the estimation error of the error signal for both the AEKPF and TPF. As shown in plot, the average estimation error of the AEKPF is nearly half of that of the TPF when the particle number of the AEKPF is 1/8 of TPF. As show in Table 1, the average estimation error of the AEKPF is when the particle number is 100, and the average estimation error of the TPF is when the particle number is 800.

**(a)**

**(b)**

**(c)**

**(d)**

**(e)**

**(f)**

The fault tolerant control system uses the real time estimation techniques to estimate the error signal and then compensates the error according to the estimated value. However, the estimated value of the error signal is not being very accurate due to the difference between the measured noise and the system model. The fault tolerant control algorithm can reduce the error signal but the error signal may not decrease to zero. Therefore, better results are expected when the calibration and other offline methods are used to further reduce the signal error further.

#### 6. Conclusion

This paper presents an improved fault tolerant control algorithm for the redundant inertial navigation system. The improved fault tolerant control algorithm employs the state estimation techniques to estimate the values of error signals and the state feedback technique to eliminate the error signals in real time. To overcome the shortcomings of the fault tolerant control algorithm proposed by Chen, the improved fault tolerant control algorithm applies an AEKPF to deal with the problem of non-Gaussian measurement noise and the problem of inaccurate system model. In addition, a drift factor is introduced in order to enlarge range of choice of the feedback gain. In short, the improved fault tolerant control algorithm can compensate the sensor drifts effectively and improve the robustness and reliability of the redundant inertial navigation system. Of course, the AEKPF which involved in this paper is not the only way to solve the problem of unknown noise characteristics. If the characteristics of the measurement noise and system noise can be identified at same time, the adaptive Kalman filter also can estimate sensor drifts in real time. The autocovariance least squares (ALSs) technique can estimate the measurement noise and system noise characteristics, but there are a variety of problems in ALS technique itself, such as the positive definiteness of ALS result, and time-varying noise. In this manuscript, the drift factor get from the normalized product of prior drift factor and current drift factor. However, the drift factor also can get from other method, such as fuzzy method. With the development of estimation techniques, the fault tolerant control algorithm can be improved by other methods.

#### Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

#### Acknowledgment

The paper is supported by the National Natural Science Foundation of China (no.60974104/F03030).