1 Introduction

The design of fault tolerant control (FTC) is very important for safety and reliability of modern engineering systems. Actuator faults may cause undesired system behavor and sometimes lead to instability or even catastrophic accidents. For example, in aircraft, uneven pressure in the hydraulic system may lead to problems in controlling the stabilization rudder[1]. It is necessary to develop approaches that would accommodate faults during operation. Adaptive method has been widely used for FTC design due to its ability of learning. In [2], an adaptive FTC against lock-in-place actuator faults for linear systems has been presented. In [3], an adaptive compensation scheme is developed for a class of nonlinear multi-input multi-output (MIMO) systems to ensure the closed-loop signal boundedness and asymptotic output tracking despite unknown actuator failures. Ye and Yang[4] proposed an adaptive fault-tolerant flight controller design method. This approach is based on the online estimation of an eventual fault and the addition of a new control law to the normal one. This allows to reduce the fault effect on the system without the need for a fault detection and isolation mechanism. However, all these approaches can be only used in the case of systems with parameter uncertainties.

Thanks to the universal approximation theorem presented in [5], several adaptive fuzzy approaches have been presented in the literature to resolve the tracking problems of the unknown nonlinear systems[313]. However, few studies using fuzzy adaptive control have been extended to FTC. Inspired by [2], Li and Yang[14] have presented a fault tolerant control of unknown nonlinear systems against actuator failures. The main contribution includes using adaptive fuzzy systems to tolerate actuator faults of unknown nonlinear systems without the need of faults detection and diagnosis (FDD) mechanism, which allows to avoid the unexpected system behavior caused by false or omitted alarms. The extension of this work to the case of perturbed systems have been presented in [15]. The robustness is guaranteed thanks to the H technique. Nevertheless, a tradeoff between the tracking performance and the existence of the solution of Riccati equation must be found. Li and Yang[16,17] presented adaptive fuzzy backstepping controllers for strict-feedback system. Nevertheless, the design of these approaches requires the knowledge of the upper bounds of external disturbances assumed to be well-known, whereas they are unknown in industrial systems. Furthermore, classical fuzzy systems, called type-1 fuzzy logic systems (T1FLS), have difficulties in modeling and minimizing the effect of the uncertainties, such as linguistic uncertainties and noisy training data as shown in [18].

In the last few years, a remarkable attention has been paid to another type of fuzzy system called type-2 fuzzy logic system (T2FLS). In T2FLS, the uncertainty is represented such that the membership degree is type-1 fuzzy number. The membership functions of T2 fuzzy sets are three dimensional and include a footprint of uncertainty (FOU) with a new third dimension of type-2 fuzzy sets. A FOU provides additional degrees of freedom that make it possible to directly model and handle uncertainties consequently, and T2FLS has the potential to outperform T1FLS in such cases[19,20].

In this paper, we develop an adaptive type-2 fuzzy sliding mode control to tolerate actuator faults of unknown nonlinear systems with external disturbances. Based on a redundant actuation structure, a novel type-2 adaptive fuzzy FTC scheme is proposed using sliding mode control. Two T2FLSs are used to approximate the unknown functions. Updating these T2FLSs, the proposed approach needs no FDD but uses sliding mode control to deal with the disturbances. Both lock-in-place and loss of effectiveness of actuator can be tolerated to achieve closed-loop stability and desired tracking performance though there are unknown nonlinearities and disturbances. Several simulation results have been presented to show the efficiency of the proposed approach.

This paper is organized as follows. In Section 2, problem formulation and general description of a class of single-input single-output (SISO) nonlinear systems are given. A brief of the fault tolerant control is presented in Section 3. Type-2 fuzzy sliding mode control design approach is constructed in Section 4. Simulation example to illustrate the effectiveness and the performance of the proposed approach is provided in Section 5. Finally, Section 6 concludes the paper.

2 Problem formulation

Consider a general class of SISO n-th order nonlinear uncertain dynamic systems described by the following equalities[21]:

$$\begin{array}{*{20}{c}} {{x^{(n)}} = f(X) + g(X)u + d} \\ {y = x} \end{array} $$
((1))

where f(X) and g(X) are nonlinear unknown uncertain continuous functions assumed to be bounded, u ∈ R and y∈ R denote the input and the output of the system, d represents the external unknown bounded disturbances, and X = [x,\(\dot x\), ,x (n−1)]TR n denotes the state vector of the system assumed to be available to measurement. The nonlinear system (1) is assumed to be controllable. So, we can consider that we always have g(X) ≠ 0.

