1 Introduction

As engineering systems and industrial processes become more complex, the probability of fault occurrence increases. Therefore, safety and reliability have become the most important requirements of the system. In order to achieve these requirements, fault tolerant control systems have been developed which need early fault detection and isolation. So, this necessity has motivated a significant research in the field of fault detection (FD) during the last decades. The most common approaches for model-based FD are based on the state or parameter estimation schemes, which employ techniques such as the adaptive observer [1, 2], the sliding mode observer [3, 4] and the geometric approaches [5, 6]. However, detection of the fault occurrence and its location is not sufficient to accommodate fault or to design active fault tolerant control systems. So, it is necessary to provide more information about severity, magnitude and behavior of the faults. These requirements are the main motivation to develop fault estimation techniques. Fault estimation can provide more information about the fault function such as severity, frequency and time characteristic, which are helpful to identify the failure mode, to accommodate the fault and to design the active fault tolerant control systems.

Faults may occur in every possible location, such as actuators, sensors and components of the system. According to the effects of the faults on the system or process, they are classified as additive and multiplicative faults [7]. In general, additive faults are modeled as an unknown input to the system or process. Several approaches have been proposed to solve the fault detection and diagnosis problem for nonlinear systems subjected to additive faults [1, 811]. Component faults and some actuator and sensor faults appear in the form of multiplicative faults. This is an important kind of fault which corresponds to the parameter or structure changes in the system or process model [12]. In contrast to the additive fault representation, the multiplicative fault representation depends on both the state and the input variables. This coupling between the fault function and the state and input variables of the system makes the detection and estimation of the multiplicative fault different from the additive one.

Some research has been done in the area of multiplicative fault detection and estimation for linear [1216] and nonlinear systems [1720]. In [12], the parameter similarity approach was proposed for detection, isolation and identification of multiplicative faults in linear dynamical systems. It does not take into account the dynamics of the process and offers some parameter similarity measures to assess the degree of similarity between interesting data set and a template data set for fault diagnosis. An adaptive observer-based fault diagnosis technique was proposed for fault diagnosis in known deterministic linear dynamical systems [13]. The main disadvantage of this method is that the fault may have unpredictable behavior and most of the time is not constant, which means that its derivative is not zero and may cause high gains. In [14] and [15], sliding mode observers have been used to reconstruct an unknown multiplicative fault for linear systems. A fast active fault estimation algorithm using adaptive fault diagnosis observer has been proposed for linear systems in [16]. This scheme needs certain necessary conditions, which strictly limit its application.

Parameter fault detection and estimation for a class of nonlinear systems have been investigated in [17]. The fault estimation performance has not been studied and the effects of the unavoidable modeling uncertainty, the external disturbance and measurement uncertainty have not been considered in the design step in [17]. The problem of fault detection and isolation scheme for a class of nonlinear systems with partially measurable states and nonlinear and unstructured modeling uncertainty has been studied in [18]. The proposed scheme in [18] addresses the detection and isolation of nonlinear unknown fault functions that are modeled as nonlinear functions of measurable signals of the system (i.e., input and output variables of the system). In [19], a robust fault estimation scheme has been proposed for a class of nonlinear systems subjected to multiplicative faults and unknown disturbances. Only the fault estimation has been done, and no discussion has been provided on the fault detection in the presence of the external disturbance. In [19], the fault is declared when the output of the estimator becomes nonzero. The straightforward and practical way for improving the robustness of the algorithm with respect to uncertainty is to start adaptation when the residual is above a certain threshold. Multiplicative actuator fault detection and isolation for the nonlinear systems based on neural network has been proposed in [20]. The generated signals by the neural network are considered as the residuals and are used for fault detection and identification, simultaneously. A new data-driven method for diagnosing multiplicative key performance degradation in automation processes has been proposed in [21]. It uses the process data to extract the features of the multiplicative faults and to identify and evaluate the impact of the fault on each process variable. A robust actuator fault diagnosis scheme for satellite altitude control systems has been presented in [22]. It designs an unknown input observer for fault detection, and then, a bank of adaptive unknown input observers (well-known generalized observer strategy) is activated to isolate the fault, and finally, the fault parameter is estimated.

Although some research has been done for diagnosis of multiplicative faults, there are still deficiencies in this area. For example, though many practical systems satisfy the Lipschitz condition at least near the operating point, they are subjected to unstructured uncertainty, unmeasurable states and measurement uncertainty. But fault detection and estimation problem is a motivation for work.

In this paper, a novel adaptive robust fault detection and estimation scheme is proposed for a class of Lipschitz nonlinear systems, which are subjected to multiplicative faults, modeling and measurement uncertainties. It is assumed that all states of the system are not measurable. More specifically, both of the known nonlinear term and unknown fault functions are modeled as nonlinear functions of the state variables and input signals and satisfy the Lipschitz condition. The design objective is to develop a robust detection and estimation scheme which can detect and estimate the multiplicative fault, simultaneously. The proposed scheme should be robust against modeling and measurement uncertainties and must be sensitive to unknown faults. In fact, detection of such faults can be formulated as detection of abrupt or incipient parameter changes at unknown time instants in the presence of uncertainty. An adaptive observer is designed to estimate the system states and to generate the residual signal, simultaneously. Decision for the fault detection is made by evaluating the residual evaluation function with proper threshold. The threshold is derived analytically. When the residual evaluation function exceeds the derived threshold, a fault is detected and an alarm signal is generated. Upon alarm generation, the adaptive estimation scheme is activated to estimate the severity and characteristic of the detected multiplicative fault. A robust adaptive law based on switching \(\sigma \)-modification is developed to present an accurate estimation of the unknown fault function and to avoid the parameter drift. The proposed FDE scheme ensures that all signals are uniformly ultimately bounded in the presence of uncertainties. Also, design steps for the proposed estimation scheme are expressed in the form of the LMI problem. This formulation provides an effective way to calculate the design parameters.

