Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

The purpose of an observer is to estimate the unmeasurable states of a system based only on the measured outputs and inputs. It is essentially a mathematical replica of the system, driven by the input of the system together with a signal representing the difference between the measured system and observer outputs. In the earliest observer, attributed to Luenberger, the difference between the output of the plant and the observer is fed back linearly into the observer. However, in the presence of unknown signals or uncertainty, a Luenberger observer is usually (a) unable to force the output estimation error to zero and (b) the observer states do not converge to the system states. A sliding mode observer, which feeds back the output estimation error via a nonlinear switching term, provides an attractive solution to this issue. Provided a bound on the magnitude of the disturbances is known, the sliding mode observer can force the output estimation error to converge to zero in finite time, while the observer states converge asymptotically to the system states. In addition, disturbances within the system can also be reconstructed.

3.1 Introduction

Consider initially a nominal linear system

$$\displaystyle\begin{array}{rcl} \dot{x}(t) = Ax(t) + Bu(t)\end{array}$$
(3.1)
$$\displaystyle\begin{array}{rcl} y(t) = Cx(t)\end{array}$$
(3.2)

where \(A \in {\mathbb{R}}^{n\times n}\), \(B \in {\mathbb{R}}^{n\times m}\), and \(C \in {\mathbb{R}}^{p\times n}\). Without loss of generality assume that C has full row rank which means each of the measured outputs is independent. The objective is to obtain an estimate of the state x(t) based only on knowledge of the quantities y(t) and u(t). An algebraic condition on the matrix pair (A, C)—the notion of observability—was proposed as a necessary and sufficient condition for state reconstruction (for details see Appendix C). For simplicity, the observability condition will be assumed to hold, although technically some of the developments only require the weaker restriction of detectability on the pair (A, C).

One way of viewing the approach of Luenberger is to think of the observer system as comprising a model of the plant together with a feedback term which corrects the estimates by injecting back the discrepancy between its output and the output of the system, through a designer-specified gain. In the simplest form of sliding mode observer, instead of feeding back the output error between the observer and the system in a linear fashion, the output error is fed back via a discontinuous switched signal.

3.2 A Simple Sliding Mode Observer

Consider a coordinate transformation xT c x associated with the invertible matrix

$$T_{c} = \left [\begin{array}{c} N_{c}^{T} \\ C \end{array} \right ]$$
(3.3)

where the submatrix \(N_{c} \in {\mathbb{R}}^{n\times (n-p)}\) spans the null-space of C. By construction det(T c ) ≠ 0. Applying the change of coordinates xT c x, the triple (A, B, C) has the form

$$T_{c}AT_{c}^{-1} = \left [\begin{array}{cc} A_{11} & A_{12} \\ A_{21} & A_{22} \end{array} \right ],\quad T_{c}B = \left [\begin{array}{c} B_{1} \\ B_{2} \end{array} \right ],\quad CT_{c}^{-1} = \left [\begin{array}{cc} 0&I_{p} \end{array} \right ]$$
(3.4)

where \(A_{11} \in {\mathbb{R}}^{(n-p)\times (n-p)}\) and \(B_{1} \in {\mathbb{R}}^{(n-p)\times m}\). The structure imposed on the output distribution matrix in (3.4) is crucial to what follows. Assume without loss of generality the system (3.1) and (3.2) is already in the form of (3.4).

Utkin proposed an observer for (3.1) and (3.2) of the form

$$\displaystyle\begin{array}{rcl} \dot{\hat{x}}(t) = A\hat{x}(t) + Bu(t) + G_{n}\nu \end{array}$$
(3.5)
$$\displaystyle\begin{array}{rcl} \hat{y}(t) = C\hat{x}(t)\end{array}$$
(3.6)

where \((\hat{x},\hat{y})\) are the estimates of (x, y) and ν is a discontinuous injection term. Define \(e(t) :=\hat{ x}(t) - x(t)\) and \(e_{y}(t) :=\hat{ y}(t) - y(t)\) as the state estimation and output estimation errors, respectively. The term ν is defined component-wise as

$$\nu _{i} =\rho \mbox{ sign}(e_{y,i}),\quad i = 1,2,...,p$$
(3.7)

where ρ is a positive scalar and e y, i represents the ith component of e y . The term ν is designed to be discontinuous with respect to the sliding surface \(\mathcal{S} =\{ e : Ce = 0\}\) to force the trajectories of e(t) onto \(\mathcal{S}\) in finite time. Assume without loss of generality that the system is already in the coordinate associated with (3.4), then the gain G n has the structure

$$G_{n} = \left [\begin{array}{c} L\\ - I_{p} \end{array} \right ]$$
(3.8)

where \(L \in {\mathbb{R}}^{(n-p)\times p}\) represents the design freedom. It follows from the definition of e(t) and Eqs. (3.1) and (3.5) that the error system is given by

$$\dot{e}(t) = Ae(t) + G_{n}\nu$$
(3.9)

From the structure of the output distribution matrix C in (3.4), the state estimation error can be partitioned as e = col(e 1, e y ) where \(e_{1} \in {\mathbb{R}}^{n-p}\). Consequently the error system from (3.9) can be written in the form

$$\displaystyle\begin{array}{rcl} \dot{e}_{1}(t) = A_{11}e_{1}(t) + A_{12}e_{y}(t) + L\nu \end{array}$$
(3.10)
$$\displaystyle\begin{array}{rcl} \dot{e}_{y}(t) = A_{21}e_{1}(t) + A_{22}e_{y}(t) -\nu \end{array}$$
(3.11)

Furthermore Eq. (3.11) can be written component-wise as

$$\dot{e}_{y,i}(t) = A_{21,i}e_{1}(t) + A_{22,i}e_{y}(t) -\rho \ \mbox{ sign}(e_{y,i})$$
(3.12)

where A 21, i and A 22, i represent the ith rows of A 21 and A 22, respectively. To develop conditions under which sliding will take place, the reachability condition will be tested. From (3.12)

$$\displaystyle\begin{array}{rcl} e_{y,i}\dot{e}_{y,i}& =& e_{y,i}(A_{21,i}e_{1} + A_{22,i}e_{y}) -\rho \vert e_{y,i}\vert \\ & <& -\vert e_{y,i}\vert (\rho -\vert (A_{21,i}e_{1} + A_{22,i}e_{y})\vert ) \\ \end{array}$$

Provided the scalar ρ is chosen large enough such that

$$\rho > \vert A_{21,i}e_{1} + A_{22,i}e_{y}\vert +\eta$$
(3.13)

where the scalar \(\eta \in \mathbb{R}_{+}\), then

$$e_{y,i}\dot{e}_{y,i} < -\eta \vert e_{y,i}\vert $$
(3.14)

This is the eta-reachability condition discussed in Chap. 2 and implies that e y, i will converge to zero in finite time. When every component of e y (t) has converged to zero, a sliding motion takes place on the surface \(\mathcal{S}\).

Remark 3.1.

Note that this is not a global result. For any given ρ, there will exist initial conditions of the observer (typically representing very poor estimates of the initial conditions of the plant) so that (3.13) is not satisfied.

During sliding, \(e_{y}(t) =\dot{ e}_{y}(t) = 0\), and the error system defined by (3.10) and (3.11) can be written in collapsed form as

$$\displaystyle\begin{array}{rcl} \dot{e}_{1}(t) = A_{11}e_{1}(t) + L\nu _{eq}\end{array}$$
(3.15)
$$\displaystyle\begin{array}{rcl} 0 = A_{21}e_{1}(t) -\nu _{eq}\end{array}$$
(3.16)

where ν eq is the so-called equivalent output error injection that is required to maintain the sliding motion. This is the natural analogue of the equivalent control discussed in Chap. 2. Substituting for ν eq from (3.15) and (3.16) yields the following expression for the reduced-order sliding motion:

$$\dot{e}_{1}(t) = (A_{11} + LA_{21})e_{1}(t)$$
(3.17)

This represents the reduced-order motion (of order np) that governs the sliding mode dynamics.

It can be shown if (A, C) is observable, then (A 11, A 21) is also observable, and a matrix L can always be chosen to ensure that the reduced-order motion in (3.17) is stable.

Example 3.1.

Consider a second-order state-space system described by (3.1) and (3.2) where

$$A = \left [\begin{array}{rr} 0&1\\ - 2 &0 \end{array} \right ],\quad B = \left [\begin{array}{c} 0\\ 1 \end{array} \right ],\quad C = \left [\begin{array}{cc} 1&1 \end{array} \right ]$$
(3.18)

which represents a simple harmonic oscillator. For simplicity, assume u(t) = 0. A suitable choice for the nonsingular matrix T c from (3.3) is

$$T_{c} = \left [\begin{array}{rr} 1& - 1\\ 1 & 1 \end{array} \right ]$$
(3.19)

Following the change of coordinates xT c x, the system triple (A, B, C) becomes

$$T_{c}AT_{c}^{-1} = \left [\begin{array}{rr} 0.5& 1.5 \\ - 1.5& - 0.5 \end{array} \right ],\quad T_{c}B = \left [\begin{array}{r} - 1\\ 1 \end{array} \right ],\quad CT_{c}^{-1} = \left [\begin{array}{rr} 0&1 \end{array} \right ]$$
(3.20)

and A 11 = 0. 5 and \(A_{21} = -1.5\). Suppose the nonlinear gain from (3.8) is chosen as L = 3. This results in the sliding motion being governed by \(A_{11} + LA_{21}= - 4\), which is stable. In the original coordinates of (3.18), the nonlinear gain can be calculated as

$$G_{n} = T_{c}^{-1}\left [\begin{array}{c} L \\ - 1 \end{array} \right ] = \left [\begin{array}{rr} 0.5&0.5\\ - 0.5 &0.5 \end{array} \right ]\left [\begin{array}{r} 3\\ - 1 \end{array} \right ] = \left [\begin{array}{r} 1\\ - 2 \end{array} \right ]$$
(3.21)

The following simulation was performed with the system having initial conditions \(x(0) = \mbox{ col}(0.5,-0.8)\) and the observer having zero initial conditions.

Figure 3.1 shows the system states x(t) and the estimates \(\hat{x}(t)\). After approximately 1. 5 s, excellent tracking of the states occurs. Figure 3.2 shows the output estimation error e y (t) and the state estimation errors e(t). After approximately 0. 66 s, e y (t) becomes zero and remains zero. This is indicative of a sliding motion taking place on \(\mathcal{S}\). Subsequently, the errors (Fig. 3.1) evolve governed the dynamics of the reduced-order motion. Figure 3.3 shows that during the sliding motion, the term ν exhibits high-frequency switching. Figure 3.4 shows an approximation of the equivalent output error injection signal ν eq obtained from low-pass filtering ν from Fig. 3.3 through a first-order filter with time constant τ = 0. 02 s. Notice that the term ν eq shows good agreement with the formal expression for ν eq in Eq. (3.16) once a sliding motion is taking place.

Fig. 3.1
figure 1figure 1

System states x(t) (solid) and the observer estimates \(\hat{x}(t)\) (dashed)

Fig. 3.2
figure 2figure 2

The output estimation error e y (t) (dashed) and the components of the state estimation error e(t) (solid)

Fig. 3.3
figure 3figure 3

The nonlinear injection switching term ν

Fig. 3.4
figure 4figure 4

The equivalent output error injection ν eq (solid) and A 21 e 1(t) (dashed)