For system modeling, we can use the physical equation. However, in some cases, the model is obtained using some simplifying conditions whereas the parameters are generally unknown. To overcome this problem, it is necessary to look for a method which should be adequate for these uncertain, complex and perturbed systems. We can approximate the unknown functions f(X) and g(X) using fuzzy logic systems[2224], neural networks[2527] or wavelet neural networks[28, 29].

Concerning the robustness of the closed loop system against the uncertainties, the approximation errors and the external disturbances, a robust control law is needed. To attain this objective, we propose to use sliding mode approach. This choice is motivated by its design simplicity and its high robustness.

If we define y ref as the reference trajectory, and e = y refy as the tracking error, we can define the sliding surface[21]:

$$s(X,t) = {\left( {\frac{\partial }{{\partial t}} + \lambda } \right)^{(n - 1)}}e$$
((2))

where λ is a positive constant[21]. It defines the slope of the sliding surface, where the reaching condition can be expressed as

$$\frac{1}{2} \times \frac{{d{s^2}(X,t)}}{{dt}} = s(X,t)\dot s(X,t) \leqslant - \eta |s(X,t)|,\;\;\;\;\;\eta > 0.$$
((3))

The system is controlled in such way that the system always moves towards the sliding surface and remains on it. Therefore, the tracking error can be considered as keeping the error state vector on sliding surface s(e) = 0. Using the definition e = y refy, we can write the time derivative of the sliding surface s(X,t) as

$$\dot s(X,t) = y_{{\text{ref}}}^{(n)} - f(X) - g(X)u + {\phi _s}$$
((4))

where ϕ s is defined as

$${\phi _s} = \sum\limits_{\beta = 1}^n {\frac{{(n - 1)!}}{{\beta !(n - \beta - 1)!}}{{(\frac{\partial }{{\partial t}})}^{(n - \beta - 1)}}{\lambda ^\beta }\dot e.} $$
((5))

To satisfy the condition given by (3), we can choose the control law as[21]

$$u = g{(X)^{ - 1}}[ - f(X) + y_{{\text{ref}}}^{(n)} + {\phi _s}] - g{(X)^{ - 1}}k\operatorname{sgn} (s)$$
((6))

The equivalent control u eq = g(X)−1[−f(X)+\(y_{{\text{ref}}}^{(n)}\) s ] will force the dynamics of the system to stay on the sliding surface and can be obtained using \(\dot s\)(X,t) = 0 [21,30]. The hitting (switching) control law u sw = −g(X)−1 ksgn(s) allows to attain the sliding surface.

This control law allows to obtain good tracking performance despite the presence of external disturbances. However, it can be applied only in the case of safe actuator. In the next section, we will propose to extend this approach to the case where actuators are subject to failures.

3 Fault tolerant control design

During the system operation, faults may affect the sensors, the actuators, or the system components. These faults can occur as additive or multiplicative faults. In such systems, the consequences of minor fault in a system component can be catastrophic. Therefore, reliability, safety and fault tolerance are generally required to be high. It is necessary to design control systems capable to tolerate potential faults in these systems in order to improve the reliability and availability while providing desirable performance. In fault tolerant control, the objective is to compensate fault effect on the system depending on nature of fault. It is necessary to ensure the effectiveness of process control to make the plant a safe one. The effect of actuator and sensor faults can be also represented as an additional unknown input vector acting on the dynamic systems. So, the unexpected system behavior caused by false or omitted alarms can be avoided and the control structure can be applied to the unknown nonlinear systems[31].

In this work, the problem under consideration is to design a fault tolerant controller for unknown nonlinear systems with external disturbances. We study the problem of fault tolerant controller design for uncertain systems with actuator faults.

Consider the control problem of the nonlinear systems (1) equipped with m actuators subject to failures. The input control can be written as

$$u(t) = \sum\limits_{i = j}^m {{u_j}} (t).$$
((7))

Each input control u j (t) subjet to actuator faults can be expressed as

$${u_j}(t) = {\rho _j}{\nu _j}(t) + {\sigma _j}(u_j^c - {\rho _j}{\nu _j}(t))$$
((8))