Also, in order to validate the results obtained by the proposed FDE scheme, the FE strategy in [19] is applied to the system. Simulation and comparison show that the proposed scheme has high estimation accuracy and convergence speed. Moreover, it has robust performance against modeling and measurement uncertainties and has no undesirable transient response characteristics.

The organization of this paper is as follows. The problem statement is presented in Sect. 2. In Sect. 3, the proposed fault detection and estimation scheme is explained which is composed of the fault detection scheme and development of the robust adaptive law for fault estimation. Also, theoretical analysis is done to show that all signals are uniformly ultimately bounded. In Sect. 4, a single-link, flexible joint, robotic arm is used to investigate the performance of the proposed scheme. Finally, Sect. 5 presents the conclusions.

2 Problem statement

Consider a class of nonlinear multi-input, multi-output system which is described by the following differential equation:

$$\begin{aligned} {\dot{\varvec{x}}}&= A{\varvec{x}}+B{\varvec{u}}+f({\varvec{x}},{\varvec{u}})+{\varvec{\eta }}({\varvec{x}},{\varvec{u}},t)\nonumber \\&\quad +\, \beta (t-T)F({\varvec{x}},{\varvec{u}}) \nonumber \\ y&= C{\varvec{x}}+D{\varvec{d}} \end{aligned}$$
(1)

where \({\varvec{x}}\in R^{n},\,{\varvec{u}}\in R^{q}\) and \({\varvec{y}}\in R^{m}\) are the state, the input vector and the output vector, respectively, \(A,\,B,\,C\) and \(D\) are known matrices with proper dimensions, and the pair \((A,C)\) is observable. \(f({\varvec{x}},{\varvec{u}}):R^{n}\times R^{q}\rightarrow R^{n},\,{\varvec{\eta }}: R^{n}\times R^{q}\times R^{+}\rightarrow R^{n}\) and \({\varvec{d}}: R^{+}\rightarrow R^{m}\) are smooth vector fields that represent the known dynamics of the nominal model, the modeling uncertainty and the measurement uncertainty, respectively. Also, \(\beta (t-T)F({\varvec{x}},{\varvec{u}})\) denotes the change in the system dynamics due to occurrence of a fault, where \(F({\varvec{x}},{\varvec{u}}):R^{n}\times R^{q}\rightarrow R^{n}\) denotes the nonlinear fault function and \(\beta (t-T)\) is a diagonal matrix and describes the time profile of the fault, i.e., \(\beta (t-T)=\hbox {diag}(\beta _1 (t-T), \beta _2 (t-T),\ldots , \beta _n (t-T))\), where \(T\) is unknown fault occurrence time [23]. Without loss of generality, only the case of abrupt faults is considered and the time profile of the \(i\hbox {th}\) fault is modeled as follows:

