# Fault Diagnosis for Linear Discrete Systems Based on an Adaptive Observer

Authors: Jianwei Liu; Bin Jiang; Ke Zhang
Journal: Mathematical Problems in Engineering
 (2013)

---

## Abstract

This paper presents a fault diagnosis algorithm to estimate the fault for a class of linear discrete systems based on an adaptive fault estimation observer. And observer gain matrix and adaptive adjusting rule of the fault estimator are designed. Furthermore, the adaptive regulating algorithm can guarantee the first-order difference of a Lyapunov discrete function to be negative, so that the observer is ensured to be stable and fault estimation errors are convergent. Finally, simulation results of an aircraft F-16 illustrate  the advantages of the theoretic results that are obtained in this paper.


---

## Body

## 1. Introduction

As the scale and complexity of modern control systems are increasing, the requirements on system reliability are also increasing. Therefore, the design and analysis of fault detection and diagnosis (FDD) algorithms have received considerable attention during the past three decades. The development of FDD has been addressed by more and more authors and fruitful results have been obtained; see [1–3].The observer technology is one of the important methods for FDD and fault-tolerant control [4, 5]. Commonly used observer-based fault estimation methods include sliding mode observers [6], unknown input observers [7], H∞ filtering methods [8], neural networks observers [9], and adaptive observers [10, 11]. But most of them focus on the continuous systems, and only few results have been reported on the fault estimation design in discrete-time systems. The discrete-time is widely used in practical implementations, for example, computer control systems, networked control systems, and so forth [12]. Reference [13] designed an H∞ FD filter for a class of linear discrete-time systems in a networked environment. Reference [14] used an adaptive fault observer to deal with discrete-time systems, but it did not involve the issue of fault estimation. Reference [15] also dealt with discrete-time nonlinear systems, but its inequality functions were complex and it was difficult to get solutions. On the other hand, aircraft flight control systems are good examples for applications of fault accommodation/active reliable control, and the fault observers have been employed to detect faults [11].In this paper, a novel discrete-time actuator fault estimation scheme is proposed to deal with abrupt actuator failures. The proposed actuator fault estimation scheme is then applied by using the Lyapunov method. Simulation results of a numerical example are also given.The paper is organized as follows. Section2 describes the mathematical preliminaries and problem formulation. In Section 3, concerning the theoretical results of the proposed fault diagnosis scheme, a fault estimation scheme is proposed to deal with the actuator failures of discrete-time system. In Section 4, an example of aircraft flight control system is given to illustrate the performance of the proposed scheme. The concluding remarks are given in Section 5.


## 2. System Description and Preliminaries

Consider a discrete-time linear system(1)x(k+1)=Ax(k)+Bu(k)+Ef(k),y(k)=Cx(k),
where x(k)∈Rn is the state, u∈Rm is the control input, f(k)∈Rq with q≤m is the function to model the actuator faults, and y(k)∈Rr is the measurable output. Matrices A, B, C, and E are real matrices of appropriate dimensions. Matrix E is of full column rank; that is, rank (E)=q.For estimating the actuator faultf(k), an adaptive observer is constructed as follows:
(2)x^(k+1)=Ax^(k)+Bu(k)+Ef^(k)-L[y^(k)-y(k)],y^(k)=Cx^(k),
where x^(k)∈Rn is the observer state vector, y^(k)∈Rr is the observer output vector, f^(k)∈Rq is the estimate of the actuator fault f(k), L∈Rn×r is the observer gain to be designed.Denoting that(3)ex=x^(k)-x(k),ey=y^(k)-y(k),ef=f^(k)-f(k),
then the estimation error dynamics is modeled as follows:
(4)ex(k+1)=(A-LC)ex(k)+Eef(k),ey(k)=Cex(k).


## 3. Main Results

### 3.1. Modified Adaptive Fault Estimation Algorithm