In the next set of simulations the same observer is employed but the initial conditions of the plant states have been changed to 0. 5 and − 1. 5, respectively. Once again the initial conditions of the observer are set as zero. The direct consequence of this is that the initial conditions e 1(0) and e y (0) are larger than previously simulated, and the response of the error system is qualitatively different.

Figure 3.5 shows that the output estimation error e y (t) now pierces the sliding surface \(\mathcal{S}\) at approximately 0. 87 s but does not remain there, and sliding does not take place. The reason is that the state estimation error e 1(t) at that time instant e y (t) = 0 does not satisfy the reachability condition in (3.14). However, when e y (t) becomes zero again at approximately 1. 55 s, a sliding motion begins. At this point in time, the error e 1(t) is much smaller, and the reachability condition (3.14) is satisfied. Figure 3.6 shows the injection term ν in the case when the initial errors are large. It is clear that the onset of sliding occurs much later since the high-frequency sliding motion does not appear until 1.5 s.

Fig. 3.5
figure 5figure 5

The output estimation error e y (t) (dashed) and the components of the state estimation error e(t) (solid)

Fig. 3.6
figure 6figure 6

The discontinuous term ν with larger error initial conditions

3.3 Robustness Properties of Sliding Mode Observers

Now suppose the nominal linear system in Eq. (3.1) is replaced by the uncertain system

$$\dot{x}(t) = Ax(t) + Bu(t) + M\xi (t,x,u)$$
(3.22)

where \(\xi (t,x,u) \in {\mathbb{R}}^{h}\) is a disturbance and \(M \in {\mathbb{R}}^{n\times h}\) is the associated distribution matrix. To exploit the robustness properties associated with sliding modes described in Chap. 2, suppose the gain G n is designed such that it is matched to the disturbance distribution matrix, i.e., M = G n X for some \(X \in {\mathbb{R}}^{p\times h}\). As a consequence in the coordinates of (3.4) and (3.8)

$$M = \left [\begin{array}{c} LX\\ - X \end{array} \right ] = \left [\begin{array}{c} L\\ -I \end{array} \right ]X$$
(3.23)

and the error system in (3.10) and (3.11) becomes

$$\displaystyle\begin{array}{rcl} \dot{e}_{1}(t) = A_{11}e_{1}(t) + A_{12}e_{y}(t) + L\nu - LX\xi (t,x,u)\end{array}$$
(3.24)
$$\displaystyle\begin{array}{rcl} \dot{e}_{y}(t) = A_{21}e_{1}(t) + A_{22}e_{y}(t) -\nu +X\xi (t,x,u)\end{array}$$
(3.25)

Again it is necessary to develop conditions under which a sliding motion can be enforced. To this end, from (3.25)

$$\displaystyle\begin{array}{rcl} e_{y,i}\dot{e}_{y,i}& =& e_{y,i}(A_{21,i}e_{1} + A_{22,i}e_{y} + X_{i}\xi ) -\rho \vert e_{y,i}\vert \\ & <& -\vert e_{y,i}\vert (\rho -\vert A_{21,i}e_{1} + A_{22,i}e_{y} + X_{i}\xi \vert ) \\ \end{array}$$

and it is clear that if the gain of the switching term is large enough so that \(\rho > \vert A_{21,i}e_{1} + A_{22,i}e_{y} + X_{i}\xi \vert +\eta\) for a scalar η > 0 then the reachability condition in (3.14) is satisfied. An ideal sliding motion is then guaranteed to take place in finite time. During the sliding motion Eqs. (3.24) and (3.25) take the form

$$\displaystyle\begin{array}{rcl} \dot{e}_{1}(t) = A_{11}e_{1}(t) + L\nu _{eq} - LX\xi (t,x,u)\end{array}$$
(3.26)
$$\displaystyle\begin{array}{rcl} 0 = A_{21}e_{1}(t) -\nu _{eq} + X\xi (t,x,u)\end{array}$$
(3.27)

Substituting for ν eq from (3.27) and (3.26) yields

$$\dot{e}_{1}(t) = (A_{11} + LA_{21})e_{1}(t)$$
(3.28)

which is independent of the disturbance ξ(t, x, u).

Remark 3.2.

Notice that for the existence of an ideal sliding motion, the matching condition (3.23) is not required; a large enough ρ is sufficient to induce a sliding motion. The matching condition is only required for the reduced-order motion (3.28) to be independent of ξ(t, x, u).

Example 3.2.

Consider system (3.18), subject to uncertainty entering via the distribution matrix

$$M = \left [\begin{array}{r} 1\\ - 2 \end{array} \right ]$$

In the simulations which follow ξ(t, x, u) = 0. 2sin(x 1(t)) but this information is not available to the observer. Notice from (3.21) that the gain matrix G n = M and the so-called matching conditions in Eq. (3.23) are satisfied with X = 1.

Figures 3.7 and 3.8 show a sliding motion occurring after 0.66 s. Also notice that the state estimation errors evolve according to a first-order decay. Crucially the evolution is unaffected by the disturbance. This disturbance rejection property is a major advantage of sliding mode observers compared to traditional linear Luenberger observers. It can be seen from Fig. 3.9 that although the effect of the disturbance ξ(t, x, u) is not present in the state estimation errors, it appears directly in the signal ν eq . In fact once the reduced-order motion e 1(t) has become sufficiently small (at about 1.5 s), the signal ν eq exactly “reproduces” the disturbance ξ(t, x, u) (with a small delay due to the low-pass filter used to obtain ν eq ). This is a powerful result because the term ν was not designed with any a priori knowledge about ξ(t, x, u), except that it is bounded.

Fig. 3.7
figure 7figure 7

The output estimation error e y (t) (dashed) and the components of the state estimation error e(t) (solid)

Fig. 3.8
figure 8figure 8

The error vector associated with the sliding motion e 1(t)

Fig. 3.9
figure 9figure 9

The equivalent output error injection ν eq (solid) and the disturbance ξ(t, x, u) (dashed)

Figure 3.3 shows the term ν consists of high-frequency switching once sliding is established. In the observer this does not present the sort of problem it does for control problems because the signal ν does not need to be realized by an actuator. However, that said, it does to a certain extent pose a problem for the numerical scheme used to solve the observer equations; consequently it is still often useful to “smooth” the discontinuity. Recall that ν is defined component-wise as ν i = ρ sign(e y, i ), which can also be expressed as

$$\nu _{i} =\rho \ \frac{e_{y,i}} {\vert e_{y,i}\vert }\qquad \mbox{ if}\ e_{y,i}(t)\neq 0$$
(3.29)

The expression in (3.29) can be approximated by a smooth sigmoid function

$$\nu _{i} =\rho \ \frac{e_{y,i}} {\vert e_{y,i}\vert +\delta }$$
(3.30)

where δ is a small positive scalar. As in the control problem this results in a trade-off between maintaining close to ideal performance and achieving a smooth output error injection signal. Repeating the simulation, now using ν as in (3.30) with δ = 0. 0001, yields the responses shown in Fig. 3.10. Clearly the signal is smooth and there is no visible chattering. Furthermore, from Fig. 3.11, it can be seen that the performance of the system is relatively unaffected by this approximation.

Fig. 3.10
figure 10figure 10

The output error injection term ν after being smoothed

Fig. 3.11
figure 11figure 11

The output estimation error e y (t) (dashed) and the components of the state estimation error e(t) (solid)

As explained earlier, the observer does not provide any guarantee of global state estimation convergence. In the observer in (3.5)–(3.7), the size of ρ dictates the size of the domain in which sliding is guaranteed to take place. This results in a trade-off. For practical reasons, a very large value of ρ is not desirable (since chattering is amplified), but a large ρ increases the set of initial conditions for which the estimation error converges. This is explored in the next example.

Example 3.3.

For pedagogical purposes consider an unstable state-space system

$$A = \left [\begin{array}{rr} - 2& - 3\\ 1 & 3 \end{array} \right ],\quad B = \left [\begin{array}{c} 0\\ 1 \end{array} \right ],\quad C = \left [\begin{array}{cc} 0&1 \end{array} \right ]$$
(3.31)

Notice that in this example no change of coordinates is needed because the output distribution matrix C is already in the required structure of (3.4). Specifying L = 0 gives linear (reduced-order) first-order dynamics with a pole at − 2. In the simulations which follow ρ = 1. Also a full-order state feedback u(t) = Fx(t) controller is used where \(F = \left [\begin{array}{cc} 1& - 1 \end{array} \right ]\) so that eig \((A + BF) =\{ \pm 1.4142i\}\). The reason for this choice of closed-loop eigenvalues is that the states will be oscillatory, and the tracking of the states can be more readily observed. In Fig. 3.12, the “shaded” area is the region in which the initial conditions (e 1(0), e y (0)) must lie for a sliding motion to occur. Outside this set of points the observer fails to converge. The shaded region is sometimes referred to as the sliding patch. The size of the shaded area can of course be enlarged by increasing the value of ρ, but this is undesirable since increasing ρ tends to lead to more severe chattering.

Fig. 3.12
figure 12figure 12

The sliding region

A more elegant way to enlarge the sliding patch is to add a linear output error feedback term to the observer. Specifically Eq. (3.5) can be modified to take the form

$$\dot{\hat{x}}(t) = A\hat{x}(t) - G_{l}e_{y}(t) + Bu(t) + G_{n}\nu$$
(3.32)

where \(G_{l} \in {\mathbb{R}}^{n\times p}\). An appropriate choice of the gain G l will enlarge the sliding patch. From Eqs. (3.1), (3.2), and (3.6), the state estimation error associated with the observer in (3.32) is

$$\dot{e}(t) = (A - G_{l}C)e(t) + G_{n}\nu$$
(3.33)

The error system in (3.33) is nonlinear and so a good approach to try to establish global asymptotic stability is to consider Lyapunov-based methods. Consider the quadratic form

$$V = {e}^{T}Pe$$
(3.34)

where \(P \in {\mathbb{R}}^{n\times n}\) is a symmetric positive definite matrix, as a candidate Lyapunov function. Differentiating (3.34) with respect to time yields

$$\displaystyle\begin{array}{rcl} \dot{V }& =& \dot{{e}}^{T}Pe + {e}^{T}P\dot{e} \\ & =& {e}^{T}(P(A - G_{ l}C) + {(A - G_{l}C)}^{T}P)e + 2{e}^{T}PG_{ n}\nu \end{array}$$
(3.35)

If P, G l , and G n can be chosen such that the expression in (3.35) is negative, then the error system in (3.33) is (globally) quadratically stable.

Example 3.4.

For the system in (3.31), choosing

$$G_{l} = \left [\begin{array}{r} - 3\\ 6 \end{array} \right ]\quad \mbox{ and}\quad G_{n} = \left [\begin{array}{c} 0\\ 1 \end{array} \right ]$$
(3.36)

results in a closed-loop error system

$$\displaystyle\begin{array}{rcl} \dot{e}_{1}(t) = -2e_{1}(t)\end{array}$$
(3.37)
$$\displaystyle\begin{array}{rcl} \dot{e}_{y}(t) = e_{1}(t) - 3e_{y}(t) -\mbox{ sign}(e_{y})\end{array}$$
(3.38)

Consider a positive definite quadratic function as in (3.34) where e = (e 1, e y ) and

$$P = \left [\begin{array}{cc} \frac{1} {4} & 0\\ 0 &1 \end{array} \right ]$$
(3.39)