where ν j (t) presents the j-th applied control signal. The previous expression of control input allows to describe the loss of effectiveness and actuator failures. Indeed, ρ j denotes the percentage of the remaining effective part of the corresponding actuator u j : ρ j = 1 corresponds to the normal behavior (no failure), whereas ρ j = 0 means the complete loss of the effectiveness. The case of lock-in-place is considered using the term σ j . For σ j = 1, the actuator stuck at the value \(u_j^c\). If we consider a specific proportional actuation structure[2], each input control can be rewritten as

$${u_j}(t) = {b_j}{\nu _0}(t)$$
((9))

where b j is a non zero constant and ν 0(t) is the control signal that needs to be designed. Then, (9) can be reformulated as

$${u_j}(t) = {\rho _j}(1 - {\sigma _j}){b_j}{\nu _0}(t) + {\sigma _j}u_j^c.$$
((10))

To ensure the control objective, it is reasonable that there is at least one actuator that is still active for the control design purpose.

Using the new equation of the control input signals, system (3) can be described by

$$\begin{array}{*{20}{c}} {{x^{(n)}} = f(X) + g(X)\sum\limits_{i = j}^m {{\rho _j}} (1 - {\sigma _j}){b_j}{\nu _0}(t) + } \\ {\sum\limits_{i = j}^m {g(X)} {\sigma _j}u_j^c + d.} \end{array}$$
((11))

Using the notation,

$$\begin{array}{*{20}{c}} {{h_1}(X) = f(X)\sum\limits_{i = j}^m g (X){\sigma _j}u_j^c} \\ {{h_2}(X) = g(X)\sum\limits_{i = j}^m {{\rho _j}} (1 - {\sigma _j}){b_j}.} \end{array}$$
((12))

System (3) can be described by

$${x^{(n)}} = {h_1}(X) + {h_2}(X){\nu _0}(t) + d$$
((13))

which can be controlled by the following sliding mode control law:

$${\nu _0}(t) = {h_2}{(\underline x )^{ - 1}}[ - {h_1}(\underline x ) + y_{{\text{ref}}}^{(n)} + {\phi _s} - K\operatorname{sgn} (s)].$$
((14))

Based on the definition of h 1(X) and h 2(X), the control law (14) cannot be applied in this form. Furthermore, the term Ksgn(s) provokes chattering, which can deteriorate the system. It is difficult to calculate the term K since it depends directly on the upper bounds of both external disturbances and uncertainties, which are generally unknown.

4 Type-2 fuzzy sliding mode control design approach

In this section, we propose a type-2 fuzzy based sliding mode control law to force the system (13) to ensure good tracking performance in presence of both external disturbances and actuator faults. For this, we will approximate the unknown functions h 1(X) and h 2(X) by two adaptive type-2 fuzzy systems. To resolve the problem of chattering and the knowledge of K, we substitute the term K sgn(s) by a smooth one \(\tfrac{s}{{{\alpha ^2}}}\).

4.1 Type-2 fuzzy logic systems

The structure of a T2FLS[32,33], as presented in Fig. 1, is quite similar to a T1FLS. The only difference is that the antecedent and/or consequent sets in a T2FLS are type-2, so that each rule output set is a type-2. There are five principal parts in a T2FLS: Fuzzifier, rule base, inference engine, type-reducer and defuzzifier.

Fig. 1
figure 1

Type-2 fuzzy logic system diagram

The type-reducer performs a type-reduction operation which is an extended version of T1 defuzzification. Type reduction yields a T1 set from the T2 rule output set. The resulting T1 set is called type-reduced set. The type-reduced set can then be defuzzified to obtain a crisp output. The type reduced set of a T2FLS shows the possible variation in the crisp output of the FLS due to the uncertain natures of the antecedents and/or consequents.

4.1.1 Fuzzifier

The fuzzifier maps a crisp input vector with n input fuzzy sets, which can be type-2 (T2) fuzzy input sets à X [33,34] in general.

However, we will consider the singleton fuzzification as it is fast to compute, and thus suitable for real time applications. In the singleton fuzzification, the input fuzzy set has only a single point of nonzero membership[3335]. Thus, Ã x is a T2 fuzzy singleton if \(\tilde \mu \) = 1 for x i = \(x_i^0\) and \({\mu _{{{\bar A}_x}}}({x_i}) = 0\) forall \({x_i} \ne x_i^0,(i = 1,2, \cdots ,n)\)[35].

