# Fault-Tolerant Control with Control Allocation for Time-Varying Linear Systems by Using Continuous Integral Sliding Modes

Authors: Oziel Hernández-Durán; Rosalba Galván-Guerra; Juan Eduardo Velázquez-Velázquez; Benjamín A. Itzá-Ortiz
Journal: Mathematical Problems in Engineering
 (2021)

---

## Abstract

A fault-tolerant control algorithm based on sliding modes is proposed to ensure the tracking of the desired trajectory for time-varying systems even in the presence of actuator faults. The proposed algorithm uses a continuous integral sliding mode and a linear quadratic regulator, together with control allocation and system inversion techniques, resulting in both a finite-time exact compensation of the faults and the exponential tracking of the reference.


---

## Body

## 1. Introduction

In general, linear and nonlinear systems are vulnerable or susceptible to failure. A fault changes the behavior of a system so that the system can no longer fulfill its objective. Faults are usually classified as system parameter faults, sensor faults, and actuator faults [1]. As airplanes or aerospace systems, there are many applications that for safety require fault-tolerant control (FTC) schemes that guarantee the fulfillment of the control objective in the presence of faults.This work only considers actuator faults, which can be partial or total, and it is assumed that the system has redundancy in the actuators. This redundancy allows the control signal in the actuators to be reconfigured to the fault. Therefore, satisfactory performance can be maintained even with critical main actuator faults.Fault tolerance cannot be achieved by typical state feedback control [1]. However, this problem can be addressed in several ways, such as robust control (passive fault tolerance) [2, 3], adaptive control (active fault tolerance) [4], detection and isolation of faults, or by combinations of these techniques [5]. Furthermore, faults may be seen as a disturbance, so if a robust closed-loop control is designed, the effects of any of these disturbances can be minimized.One way to make the system robust is through sliding mode control [6, 7]. Methodologies based on sliding modes make the system insensitive to the matched effects of faults during the sliding phase, allowing fault detection and isolation [8–10].If the faults are present from the initial time, the conventional integral sliding modes (ISMs) [11, 12] can be used due to the absence of the reaching phase. In [13], a fault control strategy for linear time-invariant (LTI) systems is proposed. It uses an ISM control law to compensate for the matched effects of the faults right after the initial time. For nonlinear systems, the ISM is used for a flexible spacecraft in [14]. However, in [15], an FTC approach based on ISM is given for linear parameter-varying (LPV) systems. In [16], this scheme is extended for linear time-varying (LTV) systems. Unfortunately, the ISM has the disadvantage of producing a high level of chattering, limiting its application.To decrease the chattering, for relative degree one systems, the continuous sliding modes based on the supertwisting algorithm (STA) [17, 18] are a good option since they generate a continuous control law. On the contrary, the continuous integral sliding modes (CISM) combine the ISM with the STA [19, 20], ensuring the system's nominal behavior using a continuous control signal, thus reducing the chattering. In [21], an FTC scheme based on CISM for LTI systems is proposed, guaranteeing convergence right after the initial time by assuming the absence of faults until the controller has converged. However, this assumption is quite restrictive since the system may present faults at the initial time.This paper aims to design a fault-tolerant control algorithm against actuator faults, based on continuous integral sliding modes with online control allocation for time-varying linear systems, with redundancy in the actuators. This algorithm can be applied to nonlinear systems if tracking linearization is used, turning the tracking problem into a stabilization one. The designed algorithm ensures the theoretically exact compensation of actuator faults in finite time and ensures that the system affected by the failures behaves as the nominal system in finite time using a continuous control signal. The effectiveness of the proposed algorithm is shown by simulating the longitudinal movement of an airplane in MATLAB.This paper is organized as follows. Some preliminary results and the problem formulation are described in Section2. The controller design that stabilizes in finite time the tracking error is given in Section 3. Section 4 gives the simulation results and the performed analysis. Finally, Section 5 contains the conclusions of the paper.


## 2. Preliminaries and Problem Formulation