Differentiating with respect to time yields

$$\displaystyle\begin{array}{rcl} \dot{V }& =& \frac{1} {2}e_{1}\dot{e}_{1} + 2e_{y}\dot{e}_{y} \\ & =& \frac{1} {2}e_{1}(-2e_{1}) + 2e_{y}(e_{1} - 3e_{y} -\mbox{ sign}(e_{y})) \\ & =& -e_{1}^{2} - 6e_{ y}^{2} + 2e_{ 1}e_{y} - 2\vert e_{y}\vert \\ & =& -{(e_{1} - e_{y})}^{2} - 5e_{ y}^{2} - 2\vert e_{ y}\vert \\ \end{array}$$

If (e 1, e y ) ≠ 0, then \(\dot{V } < 0\) and global stability of the error system is proven. Furthermore it can be shown that a sliding motion takes place in finite time. Once the error e(t) becomes sufficiently small, the reachability condition in (3.14) is satisfied and a sliding motion takes place. From the arguments above, since e → 0, e 1 → 0 as t. In particular at some finite time t 0, \(\vert e_{1}(t)\vert < \frac{1} {2}\) for all tt 0. Now form a typical reachability test

$$\displaystyle\begin{array}{rcl} e_{y}\dot{e}_{y}& =& e_{y}(e_{1} - 3e_{y} -\mbox{ sign}(e_{y})) \\ & \leq & \vert e_{1}\vert \vert e_{y}\vert - 3e_{y}^{2} -\vert e_{ y}\vert \\ &\leq & \vert e_{1}\vert \vert e_{y}\vert -\vert e_{y}\vert \end{array}$$
(3.40)

and therefore for all t > t 0,

$$\displaystyle\begin{array}{rcl} e_{y}\dot{e}_{y} \leq -\frac{1} {2}\vert e_{y}\vert \end{array}$$
(3.41)

which implies e y → 0 in finite time and a sliding mode takes place.

This example shows that the introduction of a linear output error injection term can be beneficial.

The problem of robust state estimation for systems with bounded matched uncertainty will now be explored. Consider the following uncertain system

$$\displaystyle\begin{array}{rcl} \dot{x}(t) = Ax(t) + Bu(t) + Bf(t,y,u)\end{array}$$
(3.42)
$$\displaystyle\begin{array}{rcl} y(t) = Cx(t)\end{array}$$
(3.43)

where \(f : \mathbb{R}_{+} \times {\mathbb{R}}^{p} \times {\mathbb{R}}^{m}\mapsto {\mathbb{R}}^{m}\) represents lumped uncertainty or nonlinearities. The function is assumed to be unknown but bounded so that

$$\|f(t,y,u)\| \leq \rho (t,y,u)$$
(3.44)

where ρ(⋅) is known. Consider an observer of the form

$$\dot{z}(t) = Az(t) + Bu(t) - GCe(t) - {P}^{-1}{C}^{T}{F}^{T}\nu$$
(3.45)

where \(e = z - x\). The symmetric positive definite matrix \(P \in {\mathbb{R}}^{n\times n}\) and the gain matrix G are assumed to satisfy

$$PA_{0} + A_{0}^{T}P < 0$$
(3.46)

where \(A_{0} := A - GC\), and the structural constraint

$$PB = {(FC)}^{T}$$
(3.47)

for some \(F \in {\mathbb{R}}^{m\times p}\). The discontinuous scaled unit-vector term

$$\nu =\rho (t,y,u)\frac{FCe(t)} {\|FCe(t)\|}$$
(3.48)

and \(e(t) = z(t) - x(t)\).

Under these circumstances the quadratic form given by V (e) = e T Pe can be shown to guarantee quadratic stability. Furthermore an ideal sliding motion takes place on

$$\mathcal{S}_{F} =\{ e \in {\mathbb{R}}^{n}\ :\ FCe = 0\}$$

in finite time.

Remark 3.3.

It should be noted that if p > m then sliding on \(\mathcal{S}_{F}\) is not the same as sliding on Ce(t) = 0.

Example 3.5.

Consider the equations of motion for a pendulum system written as

$$\ddot{\phi }(t) = -\frac{g} {l} \sin (\phi (t))$$

where g is the gravitational constant and l is the length of the pendulum. These can be rewritten in state-space form as

$$\dot{x}(t) = \left [\begin{array}{c c} 0&1\\ 0 &0 \end{array} \right ]x(t)+\left [\begin{array}{c} 0\\ 1 \end{array} \right ]\xi (t,x)$$
(3.49)

where x 1 = ϕ, \(x_{2} =\dot{\phi }\), and \(\xi (t,x_{1},x_{2}) = -\frac{g} {l} \sin (\phi )\). Somewhat artificially choose as an output measurement y(t) = Cx(t) where

$$C = \left [\begin{array}{cc} 1&1 \end{array} \right ]$$
(3.50)

i.e., the sum of position and velocity. Also assume the term ξ(t, x 1, x 2) is unknown—possibly because the length of the pendulum is imprecisely known. The aim is both to estimate x(t) and reconstruct ξ(t, x) from y(t).

Choosing

$$G_{l} = \left [\begin{array}{c} 1\\ 1 \end{array} \right ]$$

means the eigenvalues of AG l C are \(\{-1,-1\}\) and furthermore

$$P(A - G_{l}C) + {(A - G_{l}C)}^{T}P < 0$$

if

$$P = \left [\begin{array}{cc} 2&1\\ 1 &1 \end{array} \right ]$$

Notice also for this choice of P, the structural equation PB = C T is satisfied. The sliding mode observer is

$$\dot{z}(t) = \left [\begin{array}{rr} 0&1\\ 0 &0 \end{array} \right ]z(t)-\left [\begin{array}{c} 1\\ 1 \end{array} \right ]e_{y}(t)-\left [\begin{array}{c} 0\\ 1 \end{array} \right ]2\mbox{ sign}(e_{y})$$
(3.51)

where

$$e_{y}(t) = Cz(t) - y(t)$$

is the output estimation error.

When the initial conditions of the true states and observer states are deliberately set to different values the output of the observer tracks the output of the plant in finite time as shown in Fig. 3.13.

Fig. 3.13
figure 13figure 13

Plant output y(t) and the observer estimate \(\hat{y}(t)\)

Figure 3.14 shows the same information as a plot of e y . A sliding motion takes place after 0. 2 s. The finite time response is a characteristic of sliding modes.

Fig. 3.14
figure 14figure 14

The output estimation error e y

Figure 3.15 shows the states and the state estimation errors. Although the output estimation error converges to zero in finite time, the state estimation error is asymptotic. However, asymptotic convergence has been achieved despite the plant/model mismatch resulting from the term ξ(t, x 1, x 2) which is not used in the sliding mode observer.

Fig. 3.15
figure 15figure 15

System states x(t) (solid) and the observer estimates \(\hat{x}(t)\) (dashed)

Figure 3.16 shows a low-pass-filtered version of the injection signal \(\nu = -2\mbox{ sign}(e_{y})\) from the observer. It clearly replicates the “unknown signal” ξ(t, x 1, x 2) and compensates for it to allow perfect (asymptotic) convergence of the state estimates.

Fig. 3.16
figure 16figure 16

The injection signal and the unknown input

3.4 A Generic Conventional Sliding Mode Observer

Consider the following uncertain dynamical system:

$$\displaystyle\begin{array}{rcl} \dot{x}(t) = Ax(t) + Bu(t) + Mf(t,y,u)\end{array}$$
(3.52)
$$\displaystyle\begin{array}{rcl} y(t) = Cx(t)\end{array}$$
(3.53)

where \(x \in {\mathbb{R}}^{n}\) are the states, \(y \in {\mathbb{R}}^{p}\) are the measurable outputs, and \(u \in {\mathbb{R}}^{m}\) are the measurable inputs. The signal \(f \in {\mathbb{R}}^{q}\) is the lumped uncertainty acting upon the system where q < p. It is unknown but assumed to be bounded so that

$$\ \|f(t,t,u)\| \leq \alpha (t,y,u)$$
(3.54)

where α(⋅) is known. Assume without loss of generality that the matrices C and M are full rank. The objective is to reconstruct both the states and the unknown input f(t) based only on the measured signals u(t), y(t).

Two lemmas will now be presented which underpin the rest of this chapter. They will describe a canonical form which will help facilitate understanding of the problem and provide a framework for solving the problem.

Lemma 3.1.

Let the triple (A,M,C) represent a linear system with p > q and suppose \(rank(CM) = rank(M) = q\) , then there exists a change of coordinates x ↦ T o x for the system (3.52) and (3.53) such that in the new coordinates the triple (A,M,C) of the transformed system has the following structure:

$$A = \left [\begin{array}{c|c} A_{11} & A_{12} \\ \hline\begin{array}{c} A_{211} \\ A_{212} \end{array} & A_{22} \end{array} \right ],\quad M = \left [\begin{array}{c} 0\\ M_{2} \end{array} \right ],\quad C = \left [\begin{array}{cc} 0&T \end{array} \right ]$$
(3.55)

where \(A_{11} \in {\mathbb{R}}^{(n-p)\times (n-p)},A_{211} \in {\mathbb{R}}^{(p-q)\times (n-p)}\), \(T \in {\mathbb{R}}^{p\times p}\) is orthogonal, and \(M_{2} \in {\mathbb{R}}^{p\times q}\) has the structure

$$M_{2} = \left [\begin{array}{c} 0\\ M_{o} \end{array} \right ]$$
(3.56)

where \(M_{o} \in {\mathbb{R}}^{q\times q}\) is nonsingular.

Proof.

First introduce a coordinate transformation to make the last p states of the system the outputs. To achieve this, define

$$T_{c} = \left [\begin{array}{c} N_{c}^{T} \\ C \end{array} \right ]$$
(3.57)

where \(N_{c} \in {\mathbb{R}}^{n\times (n-p)}\) is such that its columns span the null space of C. The coordinate transformation xT c x is nonsingular by construction and in the new coordinate system

$$C = \left [\begin{array}{c c} 0&I_{p} \end{array} \right ]$$

Suppose in the new coordinate system

$$M = \left [\begin{array}{c} M_{1} \\ M_{2} \end{array} \right ]\begin{array}{l} \updownarrow n-p \\ \updownarrow p \end{array}$$

in which M 1 and M 2 have no particular structure other than the fact that rank(M 2) = q. This follows because CM = M 2 and so by assumption rank(M 2) = q. Hence the left pseudo-inverse M 2 is well defined. Also there exists an orthogonal matrix \(T \in {\mathbb{R}}^{p\times p}\) such that

$${ T}^{T}M_{ 2} = \left [\begin{array}{c} 0\\ M_{o} \end{array} \right ]$$
(3.58)

where \(M_{o} \in {\mathbb{R}}^{q\times q}\) is nonsingular. Such a matrix can be found be QR factorization. Consequently, the coordinate transformation xT b x where

$$T_{b} = \left [\begin{array}{c c} I_{n-p}& - M_{1}M_{2}^{\dag } \\ 0 & {T}^{\mbox{ T}} \end{array} \right ]$$
(3.59)

is nonsingular, and in the new coordinates the triple (A, M, C) is in the form

$$\displaystyle\begin{array}{rcl} A& =& \left [\begin{array}{ccc c} A_{11} & A_{12} \\ A_{21} & A_{22} \end{array} \right ],\quad M = \left [\begin{array}{c} 0\\ M_{o} \end{array} \right ],\quad C = \left [\begin{array}{ccc c} 0&T \end{array} \right ]\end{array}$$
(3.60)