$$\begin{aligned} \beta _i (t-T)=\left\{ {{\begin{array}{lll} 0 &{}\quad \hbox {if} &{}\quad t<T \\ 1 &{}\quad \hbox {if}&{}\quad t\ge T \\ \end{array} }} \right. \end{aligned}$$

where \(\beta _i (t-T): R\rightarrow R\) is a function that represents the time profile of the \(i\hbox {th}\) fault affecting the \(i\hbox {th}\) state equation (\(i=1,2, \ldots , n)\).

It is assumed that the nonlinear system (1) is subjected to a component fault or an actuator gain fault. So, the multiplicative modeling approach is invoked to model these kinds of faults. Considering this explanation, the nonlinear system (1) can be described as follows:

$$\begin{aligned} {\dot{\varvec{x}}}&= A{\varvec{x}}+B{\varvec{u}}+f({\varvec{x}},{\varvec{u}})+ {\varvec{\eta }}({\varvec{x}},{\varvec{u}},t)\nonumber \\&\quad +\,\beta (t-T) \varphi ({\varvec{x}},{\varvec{u}}){\varvec{\theta }} \nonumber \\ {\varvec{y}}&= C{\varvec{x}}+ D{\varvec{d}}(t) \end{aligned}$$
(2)

where \({\varvec{\theta }}\in R^{p \times 1}\) is a vector of unknown functions which denotes the magnitude and size of faults and it is assumed to be bounded, i.e., \(\left\| {\varvec{\theta }} \right\| \le \overline{{\theta }}\). Also, \(\varphi ({\varvec{x}},{\varvec{u}})\in R^{n\times p}\) are nonlinear functions, which represent the functional structure of the faults.

Remark 1

In the fault diagnosis issues, modeling uncertainty is assumed to be structured or unstructured. The structured uncertainty is considered in the form of \(\eta =E\omega (t)\), where \(E\) is a distribution matrix and \(\omega \) is an unknown function of time. In this formula, \(E\) can be known or approximately known and may not necessarily be a constant matrix. If the distribution matrix of uncertainty \((E)\) is unknown, then the uncertainty is called “unstructured.”

The objective of this paper was to present a simultaneous robust fault detection and estimation strategy based on an adaptive observer, which can determine the occurrence, characteristics and severity of a fault by processing the input and the state information. The fault detection consists of two main steps: residual generation and residual evaluation (or decision making). In residual generation step, a nonlinear diagnostic observer is designed to estimate the states of the system and to generate a residual signal. This residual signal reflects the discrepancies between the behavior of the actual system and the estimated behavior of its nominal model. In residual evaluation step, the residual evaluation function is compared with a proper threshold level which is derived analytically. If the residual evaluation function exceeds the derived threshold level, a fault is detected and an alarm signal is generated. Upon the alarm generation, an adaptive fault estimation scheme is activated to make an accurate estimation for the size and the severity of the fault. The proposed estimation scheme ensures that all signals are uniformly ultimately bounded. Before describing the proposed scheme, the following assumptions are made:

Assumption 1

It is assumed that the state and the input variables of the system are bounded before and after the fault occurrence. So, there exist compact sets \(X\subset R^{n}\) and \(U\subset R^{q}\) such that the state and the control input variables remain bounded before and after the fault occurrence, i.e., for all t, \({\varvec{x}}\in X\) and \({\varvec{u}}\in U\) [24].

Assumption 2

\(f\) and \(\varphi \) are Lipschitz in \({\varvec{x}}\) with Lipschitz constants \(\gamma _1 \) and \(\gamma _2 \), respectively, i.e.,

$$\begin{aligned}&\left\| {f({\varvec{x}},{\varvec{u}})-f({\hat{\varvec{x}}},{\varvec{u}})} \right\| \le \gamma _1 \left\| {{\varvec{x}}-{\hat{\varvec{x}}}} \right\| \end{aligned}$$
(3)
$$\begin{aligned}&\left\| {\varphi ({\varvec{x}},{\varvec{u}})-\varphi ({\hat{\varvec{x}}},{\varvec{u}})} \right\| \le \gamma _2 \left\| {{\varvec{x}}-{\hat{\varvec{x}}}} \right\| \end{aligned}$$
(4)

Assumption 3

It is assumed that the modeling uncertainty, represented by \({\varvec{\eta }}\) in (1), is unstructured and unknown nonlinear function of \({\varvec{x}},\,{\varvec{u}}\) and t, but is bounded by known functional, i.e., \(\left\| {{\varvec{\eta }}({\varvec{x}},{\varvec{u}},t)} \right\| \le \overline{\eta }({\varvec{y}},{\varvec{u}},t)\).

Assumption 4

It is assumed that the unknown measurement uncertainty, represented by \({\varvec{d}}\) in (1), and its derivative are norm-bounded, i.e., \(\left\| {{\varvec{d}}(t)} \right\| \le \overline{{d}}_1,\left\| {\dot{\varvec{d}}}(t) \right\| \le \overline{{d}}_2\), where \(\overline{{d}}_1 \) and \(\overline{{d}}_2 \) are known constants.

In the following section, the proposed multiplicative fault detection and estimation scheme is described.

3 Proposed fault detection and estimation scheme

In this section, the proposed FDE scheme is described in two parts: fault detection scheme and fault estimation scheme.

3.1 Fault detection scheme

Simply speaking, fault detection means to find something is going wrong in the system. To estimate the states of the system and to generate the residual signal for the fault detection, the nonlinear diagnostic observer is designed as:

$$\begin{aligned} {\dot{\hat{{\varvec{x}}}}}(t)&= A{\hat{\varvec{x}}}+B{\varvec{u}}\!+\!f({\hat{\varvec{x}}},{\varvec{u}}) +\varphi \left( {\hat{\varvec{x}}},{\varvec{u}}\right) { \hat{\varvec{\theta }}} +L\left( {\varvec{y}}\!-\!C{\hat{\varvec{x}}}\right) \nonumber \\ {\hat{{\varvec{y}}}}&= C{\hat{\varvec{x}}} \end{aligned}$$
(5)

where \({\hat{\varvec{x}}}\in R^{n}\) is the state vector of the observer, \({ \hat{\varvec{\theta }}}\) is the estimation of an unknown fault vector, which determines the severity, the size and the magnitude of the detected fault and \(L\) is the observer gain matrix. Since it has been assumed that the pair \((A,C)\) is observable, the gain matrix \((L)\) of the observer can be chosen such that the Riccati equation \((A-LC)^{T}X+X(A-LC)+(\gamma +1)X^{T}X+\gamma _1^2 I<0\) has a symmetric positive definite solution \(X\) where \(\gamma \) is a positive constant.

Let \({\widetilde{\varvec{x}}}={\varvec{x}}-{\hat{\varvec{x}}}\) be the state estimation error. So, the dynamics of the estimation error is given by:

$$\begin{aligned} {\dot{\widetilde{\varvec{x}}}}&= (A-LC) {\widetilde{\varvec{x}}}+f({\varvec{x}},{\varvec{u}})-f({\hat{\varvec{x}}},{\varvec{u}})+ {\varvec{\eta }}({\varvec{x}},{\varvec{u}},t)\nonumber \\&\quad +\,\beta (t-T)\varphi ({\varvec{x}},{\varvec{u}}) {\varvec{\theta }}-\varphi ({\hat{\varvec{x}}},{\varvec{u}}) { \hat{\varvec{\theta }}}+LD {\varvec{d}} \end{aligned}$$
(6)

Before the fault occurrence, i.e., \(t<T,\,{\varvec{\theta }}\) is zero which models the fault-free behavior of the system, also \({\hat{\varvec{\theta }}}\) is set to zero and the dynamics of the estimation error is obtained as follows:

$$\begin{aligned} {\dot{\widetilde{\varvec{x}}}}&= (A-LC) {\widetilde{\varvec{x}}}+f({\varvec{x}},{\varvec{u}})\nonumber \\&\quad -\,f({\hat{\varvec{x}}},{\varvec{u}})+ {\varvec{\eta }}({\varvec{x}},{\varvec{u}},t)+LD {\varvec{d}} \end{aligned}$$
(7)

So, we have:

$$\begin{aligned} {\widetilde{\varvec{x}}}&= e^{\varLambda t} {\widetilde{\varvec{x}}}(0)+\int \limits _0^t e^{\varLambda (t-\tau )}(f({\varvec{x}}(\tau ),{\varvec{u}}(\tau ))\nonumber \\&\quad -\,f({\hat{\varvec{x}}}(\tau ),{\varvec{u}}(\tau ))+ {\varvec{\eta }}({\varvec{x}}(\tau ),{\varvec{u}}(\tau ),\tau )+LD{\varvec{d}})\hbox {d}\tau \nonumber \\ \end{aligned}$$
(8)

where \(\varLambda =A-LC\).

After designing the diagnostic observer, the remaining important task in fault detection is the generation and evaluation of the residual signal. One of the common approaches for evaluation of the residual signal is selecting a proper threshold value \(J_\mathrm{th} >0\) and using the following logical relations for fault detection:

$$\begin{aligned}&\left\| {J_\mathrm{r} (t)} \right\| \ge J_\mathrm{th} \Rightarrow \hbox { Fault occurs } \Rightarrow \hbox { alarm}\end{aligned}$$
(9)
$$\begin{aligned}&\left\| {J_\mathrm{r} (t)} \right\| <J_\mathrm{th} \Rightarrow \hbox { No fault occurs } \Rightarrow \hbox { no alarm} \end{aligned}$$
(10)

where \(J_\mathrm{r} (t)\) is the residual evaluation function which is selected as follows:

$$\begin{aligned} \left\| {J_\mathrm{r} (t)} \right\| =\left[ {\int \limits _t^{t+T_1 } {{\varvec{r}}^{T}(t){\varvec{r}}} (t) \hbox {d}t} \right] ^{1/2} \end{aligned}$$
(11)

where \({\varvec{r}}={\varvec{y}}-{\hat{{\varvec{y}}}}\) is the residual signal and \(T_1\) is the evaluation time window. Note that the length of the time window is finite.

Lemma 1

([25]) Since \(\varLambda \) is a stable matrix, there exist positive constants \(k\) and \(\lambda \), such that \(\left\| {e^{\varLambda t}} \right\| \le ke^{-\lambda t}\).

Theorem 1

Consider the nonlinear faulty system (2), the diagnostic observer (5) and the evaluation function (11). Decision on the occurrence of the fault (fault detection) is made when the evaluation function \(\left\| {J_\mathrm{r} (t)} \right\| \) exceeds its corresponding threshold \(J_\mathrm{th} \), which is:

$$\begin{aligned} J_\mathrm{th}&= \left[ \int \limits _t^{t+T_1 } \left( \frac{k(\overline{{\eta }}+\left\| L \right\| \left\| D \right\| \overline{{d}}_1 )\left\| C \right\| }{\lambda -k\gamma _1 }\right. \right. \nonumber \\&\qquad +\left( k\varepsilon -\frac{k(\overline{{\eta }}+\left\| L \right\| \left\| D \right\| \overline{{d}}_1 )}{\lambda -k\gamma _1 }\right) \left\| C \right\| e^{-(\lambda -k\gamma _1 )\tau }\nonumber \\&\qquad +\left. \left. \left\| D \right\| \overline{{d}}_1 \right) ^{2}\mathrm{d}\tau \right] ^{\frac{1}{2}} \end{aligned}$$
(12)

where \(k\) and \(\lambda \) are positive constants, which are chosen according to Lemma 1 and \(\varepsilon \) is a constant bound for \(\left\| {{\varvec{x}}(0)} \right\| \) such that \(\left\| {{\widetilde{\varvec{x}}}(0)} \right\| =\left\| {{\varvec{x}}(0)} \right\| \le \varepsilon \).

Proof

See “Appendix 1.”

The derived threshold of (12) calculated by \(J_\mathrm{th} =\mathop {\sup }\nolimits _{f=0, \eta , d} \left\| {J_\mathrm{r} (t)} \right\| \) is based on a reliable estimation of the upper bound of the evaluation function using the worst-case modeling and measurement uncertainties, which affect the system during fault-free operations. So, when the evaluation function exceeds the threshold \(J_\mathrm{th} \), a fault is detected and an alarm signal is generated. Upon fault detection and alarm generation, an adaptive strategy is activated to estimate the characteristics and the size of the unknown fault.

3.2 Fault estimation scheme

The key step in development of the fault estimation scheme is the design of an appropriate adaptive law. Before fault detection, \(\hat{{\theta }}\) is set to zero. After fault detection and alarm generation, the estimation scheme must be activated to identify the type and the magnitude of the fault.

In the following theorem, an adaptive law is proposed to estimate the unknown fault vector \({\varvec{\theta }}\) such that all signals remain uniformly ultimately bounded.

Lemma 2

Given the system (2) and its observer (5), if \(P\) is any symmetric matrix, then we have

$$\begin{aligned} 2{\widetilde{\varvec{x}}}^{T}P({\varvec{f}}({\varvec{x}},{\varvec{u}})\!-\!{\varvec{f}}({\hat{\varvec{x}}},{\varvec{u}}))\!\le \! \gamma _1^2 {\widetilde{\varvec{x}}}^{T}PP{\widetilde{\varvec{x}}}+{\widetilde{\varvec{x}}}^{T}{\widetilde{\varvec{x}}} \end{aligned}$$
(13)

Proof

See “Appendix 2.”

Remark 2

Considering Assumption 2 and using the same procedure as Lemma 2, the following results are obtained:

$$\begin{aligned}&2\left( f\left( {\varvec{x}},{\varvec{u}}\right) -f\left( {\hat{\varvec{x}}},{\varvec{u}}\right) \right) ^{T}\varGamma {\widetilde{\varvec{x}}}\le \gamma _1^2 {\widetilde{\varvec{x}}}^{T}{\widetilde{\varvec{x}}}+{\widetilde{\varvec{x}}}^{T}\varGamma \varGamma {\widetilde{\varvec{x}}}\nonumber \\\end{aligned}$$
(14)
$$\begin{aligned}&2\left( f\left( {\varvec{x}},{\varvec{u}}\right) -f\left( {\hat{\varvec{x}}},{\varvec{u}}\right) \right) ^{T}\varGamma W{\varvec{d}}\le \gamma _1^2 {\widetilde{\varvec{x}}}^{T}{\widetilde{\varvec{x}}}\nonumber \\&\quad +\,{\varvec{d}}^{T}W^{T}\varGamma \varGamma W{\varvec{d}}\end{aligned}$$
(15)
$$\begin{aligned}&2\left( \left( \varphi \left( {\varvec{x}},{\varvec{u}}\right) - \varphi \left( {\hat{\varvec{x}}},{\varvec{u}}\right) \right) {\varvec{\theta }}\right) ^{T}\varGamma {\widetilde{\varvec{x}}}\nonumber \\&\quad \le \gamma _2^2 \overline{{\theta }}^{2}{\widetilde{\varvec{x}}}^{T}{\widetilde{\varvec{x}}}+{\widetilde{\varvec{x}}}^{T}\varGamma \varGamma {\widetilde{\varvec{x}}}\end{aligned}$$
(16)
$$\begin{aligned}&2\left( \left( \varphi \left( {\varvec{x}},{\varvec{u}}\right) - \varphi \left( {\hat{\varvec{x}}},{\varvec{u}}\right) \right) {\varvec{\theta }}\right) ^{T}\varGamma W{\varvec{d}}\le \gamma _2^2 \overline{{\theta }}^{2}{\widetilde{\varvec{x}}}^{T}{\widetilde{\varvec{x}}}\nonumber \\&\quad +\,{\varvec{d}}^{T}W^{T}\varGamma \varGamma W{\varvec{d}} \end{aligned}$$
(17)

Theorem 2

Consider the nonlinear faulty system (2), the state observer (5) and the estimation error (6). Under Assumptions 14, if there exists a symmetric positive definite matrix \(P\in R^{m\times m}\) such that the following matrix inequality holds

$$\begin{aligned} \varPi =\left[ {{\begin{array}{ccc} {\varOmega _1 }&{}\quad {(A-LC)^{T}\varGamma W+\varGamma LD}&{}\quad 0 \\ *&{}\quad {\varOmega _2 }&{}\quad 0 \\ *&{}\quad *&{}\quad {-\sigma _s I} \\ \end{array} }} \right] <0 \end{aligned}$$
(18)

then the following adaptive estimation algorithm

$$\begin{aligned} {\dot{\hat{{\varvec{\theta }}}}}(t)=\gamma \varphi ^{T}({\hat{\varvec{x}}},{\varvec{u}}) C^{T}P{\varvec{r}}(t) -\gamma \sigma _s { \hat{\varvec{\theta }}}(t) \end{aligned}$$
(19)

can realize that all signals are uniformly ultimately bounded, where \(\gamma >0\) is the learning rate, * denotes the symmetric elements in the symmetric matrix, and

$$\begin{aligned}&\varGamma =C^{T}PC \\&\varOmega _1 =(A\!-\!LC)^{T}\varGamma +\varGamma (A\!-\!LC)+2\gamma _1^2 I+2\gamma _2^2 \overline{{\theta }}^{2}I\\&\qquad \quad +\,3\varGamma \varGamma +\varGamma WW^{T}\varGamma \\&\varOmega _2 =3W^{T}\varGamma \varGamma W+D^{T}L^{T}\varGamma W+W^{T}\varGamma LD\\&\qquad \quad +\,W^{T}\varGamma WW^{T}\varGamma W \end{aligned}$$

where \(W\) will be defined in the proof. \(\sigma _s \) is defined as follows:

$$\begin{aligned} \sigma _s =\left\{ {{\begin{array}{lll} 0 &{}\quad \mathrm{if}&{}\quad \left| {{\varvec{\theta }}(t)} \right| <M_0 \\ \sigma _0 \left( {\frac{\left| {{\varvec{\theta }}(t)} \right| }{M_0 }\!-\!1} \right) &{}\quad \mathrm{if}&{}\quad M_0 \!\le \! \left| {{\varvec{\theta }}(t)} \right| \!\le \! 2M_0 \\ \sigma _0 &{}\quad \mathrm{if}&{}\quad \left| {{\varvec{\theta }}(t)} \right| >2M_0 \\ \end{array} }} \right. \end{aligned}$$
(20)

where the positive constants \(\sigma _0 \) and \(M_0 \) are the design parameters.

Proof

See “Appendix 3.”

Remark 3

Based on the Schur Complement Lemma [25], \(\varPi <0\) in (18) can be rewritten as the following linear matrix inequality with respect to matrix \(\varGamma \):

$$\begin{aligned} \left[ \begin{array}{lllllll} \varOmega &{}\quad (A-LC)^{T}\varGamma W+\varGamma LD&{}\quad 0&{}\quad \varGamma &{}\quad \varGamma W&{}\quad 0&{}\quad 0\\ *&{}\quad D^{T}L^{T}\varGamma W+W^{T}\varGamma LD&{}\quad 0\quad &{}\quad 0&{}\quad 0&{}\quad W^{T}\varGamma &{}\quad W^{T}\varGamma W\\ *&{}\quad *&{}\quad -\sigma _s I&{}\quad 0&{}\quad 0&{}\quad 0&{}\quad 0\\ *&{}\quad *&{}\quad *&{}\quad -3I&{}\quad 0&{}\quad 0&{}\quad 0\\ *&{}\quad *&{}\quad *&{}\quad *&{}\quad -I&{}\quad 0&{}\quad 0\\ *&{}\quad *&{}\quad *&{}\quad *&{}\quad *&{}\quad -2I&{}\quad 0\\ *&{}\quad *&{}\quad *&{}\quad *&{}\quad *&{}\quad *&{}\quad -I\\ \end{array}\right] <0 \end{aligned}$$
(21)

where \(\varOmega =(A-LC)^{T}\varGamma +\varGamma (A-LC)+2\gamma _1^2 I+2\gamma _2^2 \overline{{\theta }}^{2}I\) and \(\varGamma =C^{T}PC\). The matrix \(P\) can be derived from \(P=(CC^{T})^{-1}C \varGamma C^{T}(CC^{T})^{-1}\).

Remark 4

Bounds of the state and parameter estimation error and semi-negative definiteness of \(\dot{V}\) depend on \(\underline{\lambda }(-\varPi )\) and \(\sigma _s \). Therefore, the trade-off in selecting these parameters should be considered in the design step.

In the next section, simulation results are provided to investigate the performance of the proposed FDE scheme and are compared with previous work to verify its effectiveness and superiority. It is worth noting that the low-dimensional proposed example does not alter the generality of the proposed strategy for higher-dimensional problems.

4 Simulation results

In this section, a single-link robotic arm, with a revolute joint, rotating in a vertical plane is considered to investigate the complete performance of the proposed FDE scheme. This system is a well-known example in most fault detection studies [16, 18, 19, 26, 27]. The equation of motion for this system is given by [28]:

$$\begin{aligned}&J_\mathrm{m} \ddot{q}_\mathrm{m} +b\dot{q}_\mathrm{m} -k(q_\mathrm{l} -q_\mathrm{m} )=k_\tau u \nonumber \\&J_\mathrm{l} \ddot{q}_\mathrm{l} +k(q_\mathrm{l} -q_\mathrm{m} )+mgh \sin q_\mathrm{l} =0 \end{aligned}$$
(22)

where \(q_\mathrm{m}\) and \(J_\mathrm{m}\) are the angular position and the inertia of the motor. \(q_\mathrm{l},\,J_\mathrm{l}\), \(m\) and \(h\) are the angular position, inertia, mass and length of the link, respectively. \(b,\,k\) and \(k_\tau \) represent the viscous friction coefficient, the torsion spring constant and the amplifier gain, respectively. \(g\) is the gravity constant, and \(u\) is the torque applied by the motor.

Choosing the angular position and the velocity of the motor and the link as the state variables, i.e., \(x_1 =q_\mathrm{m},\,x_2 =\dot{q}_\mathrm{m},\,x_3 =q_\mathrm{l},\,x_4 =\dot{q}_\mathrm{l}\), and assuming that the position and the velocity of the motor can be measured, the above model can be written in the following state space form:

$$\begin{aligned} \left[ {{\begin{array}{c} {\dot{x}_1 } \\ {\dot{x}_2 } \\ {\dot{x}_3 } \\ {\dot{x}_4 } \\ \end{array} }} \right]&= \left[ {{\begin{array}{cccc} 0&{}\quad 1&{}\quad 0&{}\quad 0 \\ {-\frac{k}{J_\mathrm{m} }}&{}\quad {-\frac{b}{J_\mathrm{m} }}&{}\quad {\frac{k}{J_\mathrm{m} }}&{}\quad 0 \\ 0&{}\quad 0&{}\quad 0&{}\quad 1 \\ {\frac{k}{J_\mathrm{l} }}&{}\quad 0&{}\quad {-\frac{k}{J_\mathrm{l} }}&{}\quad 0 \\ \end{array} }} \right] \left[ {{\begin{array}{l} {x_1 } \\ {x_2 } \\ {x_3 } \\ {x_4 } \\ \end{array} }} \right] \nonumber \\&\quad +\,\left[ {{\begin{array}{l} 0 \\ {\frac{k_\tau }{J_\mathrm{m} }} \\ 0 \\ 0 \\ \end{array} }} \right] u+\left[ {{\begin{array}{c} 0 \\ 0 \\ 0 \\ {-\frac{mgh}{J_\mathrm{l} } \sin (x_3 )} \\ \end{array} }} \right] \nonumber \\&\quad +\,\left[ \begin{array}{l} 0 \\ \eta \\ 0 \\ 0 \\ \end{array} \right] +\beta (t)\varphi ({\varvec{x}},{\varvec{u}}) {\varvec{\theta }} \nonumber \\ {\varvec{y}}&= \left[ \begin{array}{cccc} 1&{}\quad 0&{}\quad 0&{}\quad 0 \\ 0&{}\quad 1&{}\quad 0&{}\quad 0 \\ \end{array} \right] \left[ \begin{array}{l} {x_1 } \\ {x_2 } \\ {x_3 } \\ {x_4 } \\ \end{array} \right] +\left[ \begin{array}{l} 0 \\ {d_2 } \\ \end{array} \right] \end{aligned}$$
(23)

It should be noted that the effects of modeling and measurement uncertainties and multiplicative fault have been included in the above model.

In order to verify the effectiveness of the proposed scheme, detection and estimation of both the component fault and the actuator gain fault (loss of effectiveness) are addressed. Also, robustness of the proposed scheme against modeling and measurement uncertainties is investigated. To validate the efficiency of the proposed FDE scheme, its performance is compared with the reported FE scheme in [19].

To evaluate the performance of the proposed FDE strategy, two types of faults, the process fault and the actuator gain fault (loss of effectiveness), are considered as follows:

  1. (a)

    A process fault which causes abnormal friction in the motor (\(F_1\)): The fault function which affects the system is in the form of \(F_1 ({\varvec{x}})=\left[ {{\begin{array}{cccc} 0&{} {-(b/J_\mathrm{m} ) x_2 \theta _1 }&{} 0&{} 0 \\ \end{array} }} \right] ^{T}\) which corresponds to \(\varphi _1 \!=\left[ {{\begin{array}{cccc} 0&{} {-(b/J_\mathrm{m} ) x_2 }&{} 0&{} 0 \\ \end{array} }} \right] ^{T}\) and \(\theta _1 \in [0\,1]\) where \(\theta _1 \) represents the real multiplicative fault parameter. Note that the case \(\theta _1 =0\) implies that the system is operating in the normal mode while \(\theta _1 \ne 0\) describes its faulty behavior. It is assumed that the viscous friction coefficient \(b\) is increased by 40 % at \(t=6\,\hbox {s}\), i.e., \(\theta _1 = 0.4\), \(t\ge 6\,\hbox {s}\).

  2. (b)

    The Actuator gain fault (loss of effectiveness) (\(F_2\)): This kind of fault is modeled via actuator multiplicative fault by letting \(u=u_N +\theta _2 u_N \), where \(u_N \) is the control input in the normal mode and \(\theta _2 \in [-1\,0]\) is the parameter which characterizes the magnitude of the fault. Note that \(\theta _2 =0\) represents the normal operation condition, while \(\theta _2 \ne 0\) implies that the actuator is faulty and \(\theta _2 =-1\) shows the complete failure of the actuator. In this case, the fault function affecting the system is modeled as \(F_2 ({\varvec{u}})=\left[ {{\begin{array}{ccccc} 0&{} {(k_t /J_\mathrm{m} )u \theta _2 }&{} 0&{} 0 \\ \end{array} }} \right] ^{T}\) which corresponds to \(\varphi _2 ({\varvec{u}})=\left[ {{\begin{array}{cccc} 0&{} {(k_t /J_\mathrm{m} )u }&{} 0&{} 0 \\ \end{array} }} \right] ^{T}\) and \(\theta _2 \in [-1\,0]\). It is assumed that this fault occurs at \(t=5\,\hbox {s}\) and its amplitude is 50 % of the nominal control input in the normal mode, i.e., \(\theta _2 =- 0.5,\,t\ge 5\,\hbox {s}\).

In order to implement the proposed scheme, the nonlinear diagnostic observer is constructed to estimate the states of the system and to generate the residual signal. Numerical values of the parameters are set according to [29], the initial conditions of the estimator are chosen to be zero, i.e., \({\hat{\varvec{x}}}(0)=0\) and the system is excited by \(u=\sin t\). The observer gain matrix is set to:

$$\begin{aligned} L=\left[ \begin{array}{cccc} {2.4114 }&{}\quad { 0.922}&{}\quad { 2.442}&{}\quad { 0.864} \\ {0.922 }&{}\quad {43.13 }&{}\quad {20.37 }&{}\quad {125.1} \\ \end{array} \right] ^{T} \end{aligned}$$
(24)

At the first step, the performance of the proposed scheme against faults \(F_1\) and \(F_2\) in the absence of modeling and measurement uncertainties is investigated. The results are depicted in Figs. 1 and 2, respectively. For fault \(F_1 \), evaluation function is shown in Fig. 1a, and the actual fault \(\theta _1 \) and its estimation \(\hat{{\theta }}_1\) are shown in Fig. 1b. Since no uncertainty is considered, upon fault occurrence, the evaluation function deviates from zero. So, it detects the fault and generates an alarm signal. Upon fault detection, the adaptive estimation scheme is activated to model the detected fault. Convergence of the evaluation function implies that the presented model for the occurred fault is accurate and the adaptive estimation scheme presents an accurate estimation of the actual fault. Evaluation function in the presence of fault \(F_2\) is shown in Fig. 2a. Also, the actual fault and its estimation are depicted in Fig. 2b. As can be seen from the figures, once the evaluation function exceeds zero, fault is detected and the adaptive estimation scheme starts to estimate the magnitude and the severity of the fault. Again, the convergence of the evaluation function indicates that the estimated parameter presents an accurate estimation of the actual fault. Simulation results reveal that the proposed scheme is not only able to generate the residual signal and detect the fault simultaneously, but also can present an accurate estimation of the fault after an acceptable time.

Fig. 1
figure 1

a Evaluation function and threshold, b actual fault and its estimation in the presence of the abnormal friction fault and in the absence of uncertainty

Fig. 2
figure 2

a Evaluation function and threshold, b actual fault and its estimation in the presence of the actuator fault and in the absence of uncertainty

In order to verify the robustness of the proposed scheme against modeling uncertainty, 10 % inaccuracy in the value of amplifier gain \(k_t \) is considered. This results the bound \(\overline{{\eta }}= (0.1k_t /J_\mathrm{m} )\left| {u(t)} \right| \) on the modeling uncertainty. In order to achieve the robust fault detection according to Theorem 1, the threshold (12) is calculated analytically. Figure 3a shows the corresponding threshold and the evaluation function in the presence of the fault \(F_2 \) and the uncertainty \({\varvec{\eta }}\). Also, the actual fault function and its estimation are depicted in Fig. 3b. It can be inferred from Fig. 3 that once the fault occurs, the evaluation function increases and exceeds the threshold which indicates the fault detection. Upon fault detection, the adaptive estimation scheme is activated to model the occurred fault. The proposed switching \(\sigma \)-modification type adaptive law is used for a robust fault estimation in the presence of uncertainty.

Fig. 3
figure 3

a Evaluation function and threshold, b actual fault and its estimation in the presence of the actuator fault and modeling uncertainty

Finally, the effect of measurement uncertainty on the system performance is investigated. The unknown measurement uncertainty in the output equation is assumed to be \(d_2 (t)=0.01 \sin (10t)\). Figure 4a shows the evaluation function and the threshold in the presence of the fault \(F_2 \) and the measurement uncertainty. Also, the actual fault function and its estimation are depicted in Fig. 4b. It can be inferred from Fig. 4 that the estimation of the fault function remains zero before the occurrence of the fault, and upon fault detection, it starts to estimate the unknown fault.

Fig. 4
figure 4

a Evaluation function and threshold, b fault and its estimation in the presence of the actuator fault and measurement uncertainty

In order to highlight the effectiveness and superiority of the proposed scheme, the results for the fault estimation for the two faulty scenarios are presented. In the first simulation scenario, it is assumed that the viscous friction coefficient \(b\) is increased by 20 % at \(t=5\,\hbox {s}\), i.e., \(\theta _1 = 0.2,\,t\ge 5\,\hbox {s}\). In the second simulation scenario, a 30 % gain fault is considered at \(t=15\,\hbox {s}\), i.e., \(\theta _2 = -0.3,\,t\ge 15\,\hbox {s}\). Figure 5 shows the actual and the estimated faults \(\theta _1 \) and \(\theta _2 \), which are obtained by applying the proposed FDE scheme. It can be inferred from Fig. 5 that the estimation of the unknown fault parameters converges to their actual values rapidly and shows no undesirable transient response characteristic.

Fig. 5
figure 5

Real fault and its estimation by the proposed FDE scheme

In order to highlight the effectiveness and superiority of the proposed method, the results are compared with those obtained by the FE scheme in [19]. The performance of the FE scheme in the presence of two faulty scenarios is depicted in Fig. 6. Comparing the results reveals that the proposed approach not only can estimate the unknown fault accurately, but also has fast convergence, while the FE scheme has undesirable transient response specifications which are obvious in Fig. 6. Also, the effectiveness of the proposed scheme is numerically compared with the FE approach in Table 1. The detection time, the mean square error (MSE) of the fault estimation and the robustness of the two schemes against uncertainty are investigated. It is worth noting that in [19], the fault is declared when the output of the estimator becomes nonzero, while the practical way to improve the robustness of the scheme with respect to uncertainty is to start an adaptation when the residual is larger than a certain threshold. Also, the scheme in [19] does not have robust performance against modeling and measurement uncertainties.

Fig. 6
figure 6

Real fault and its estimation by the robust fault estimation scheme in [19]

Table 1 Performances of the proposed scheme and the reported FE approach of [19]

5 Conclusion

In this paper, a new robust FDE scheme for Lipschitz nonlinear systems which are subjected to modeling and measurement uncertainties is presented. Unlike many proposed schemes in the literature which assume that the states of the system are measurable and the fault function acts as an additive term, the proposed FDE scheme focuses on detection and estimation of the multiplicative faults and does not rely on the availability of the full state measurements. Most of the component faults and some of the actuator and sensor faults are presented as multiplicative faults. The proposed scheme can detect and estimate the unknown multiplicative faults, which are function of both the state and the control input variables of the system. The proposed scheme consists of an adaptive state observer together with a robust adaptive law and can simultaneously estimate the states of the system, generate the residual signal and estimate the fault. Also, the proposed FDE method has a major advantage in contrast to the previous results that the presented conditions for fault estimation are obtained in terms of LMI. In order to demonstrate the performance of the proposed strategy, some simulation results for a single-link flexible joint robotic arm are presented, which illustrate the effectiveness and the superior performance of the proposed FDE scheme.