In this section, we introduce some preliminary results used throughout the paper and establish the formulation of the problem.


### 2.1. Supertwisting Algorithm

Consider a relative degree one-scalar system:(1)s˙t=ut+ψt,where ψt is a Lipschitz uncertainty/perturbation, i.e., ψ˙t≤L. The STA [15] is a second-order sliding mode control that drives the sliding variable s and its derivatives to zero in finite time. It generates a continuous control and attenuates the chattering effect by hiding the switching term under an integral. In general, the STA controller is given by(2)ut=−k1st1/2+wt,w˙t=−k2st0,where ⋅p=⋅psign⋅ and k1 and k2 are designed to guarantee the finite-time convergence of s and s˙ to the origin in finite time. This controller compensates in finite-time Lipschitz uncertainties/perturbations.Theorem 1 (see [17, 18]).
System (1) is finite-time stable if the parameters of the system (2) satisfy(3)k2>L;k1>k2+L.


### 2.2. Problem Formulation

Consider a nonlinear system:(4)x˙t=ft,xt+gt,xtut;xt0=xo,where ft,xt,gt,xt are smooth vector fields, defined on an open set D⊂Rn, ut∈Rm is the control input, and xt∈Rn is the state vector, and it is fully known. For simplicity, assume that the previous system has been transformed to its normal form and linearized around a trajectory so that the dynamics of the error are represented by the following LTV system, which is subject to actuator fault:(5)z˜˙t=Atz˜t+ButWtut;z˜t0=z˜o,where At∈Rn×n and But∈Rn×m are known matrices, Wt=diagw1t,…,wmt∈Rm×m is the fault matrix, and z˜t∈Rn is the tracking error. Assume that the range of the matrix But=l<m for all t; i.e., there is redundancy in the actuators. So, the matrix But can be factorized using the range factorization [22] as(6)But=BνtBt,where Bνt∈Rn×l and Bt∈Rl×m, both with rank l. Hence, the faulty system (5) has been transformed into(7)z˜˙t=Atz˜t+BνtBtWtut.The fault matrixWt denotes the possible actuators faults; if wit=1 for i=1,…,m, there is no fault in the i-actuator, while wit=0 denotes its complete failure. If 0<wit<1, there is a partial fault in the actuator. Note that if wit=0 for all t, the system loses controllability, so it is required to establish the characteristics of the faults that the system can withstand without losing controllability.A strategy that takes the system to a free-redundancy form is presented, where the faults are seen as disturbances. Such a strategy allows designing a control law that compensates the matched faults' effects in finite time and exponentially stabilizes the error.


## 2.1. Supertwisting Algorithm

Consider a relative degree one-scalar system:(1)s˙t=ut+ψt,where ψt is a Lipschitz uncertainty/perturbation, i.e., ψ˙t≤L. The STA [15] is a second-order sliding mode control that drives the sliding variable s and its derivatives to zero in finite time. It generates a continuous control and attenuates the chattering effect by hiding the switching term under an integral. In general, the STA controller is given by(2)ut=−k1st1/2+wt,w˙t=−k2st0,where ⋅p=⋅psign⋅ and k1 and k2 are designed to guarantee the finite-time convergence of s and s˙ to the origin in finite time. This controller compensates in finite-time Lipschitz uncertainties/perturbations.Theorem 1 (see [17, 18]).
System (1) is finite-time stable if the parameters of the system (2) satisfy(3)k2>L;k1>k2+L.


## 2.2. Problem Formulation