where \(A_{11} \in {\mathbb{R}}^{(n-q)\times (n-q)}\) and the remaining subblocks in the system matrix are partitioned accordingly. The triple in (3.60) has exactly the structure claimed in the lemma statement.

Lemma 3.2.

The pair (A 11 ,A 211 ) is detectable if and only if the invariant zeros of (A,M,C) are stable.

Proof.

From the PBH rank test,Footnote 1 the unobservable modes of (A 11, A 211) are given by the values of s that make the following matrix pencil lose rank:

$$P_{obs}(s) = \left [\begin{array}{c} sI - A_{11} \\ A_{211} \end{array} \right ]$$

The zeros of (A, M, C) are given by the values of s that make the Rosenbrock matrix R obs (s) lose rank, where

$$R_{obs}(s) = \left [\begin{array}{cc} sI - A& - M\\ C & 0 \end{array} \right ] = \left [\begin{array}{cc|c} sI - A_{11} & - A_{12} & 0 \\ - A_{211} & \star & 0 \\ - A_{212} & \star & - M_{o} \\\hline 0 & T & 0 \end{array} \right ]$$

and the ⋆ represents elements that do not play a role in the subsequent analysis. Since M o and T are both square and invertible, R obs (s) loses rank if and only if P obs (s) loses rank. Clearly the unobservable modes of (A 11, A 211) are the invariant zeros of (A, M, C), and hence the proof is complete.

Assume that for the system in (3.52) and (3.53):

  1. A1.

    rank(CM) = rank(M).

  2. A2.

    The invariant zeros (if any) of (A, M, C) are stable.

The canonical form associated with Lemma 3.1 will be used as a basis for the solution to the problem of estimating both the states and unknown inputs.

The following observer will be considered:

$$\displaystyle\begin{array}{rcl} \ \dot{\hat{x}}(t) = A\hat{x}(t) + Bu(t) - G_{l}e_{y}(t) + G_{n}\nu \end{array}$$
(3.61)
$$\displaystyle\begin{array}{rcl} \hat{y}(t) = C\hat{x}(t)\end{array}$$
(3.62)

where \(e_{y}(t) :=\hat{ y}(t) - y(t)\) is the output estimation error. The design freedom is associated with the two gains \(G_{l} \in {\mathbb{R}}^{n\times p}\) and \(G_{n} \in {\mathbb{R}}^{n\times p}\) which are design matrices to be determined. The vector ν is defined by

$$\nu (t) = -\rho (t,y,u)\frac{e_{y}} {\|e_{y}\|}\qquad \mbox{ if}\ e_{y}(t)\neq 0$$
(3.63)

where ρ(⋅) is a positive scalar function dependent on the magnitude of the unknown input signal f(t). Condition A1 means that the canonical form in (3.55) can be attained, and hence without loss of generality assume that the triple (A, M, C) has the form given in (3.55). In the coordinates of (3.55), let

$$G_{n} = \left [\begin{array}{c} - L\\ I_{p } \end{array} \right ]{T}^{T}P_{ o}^{-1}$$
(3.64)

where \(L = \left [\begin{array}{cc} {L}^{o}&0 \end{array} \right ]\) and \({L}^{o} \in {\mathbb{R}}^{(n-p)\times (p-q)}\). The symmetric positive definite matrix \(P_{o} \in {\mathbb{R}}^{p\times p}\) and the gain L o are design matrices. Defining \(A_{o} = A - G_{l}C\) and the state estimation error as \(e(t) :=\hat{ x}(t) - x(t)\). From (3.52) and (3.61) and (3.53) and (3.62), the following error system can be obtained:

$$\dot{e}(t) = A_{o}e(t) + G_{n}\nu - Mf(t,\hat{x} - e,y)$$
(3.65)

Proposition 3.1.

If there exists a matrix G l and a Lyapunov matrix P of the form

$$P = \left [\begin{array}{cc} P_{1} & \ \ P_{1}L \\ {L}^{T}P_{1} & \ \ {T}^{T}P_{o}T + {L}^{T}P_{1}L \end{array} \right ] > 0$$
(3.66)

where \(P_{1} \in {\mathbb{R}}^{(n-p)\times (n-p)}\) , which satisfies

$$PA_{o} + A_{o}^{T}P < 0$$
(3.67)

and \(\rho (t,y,u) \geq \| P_{o}CM\|\alpha (t,y,u) +\eta _{o}\) where η o > 0, then the state estimation error e(t) is asymptotically stable.

Proof.

Consider as a candidate Lyapunov function

$$V = {e}^{T}Pe$$
(3.68)

where P is given in (3.66). Differentiating (3.68) with respect to time yields

$$\displaystyle\begin{array}{rcl} \dot{V }& =& \dot{{e}}^{T}Pe + {e}^{T}P\dot{e} \\ & =& {e}^{T}(PA_{ o} + A_{o}^{T}P)e + 2{e}^{T}PG_{ n}\nu - 2{e}^{T}PMf \\ \end{array}$$

From the definitions of P, G n , and M in (3.66), (3.64), and (3.55), respectively, it can be verified that

$$PG_{n} = {C}^{T}$$
(3.69)

and

$$PM = {C}^{T}P_{ o}CM$$
(3.70)

Using (3.67) and (3.69)–(3.70), \(\dot{V }\) becomes

$$\dot{V } \leq 2{e}^{T}{C}^{T}\nu - 2{e}^{T}{C}^{T}P_{ o}CMf$$

From the definition of ν in (3.63) and using the bound of f in (3.54)

$$\displaystyle\begin{array}{rcl} \dot{V }& <& -2\rho \|e_{y}\| - 2e_{y}^{T}P_{ o}CMf \\ & \leq & -2\|e_{y}\|(\rho -\|P_{o}CM\|\alpha ) \\ & \leq & -2\eta _{o}\|e_{y}\| \\ & <& 0\ \ \mbox{ for}\ \ e\neq \end{array}$$
(0)

which proves the state estimation error is quadratically stable.

Using this result, it can be further shown that a sliding motion can be achieved in finite time.

Corollary 3.1.

A stable sliding motion takes place on the surface

$$\mathcal{S} =\{ e : Ce = 0\}$$
(3.71)

in finite time and the sliding motion is governed by A 11 + L o A 211 .

Proof.

To prove a sliding motion is attained, firstly apply a change of coordinates xT L x where

$$T_{L} = \left [\begin{array}{cc} I_{n-p}& L \\ 0 &T \end{array} \right ]$$
(3.72)

such that the triple (A, M, C) in (3.55) is transformed to be

$$\bar{A} = \left [\begin{array}{cc} \bar{A}_{11} & \bar{A}_{12} \\ \bar{A}_{21} & \bar{A}_{22} \end{array} \right ],\quad \bar{M} = \left [\begin{array}{c} 0\\ \bar{M}_{2} \end{array} \right ],\quad \bar{C} = \left [\begin{array}{cc} 0&I_{p} \end{array} \right ]$$
(3.73)

where \(\bar{A}_{11} = A_{11} + {L}^{o}A_{211}\). This follows from the structure of L in (3.64). Using (3.73), the error system (3.65) can be partitioned as

$$\displaystyle\begin{array}{rcl} \dot{e}_{1}(t)& =& \bar{A}_{11}e_{1}(t) + (\bar{A}_{12} -\bar{ G}_{l,1})e_{y}(t)\end{array}$$
(3.74)
$$\displaystyle\begin{array}{rcl} \dot{e}_{y}(t)& =& \bar{A}_{21}e_{1}(t) + (\bar{A}_{22} -\bar{ G}_{l,2})e_{y}(t) + P_{o}^{-1}\nu -\bar{ M}_{ 2}f(t)\end{array}$$
(3.75)

where

$$\left [\begin{array}{c} \bar{G}_{l,1} \\ \bar{G}_{l,2} \end{array} \right ] = T_{L}G_{l}$$
(3.76)

Introduce a candidate Lyapunov function for the subsystem (3.75) as

$$V _{s} = e_{y}^{T}P_{ o}e_{y}$$

Differentiating V s with respect to time and using (3.75) yield

$$\dot{V }_{s} = e_{y}^{T}(P_{ o}(\bar{A}_{22}-\bar{G}_{l,2})+{(\bar{A}_{22}-\bar{G}_{l,2})}^{T}P_{ o})e_{y}+2e_{y}^{T}P_{ o}\bar{A}_{21}e_{1}+2e_{y}^{T}\nu -2e_{ y}^{T}P_{ o}\bar{M}_{2}f$$

It can be shown that

$$\displaystyle\begin{array}{rcl}{ (T_{L}^{T})}^{-1}PT_{ L}^{-1} = \left [\begin{array}{cc} P_{1} & 0 \\ 0 &P_{o} \end{array} \right ]& &\end{array}$$
(3.77)

and

$$\displaystyle\begin{array}{rcl} T_{L}A_{o}T_{L}^{-1} = \left [\begin{array}{cccc} \bar{A}_{11} & \bar{A}_{12} -\bar{ G}_{l,1} \\ \bar{A}_{21} & \bar{A}_{22} -\bar{ G}_{l,2} \end{array} \right ]& &\end{array}$$
(3.78)

By direct calculation it follows that \({(T_{L}^{T})}^{-1}(PA_{o} + A_{o}^{T}P)T_{L}^{-1}\) can be expanded as

$$\left [\begin{array}{cc} P_{1}\bar{A}_{11} +\bar{ A}_{11}^{T}P & \star \\ \star &P_{o}(\bar{A}_{22} -\bar{ G}_{l,2}) + {(\bar{A}_{22} -\bar{ G}_{l,2})}^{T}P_{o} \end{array} \right ] < 0$$
(3.79)

where the ⋆ represents elements that do not play any significant role in the analysis. Since (3.79) is symmetric, \(P_{o}(\bar{A}_{22} -\bar{ G}_{l,2}) + {(\bar{A}_{22} -\bar{ G}_{l,2})}^{T}P_{o} < 0\) and hence

$$\displaystyle\begin{array}{rcl} \dot{V }_{s}& <& 2e_{y}^{T}P_{ o}\bar{A}_{21}e_{1} + 2e_{y}^{T}\nu - 2e_{ y}^{T}P_{ o}\bar{M}_{2}f \\ & \leq & 2\|e_{y}\|\|P_{o}\bar{A}_{21}e_{1}\| - 2\eta _{o}\|e_{y}\| \\ & =& 2\|e_{y}\|(\|P_{o}\bar{A}_{21}e_{1}\| -\eta _{o}) \end{array}$$
(3.80)

Notice that

$$\|e{_{y}\|}^{2}={(\sqrt{P_{ o}}e_{y})}^{T}P_{ o}^{-1}(\sqrt{P_{ o}}e_{y})\geq \lambda _{min}(P_{o}^{-1})\|\sqrt{P_{ o}}e{_{y}\|}^{2}=\lambda _{ min}(P_{o}^{-1})V _{ s}$$
(3.81)

Define η as a scalar satisfying 0 < η < η o . Since from Proposition 3.1 the state estimation error is quadratically stable, in finite time e 1(t) enters the domain

$$\Omega _{\eta } =\{ e_{1} :\| P_{o}\bar{A}_{21}e_{1}\| <\eta _{o}-\eta \}$$