Theorem 1.
For constant actuator faultf(k), if there exist matrices P>0 and Q>0 and positive scalars ε and defined
(5)Γ=2(εEET+Q)-1
such that the following condition holds:
(6)Ξ=[(A-LC)TP(A-LC)-P(A-LC)TPE*ET(-ΓTQΓ+P)E]<0,
then the algorithm
(7)Δf^(k+1)=-εETΓ[ex(k+1)-(A-LC)ex(k)]
and the fault estimation
(8)f^(k+1)=f^(k)+Δf^(k+1)=f^(0)+∑i=1k+1Δf^(i)
can realize estimation error of both the state and fault uniformly bounded for the entire time period.Proof.
From system (4), one gets Eef(k)=ex(k+1)-(A-LC)ex(k), so the algorithm (7) becomes
(9)Δf^(k+1)=-εETΓ[ex(k+1)-(A-LC)ex(k)]=-εETΓEef(k).
Then,
(10)ef(k+1)=f^(k+1)-f(k+1)=f^(k+1)-f^(k)+f^(k)-f(k+1).
Because f(k) is constant, f(k+1)=f(k) and Δf^(k+1)=f^(k+1)-f^(k); then one gets
(11)ef(k+1)=Δf^(k+1)+ef(k)=(I-εETΓE)ef(k).
Based on (4) and (11), we can obtain the following augmented system:
(12)[ex(k+1)ef(k+1)]=[A-LCE0I-εETΓE][ex(k)ef(k)].
Consider the following Lyapunov function:
(13)V(k)=exT(k)Pex(k)+ε-1efT(k)ef(k).
Then,
(14)ΔV(k)=exT(k+1)Pex(k+1)-exT(k)Pex(k)+ε-1efT(k+1)ef(k+1)-ε-1efT(k)ef(k)=exT(k)[(A-LC)TP(A-LC)-P]ex(k)+2exT(k)(A-LC)TPEef(k)+efT(k)ETPEef(k)+ε-1efT(k)(I-ETΓE)T(I-ETΓE)ef(k)-ε-1efT(k)ef(k)=exT(k)[(A-LC)TP(A-LC)-P]ex(k)+2exT(k)(A-LC)TPEef(k)+efT(k)ET(-ΓTQΓ+P)Eef(k).
Denoting that e(k)=[ex(k)ef(k)]T, then ΔV(k)=e(k)TΞe(k)<0, and Ξ is defined as (6).Remark 2.
The pair(A,C) is observable, and define the observe matrix U=[CT(CA)T…(CAl-1)T]T. So, it gets that the rank of U is n. When C is full column rank,we have
(15)Δf^(k+1)=-εETΓ[ex(k+1)-(A-LC)ex(k)]=-εETΓ[C-1ey(k+1)-(AC-1-L)ey(k)].
At the first step, the online fault estimation is as follows:
(16)f^(1)=f^(0)+Δf^(1)=f^(0)-εETΓ[C-1ey(1)-(AC-1-L)ey(0)].
And at the kth step, fault estimation is as (8).
IfC is not full column rank, then more system outputs and observer estimations should be used to get the state estimation.
When the outputy(k) satisfies Lipschitz condition, define lmin=argmaxl[rank(U)], and define F=(A-LC)-1 and UF=[CT(CF)T⋯(CFlmin-1)T]T; then one can get
(17)Δf^(k+1)=-εETΓ{UF-1[ey(k+1)T⋯ey(k+2-lmin)T]T-AUF-1[ey(k)T⋯ey(k+1-lmin)T]+Ley(k)}.
Then, fault estimation is f^(k+1)=f^(k)+Δf^(k+1)=f^(0)+∑i=1k+1Δf^(i).Remark 3.
Equation (6) is a nonlinear matrix inequality about matrices Γ and Q, and it is not easy to be calculated, so let Q=εEET+δtr(EET). And after we choose 0<δ<ε, the solution can be found easily.Remark 4.
If the faultf(k) is not constant but is a linear function, such as f(k+1)=Hf(k), then
(18)ef(k+1)=(H-ETΓE)ef(k).
Consider the same Lyapunov function V(k)=exT(k)Pex(k)+ε-1efT(k)ef(k). We can also get
(19)Ξ=[(A-LC)TP(A-LC)-P(A-LC)TPE*ET(-εΓTQΓ+P)E+ε(HTH-I)]<0.
The proof is smilar to that of Theorem 1 and it is omitted here for brevity.