Consider a nonlinear system:(4)x˙t=ft,xt+gt,xtut;xt0=xo,where ft,xt,gt,xt are smooth vector fields, defined on an open set D⊂Rn, ut∈Rm is the control input, and xt∈Rn is the state vector, and it is fully known. For simplicity, assume that the previous system has been transformed to its normal form and linearized around a trajectory so that the dynamics of the error are represented by the following LTV system, which is subject to actuator fault:(5)z˜˙t=Atz˜t+ButWtut;z˜t0=z˜o,where At∈Rn×n and But∈Rn×m are known matrices, Wt=diagw1t,…,wmt∈Rm×m is the fault matrix, and z˜t∈Rn is the tracking error. Assume that the range of the matrix But=l<m for all t; i.e., there is redundancy in the actuators. So, the matrix But can be factorized using the range factorization [22] as(6)But=BνtBt,where Bνt∈Rn×l and Bt∈Rl×m, both with rank l. Hence, the faulty system (5) has been transformed into(7)z˜˙t=Atz˜t+BνtBtWtut.The fault matrixWt denotes the possible actuators faults; if wit=1 for i=1,…,m, there is no fault in the i-actuator, while wit=0 denotes its complete failure. If 0<wit<1, there is a partial fault in the actuator. Note that if wit=0 for all t, the system loses controllability, so it is required to establish the characteristics of the faults that the system can withstand without losing controllability.A strategy that takes the system to a free-redundancy form is presented, where the faults are seen as disturbances. Such a strategy allows designing a control law that compensates the matched faults' effects in finite time and exponentially stabilizes the error.


## 3. Control Design

Consider the LTV system subject to actuator fault (7), and assume the following:(1)
System (1) is controllable.(2)
The matrixBνt is a function that can be differentiated at least once. Also, both Bνt and B˙vt are bounded and known.Since system (7) has redundancy in the actuators, it is necessary to distribute the full control signal in the actuators. A strategy to achieve this is through the control allocation allowing to calculate the control input ut. To carry out the control allocation, assume that no fault is affecting the system (5), that is, Wt=Im. Then,(8)z˜˙t=Atz˜t+BνtBtut.Letν˜t=Btut, then ut can be reconstructed, solving the minimization problem:(9)minuTtutsubject toBtut=ν˜t.The solution to this optimization problem [23] is(10)ut=B+tν˜t,where B+t=BTtBtBTt−1.Now that theut control has been calculated, system (8) is rewritten, and the actuator faults can be considered as follows:(11)z˜˙t=Atz˜t+BνtBtWtB+tν˜t.The set of possible actuator faults is defined as(12)W=Wt=diagw1t,w2t,…,wmt|detΓt≠0∧Wt≥wmin>0,where Γt=BtWtB+t.Becausel<m, the det Γt≠0 even if m−l actuators have a total failure. If more than m−l actuators fail, system stability cannot be ensured [13].In the case of a fault-free system, that is,Wt=I, the system (11) reduces to(13)z˜˙nt=Atz˜nt+Bνtνnt.This nominal fault-free system is used to design the nominal control. Hence, assume that the pairAt,Bνt is controllable. Therefore, it is possible to design a state feedback control law νnt=−Ktz˜nt such that the closed-loop system is exponentially stable.To compensate for the effects of the actuator faults, let us define a time-varying integral sliding surface:(14)sz˜t=Gtz˜t−z˜t0−∫t0tGτAτz˜τ+Bντvnτ+G˙τz˜τ−z˜t0dτ,where z˜t0=z˜o and Gt is a design matrix such that det GtBνt≠0.The derivative of the sliding surface along the trajectories of (8) is given by(15)s˙z˜t=GtBνtΓtν˜t−GtBνtνnt.Assume thatν˜t=νnt+νIt and Gt=Bν+t, where Bν+t=BνTtBνt−1BνTt, then(16)s˙z˜t=ΓtνIt+Γt−Ilνnt.The equivalent control that maintains the trajectories of system (11) in the sliding mode is(17)veqt=−Γt−1Γt−Ilνnt.During the sliding phase, the system (11) takes the following form:(18)z˜˙t=Atz˜t+Bνtνnt.Observe that, on the sliding mode, system (18) is equivalent to system (13).Remark 1.
Note that the proposed sliding variable (14) contains the nominal dynamics of the LTV system. Hence, if the sliding mode is guaranteed, the actuator faults' matched effects are wholly compensated.
The controller is designed, so system (11) in the sliding mode reaches and remains on the origin. Therefore, the proposed controller has the following form:(19)νIt=Γ^t−1−k1sz˜t1/2−k2∫t0tsz˜t0dτ︸νbt,where Γ^t is a numerical approximation of the matrix Γt. The computation procedure to obtain this approximation is given in the next section, k1,k2 are designed constants, and the function sz˜tq is defined as(20)sz˜tq=s1z˜tqsigns1z˜t⋮slz˜tqsignslz˜t.
Therefore, equation (16) can be rewritten as(21)s˙z˜t=−k1sz˜t1/2+Ωt,Ω˙t=−k2sz˜t0+W¯˙t,where W¯t=Γt−Ilνnt and W¯˙t≤L.
According to the previous construction development and if we choosek1=1.5L and k2=1.1L as in [17], it can be seen that the system (21) complies with Theorem 1, so stability can be ensured, and it can be concluded that the sliding variable sz˜t converges to zero in finite time, and therefore, system (11) in sliding mode will behave like system (13).Remark 2.
The convergence velocity of the proposed approach can be improved by increasing the parametersk1 and k2. Moreover, a specific reaching time can be guarantee by following the scheme proposed in [24]. However, the greater the parameters, the bigger the chattering.