and remains there. Inside the domain Ω η inequality (3.80) becomes

$$\frac{dV _{s}} {dt} < -2\eta \|e_{y}\| < -2\eta \sqrt{\lambda _{min } (P_{o }^{-1 })}\sqrt{V _{s}}$$

This proves that a sliding motion takes place on \(\mathcal{S}\) in finite time.

When a sliding motion has been achieved, \(e_{y}(t) =\dot{ e}_{y}(t) = 0\) and from (3.74) the remaining dynamics e 1(t) are governed by \(\bar{A}_{11} = A_{11} + {L}^{o}A_{211}\). Since from inequality (3.79) \(P_{1}\bar{A}_{11} +\bar{ A}_{11}^{T}P_{1} < 0\) and P 1 > 0, the matrix \(\bar{A}_{11}\) is stable. This completes the proof.

Remark 3.4.

The following observations can be made:

  • One possible choice of linear gain in (3.61) is

    $$G_{l} = \left [\begin{array}{c} A_{12} - A_{11}L + LA_{22}^{s} \\ A_{22} - LA_{21} - A_{22}^{s}\end{array} \right ]$$

    where \(A_{22}^{s} \in {\mathbb{R}}^{p\times p}\) is any Hurwitz stable matrix. For a given L which makes A 11 + LA 21 stable, this guarantees the existence of a matrix P of the form in (3.66) such that \(P(A - G_{l}C) + {(A - G_{l}C)}^{T}P < 0\). This choice is far from unique and optimization methods can be applied to synthesize G l according to some criteria.

  • During the sliding motion when \(\dot{e}_{y} = e_{y} = 0\), from (3.75)

    $$0 =\bar{ A}_{21}e_{1}(t) + P_{o}^{-1}\nu _{ eq} -\bar{ M}_{2}f(t,\hat{x} - e,y)$$
    (3.82)

    Furthermore since the autonomous dynamical system in (3.74) is asymptotically stable, e 1(t) → 0 as t. Therefore

    $$P_{o}^{-1}\nu _{ eq} -\bar{ M}_{2}f(t,\hat{x} - e,y) \rightarrow 0$$
    (3.83)

    and the equivalent injection compensates for the unknown uncertain term \(f(t,\hat{x} - e,y)\). Consequently not only does the state \(\hat{x}\) asymptotically tend to x(t) but also the scaling of the equivalent injection

    $$\bar{M}_{2}^{\dag }P_{ o}^{-1}\nu _{ eq}(t) \rightarrow f(t,\hat{x} - e,y)$$

    where \(\bar{M}_{2}^{\dag }\) is any left pseudo-inverse of \(\bar{M}_{2}\).

Example 3.6.

Consider the fourth-order system

$$\displaystyle\begin{array}{rcl} A& =& \left[\begin{array}{rrrr} - 3.9354& 0& 0& - 14.7110\\ 0 & 0 & 0 & 1.0000 \\ 1.0000& 14.9206& 0& 1.6695\\ 0.7287 & 0 & 0 & - 2.1963 \end{array} \right]B = \left[\begin{array}{r} 0\\ 0 \\ 0\\ 0.8116 \end{array} \right]\end{array}$$
(3.84)
$$C = \left[\begin{array}{cccc} 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{array} \right] $$
(3.85)

This represents a linearization of the rigid body dynamics of a passenger vehicle (Fig. 2.10). The first state is an average of the lateral velocity v and yaw rate r; the second state represents Ψ, the vehicle orientation; the third state, Y, is the lateral deviation from the intended lane position, and the fourth state, r, is the yaw rate.

It is easy to identify the following subcomponents:

$$A_{11} = \left [\begin{array}{rr} - 3.9354&0\\ 0 &0 \end{array} \right ]\quad A_{211} = \left [\begin{array}{rr} 1.0000&14.9206 \end{array} \right ]$$
(3.86)

It can be verified that (A 11, A 211) is observable and so a matrix L o can be found such that A 11 + L o A 211 is stable. Choosing

$${L}^{o} = \left [\begin{array}{c} - 0.0318 \\ - 0.1362 \end{array} \right ]$$

ensures the eigenvalues of A 11 + L o A 211 are at \(\{-2,-4\}\). A particular choice of the Luenberger gain in the sliding mode observer is

$$G_{l} = \left [\begin{array}{rr} - 0.0297& - 14.7111\\ 0.4087 & 1.0000 \\ 5.0646& 1.6695\\ 0.0232 & 0.8037 \end{array} \right ]$$

which is obtained by choosing \(A_{22}^{s} = -3I_{2}\).

3.5 A Sliding Mode Observer for Nonlinear Systems

In this section, a class of nonlinear uncertain systems is considered which might be termed semi-linear. Consider a system described by

$$\displaystyle\begin{array}{rcl} \dot{x} = Ax +\phi (x,u) + Df(y,u,t)\end{array}$$
(3.87)
$$\displaystyle\begin{array}{rcl} y = Cx\end{array}$$
(3.88)

where \(x \in {\mathbb{R}}^{n}\), \(u \in {\mathbb{R}}^{m}\), and \(y \in {\mathbb{R}}^{p}\) are the state variables, inputs, and outputs, respectively. The matrices \(A \in {\mathbb{R}}^{n\times n}\), \(D \in {\mathbb{R}}^{n\times q}\), and \(C \in {\mathbb{R}}^{p\times n}\) (qp < n) are constant, with D and C both full rank. The known nonlinear term ϕ(x, u) is assumed to be Lipschitz with respect to x for all \(u \in \mathcal{U}\) (here \(\mathcal{U}\) is an admissible control set): i.e., there exists a positive scalar \(\mathcal{L}_{\phi }\) such that

$$\|\phi (x,u) -\phi (\hat{x},u)\| \leq \mathcal{L}_{\phi }\|x -\hat{ x}\|$$
(3.89)

The gain \(\mathcal{L}_{\phi }\) can be thought of as the steepest possible gradient that ϕ(⋅) achieves with variations in x. The unknown function \(f(y,u,t) \in {\mathbb{R}}^{q}\) is assumed to satisfy

$$\|f(y,u,t)\| \leq \rho (y,u,t)$$
(3.90)

where the function ρ(y, u, t) is known.

The system in (3.87) and (3.88) might represent a nonlinear system subject to faults captured by the unknown input signal f(y, u, t). In particular if D = B, then the faults are associated with the actuators of the system—hence the direct dependence of the signal f(⋅) on the control signal u(t).

The following assumptions will be imposed on system (3.87) and (3.88):

Assumption 1. rank(CD) = rank(D).

Assumption 2. All the invariant zeros of the matrix triple (A, D, C) lie in the left half plane.

From Lemma 3.1, it can be assumed without loss of generality that system (3.87) and (3.88) already has the form

$$\displaystyle\begin{array}{rcl} \dot{x}_{1} = A_{1}x_{1} + A_{12}x_{2} +\phi _{1}(x,u)\end{array}$$
(3.91)
$$\displaystyle\begin{array}{rcl} \dot{x}_{2} = A_{21}x_{1} + A_{22}x_{2} +\phi _{2}(x,u) + D_{2}f(y,u,t)\end{array}$$
(3.92)
$$\displaystyle\begin{array}{rcl} y = C_{2}x_{2}\end{array}$$
(3.93)

where x = col(x 1, x 2) with \(x_{1} \in {\mathbb{R}}^{n-p}\), and ϕ 1(x, u) and ϕ 2(x, u) are the first np and the last p components of ϕ(x, u).

Now a robust sliding mode observer will be proposed using the system structure characteristics shown in Sect. 3.4. First introduce a coordinate transformation z = Tx where

$$T := \left [\begin{array}{cc} I_{n-p}& L \\ 0 &I_{p} \end{array} \right ]$$
(3.94)

where L has the structure

$$L = \left [\begin{array}{cc} {L}^{o}&0 \end{array} \right ]$$
(3.95)

and \({L}^{o} \in {\mathbb{R}}^{(n-p)\times (p-q)}\). Then, it follows that in the new z coordinates, system (3.91)–(3.93) has the following form:

$$\displaystyle\begin{array}{rcl} \dot{z}_{1}& =& (A_{11} + LA_{21})z_{1} + \left (A_{12} + LA_{22} - (A_{11} + LA_{21})L\right )z_{2} \\ & & +\left [\begin{array}{cc} I_{n-p}&L \end{array} \right ]\phi ({T}^{-1}z,u)\end{array}$$
(3.96)
$$\displaystyle\begin{array}{rcl} \dot{z}_{2} = A_{21}z_{1} + \left (A_{22} - A_{21}L\right )z_{2} +\phi _{2}({T}^{-1}z,u) + D_{ 2}f(y,u,t)\end{array}$$
(3.97)
$$\displaystyle\begin{array}{rcl} y = C_{2}z_{2}\end{array}$$
(3.98)

where z : = col(z 1, z 2) with \(z_{1} \in {\mathbb{R}}^{n-p}\). Notice that (3.96) is independent of the unknown function f(⋅). This very specific structure (3.96) occurs because LD 2 = 0. For system (3.96)–(3.98), consider a dynamical system (the observer) given by

$$\displaystyle\begin{array}{rcl} \dot{\hat{z}}_{1}& =& (A_{11} + LA_{21})\hat{z}_{1} + \left (A_{12} + LA_{22} - (A_{11} + LA_{21})L\right )C_{2}^{-1}y \\ & & +\left [\begin{array}{cc} I_{n-p}&L \end{array} \right ]\phi ({T}^{-1}\hat{z},u)\end{array}$$
(3.99)
$$\displaystyle\begin{array}{rcl} \dot{\hat{z}}_{2} = A_{21}\hat{z}_{1} + \left (A_{22} - A_{21}L\right )\hat{z}_{2} - K(y - C_{2}\hat{z}_{2}) +\phi _{2}({T}^{-1}\hat{z},u) +\nu \ \ \ \end{array}$$
(3.100)
$$\displaystyle\begin{array}{rcl} \hat{y} = C_{2}\hat{z}_{2}\end{array}$$
(3.101)

where \(\hat{z} := \mbox{ col}(\hat{z}_{1},C_{2}^{-1}y)\) and \(\hat{y}\) is the output of the dynamical system. Note that \(\hat{z}\) does not represent the state estimate \(\mathrm{col}(\hat{z}_{1},\hat{z}_{2})\). It is merely used as a convenient notation in the developments which follow. Also note that the unknown input f(⋅) does not appear in (3.99) and (3.100) but the known nonlinearity ϕ(⋅) does—except its arguments depend on \(\hat{z}\) and not z. The gain matrix K is chosen so that the matrix \(C_{2}(A_{22} - A_{21}L)C_{2}^{-1} + C_{2}K\) is symmetric negative definite. This is always possible since C 2 is nonsingular and an explicit formula is given later. Define the output estimation error as \(e_{y} = y -\hat{ y}\), and the injection signal ν as

$$\nu := k(\cdot )C_{2}^{-1}\frac{e_{y}} {\|e_{y}\|}$$
(3.102)

where k(⋅) is a positive scalar function to be determined.

Let \(e_{1} = z_{1} -\hat{ z}_{1}\) and \(e_{y} = y -\hat{ y} = C_{2}(z_{2} -\hat{ z}_{2})\). Then from (3.96) to (3.98) and (3.99) to (3.101), the state estimation error dynamical system is described by