## 3.1. Modified Adaptive Fault Estimation Algorithm

Theorem 1.
For constant actuator faultf(k), if there exist matrices P>0 and Q>0 and positive scalars ε and defined
(5)Γ=2(εEET+Q)-1
such that the following condition holds:
(6)Ξ=[(A-LC)TP(A-LC)-P(A-LC)TPE*ET(-ΓTQΓ+P)E]<0,
then the algorithm
(7)Δf^(k+1)=-εETΓ[ex(k+1)-(A-LC)ex(k)]
and the fault estimation
(8)f^(k+1)=f^(k)+Δf^(k+1)=f^(0)+∑i=1k+1Δf^(i)
can realize estimation error of both the state and fault uniformly bounded for the entire time period.Proof.
From system (4), one gets Eef(k)=ex(k+1)-(A-LC)ex(k), so the algorithm (7) becomes
(9)Δf^(k+1)=-εETΓ[ex(k+1)-(A-LC)ex(k)]=-εETΓEef(k).
Then,
(10)ef(k+1)=f^(k+1)-f(k+1)=f^(k+1)-f^(k)+f^(k)-f(k+1).
Because f(k) is constant, f(k+1)=f(k) and Δf^(k+1)=f^(k+1)-f^(k); then one gets
(11)ef(k+1)=Δf^(k+1)+ef(k)=(I-εETΓE)ef(k).
Based on (4) and (11), we can obtain the following augmented system:
(12)[ex(k+1)ef(k+1)]=[A-LCE0I-εETΓE][ex(k)ef(k)].
Consider the following Lyapunov function:
(13)V(k)=exT(k)Pex(k)+ε-1efT(k)ef(k).
Then,
(14)ΔV(k)=exT(k+1)Pex(k+1)-exT(k)Pex(k)+ε-1efT(k+1)ef(k+1)-ε-1efT(k)ef(k)=exT(k)[(A-LC)TP(A-LC)-P]ex(k)+2exT(k)(A-LC)TPEef(k)+efT(k)ETPEef(k)+ε-1efT(k)(I-ETΓE)T(I-ETΓE)ef(k)-ε-1efT(k)ef(k)=exT(k)[(A-LC)TP(A-LC)-P]ex(k)+2exT(k)(A-LC)TPEef(k)+efT(k)ET(-ΓTQΓ+P)Eef(k).
Denoting that e(k)=[ex(k)ef(k)]T, then ΔV(k)=e(k)TΞe(k)<0, and Ξ is defined as (6).Remark 2.
The pair(A,C) is observable, and define the observe matrix U=[CT(CA)T…(CAl-1)T]T. So, it gets that the rank of U is n. When C is full column rank,we have
(15)Δf^(k+1)=-εETΓ[ex(k+1)-(A-LC)ex(k)]=-εETΓ[C-1ey(k+1)-(AC-1-L)ey(k)].
At the first step, the online fault estimation is as follows:
(16)f^(1)=f^(0)+Δf^(1)=f^(0)-εETΓ[C-1ey(1)-(AC-1-L)ey(0)].
And at the kth step, fault estimation is as (8).
IfC is not full column rank, then more system outputs and observer estimations should be used to get the state estimation.
When the outputy(k) satisfies Lipschitz condition, define lmin=argmaxl[rank(U)], and define F=(A-LC)-1 and UF=[CT(CF)T⋯(CFlmin-1)T]T; then one can get
(17)Δf^(k+1)=-εETΓ{UF-1[ey(k+1)T⋯ey(k+2-lmin)T]T-AUF-1[ey(k)T⋯ey(k+1-lmin)T]+Ley(k)}.
Then, fault estimation is f^(k+1)=f^(k)+Δf^(k+1)=f^(0)+∑i=1k+1Δf^(i).Remark 3.
Equation (6) is a nonlinear matrix inequality about matrices Γ and Q, and it is not easy to be calculated, so let Q=εEET+δtr(EET). And after we choose 0<δ<ε, the solution can be found easily.Remark 4.
If the faultf(k) is not constant but is a linear function, such as f(k+1)=Hf(k), then
(18)ef(k+1)=(H-ETΓE)ef(k).
Consider the same Lyapunov function V(k)=exT(k)Pex(k)+ε-1efT(k)ef(k). We can also get
(19)Ξ=[(A-LC)TP(A-LC)-P(A-LC)TPE*ET(-εΓTQΓ+P)E+ε(HTH-I)]<0.
The proof is smilar to that of Theorem 1 and it is omitted here for brevity.