### 3.1. Fault Matrix Approximation

The proposed controller (19) uses Γt, so an approximation is necessary. Let Γ^t be an approximation of Γt obtained by a fault-identification algorithm as in [13]. Consider the nonlinear system (4); for simplicity, assume that the system (4) has been transformed to its normal form. Hence, it can be represented as(22)z˙t=fzt,t+BνtΓtν˜t,where ν˜t=νnt+νIt. Since the state zt is completely known, z˙t can be calculated in finite time by using the Levant differentiator [25]. To obtain Γ^t, the following residual is defined: r=z˙t−z˙nt, where z˙nt is the nominal system; therefore,(23)r=BνtΓtνIt+νnt−Bνtνnt.LetνIt=Γ^−1tνbt, then(24)Γt=Bν+tr+νntΓ^−1tνbt+νnt−1.Note that, with this method, it is not possible to know the value of the faultswi;i=1,…,m. Moreover, the proposed approach may be affected by the used identification algorithm.


## 3.1. Fault Matrix Approximation

The proposed controller (19) uses Γt, so an approximation is necessary. Let Γ^t be an approximation of Γt obtained by a fault-identification algorithm as in [13]. Consider the nonlinear system (4); for simplicity, assume that the system (4) has been transformed to its normal form. Hence, it can be represented as(22)z˙t=fzt,t+BνtΓtν˜t,where ν˜t=νnt+νIt. Since the state zt is completely known, z˙t can be calculated in finite time by using the Levant differentiator [25]. To obtain Γ^t, the following residual is defined: r=z˙t−z˙nt, where z˙nt is the nominal system; therefore,(23)r=BνtΓtνIt+νnt−Bνtνnt.LetνIt=Γ^−1tνbt, then(24)Γt=Bν+tr+νntΓ^−1tνbt+νnt−1.Note that, with this method, it is not possible to know the value of the faultswi;i=1,…,m. Moreover, the proposed approach may be affected by the used identification algorithm.


## 4. Simulation Results