$$\displaystyle\begin{array}{rcl} \dot{e}_{1} = (A_{11} + LA_{21})e_{1} + \left [\begin{array}{cc} I_{n-p}&L \end{array}\right ]\big(\phi ({T}^{-1}z,u) -\phi({T}^{-1}\hat{z},u)\big)\end{array}$$
(3.103)
$$\begin{array}{llll}\dot{e}_{y}& =& C_{2}A_{21}e_{1} + \left (C_{2}(A_{22} - A_{21}L)C_{2}^{-1} + C_{ 2}K\right )e_{y} + C_{2}D_{2}f(t) - C_{2}\nu \\ & & +C_{2}\left(\phi _{2}({T}^{-1}z,u) -\phi _{2}({T}^{-1}\hat{z},u)\right)\end{array}$$
(3.104)

where \(\hat{z} = \mbox{ col}(\hat{z}_{1},C_{2}^{-1}y)\) and ν is defined by (3.102). From Lemma 3.1 and Assumptions 1–2, a matrix L of the form in (3.95) can be found to make A 11 + LA 21 stable. As argued earlier, a gain matrix \(K \in {\mathbb{R}}^{p\times p}\) can be chosen as

$$K = -(A_{22} - A_{21}L)C_{2}^{-1} - C_{ 2}^{-1}A_{ s}$$
(3.105)

where A s is symmetric positive definite to ensure \(C_{2}(A_{22} - A_{21}L)C_{2}^{-1} + C_{2}K\) is negative definite, and hence the nominal linear system matrix of the state estimation error dynamical system (3.103) and (3.104) given by

$$\left [\begin{array}{cc} A_{11} + LA_{21} & 0 \\ C_{2}A_{21} & C_{2}(A_{22} - A_{21}L)C_{2}^{-1} + C_{2}K \end{array} \right ]$$
(3.106)

is stable.

From (3.94) and (3.98), it follows that

$$\displaystyle\begin{array}{rcl}{ T}^{-1}z - {T}^{-1}\hat{z}& =& \left [\begin{array}{cccccc} I_{n-p}& - L \\ 0 & I_{p} \end{array} \right ]\left [\begin{array}{c} z_{1} -\hat{ z}_{1} \\ z_{2} - C_{2}^{-1}y \end{array} \right ] = \left [\begin{array}{c} e_{1} \\ 0 \end{array} \right ] \\ & \Rightarrow & \left \|{T}^{-1}z - {T}^{-1}\hat{z}\right \| =\| e_{ 1}\| \end{array}$$
(3.107)

For system (3.103) and (3.104), consider a sliding surface

$$\mathcal{S} = \left \{(e_{1},e_{y})\mid e_{y} = 0\right \}$$
(3.108)

Then, the following can be proved:

Proposition 3.2.

Under Assumptions 1–2, the sliding motion of system (3.103) and (3.104), associated with the surface (3.108), is asymptotically stable if the matrix inequality

$$\bar{{A}}^{T}\bar{{P}}^{T} +\bar{ P}\bar{A} + \frac{1} {\varepsilon } \bar{P}\bar{{P}}^{T} +\varepsilon { \left (\mathcal{L}_{\phi }\right )}^{2}I_{ n-p} +\alpha P < 0$$
(3.109)

where ε and α are positive constants, \(\mathcal{L}_{\phi }\) is the Lipschitz constant for ϕ(x,u) with respect to x, and L has the structure in (3.95), is solvable for \(\bar{P}\) where

$$\bar{P} := P\left [\begin{array}{cc} I_{n-p}&L \end{array} \right ]\qquad \mathrm{and}\qquad \bar{A} := \left [\begin{array}{c} A_{11} \\ A_{21} \end{array} \right ]$$
(3.110)

with P > 0.

Proof.

The analysis above has shown that (3.103) represents the sliding dynamics when restricted to the sliding surface (3.108). Therefore, it is only required to prove that (3.103) is asymptotically stable. Consider a candidate Lyapunov function V = e 1 T Pe 1. The time derivative of V along the trajectories of system (3.103) is given by

$$\displaystyle\begin{array}{rcl} \dot{V }\mid _{(3.103)}& =& e_{1}^{T}\big({(A_{ 11} + LA_{21})}^{T}P + P(A_{ 11} + LA_{21})\big)e_{1} \\ & & +2e_{1}^{T}P\left [\begin{array}{cc} I_{n-p}&L \end{array} \right ]\big(\phi ({T}^{-1}z,u) -\phi ({T}^{-1}\hat{z},u)\big) \\ & =& e_{1}^{T}\big(\bar{{A}}^{T}\bar{{P}}^{T} +\bar{ P}\bar{A}\big)e_{ 1} + 2{\left (\bar{{P}}^{T}e_{ 1}\right )}^{T}\big(\phi ({T}^{-1}z,u) -\phi ({T}^{-1}\hat{z},u)\big) \\ \end{array}$$

From the well-known inequalityFootnote 2 that \(2{X}^{T}Y \leq \varepsilon {X}^{T}X + \frac{1} {\varepsilon } {Y }^{T}Y\) for any scalar ε > 0, it follows that

$$\displaystyle\begin{array}{rcl} \dot{V }\mid _{(3.103)}& \leq & e_{1}^{T}\big(\bar{P}\bar{A} +\bar{ {A}}^{T}\bar{{P}}^{T}\big)e_{ 1} +\varepsilon e_{1}^{T}\bar{P}\bar{{P}}^{T}e_{ 1} \\ & & +\frac{1} {\varepsilon } {\left(\phi ({T}^{-1}z,u) -\phi ({T}^{-1}\hat{z},u)\right)}^{T}\left(\phi ({T}^{-1}z,u) -\phi ({T}^{-1}\hat{z},u)\right)\end{array}$$

From (3.107),

$$\|\phi ({T}^{-1}z,u) -\phi ({T}^{-1}\hat{z},u)\| \leq \mathcal{L}_{\phi }\|e_{ 1}\|$$
(3.111)

Consequently

$$\displaystyle\begin{array}{rcl} \dot{V }\mid _{(3.103)}& \leq & e_{1}^{T}\big(\bar{P}\bar{A} +\bar{ {A}}^{T}\bar{{P}}^{T}\big)e_{ 1} + \varepsilon e_{1}^{T}\bar{P}\bar{{P}}^{T}e_{ 1} + \frac{1} {\varepsilon }{ \left (\mathcal{L}_{\phi }\right )}^{2}\|e{_{ 1}\|}^{2} \\ & =& e_{1}^{T}\big(\bar{P}\bar{A} +\bar{ {A}}^{T}\bar{{P}}^{T} +\varepsilon \bar{ P}\bar{{P}}^{T} + \frac{1} {\varepsilon }{ \left (\mathcal{L}_{\phi }\right )}^{2}I\big)e_{ 1} \\ & \leq & -\alpha e_{1}^{T}Pe_{ 1} = -\alpha V \end{array}$$
(3.112)

where (3.109) has been used to obtain the last inequality, and the proof is complete.

Remark 3.5.

Note that inequality (3.109) can be transformed into the following Linear Matrix Inequality (LMI) problem: for a given scalar α > 0, find matrices P and Y and a scalar ε such that

$$\left [\begin{array}{ccc} \Theta (P,Y ) +\alpha P +\varepsilon { \left (\mathcal{L}_{\phi }\right )}^{2} & P & Y \\ P & -\varepsilon I_{n-p}& 0 \\ {Y }^{T} & 0 & -\varepsilon I_{p} \end{array} \right ] < 0$$
(3.113)

where \(\Theta (P,Y ) := PA_{1} + A_{1}^{T}P + Y A_{21} +{ A_{21}^{TY }}^{T}\) and the decision variable Y : = PL with P > 0. This problem can be solved by LMI techniques. If \(\mathcal{L}_{\phi }\) is known, then for a given α, the problem of finding P, Y, and ε to satisfy (3.113) is a standard LMI feasibility problem. Alternatively, an optimization problem can be posed which is to find P, Y, and ε which maximizes \(\mathcal{L}_{\phi }\) in (3.113). This is a convex eigenvalue optimization problem and can be solved using standard LMI algorithms.

Since \(\dot{V }(t) \leq -\alpha V (t)\) in (3.112), it follows that there exists a positive scalar M such that

$$\|e_{1}(t)\| \leq M\|e_{1}(0)\|\exp \{ -\alpha t/2\}$$
(3.114)

where a choice is \(M := \sqrt{\frac{\lambda _{\max }(P)} {\lambda _{\min }(P)}}\). Based on inequality (3.114), introduce a dynamic system given by

$$\dot{\hat{w}}(t) = -\frac{1} {2}\alpha \hat{w}(t)$$
(3.115)

For any value e 1(0), choose \(\hat{w}(0)\) such that \(M\|e_{1}(0)\| \leq \hat{ w}(0)\). Then, it is easy to see that the available solution \(\hat{w}(t)\) to Eq. (3.115) is an upper bound on the size of the corresponding state estimation error e 1(t); specifically \(\|e_{1}(t)\| \leq \hat{ w}(t)\) for all t ≥ 0.

Proposition 3.3 has shown that the sliding mode associated with the sliding surface \(\mathcal{S}\) given in (3.108) is stable if the matrix inequality (3.109) is solvable. The objective is now to determine the scalar gain function k(⋅) in (3.102) such that the system can be driven to the surface \(\mathcal{S}\) in finite time and a sliding motion can be maintained.

Proposition 3.3.

Under Assumptions 1–2, system (3.103) and (3.104) is driven to the sliding surface (3.108) in finite time and remains there if the gain k(⋅) in (3.102) is chosen to satisfy

$$\displaystyle\begin{array}{rcl} k(t,u,y,\hat{z}) \geq (\|C_{2}A_{21}\| +\| C_{2}\|\mathcal{L}_{\phi })\hat{w}(t) +\| C_{2}D_{2}\|\rho (y,u,t) +\eta \quad \end{array}$$
(3.116)

where η is a positive constant and \(\hat{w}\) is the solution to the differential Eq. (3.115).

Proof.

Let \(\tilde{V }(e_{y}) = e_{y}^{T}e_{y}\). From the expression for the output estimation error in (3.104), it follows that

$$\displaystyle\begin{array}{rcl} \dot{\tilde{V}}&=&e_{y}^{T}\big(C_{ 2}(A_{22} - A_{21}L\big)C_{2}^{-1} + C_{ 2}K+\big {(C_{2}(A_{22} - A_{21}L)C_{2}^{-1} + C_{2}K\big)}^{T}\big)e_{ y} + \\ & & +2e_{y}^{T}\left(C_{ 2}A_{21}e_{1} + C_{2}\left(\phi _{2}({T}^{-1}z) -\phi _{ 2}({T}^{-1}\hat{z}_{y})\right) + C_{2}D_{2}f(t) - C_{2}\nu \right)\end{array}$$
(3.117)

Since, by design \(C_{2}(A_{22} - A_{21}L)C_{2}^{-1} + C_{2}K\) is symmetric negative definite, it follows that

$$\displaystyle\begin{array}{rcl}{ \left (C_{2}(A_{22} - A_{21}L)C_{2}^{-1} + C_{ 2}K\right )}^{T} + C_{ 2}(A_{22} - A_{21}L)C_{2}^{-1} + C_{ 2}K < 0\qquad \quad & &\end{array}$$
(3.118)

By applying (3.90) and (3.118) to (3.117), it follows from (3.107) that