4.1.2 Rule base

For an interval type-2 fuzzy logic system (IT2FLS), the j-th rule can be written as

$$\begin{array}{*{20}{c}} {{R^j}:{\text{If}}\;\;{x_1}\;\;{\text{is}}\;\;V_1^j\;\;{\text{and}}\;\; \cdots \;\;{\text{and}}\;\;{x_n}\;\;{\text{is}}\;\;V_n^j} \\ {{\text{Then}}\;\;y\,\,{\text{is}}\;\;{\Theta _j},\;\;j = 1, \cdots ,r} \end{array}$$
((15))

where \(V_i^j\) are antecedent type-2 sets, y ∈ Y is the output, Θj are consequent T2 sets. The rule in (15) represents a T2 fuzzy relation between the input and the output spaces on the FLS.

4.1.3 Fuzzy inference engine

In the considered IT2FLS, we will use the product operation[35]. In an IT2FLS with minimum or product t-norm, the firing interval V j of the j-th rule is an interval type-2 set, which is determined by its left most point and right most point \({\underline v ^j}\) and \({\overline v ^j}\) as

$${V^i}({X^0}) = [{\underline v ^j}({X^0}),{\bar v^j}({X^0})] \equiv [{\underline v ^j},{\bar v^j}]$$
((16))

where X 0 is the instantaneous value of X. Accordingly, the firing interval bounds for the j-th rule of an IT2FLS with n inputs \({\underline v ^j}\) and \({\overline v ^j}\) , can be written as

$${\underline v ^j} = \underline \mu _{v1}^j(x_1^0) \cdots \underline \mu _{vn}^j(x_n^0) = \prod\limits_{i = 1}^n {\underline \mu _{vi}^j} (x_i^0)$$
((17))
$${\bar v^j} = \bar \mu _{v1}^j(x_1^0) \cdots \bar \mu _{vn}^j(x_n^0) = \prod\limits_{i = 1}^n {\bar \mu _{vi}^j} (x_i^0).$$
((18))

4.1.4 Type reduction

It is called type-reduction because this operation takes us from the T2 output sets of the inference engine to a type 1 set. The obtained type reduced sets are defuzzified to get crisp output. As indicated in [33], center of sets (COS) type reduction will be considered in this paper. It requires less computation time than centroid and allows overcoming the met problems using other methods. Type reduction proposed in [32] using the COS method is given by;

$${Y_{\cos }} = \int_{{\theta ^1}} \cdots \int_{{\theta ^r}} {\int_{{v^1}} \cdots } \int_{{v^r}} {\frac{{\sum\limits_{j = 1}^r {{v^j}} }}{{\sum\limits_{j = 1}^r {{v^j}{\theta ^j}} }}d{\theta ^1} \cdots d{\theta ^r}d{v^1} \cdots d{v^r}} $$
((19))

where Y COS is the interval set determined by two end points yl(X) and y r (X), θ j ∈ Θj = [\(\theta _l^j,\theta _r^j\)] is the type-2 interval consequent set, and v jV j = [\({\underline v ^j},{\bar v^j}\)] is the firing interval.

4.1.5 Defuzzification

From the type reduction step, the type reduced set Y cos is determined by its left most point y l (X) and right most point y r (X). Using the center of gravity, the defuzzified crisp output is given by[33]

$$y = \frac{{{y_l} + {y_r}}}{2}$$
((20))

where y l can be represented by a vector of fuzzy basis functions (FBFs) expansion as

$${y_l}(X) = \frac{{\sum\limits_{j = 1}^r {v_l^j\theta _l^j} }}{{\sum\limits_{j = 1}^r {v_l^j} }} = \sum\limits_{j = 1}^r {\theta _l^j\xi _l^j} = \theta _l^T{\xi _l}(X)$$
((21))

where \(v_l^j\) denotes the firing strength membership grade contributing to the left most point y l (X).

$$\xi _l^j = \frac{{v_l^j}}{{\sum\limits_{j = 1}^r {v_l^j} }}$$
((22))

where ξ l (X) is the FBF vector of Y, such that \(\xi _l^{\text{T}}(X) = [\xi _l^1(X), \cdots ,\xi _l^r(X)]\) and \(\Theta _l^{\text{T}} = [\theta _l^1, \cdots \theta _l^r]\) is the left conclusion of T2FLS y. As well, we have