Some MATLAB simulations are presented to validate the above results. Consider the longitudinal motion of an aircraft [26]:(25)γ˙θ˙q˙=1mVtq¯SCLx+Tnsinα+σt−mgcosγq1Iyq¯Sc¯Cmx+Tnιtzcosσt+00001Iyq¯Sc¯dCmdδe1Iyq¯Sc¯dCmdδihδeδih,where θ,q,γ, δe, and δih represent pitch angle, pitch rate, flight path angle, elevator, and horizontal stabilizer, respectively. The other parameters are Vt, α, m, g, Iy, Tn, ιtz, and σt which represent true airspeed, angle of attack, mass, gravity, the body axis moment of inertia, total engine thrust, the distance from the engine centerline to the fuselage reference line, and engine inclination angle, respectively. These parameters are available in [27].The desired trajectory is shown in Figure1, and the simulations were made considering that the plane is at 6100 meters above sea level and with a speed of 0.8 Mach. The system is linearized along the desired trajectory to obtain an LTV model. The nominal controller is composed of an auxiliary control that maintains the system on the desired trajectory and a linear quadratic regulator (LQR). The auxiliary control law is obtained by using a typical inversion technique. In the following sections, the following 2 cases will be analyzed:(i)
In the first case, the simulation begins considering that there are no faults in the actuators, and after some time, it introduces a partial fault in the horizontal stabilizer, which will become a total fault over time and finally add a partial failure in the elevator.(ii)
In the second case, a time-varying fault is simulated in the horizontal stabilizer.Figure 1
Desired trajectory: (a) pitch angle; (b) pitch rate; (c) flight path angle.
(a)(b)(c)In both cases, the CISM controller is designed following the proposed approach and considering a perturbation boundL=3.


### 4.1. Piecewise Continuous Fault

For this simulation, in the initial moment, neither the elevator nor the horizontal stabilizer has failures. After 300s, a partial failure of 50% is introduced in the horizontal stabilizer. From the second 600, the partial failure of the horizontal stabilizer becomes a total failure. Finally, after 900s, a partial failure of 70% is added to the elevator, i.e.,(26)w1=1,ift∈0,900,0.7,ift∈900,1200,w2=1,ift∈0,300,0.5,ift∈300,600,0,ift∈600,1200,where t is the simulation time.In Figure2, we can see that, from the first moment, the value of Γt is known, i.e., Γ^t=Γt. Observe that, with the considered faults, the inverse of Γt always exists.Figure 2
(a)Γ^t and (b) Γt of the case 1.
(a)(b)In Figure3, it can be noted that the error is zero in all state variables. The proposed fault is not Lipschitz in all t, which causes the controller to lose its convergence in the points where the faults are non-Lipschitz. This effect can be seen as peaks in the pitch rate error in the seconds 300 s, 600 s, and 900 s.Figure 3
Tracking error case 1: (a) pitch angle error; (b) pitch rate error; (c) flight path angle error.
(a)(b)(c)Figure4 shows the control signal made up of the LQR and the CISM, introduced into the elevator and the horizontal stabilizer, respectively. Observe how the control signal increases in the seconds where the fault is introduced. The sliding variable remains at zero, but as expected, the variable ceases to be zero in the seconds where the fault is not Lipschitz and re-converges in finite time.Figure 4
Control signal and the sliding surface of case 1: (a) elevator; (b) horizontal stabilizer; (c) sliding surface.
(a)(b)(c)


### 4.2. Time-Varying Fault

For simulation purposes, a time-varying fault in the horizontal stabilizer is considered, i.e.,w1=1,w2=1/2cosπ/21t+0.5, where t is the simulation time.In Figure5, we can see that, as in Figure 2, from the first moment, Γ^t=Γt. Note that, with the considered fault, Γt is always invertible.Figure 5
(a)Γ^t and (b) Γt of the case 2.
(a)(b)As shown in Figure6, the error converges to zero in finite time in all the state variables, so it can be concluded that the desired trajectory is followed in the same manner. Note that, in comparison with the first case, since the considered faults fulfill the Lipschitz condition for all t, the controller never loses its convergence.Figure 6
Tracking error case 2: (a) pitch angle error; (b) pitch rate error; (c) flight path angle error.
(a)(b)(c)As seen in Figure7, the elevator control signal and the horizontal stabilizer have several peaks. This behavior is caused by the shape of Γ^t. At those times, Γ^t is close to zero; i.e., the failure is near to be total. The value of the faults may increase the control signal necessary to maintain the system on the surface. Hence, the more severe the fault is, the bigger the necessary control signal will be.Figure 7
Control signal and the sliding behavior of the case 2: (a) elevator; (b) horizontal stabilizer; (c) sliding surface.
(a)(b)(c)The simulations show that, in the presence of actuator faults in both cases, the trajectory tracking is assured exponentially by compensating the faults' effects in finite time.