$$\displaystyle\begin{array}{rcl} \dot{\tilde{V }} \leq 2\|e_{y}\|\left (\|C_{2}A_{21}\| +\| C_{2}\|\mathcal{L}_{\phi }\right )\|e_{1}\| +\| C_{2}D_{2}\|\rho (y,u,t)\big) - 2e_{y}^{T}C_{ 2}\nu \ \ \ \qquad \quad \end{array}$$
(3.119)

From the arguments above, \(\|e_{1}(t)\| \leq \hat{ w}(t)\), and substituting the ν given in (3.102) into (3.119) yields

$$\displaystyle\begin{array}{rcl} \dot{\tilde{V }} = 2\|e_{y}\|\big((\|C_{2}A_{21}\| +\| C_{2}\|\mathcal{L}_{\phi })\hat{w} - 2k(\cdot )\big)\|e_{y}\|\end{array}$$
(3.120)

From (3.116) and (3.120) it follows that \(\dot{\tilde{V }} \leq -2\eta \|e_{y}\| \leq -2\eta \tilde{{V }}^{\frac{1} {2} }.\) This shows that the reachability condition is satisfied. It follows that \(\tilde{V } = 0\) in finite time and consequently a sliding motion is achieved and maintained after some finite time t s > 0. Hence the proof is complete.

3.6 Fault Detection: A Simulation Example

Consider a single-link flexible joint robot system, where the system nonlinearities come from the joint flexibility modeled as a stiffened torsional spring, and the gravitational force. The dynamical model for the robot can be described by

$$\displaystyle\begin{array}{rcl} \dot{\theta }_{1}& =& \omega _{1}\end{array}$$
(3.121)
$$\displaystyle\begin{array}{rcl} \dot{\omega }_{1}& =& \frac{1} {J_{1}} (\kappa _{1}(\theta _{2} -\theta _{1}) +\kappa _{2}{(\theta _{2} -\theta _{1})}^{3}) -\frac{B_{v}} {J_{1}} \omega _{1} + \frac{K_{\tau }} {J_{1}} u\end{array}$$
(3.122)
$$\displaystyle\begin{array}{rcl} \dot{\theta }_{2}& =& \omega _{2}\end{array}$$
(3.123)
$$\displaystyle\begin{array}{rcl} \dot{\omega }_{2}& =& -\frac{1} {J_{2}} (\kappa _{1}(\theta _{2} -\theta _{1}) +\kappa _{2}{(\theta _{2} -\theta _{1})}^{3}) -\frac{m_{l}gh} {J_{2}} \sin (\theta _{2})\end{array}$$
(3.124)

where θ 1 and ω 1 are the motor position and velocity, respectively; θ 2 and ω 2 are the link position and velocity, respectively; J 1 is the inertia of the DC motor; J 2 is the inertia of the link; 2h is the length of the link, while m l represents its mass; B v is the viscous friction; κ 1 and κ 2 both are positive constants; and K τ is the amplifier gain. The domain considered here is {(θ 1, ω 1, θ 2, ω 2)∣ | θ 2θ 1 | < 2. 8, | ω 1 | ≤ 50}. It is assumed that the motor position, motor velocity and the sum of link velocity, and link position are measured. Suppose that a fault occurs in the input channel in the robot system. Therefore the fault distribution matrix D will be equal to the input distribution matrix. Suitable values for the parameters are: \(J_{1} = 3.7 \times 1{0}^{-3}{\mbox{ kgm}}^{2}\), \(J_{2} = 9.3 \times 1{0}^{-3}{\mbox{ kgm}}^{2}\), \(h = 1.5 \times 1{0}^{-1}\mbox{ m}\), m = 0. 21kg, \(B_{v} = 4.6 \times 1{0}^{-2}\mbox{ m}\), \(\kappa _{1} =\kappa _{2} = 1.8 \times 1{0}^{-1}\mbox{ Nm/rad}\), and \(K_{\tau } = 8 \times 1{0}^{-2}\mbox{ Nm/V}\). Let \(x = \mbox{ col}(x_{1},x_{2},x_{3},x_{4}) := (\theta _{1},\omega _{1},\theta _{2},\omega _{2})\). Then, the robot system can be described in the form (3.87) and (3.88) where

$$\displaystyle\begin{array}{rcl} \phi (x,u) = \left [\begin{array}{c} 0 \\ 0.0194{(x_{3} - x_{1})}^{3} + 21.6216u \\ 0 \\ 0.0486{(x_{3} - x_{1})}^{3} - 83.4324\sin (x_{3}) \end{array} \right ]& & \\ \end{array}$$

A suitable transformation is given by z = Tx with T defined as

$$\displaystyle\begin{array}{rcl} T = \left[\begin{array}{cccc} - 1.4142& 0 & 0& 0\\ 0 & 0 & 1 & 0 \\ - 1 & - 1 & 0 & 0\\ 0 & 0 & 0 & - 0.01\end{array} \right ]& & \\ \end{array}$$

It follows that

$$\displaystyle\begin{array}{rcl} \left [\begin{array}{c|ccc} A_{11} & A_{12} \\ \hline A_{21} & A_{22} \end{array} \right ] = \left [\begin{array}{c|ccccc} - 1 & 0 & 1.4142 & 0\\ \hline 0 & 0 & 0 & -1 \\ 8.0496 & - 0.0486 & - 11.4324 & 0\\0.0137 & 0.0194 & 0 & 0 \end{array} \right ]\end{array}$$
(3.125)
$$\displaystyle\begin{array}{rcl} D_{2}& =& \left [\begin{array}{c} 0\\ \hline D_{22} \end{array} \right ] = \left [\begin{array}{c} 0\\ \hline - 21.6216 \\ 0 \end{array} \right]\end{array}$$
(3.126)
$$C_{2} = \left[\begin{array}{cccc} 0& - 1& 0\\ 1 & 0 & 0 \\ 0 & 0 & - 1 \end{array} \right ]$$
(3.127)

and

$$\displaystyle\begin{array}{rcl} \phi ({T}^{-1}z,u) = \left [\begin{array}{c} 0\\ 0 \\ - 21.6216u - 0.0486{(z_{2} + 0.7071z_{1})}^{3} \\ 0.0002{(z_{2} + 0.7071z_{1})}^{3} + 0.3319\sin (z_{2}) \end{array} \right ]& & \\ \end{array}$$

Let α = 0. 5. From the LMI synthesis, the optimal value of the Lipschitz gain \(\mathcal{L}_{\phi } = 0.75\) when \(L = \left [\begin{array}{ccc} 0&0&0 \end{array} \right ]\), ε = 2, and P = 1. 5 and the conditions of Proposition 3.2 are satisfied. Finally, by choosing

$$\displaystyle\begin{array}{rcl} K = \left [\begin{array}{cccc} 0 & 1.1 & 1\\ 10.2324 & - 0.0486 & 0 \\ 0 & 0.0194 & - 1 \end{array} \right ]& & \\ \end{array}$$

it follows that

$$\displaystyle\begin{array}{rcl} C_{2}(A_{22} - A_{21}L)C_{2}^{-1} + C_{ 2}K = \left [\begin{array}{ccccc} - 1.2& 0 & 0\\ 0 & - 1.1 & 0 \\ 0 & 0 & - 1 \end{array} \right ]& & \\ \end{array}$$

and thus (3.118) is true.

For simulation purposes, a linear state feedback controller has been introduced to stabilize the system. In the first case, the fault signal is f(y, u, t) = 0. 5sin(u) which does not affect the stability of the system. The associated simulation is shown in Fig. 3.17. In the second case, the fault signal is f(y, u, t) = sin(u) which destroys the system stability. The corresponding simulation is shown in Fig. 3.18. The simulations show that the signal \(\tilde{f}\) can reconstruct the fault perfectly, even if the fault destroys closed-loop stability. However, in the second simulation, the reconstruction properties will eventually be lost over time as the states of the plant become unbounded. It also shows that in the presence of sensor noise the reconstruction scheme is still effective. From (3.104) during the sliding motion \(e_{y} =\dot{ e}_{y} = 0\) and

$$\nu _{eq} = D_{2}f(y,u,t) +\phi ({T}^{-1}z,u) -\phi ({T}^{-1}\hat{z},u)$$
(3.128)

Furthermore since \(\hat{z} \rightarrow z\) as t from (3.128) it follows that

$$\nu _{eq} \rightarrow D_{2}f(y,u,t)$$

and so the fault estimate signal

$$\hat{f} := {(D_{2}^{T}D_{ 2})}^{-1}D_{ 2}\nu _{eq} \rightarrow f$$
(3.129)

as t. Consequently (D 2 T D 2)− 1 D 2 ν eq is an asymptotic estimate of the fault.

Fig. 3.17
figure 17figure 17

Fault estimation

Fig. 3.18
figure 18figure 18

Fault estimation

3.7 Notes and References

The earliest observer is attributed to Luenberger [134, 135] in which the difference between the output of the plant and the observer is fed back linearly into the observer. There is a vast literature devoted to this topic. The earliest work in terms of sliding mode methods applied to observer problems is attributed to Utkin [182], although these ideas had appeared in the Russian literature many years earlier [37].

The term sliding patch to describe the region in which sliding takes place was first coined in [172]. This sought to enlarge the region in which sliding takes place. It represents one of the earliest sliding mode observers with both linear and nonlinear injection terms. The example in Sect. 3.2, to demonstrate the effects of the linear and nonlinear terms on the observer performance, is taken from [7].

The problem of robust state estimation for systems with bounded matched uncertainty was first explored by Walcott and Żak [188]. In terms of the design of Walcott and Żak, a system theoretic interpretation of the constraints in (3.46) and (3.47) by Steinberg and Corless [175] is that the transfer function matrix \(G(s) = FC{(sI - A_{0})}^{-1}B\) is strictly positive real. The problem of synthesizing P, G, and F (and incorporating some sort of design element) is nontrivial. The structural requirements (3.46) and (3.47) of Walcott and Żak were shown in [70] to be solvable if and only if:

  • Rank(CB) = m.

  • All the invariant zeros of (A, B, C) have negative real parts.

Under these circumstances a (semi-)analytic expression for the solution to the observer design problem is given in terms of a gain matrix \(L \in {\mathbb{R}}^{(n-p)\times (p-m)}\) and a stable matrix \(A_{22}^{s} \in {\mathbb{R}}^{p\times p}\) that defines G l (see [70]). The approach in this chapter builds on the work of Edwards and Spurgeon [65] which builds on the ideas of Walcott and Żak [188]. An interesting comparison between sliding mode observers and other nonlinear techniques appears in [189]. A well-cited tutorial on sliding mode observers is presented in [62]. A recent tutorial on this material appears in [174]. The observer from Sect. 3.5 to deal with Lipschitz nonlinear systems is given in Yan and Edwards [193]. The single-link flexible joint robot system is taken from [78]. A comparison of these observers with so-called unknown input observers appears in [69].

The optimization problem in Sect. 3.5 is a convex eigenvalue optimization problem and can be solved using standard LMI algorithms [99] (largely based on interior point methods). A now classical account of the different applications of convex optimization to control problems is given by Boyd et al. [38].

One of the earliest paper to apply sliding mode observers to fault detection and isolation problems is Edwards et al. [70]. These ideas have been expanded upon to incorporate directly robust reconstruction [178]. Subsequently the relative degree one restrictions in this chapter has been removed using a cascade of conventional sliding mode observers [179 ]. An overview of applications of these ideas to fault detection and fault tolerant control problems appears in [7].