$${y_r}(X) = \frac{{\sum\limits_{j = 1}^r {v_r^j\theta _r^j} }}{{\sum\limits_{j = 1}^M {v_r^j} }} = \sum\limits_{j = 1}^M {\theta _r^j\xi _r^j} = \underline \theta _r^j{\xi _r}(X)$$
((23))

where \(v_r^j\) denotes the firing strength membership contributing to the right most point y r (X) given as

$$\xi _r^j = \frac{{v_r^j}}{{\sum\limits_{j = 1}^r {v_r^j} }}$$
((24))

ξ r (X) is the FBF vector of y such that \(\xi _r^{\text{T}}(X) = [\xi _r^1(X), \cdots ,\xi _r^r(X)]\) and \(\Theta _r^{\text{T}} = [\theta _r^1, \cdots ,\theta _r^r]\) is the right conclusion of T2FLS y. Then, the output of the T2FLS can be given as

$$y = \frac{{\Theta _l^T{\xi _l} + \Theta _r^T{\xi _r}}}{2}$$
((25))

which can be rewritten in the following compact form:

$$y = {\Theta ^T}\Psi $$
((26))

where ΘT = [\(\Theta _l^{\text{T}}\Theta _r^{\text{T}}\)] and ΨT = 1 [\(\xi _l^{\text{T}}\xi _r^{\text{T}}\)].

Using the universal approximation theorem[6], there exists an optimal fuzzy system in the form (26), \(\hat h_1^ * \)(X) = \(\Theta _1^{ * {\text{T}}}{\Psi _1}\) approximates h 1(x). Similarly, we can approximate h 2(x) by \(\hat h_2^*(X) = \Theta _2^{ * {\text{T}}}{\Psi _2}\). Hence, we can write

$${h_{1,2}}(X) = {\hat h_{1,2}}{(X)^ * } + { \in _{1,2}}$$
((27))

where є1 and є2 are two very small positive constants representing the minimal approximation error. Using (27), the studied system can be described by

$${x^{(n)}} = (\hat h_2^ * (X) + { \in _2}){\nu _0} + (\hat h_1^ * (X) + { \in _1}) + {\phi _s} + d.$$
((28))

Remark 1. The chosen methods to compute the fuzzy system output is motivated by two main aspects. The first one allows to exploit the universal approximation theorem efficiently. The second one reduces the computation time required by this structure compared to the other structure of T2FLS.

4.2 Type-2 fuzzy sliding mode control design

To attain the control objective, we will present in this section the synthesis of the proposed type-2 fuzzy sliding mode control law, which must ensure the robustness and stability of the closed loop system in presence of external disturbances and actuator faults. So, the expression of the derivative of sliding surface can be given by

$$\begin{array}{*{20}{l}} {\dot s = {e^{(n)}} + {\phi _s}} \\ {\dot s = y_{{\text{ref}}}^{(n)} - (\hat h_2^*(X) + { \in _2}){\nu _0} + (\hat h_1^*(X) + { \in _1}) - {\phi _s} - d.} \end{array}$$
((29))

Thus, the derivative of the sliding surface can be resumed as

$$\begin{array}{*{20}{l}} {\dot s = y_{{\text{ref}}}^{(n)} - \hat h_2^ * (X){\nu _0} - \hat h_1^ * (X) - {\phi _s} - {d_c}} \\ {{d_c} = - { \in _2}{\nu _0} - { \in _1} - d.} \end{array}$$
((30))

Proposition 1. Use the proposed control law given by

$${\nu _0} = \hat h_2^{ - 1}(X)\left[ {y_{{\text{ref}}}^{(n)} - {{\hat h}_1}(X) - {\phi _s} - \frac{s}{{{\alpha ^2}}}} \right]$$
((31))

with the following adaptation laws:

$$\begin{array}{*{20}{l}} {{{\dot \Theta }_1} = - {\gamma _1}s{\Psi _1}} \\ {{{\dot \Theta }_2} = - {\gamma _2}s{\Psi _2}{\nu _0}.} \end{array}$$
((32))

We can ensure that the closed loop system signals are bounded and the tracking error will converge to zero asymptotically, despite the presence of external disturbances, uncertainties and actuators faults.