## 4.1. Piecewise Continuous Fault

For this simulation, in the initial moment, neither the elevator nor the horizontal stabilizer has failures. After 300s, a partial failure of 50% is introduced in the horizontal stabilizer. From the second 600, the partial failure of the horizontal stabilizer becomes a total failure. Finally, after 900s, a partial failure of 70% is added to the elevator, i.e.,(26)w1=1,ift∈0,900,0.7,ift∈900,1200,w2=1,ift∈0,300,0.5,ift∈300,600,0,ift∈600,1200,where t is the simulation time.In Figure2, we can see that, from the first moment, the value of Γt is known, i.e., Γ^t=Γt. Observe that, with the considered faults, the inverse of Γt always exists.Figure 2
(a)Γ^t and (b) Γt of the case 1.
(a)(b)In Figure3, it can be noted that the error is zero in all state variables. The proposed fault is not Lipschitz in all t, which causes the controller to lose its convergence in the points where the faults are non-Lipschitz. This effect can be seen as peaks in the pitch rate error in the seconds 300 s, 600 s, and 900 s.Figure 3
Tracking error case 1: (a) pitch angle error; (b) pitch rate error; (c) flight path angle error.
(a)(b)(c)Figure4 shows the control signal made up of the LQR and the CISM, introduced into the elevator and the horizontal stabilizer, respectively. Observe how the control signal increases in the seconds where the fault is introduced. The sliding variable remains at zero, but as expected, the variable ceases to be zero in the seconds where the fault is not Lipschitz and re-converges in finite time.Figure 4
Control signal and the sliding surface of case 1: (a) elevator; (b) horizontal stabilizer; (c) sliding surface.
(a)(b)(c)


## 4.2. Time-Varying Fault

For simulation purposes, a time-varying fault in the horizontal stabilizer is considered, i.e.,w1=1,w2=1/2cosπ/21t+0.5, where t is the simulation time.In Figure5, we can see that, as in Figure 2, from the first moment, Γ^t=Γt. Note that, with the considered fault, Γt is always invertible.Figure 5
(a)Γ^t and (b) Γt of the case 2.
(a)(b)As shown in Figure6, the error converges to zero in finite time in all the state variables, so it can be concluded that the desired trajectory is followed in the same manner. Note that, in comparison with the first case, since the considered faults fulfill the Lipschitz condition for all t, the controller never loses its convergence.Figure 6
Tracking error case 2: (a) pitch angle error; (b) pitch rate error; (c) flight path angle error.
(a)(b)(c)As seen in Figure7, the elevator control signal and the horizontal stabilizer have several peaks. This behavior is caused by the shape of Γ^t. At those times, Γ^t is close to zero; i.e., the failure is near to be total. The value of the faults may increase the control signal necessary to maintain the system on the surface. Hence, the more severe the fault is, the bigger the necessary control signal will be.Figure 7
Control signal and the sliding behavior of the case 2: (a) elevator; (b) horizontal stabilizer; (c) sliding surface.
(a)(b)(c)The simulations show that, in the presence of actuator faults in both cases, the trajectory tracking is assured exponentially by compensating the faults' effects in finite time.


## 5. Conclusions

A fault-tolerant control scheme for time-varying linear systems is presented. The proposed scheme uses the LQR to stabilize the nominal system so that when an actuator fault occurs, the integral sliding mode makes the faulty system behave as the nominal system in finite time. On the contrary, the control allocation is responsible for distributing the control signal, ensuring that the faulty system performs like the nominal system in finite time. An application to the longitudinal motion of an aircraft is included. Simulations are included showing the effectiveness of the proposed fault-tolerant control scheme.



---

*Source: 6697838-2021-03-10.xml*