3.8 Exercises

Exercise 3.1.

Show that for the system

$$\displaystyle\begin{array}{rcl} \dot{x}(t) = Ax(t)\end{array}$$
(3.130)
$$\displaystyle\begin{array}{rcl} y(t) = Cx(t)\end{array}$$
(3.131)

where

$$A = \left [\begin{array}{cc} 0&1\\ 0 &0 \end{array} \right ]\quad C = \left [\begin{array}{cc} 1&0 \end{array} \right ]$$
(3.132)

choosing the gain

$$G_{n} = \left [\begin{array}{c} - 1\\ 1 \end{array} \right ]$$
(3.133)

in the observer from (3.5) and (3.6) yields a stable sliding motion.

Exercise 3.2.

Consider the system

$$\displaystyle\begin{array}{rcl} \dot{x}(t) = Ax(t)\end{array}$$
(3.134)
$$\displaystyle\begin{array}{rcl} y(t) = Cx(t)\end{array}$$
(3.135)

where

$$A = \left [\begin{array}{cc} 0&1\\ 0 &0 \end{array} \right ]\quad C = \left [\begin{array}{cc} 1&1 \end{array} \right ]$$
(3.136)

Find the range of values of the scalar gain γ for which the gain vector

$$G_{n} = \left [\begin{array}{c} \gamma \\ 1 \end{array} \right ]$$
(3.137)

in the observer from (3.5) and (3.6) yields a stable sliding motion.

Exercise 3.3.

For the triple integrator

$$\mathop{y}\limits^{\hbox {...}}(t) = u(t)$$
(3.138)

written in state-space form, with the states chosen as \(\mbox{ col}(y,\dot{y},\ddot{y})\), design an observer of the form (3.5) and (3.6).

Exercise 3.4.

Consider the system

$$\displaystyle\begin{array}{rcl} \dot{x}(t) = Ax(t) + Bu(t) + D\xi (t,x)\end{array}$$
(3.139)
$$\displaystyle\begin{array}{rcl} y(t) = Cx(t)\end{array}$$
(3.140)

where ξ(t, x) is an unknown but bounded disturbance and

$$A = \left [\begin{array}{cc} 0&1\\ 0 &0 \end{array} \right ]\quad B = D = \left [\begin{array}{c} 0\\ 1 \end{array} \right ]\quad C = \left [\begin{array}{cc} 1&\alpha \end{array} \right ]$$
(3.141)

where α is a scalar. Find the range of value of α for which it is possible to design an observer of the form (3.61) and (3.62).

Exercise 3.5.

Consider a simple quarter-car vehicle model written in state space form choosing as states v (forward velocity) and ω (wheel angular velocity)

$$\dot{x}(t) = Ax(t) + Bu(t) + Df(t,x)$$
(3.142)

where x = col(v, ω) and

$$A = \left [\begin{array}{cc} -\sigma _{v}g& 0\\ 0 & -\frac{\sigma _{\omega }} {J} \end{array} \right ]\qquad B = \left [\begin{array}{c} 0 \\ -\frac{K_{b}} {J} \end{array} \right ]\qquad D = \left [\begin{array}{c} \frac{4} {m} \\ - \frac{r} {J} \end{array} \right ]$$
(3.143)

In the above, f(t, x) represents the unmeasured breaking force applied to the wheel. The positive scalars σ v , σ w , J, K b , r, m, g, and r are physical parameters associated with the vehicle. It is assumed that only angular wheel speed ω is measured, and in this case the output distribution matrix is given as

$$C = \left [\begin{array}{lc} 0&1 \end{array} \right ]$$
(3.144)

The following model-based nonlinear observer is proposed

$$\dot{\hat{x}}(t) = A\hat{x}(t) + Bu(t) + G_{l}e_{y} + D\nu$$
(3.145)

where \(\hat{x} = \mbox{ col}(\hat{v},\hat{\omega })\), the design gain \(G_{l} \in {\mathbb{R}}^{2}\), \(e_{y} =\omega -\hat{\omega }\), and \(\nu = -k\mbox{ sign}(Fe_{y})\) where k is a scalar gain, F is a scalar which will be defined later, and \(\hat{v}\) and \(\hat{\omega }\) are estimates of v and ω, respectively. The design problem is to compute G l , F, and k so that the estimated angular velocity \(\hat{\omega }\) is such that \(e_{y} =\omega -\hat{\omega }\equiv 0\) in finite time: i.e., a sliding motion is achieved in finite time.

Here the gain G l is proposed as

$$G_{l} := \left [\begin{array}{c} \frac{4J\sigma _{v}g} {rm} - \frac{4J} {rm}\alpha \\ - \frac{\sigma _{\omega }} {J}+\alpha \\ \end{array} \right ]$$
(3.146)

where α is a positive scalar.

  1. 1.

    Show that the eigenvalues of \((A - G_{l}C) =\{ -\sigma _{v}g,-\alpha \}\) which implies (AG l C) is stable by design.

  2. 2.

    Consider as a Lyapunov function V = e T Pe where

    $$P := \left [\begin{array}{cc} P_{1} & \frac{4J} {rm}P_{1} \\ \frac{4J} {rm}P_{1} & P_{2} + \frac{16{J}^{2}} {{r}^{2}{m}^{2}} P_{1}\end{array} \right ]$$
    (3.147)

    and P 1 and P 2 are positive scalars. Define

    $$Q := -\left (P(A - G_{l}C) + {(A - G_{l}C)}^{T}P\right )$$
    (3.148)

    Show that Q is symmetric positive definite.

  3. 3.

    Show that PD = FC T for the scalar \(F := -2 \frac{\alpha r} {J}P_{2}\).

Use this information to demonstrate that (3.145) induces a sliding motion on the hyperplane \(\mathcal{S} =\{ e\ :\ Ce = 0\}\) in finite time.

Exercise 3.6.

A more complex model of the same system, but now including a LuGre friction model, is

$$\dot{x}_{p}(t) = A_{p}x(t) + B_{p}u(t) + D_{p}\theta x_{1}(t)f(x_{3})$$
(3.149)

where the control signal u(t) = P b (t) and

$$\displaystyle\begin{array}{rcl} A_{p} := \left [\begin{array}{ccc} 0 & 0 & 1 \\ g\sigma _{0} & - g\sigma _{v}&g(\sigma _{1} +\sigma _{2}) \\ q\sigma _{0} & g\sigma _{v} & q(\sigma _{1} +\sigma _{2}) \end{array} \right ]\qquad B_{p} := \left [\begin{array}{c} 0\\ 0 \\ -\frac{rk_{b}} {J} \end{array} \right ]& &\end{array}$$
(3.150)

The distribution matrix through which the nonlinear terms operate is

$$D_{p} := \left [\begin{array}{c} - 1\\ - g\sigma _{ 1} \\ - q\sigma _{1} \end{array} \right ]$$
(3.151)

In these matrices, the aggregate parameter \(q := -(g + \frac{F_{n}{r}^{2}} {J} )\). Since it is assumed that only angular wheel speed ω is measured, the output distribution matrix

$$C_{p} = \left [\begin{array}{lcr} 0&\frac{1} {r} &\frac{1} {r} \end{array} \right ]$$
(3.152)

Consider an observer of the form

$$\dot{\hat{x}}_{p}(t) = A_{p}\hat{x}_{p}(t) + B_{p}u(t) + G_{p}e_{y} + D_{p}\nu$$
(3.153)

where \(G_{p} \in {\mathbb{R}}^{3}\) and \(\nu = -k_{p}\mbox{ sign}(e_{y})\) where k p is a scalar gain. The main objective is to synthesize an observer to generate an estimated angular velocity \(\hat{\omega }= C\hat{x}\) such that \(e_{y} =\omega -\hat{\omega }\equiv 0\) in finite time despite the nonlinear friction terms which have been ignored in (3.153). It is shown in [148] that if

$$\displaystyle\begin{array}{rcl} \bar{g}_{1} = r + (g + \frac{\beta } {\sigma _{1}}) \frac{J} {F_{n}r}\end{array}$$
(3.154)
$$\displaystyle\begin{array}{rcl} \bar{g}_{2} = g(\beta +g\bar{\sigma } -\frac{\sigma _{0}} {\sigma _{1}}) \frac{J} {F_{n}r} + gr(\sigma _{1} +\sigma _{2})\end{array}$$
(3.155)
$$\displaystyle\begin{array}{rcl} \bar{g}_{3} = (\sigma _{1} +\sigma _{2})q -\frac{\sigma _{w}} {J} + \frac{\sigma _{0}} {\sigma _{1}} -\beta \end{array}$$
(3.156)

where \(\bar{\sigma }=\sigma _{v} +\sigma _{1} +\sigma _{2}\) and β is a negative scalar, then

$$G_{p} = \left [\begin{array}{c} \bar{g}_{1} \\ \bar{g}_{2} \\ r\bar{g}_{3} -\bar{ g}_{2} \end{array} \right ]$$
(3.157)

is an appropriate choice of gain in (3.153). Define \(e_{p} = x_{p} -\hat{ x}_{p}\) as the state estimation error, where x p = col(x 1, x 2, x 3). The dynamics of the error system can be obtained from (3.149) and (3.153) as

$$\dot{e}_{p} = (A_{p} - G_{p}C_{p})e_{p} + D_{p}\left (\theta f(x_{3})x_{1} - k_{p}\,\mbox{ sign}(e_{y})\right )$$
(3.158)

Show the reduced-order sliding motion is governed by the linear system

$$\left [\begin{array}{c} \dot{e}_{1} \\ \dot{e}_{2} \end{array} \right ] = \left [\begin{array}{cc} -\frac{\sigma _{0}} {\sigma _{1}} & \frac{\sigma _{2}} {\sigma _{1}} \\ 0 & -\sigma _{v}g \end{array} \right ]\left [\begin{array}{c} e_{1} \\ e_{2} \end{array} \right ]$$
(3.159)

and so the sliding motion is stable

Exercise 3.7.

Consider the following Lur’e-type representation for Chua’s circuit:

$$\displaystyle\begin{array}{rcl} \dot{x}_{i} = Ax_{i} + D\xi _{i}(y_{i}) + Bu_{i}\end{array}$$
(3.160)
$$\displaystyle\begin{array}{rcl} y_{i} = Cx_{i}\end{array}$$
(3.161)

where

$$\displaystyle\begin{array}{rcl} A&=&\left [\begin{array}{ccccc} - al_{1} & a &0 \\ 1 & - 1&1 \\ 0 & - b&0 \end{array} \right ],\ D=\left [\begin{array}{c} - a(l_{0} - l_{1}) \\ 0\\ 0 \end{array} \right ]\end{array}$$
(3.162)
$$\displaystyle\begin{array}{rcl} C&=&\left [\begin{array}{ccccc} 1&0&0\\ 0 &1 &0 \end{array} \right ]\end{array}$$
(3.163)

The nonlinearity is \(\xi _{i}(y_{i}) = \frac{1} {2}(\vert x_{i1} + c\vert -\vert x_{i1} - c\vert )\), which has a sector bound [0, 1]. The chosen values of the parameters are \(a = 9,b = 14.286,c = 1,l_{0} = -1/7\), and \(l_{1} = 2/7\) in order to obtain double-scroll attractor behavior.

Design a sliding mode observer for this system.