## 4. Simulation Results

In this section, the fault estimation algorithm is applied to a model of the vertical dynamics of an F-16 aircraft. The model is taken from [16]. The signals and their generation in the simulations are summarized in Table 1, where size means the variance for the inputs and constant magnitude for the faults, respectively.Table 1
Signals in the F-16 simulation study.
Signal
Not.
Meaning
Size
Inputs
u
1
Spoiler angle (0.1 deg)
1
u
2
Forward accelerations (m/s2)
1
u
3
Elevator angle (deg)
1
Outputs
y
1
Relative altitude (m)
10
-
4
y
2
Forward speed (m/s)
10
-
6
y
3
Pitch angle (deg)
10
-
6
States
x
1
Altitude (m)
10
-
4
x
2
Forward speed (m/s)
10
-
4
x
3
Pitch angle (deg)
10
-
4
x
4
Pitch rate (deg/s)
10
-
4
x
5
Vertical speed (deg/s)
10
-
4
Faults
f
1
Spoiler angle actuator
0.5
f
2
Forward acceleration actuator
0.1
f
3
Elevator angle actuator
1We have the following numerical values in (1):
(20)A=[10.00140.11330.0004-0.099700.9945-0.0171-0.00050.007000.000310.0957-0.004900.006100.9130-0.09660-0.02860.00020.10040.9879],B=[-0.007800.0003-0.01150.099700.02120-0.00810.41500.0003-0.15890.1794-0.0014-0.0158],E=[-0.007800.0003-0.01150.099700.02120-0.0810.41500.0003-0.15890.1794-0.0014-0.0158],C=[100000100000100],lmin=2,UF=[CT(CF)T]T.
By solving conditions in Theorem 1, one can obtain the following solutions after iterations: L = [0.0001 0 0;  0 0.0001 0;  0 0 0.0002;  0.0001 0.0001 0;  0 0.0001 0.0001]; ε = 1, δ = 0.1. Then, one can take the learning rate Γ = [189923  −147.6  646.2  2443  1727.8;  −147.6  100.6  1.31  −0.58  1.24;  646.2  1.31 9365  −465.8  −1.27;   2443  −0.589  −465.8  71.3  −5.26;   1727.8  1.24  −1.27  −5.26 87.5].In this simulation, it is assumed that three kinds of actuator faultsfi(k) are, respectively, created as
(21)f1(k)={0,k<100,0.5,k>100,f2(k)isfree,f3(k)={0,k<20001,k>2000.
The fault f1(k) estimation result is shown in Figure 1, while Figure 2 illustrates the estimation of f2(k), and Figure 3 illustrates the estimation of f3(k).Figure 1
Estimation of the faultf1(k).Figure 2
Estimation of the faultf2(k).Figure 3
Estimation of the faultf3(k).


## 5. Conclusions

In this paper, a fault estimation algorithm is established for linear discrete systems with actuator faults. The algorithm can enhance the performance of fault estimation. And simulation results show that using the algorithm, the accuracy of fault estimation can be improved evidently. Extension of the proposed fault estimation method to more general nonlinear systems is an interesting issue, which will be investigated in our future research work.



---

*Source: 343524-2013-11-12.xml*