Proof. To prove the stability of the closed loop system, we consider the following Lyapunov function:

$$V = {s^2} + \tfrac{1}{{{2_{{\gamma _1}}}}}\tilde \Theta _1^T{\tilde \Theta _1} + \tfrac{1}{{{2_{{\gamma _2}}}}}\tilde \Theta _2^T{\tilde \Theta _2}$$
((33))

where \({\tilde \Theta _{1,2}} = {\Theta _{1,2}} - \Theta _{1,2}^ * \), and γ 1 and γ2 are two positive constants. Then, the time derivative of (33) is given as

$$\dot V = s\dot s + \tfrac{1}{{{\gamma _1}}}\tilde \Theta _1^T{\dot \Theta _1} + \tfrac{1}{{{\gamma _2}}}\tilde \Theta _2^T{\dot \Theta _2}.$$
((34))

Using (31), the derivative of s becomes

$$\dot s = ({\hat h_2}(X) - h_2^ * (X)){\nu _0} + ({\hat h_1}(X) - h_1^ * (X)) - {d_c} - \frac{s}{{{\alpha ^2}}}$$
((35))

which can be rewritten as

$$\dot s = \tilde \Theta _2^T{\xi _2}{\nu _0} + \tilde \Theta _1^T{\xi _1} - {d_c} - \frac{s}{{{\alpha ^2}}}.$$
((36))

Thus, (34) can be rewritten as

$$\begin{array}{*{20}{l}} {\dot V = \tilde \Theta _2^T\left[ {{\xi _2}s{\nu _0} + {{\frac{1}{\gamma }}_2}{{\dot \Theta }_2}} \right] + } \\ {\quad \quad \tilde \Theta _1^T\left[ {{\xi _1}s + {{\frac{1}{\gamma }}_1}{{\dot \Theta }_1}} \right]\; - s\left[ {{d_c} + \frac{1}{{{\alpha ^2}}}} \right].} \end{array}$$
((37))

Using the adaptation laws (32) leads to

$$\dot V = - s{d_c} - \frac{s}{{{\alpha ^2}}}$$
((38))

which can be rewritten as

$$\dot V \leqslant {s^2} + \frac{{d_c^2}}{4} - \frac{{{s^2}}}{{{\alpha ^2}}} = \frac{{d_c^2}}{4} + (1 - \frac{1}{{{\alpha ^2}}}){s^2}.$$
((39))

Integrating this inequality between 0 and T, and using the definition of V, we can have

$$\int_0^T {\frac{{{s^2}}}{{{\alpha ^2}}}dt \leqslant \int_0^T {\frac{{d_c^2}}{4}dt} } $$
((40))

Since the external disturbances are assumed to be bounded as well as the minimal approximation errors є1 and є2[6], we can conclude that s ∈ L 2 which implies that s → 0. Therefore, the convergence of e to zero is guaranteed. Also, we can conclude that the stability and the robustness of the closed loop system are guaranteed[36].

In the following section, a simulation example is given to show the effectiveness of the proposed approach.

5 Simulation example

To illustrate the performance of the proposed approach, we consider the inverted pendulum system of Fig. 2 with redundant actuators. The system is described by[14]:

$$\left\{ {\begin{array}{*{20}{l}} {{{\dot x}_1} = {x_2}} \\ {{{\dot x}_2} = a({x_1},{x_2}) + b({x_1},{x_2})\,({u_1} + {u_2}) + d} \\ {y = {x_1}} \\ {a({x_1},{x_2}) = \frac{{g\sin ({x_1}) - \frac{{mlx_2^2\cos ({x_1})\sin ({x_1})}}{{{m_c} + m}}}}{{l\left[ {\frac{4}{3} - \frac{{m{{\cos }^2}({x_1})}}{{{m_c} + m}}} \right]}}} \\ {b({x_1},{x_2}) = \frac{{\frac{{\cos ({x_1})}}{{{m_c} + m}}}}{{l\left[ {\frac{4}{3} - \frac{{m\,{{\cos }^2}({x_1})}}{{{m_c} + m}}} \right]}}} \end{array}} \right.$$
((41))

where x 1 = θ and x 2 = θ denote the angular position and velocity. System parameters are given in Table 1.

Fig. 2
figure 2

The inverted pendulum system

Table 1 System parameters

The control objective is to control the state x 1 to track the reference trajectory y ref = sin(t). So, the control law is synthesized according to the following steps:

  1. 1)

    In order to develop training algorithms for the type-2 fuzzy logic systems, we specify the membership functions of x 1 and x 2 as given in Fig. 3 by

    $$\begin{array}{*{20}{l}} {{\mu _{\tilde H_{1j}^i}} = \frac{1}{{1 + \exp \left( {1.8\left( {\frac{{{x_i} + (0.61 + {c_1})}}{{\frac{\pi }{{16}}}}} \right)} \right)}}} \\ {{\mu _{\tilde H_{2j}^i}} = \exp \left( { - {{\left( {\frac{{{x_z}}}{{\frac{\pi }{{(4.5 + {c_2})}}}}} \right)}^2}} \right)} \\ {{\mu _{\tilde H_{3j}^i}} = \frac{1}{{1 + \exp \left( { - 1.8\left( {\frac{{{x_i} + ( - 0.61 - {c_1})}}{{\frac{\pi }{{16}}}}} \right)} \right)}}} \end{array}$$
    ((42))

    where c 1 and c 2 designate an area of uncertainty, in the case of our application, c 1 [0,0.2] and c 2 ∈ [0,1]. Then, there are 9 rules to approximate the unknown functions. Initial values of consequent parameters of fuzzy rules are chosen in the interval \(\left[ { - \tfrac{\pi }{4},\tfrac{\pi }{4}} \right]\) and the learning rates are γ i = 200 and γ 2 = 1.

  2. 2)

    Since the system is a second order one, the sliding surface can be obtained as S(t) = ė(t) − λe(t). To design the control, we choose the sliding gain as λ = 10.

  3. 3)

    To evaluate the robustness of the closed loop system, we operate with the external disturbances and uncertainties as follows:

    1. i)

      The structural disturbance on the mass of both the cart and the pole: d m = 0.005 sin(2t) + 0.005 sin(3t), d mc = 0.05sin(2t) + 0.05sin(3t).

    2. ii)

      The external disturbance d = 0.05x \(\tfrac{\pi }{6}\) sin(2t) + 0.05 × \(\tfrac{\pi }{6}\)sin(3t).

Fig. 3
figure 3

Membership function of the fuzzy systems

To evaluate the robustness of the proposed approach against the actuator failures, we study two cases:

Case 1. Loss of effectiveness

In this case, we assume that the effectiveness of the two actuators evolves in time, as given in Fig. 4, but we have always one actuator is active.

Fig. 4
figure 4

Evolution of the actuators effectiveness

Figs. 57 give the simulation results. Fig. 5 shows the pendulum states evolution, which converge to their reference signals despite the loss of all the effectiveness of the second actuator at t = 6 s. Figs. 6 and 7 give the evolution of the control signals generated by each actuator and the global one applied to the system. We remark that despite the severity of disturbances (loss of effectiveness, external disturbances, and parameter variation), the system arrives to attain good tracking performance.

Fig. 5
figure 5

State variables y and dy/dt, and their reference trajectories

Fig. 6
figure 6

Actuator control signals (u 1 and u 2)

Fig. 7
figure 7

Applied control signal to the system

Case 2. Lock-in-place

In this case, we assume that the effectiveness of the two actuators evolves in time, as given in Fig. 8, but at t = 6 s, actuator 2 is locked on the value \(u_1^c\) = 4.5 N. The simulation results are given by Figs. 911. We remark that the state variables follow their reference trajectories despite the problems of lock-in-place and loss of effectiveness.

Fig. 8
figure 8

Evolution of the actuators effectiveness

Fig. 9
figure 9

State variables variables and their reference trajectories

Fig. 10
figure 10

Evolution of the control signals (actuators)

Fig. 11
figure 11

Applied effort

6 Conclusions

In this paper, an adaptive type-2 fuzzy sliding mode controller for SISO nonlinear systems subject to actuator faults and external disturbances has been presented. It allows to combine the advantages of type-2 fuzzy system theory and modified sliding mode control. The proposed approach allows to accommodate the uncertain actuator faults during the operation. The simulation results show the efficiency of the proposed approach. And all the signals of the closed loop are bounded and the tracking error between the system output and the reference signals converges to a small neighborhood of zero. In the future, we intend to study MIMO systems and to realize a state observer to treat the case where we cannot measure the system states.