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.

In the formulation of any practical control problem, there will always be a discrepancy between the actual plant and its mathematical model used for the controller design. These discrepancies (or mismatches) arise from unknown external disturbances, plant parameters, and parasitic/unmodeled dynamics. Designing control laws that provide the desired performance to the closed-loop system in the presence of these disturbances/uncertainties is a very challenging task for a control engineer. This has led to intense interest in the development of the so-called robust control methods which are supposed to solve this problem. One particular approach to robust controller design is the so-called sliding mode control technique.

In Chap. 1, the main concepts of sliding mode control will be introduced in an intuitive fashion, requiring only a basic knowledge of control systems. The sliding mode control design techniques are demonstrated on tutorial examples and via graphical exposition. Advanced sliding mode concepts, including sliding mode observers/differentiators and second-order sliding mode control, are studied at a tutorial level. The main advantages of sliding mode control, including robustness, finite-time convergence, and reduced-order compensated dynamics, are demonstrated on numerous examples and simulation plots.

For illustration purposes, the single-dimensional motion of a unit mass (Fig. 1.1) is considered. A state-variable description is easily obtained by introducing variables for the position and the velocity \(x_{1} = x,\;\;x_{2} =\dot{ x}_{1}\) so that

$$ \left \{\begin{array}{l} \dot{x}_{1} = x_{2} \\ \dot{x}_{2} = u + f(x_{1},x_{2},t) \end{array} \right.\begin{array}{l} x_{1}(0) = x_{10}\;\; \\ x_{2}(0) = x_{20}, \end{array} $$
(1.1)

where u is the control force, and the disturbance term f(x 1, x 2, t), which may comprise dry and viscous friction as well as any other unknown resistance forces, is assumed to be bounded, i.e., ∣f(x 1, x 2, t)∣ ≤ L > 0. The problem is to design a feedback control law u = u(x 1, x 2) that drives the mass to the origin asymptotically. In other words, the control u = u(x 1, x 2) is supposed to drive the state variables to zero: i.e., \(\lim_{t\longrightarrow\infty} {x_1}, {x_2 = 0}\). This apparently simple control problem is a challenging one, since asymptotic convergence is to be achieved in the presence of the unknown bounded disturbance f(x 1, x 2, t). For instance, a linear state-feedback control law

$$u = -k_{1}x_{1} - k_{2}x_{2},\;\;\;k_{1} > 0,\;\;k_{2} > 0$$
(1.2)

provides asymptotic stability of the origin only for f(x 1, x 2, t) ≡ 0 and typically only drives the states to a bounded domain Ω(k 1, k 2, L) for f(x 1, x 2, t) ≤ L > 0.

Fig. 1.1
figure 1figure 1

Single-dimensional motion of a unit mass

FormalPara Example 1.1.

The results of the simulation of the system in Eqs. (1.1), (1.2) with x 1(0) = 1,   x 2(0) = − 2,   k 1 = 3,   k 2 = 4, and f(x 1, x 2, t) = sin(2t), which illustrate this statement, are presented in Figs. 1.2 and 1.3.

Fig. 1.2
figure 2figure 2

Asymptotic convergence for f(x 1, x 2, t) ≡ 0

Fig. 1.3
figure 3figure 3

Convergence to the domain Ω for f(x 1, x 2, t) = sin(2t)

The question is whether the formulated control problem can be addressed using only knowledge of the bounds on the unknown disturbance.

1.1 Main Concepts of Sliding Mode Control

Let us introduce desired compensated dynamics for system (1.1). A good candidate for these dynamics is the homogeneous linear time-invariant differential equation:

$$\dot{x}_{1} + cx_{1} = 0,\quad c > 0$$
(1.3)

Since \(x_{2}(t) =\dot{ x}_{1}(t)\), a general solution of Eq. (1.3) and its derivative is given by

$$\begin{array}{l} x_{1}(t) = x_{1}(0)\exp (-ct) \\ x_{2}(t) =\dot{ x}_{1}(t) = -cx_{1}(0)\exp (-ct)\end{array}$$
(1.4)

both x 1(t) and x 2(t) converge to zero asymptotically. Note, no effect of the disturbance f(x 1, x 2, t) on the state compensated dynamics is observed. How could these compensated dynamics be achieved? First, we introduce a new variable in the state space of the system in Eq. (1.1):

$$\sigma =\sigma (x_{1},x_{2}) = x_{2} + cx_{1},\quad c > 0$$
(1.5)

In order to achieve asymptotic convergence of the state variables x 1, x 2 to zero, i.e., \(\lim_{t\longrightarrow\infty} {x_1}, {x_2 = 0}\), with a given convergence rate as in Eq. (1.4), in the presence of the bounded disturbance f(x 1, x 2, t), we have to drive the variable σ in Eq. (1.5) to zero in finite time by means of the control u. This task can be achieved by applying Lyapunov function techniques to the σ-dynamics that are derived using Eqs. (1.1) and (1.5):

$$\dot{\sigma }= cx_{2} + f(x_{1},x_{2},t) + u,\quad \sigma (0) =\sigma _{0}$$
(1.6)

For the σ-dynamics (1.6) a candidate Lyapunov function (see Appendix D) is introduced taking the form

$$V ={ \frac{1} {2}\sigma }^{2}$$
(1.7)

In order to provide the asymptotic stability of Eq. (1.6) about the equilibrium point σ = 0, the following conditions must be satisfied:

  1. (a)

    \(\dot{V } < 0\) for σ ≠ 0

  2. (b)

    \(\lim_{|\sigma|\longrightarrow\infty} V = 0\)

Condition (b) is obviously satisfied by V in Eq. (1.7). In order to achieve finite-time convergence (global finite-time stability), condition (a) can be modified to be

$$\dot{V } \leq -\alpha {V }^{1/2},\;\;\alpha > 0$$
(1.8)

Indeed, separating variables and integrating inequality (1.8) over the time interval 0 ≤ τt, we obtain

$${V }^{1/2}(t) \leq -\frac{1} {2}\alpha \,t + {V }^{1/2}(0)$$
(1.9)

Consequently, V (t) reaches zero in a finite time t r that is bounded by

$$t_{r} \leq \frac{2{V }^{1/2}(0)} {\alpha }.$$
(1.10)

Therefore, a control u that is computed to satisfy Eq. (1.8) will drive the variable σ to zero in finite time and will keep it at zero thereafter.

The derivative of V is computed as

$$\dot{V } =\sigma \dot{\sigma }=\sigma \left (cx_{2} + f(x_{1},x_{2},t) + u\right )$$
(1.11)

Assuming u = − cx 2 + v and substituting it into Eq. (1.11) we obtain

$$\dot{V } =\sigma \left (f(x_{1},x_{2},t) + v\right ) =\sigma f(x_{1},x_{2},t) +\sigma v \leq \left \vert \sigma \right \vert L +\sigma v$$
(1.12)

Selecting v = − ρsign(σ) where

$$\mbox{ sign}(x) = \left \{\begin{array}{rrl} 1&\quad &\mbox{ if }x > 0\\ - 1 & &\mbox{ if } x < 0 \end{array} \right.$$
(1.13)

and

$$\mbox{ sign}(0) \in \left [\begin{array}{cc} - 1,&1 \end{array} \right ]$$
(1.14)

with ρ > 0 and substituting it into Eq. (1.12) we obtain

$$\dot{V } \leq \left \vert \sigma \right \vert L -\left \vert \sigma \right \vert \rho = -\left \vert \sigma \right \vert \left (\rho -L\right )$$
(1.15)

Taking into account Eq. (1.7), condition (1.8) can be rewritten as

$$\dot{V } \leq -\alpha {V }^{1/2} = - \frac{\alpha } {\sqrt{2}}\left \vert \sigma \right \vert,\;\;\alpha > 0$$
(1.16)

Combining Eqs. (1.15) and (1.16) we obtain

$$\dot{V } \leq -\left \vert \sigma \right \vert \left (\rho -L\right ) = - \frac{\alpha } {\sqrt{2}}\left \vert \sigma \right \vert $$
(1.17)

Finally, the control gain ρ is computed as

$$\rho = L + \frac{\alpha } {\sqrt{2}}$$
(1.18)

Consequently a control law u that drives σ to zero in finite time (1.10) is

$$u = -cx_{2} -\rho \mbox{ sign}(\sigma )$$
(1.19)

Remark 1.1.

It is obvious that \(\dot{\sigma }\) must be a function of control u in order to successfully design the controller in Eq. (1.8) or (1.19). This observation must be taken into account while designing the variable given in Eq. (1.5).

Remark 1.2.

The first component of the control gain Eq. (1.18) is designed to compensate for the bounded disturbance f(x 1, x 2, t) while the second term \(\frac{\alpha }{\sqrt{2}}\) is responsible for determining the sliding surface reaching time given by Eq. (1.10). The larger α, the shorter reaching time.

Now it is time to make definitions that interpret the variable (1.5), the desired compensated dynamics (1.3), and the control function (1.19) in a new paradigm.

Definition 1.1.

The variable (1.5) is called a sliding variable

Definition 1.2.

Equations (1.3) and (1.5) rewritten in a form

$$\sigma = x_{2} + cx_{1} = 0,\quad c > 0$$
(1.20)

correspond to a straight line in the state space of the system (1.1) and are referred to as a sliding surface.

Condition (1.8) is equivalent to

$$\sigma \dot{\sigma }\leq - \frac{\alpha } {\sqrt{2}}\left \vert \sigma \right \vert$$
(1.21)

and is often termed the reachability condition. Meeting the reachability or existence condition (1.21) means that the trajectory of the system in Eq. (1.1) is driven towards the sliding surface (1.20) and remains on it thereafter.

Definition 1.3.

The control u = u(x 1, x 2) in Eq. (1.19) that drives the state variables x 1, x 2 to the sliding surface (1.20) in finite time t r , and keeps them on the surface thereafter in the presence of the bounded disturbance f(x 1, x 2, t), is called a sliding mode controller and an ideal sliding mode is said to be taking place in the system (1.1) for all t > t r .

Example 1.2.

The results of the simulation of system (1.1) with the sliding mode control law (1.5), (1.19), the initial conditions x 1(0) = 1,   x 2(0) = − 2, the control gain ρ = 2, the parameter c = 1. 5, and the disturbance f(x 1, x 2, t) = sin(2t) (which is used for simulation purposes only) are presented in Figs. 1.41.9.

Fig. 1.4
figure 4figure 4

Sliding variable

Fig. 1.5
figure 5figure 5

Asymptotic convergence for f(x 1, x 2, t) = sin(2t)

Fig. 1.6
figure 6figure 6

Phase portrait

Fig. 1.7
figure 7figure 7

Phase portrait (zoom)

Fig. 1.8
figure 8figure 8

Sliding mode control

Fig. 1.9
figure 9figure 9

Sliding mode control (zoom)

Figure 1.4 illustrates finite-time convergence of the sliding variable to zero. Asymptotic convergence of the state variables x 1, x 2 to zero in the presence of the external bounded disturbance f(x 1, x 2, t) = sin(2t) is shown in Fig. 1.5. The phase portrait, which is given in Fig. 1.6, demonstrates such phenomena as a reaching phase (when the state trajectory is driven towards the sliding surface) and a sliding phase (when the state trajectory is moving towards the origin along the sliding surface).

A zoomed portion of the phase portrait (Fig. 1.7) illustrates the “zigzag” motion of small amplitude and high frequency that the state variables exhibit while in the sliding mode. Sliding mode control, which is presented in Figs. 1.8 and 1.9, is a high frequency switching control with a switching frequency inversely proportional to the time increment 10− 4 s used in the simulation. Apparently, this high-frequency switching control causes the “Zigzag” motion in the sliding mode (Fig. 1.7). In an ideal sliding mode the switching frequency is supposed to approach infinity and the amplitude of the “zigzag” motion tends to zero.

As we see in Figs. 1.7 and 1.9, the imperfection in the sign-function implementation yields a finite amplitude and finite frequency “zigzag” motion in the sliding mode due to the discrete-time nature of the computer simulation. This effect is called chattering.

1.2 Chattering Avoidance: Attenuation and Elimination

In many practical control systems, including DC motors and aircraft control, it is important to avoid control chattering by providing continuous/smooth control signals: for instance, aircraft aerodynamic surfaces cannot move back and forth with high frequency, but at the same time it is desirable to retain the robustness/insensitivity of the control system to bounded model uncertainties and external disturbances.

1.2.1 Chattering Elimination: Quasi-Sliding Mode

One obvious solution to make the control function (1.19) continuous/smooth is to approximate the discontinuous function v(σ) = − ρsign(σ) by some continuous/smooth function. For instance, it could be replaced by a “sigmoid function”

$$\mbox{ sign}(\sigma ) \approx \frac{\sigma } {\left \vert \sigma \right \vert +\varepsilon }$$
(1.22)

where ε is a small positive scalar. It can be observed that point-wise

$$\displaystyle\lim \limits _{\varepsilon \rightarrow 0} \frac{\sigma } {\left \vert \sigma \right \vert +\varepsilon } = \mbox{ sign}(\sigma )$$

for σ ≠ 0. The value of ε should be selected to trade off the requirement to maintain an ideal performance with that of ensuring a smooth control action. The sigmoid function (1.22) is shown in Fig. 1.10.

Fig. 1.10
figure 10figure 10

Sigmoid function

Example 1.3.

The results of the simulation of system (1.1) with the pseudo-sliding mode control

$$u = -cx_{2} -\rho \frac{\sigma } {\left \vert \sigma \right \vert +\varepsilon }$$
(1.23)

using the same parameters as those in Example 1.2 are presented in Figs. 1.111.14.

Fig. 1.11
figure 11figure 11

Smooth control

Fig. 1.12
figure 12figure 12

Sliding variable

Fig. 1.13
figure 13figure 13

Time history of the state variables

Fig. 1.14
figure 14figure 14

Zoomed Time history of the state variables

The smooth control function (Fig. 1.11) cannot provide finite-time convergence of the sliding variable to zero in the presence of the external disturbance f(x 1, x 2, t) (see Fig. 1.12). Furthermore, the sliding variable and the state variables do not converge to zero at all, but instead converge to domains in a vicinity of the origin (Figs. 1.121.14) due to the effect of the disturbance f(x 1, x 2, t) = sin(2t). The price we pay for obtaining a smooth control function is a loss of robustness and, as a result, a loss of accuracy. The designed smooth control (1.23) is technically not a sliding mode control and there is no ideal sliding mode in the system (1.1), since the sliding variable has not been driven to zero in a finite time. However, the system’s performance under the smooth control law in Eq. (1.23) is close to the system’s performance under the discontinuous sliding mode control (1.19). This gives us grounds for calling the smooth control law in Eq. (1.23) a quasi-sliding mode control and the system’s motion, when the sliding surface converges to a close vicinity of the origin, a quasi-sliding mode.

1.2.2 Chattering Attenuation: Asymptotic Sliding Mode

In this section we consider another approach to designing continuous control that is robust to bounded disturbances. The idea is to design an SMC in terms of the control function derivative. In this case the actual control, which is the integral of the high-frequency switching function, is continuous. This approach is called chattering attenuation, since some periodic residual is observed in the sliding mode control after the integration of the high-frequency switching function.

To proceed, the system in Eq. (1.1) is rewritten as

$$\left \{\begin{array}{l} \dot{x}_{1} = x_{2} \\ \dot{x}_{2} = u + f(x_{1},x_{2},t)\\ \dot{u} = v\end{array} \right.\begin{array}{l} x_{1}(0) = x_{10}\;\; \\ x_{2}(0) = x_{20}\;\; \\ u(0) =0.1 \end{array}$$
(1.24)

We know that if the sliding variable (1.5) is constrained to zero in finite time t = t r , then the state variables converge to zero asymptotically in accordance with Eq. (1.4) for all tt r . Here we assume f(x 1, x 2, t) ≤ L and in addition that it is smooth with bounded derivative \(\left \vert \dot{f}(x_{1},x_{2},t)\right \vert \leq \bar{ L}\).

In order to achieve chattering attenuation the following auxiliary sliding variable

$$s =\dot{\sigma } +\bar{c}\sigma$$
(1.25)

is introduced. If we design a control law v that provides finite-time convergence of s → 0, then the ideal sliding mode occurs in the sliding surface

$$s =\dot{\sigma } +\bar{c}\sigma = 0$$
(1.26)

and \(\sigma,\dot{\sigma }\rightarrow 0\) together with x 1, x 2 → 0, as time increases, even in the presence of the bounded disturbance f(x 1, x 2, t). However, we will not have an ideal sliding mode, but instead an asymptotic sliding mode will occur in system (1.24) since the original sliding variable σ converges to zero only asymptotically. This is the price we are going to pay for the chattering attenuation. Using Eq. (1.21) for designing the SMC in terms of v, we obtain

$$s\dot{s} = s(v + c\bar{c}x_{2} + (c +\bar{ c})u + (c +\bar{ c})f(x_{1},x_{2},t) +\dot{ f}(x_{1},x_{2},t))$$
(1.27)

Choosing \(v = -c\bar{c}x_{2} -\left (c +\bar{ c}\right )u + v_{1}\) and substituting it into Eq. (1.27), we obtain

$$s\dot{s} = s(v_{1} + (c +\bar{ c})f(x_{1},x_{2},t) +\dot{ f}(x_{1},x_{2},t)) \leq sv_{1} + \vert s\vert (\bar{L} + (c +\bar{ c})L)\quad$$
(1.28)

Selecting v 1 = − ρsign(s) with ρ > 0, and substituting it into Eq. (1.28) it follows that

$$s\dot{s} \leq \vert s\vert (-\rho +\bar{ L} + (c +\bar{ c})L) = - \frac{\alpha } {\sqrt{2}}\vert s\vert.$$
(1.29)

Finally, if the control gain ρ is computed as

$$\rho =\bar{ L} + \left (c +\bar{ c}\right )L + \frac{\alpha } {\sqrt{2}}$$
(1.30)

then the control law v that drives s to zero in finite time \(t_{r} \leq \frac{\sqrt{2}\left \vert s(0)\right \vert } {\alpha }\) is

$$v = -c\bar{c}x_{2} -\left (c +\bar{ c}\right )u -\rho \mbox{ sign}(s)$$
(1.31)

Example 1.4.

The results of the simulation of system (1.24) with the sliding mode control (1.25), (1.31), the initial conditions x 1(0) = 1, x 2(0) = − 2, the control gain ρ = 30, the parameters \(c = 1.5,\;\;\bar{c} = 10\), and the disturbance f(x 1, x 2, t) = sin(2t) (which, again, is only used for simulation purposes) are presented in Figs. 1.151.20.

Fig. 1.15
figure 15figure 15

Control v

Fig. 1.16
figure 16figure 16

Control u = ∫vdt

Fig. 1.17
figure 17figure 17

Sliding variables

Fig. 1.18
figure 18figure 18

State variables

Fig. 1.19
figure 19figure 19

Equivalent control estimation

Fig. 1.20
figure 20figure 20

The disturbance estimation

The control law (1.31) contains the high-frequency switching term ρsign(s) that yields chattering (Fig. 1.15); however, chattering is attenuated in the physical control u = ∫vdt (Fig. 1.16). It can be observed from Fig. 1.17 that the auxiliary sliding variable s converges to zero in finite time and the original sliding variable σ converges to zero asymptotically. Therefore, the achieved sliding mode is called an asymptotic sliding mode with respect to the original sliding variable σ.

The state variables exhibit convergence to zero as time increases (see Fig. 1.18) in a similar way to the results from Fig. 1.5 that were achieved via the high-frequency switching sliding mode control u given by Eq. (1.19). Also, in order to implement the continuous sliding mode control u = ∫ vdt, with v given by Eqs. (1.25) and (1.31), it is necessary to differentiate σ. In the example, \(\dot{\sigma }\) was computed numerically; however, it can be done using the sliding mode observers/differentiators that will be discussed later on.

1.3 Concept of Equivalent Control

Suppose that at time t r the sliding surface σ = x 2 + cx 1 = 0 is reached and the trajectory x 1(t), x 2(t) remains on the sliding surface thereafter by means of the SMC given by Eqs. (1.5), (1.19). This means that \(\sigma =\dot{\sigma }= 0\) for all tt r . The condition \(\dot{\sigma }= 0\) yields

$$\dot{\sigma }= cx_{2} + f(x_{1},x_{2},t) + u = 0,\quad \sigma (t_{r}) = 0$$
(1.32)

A control function that satisfies Eq. (1.32) can be easily computed as

$$u_{eq} = -cx_{2} - f(x_{1},x_{2},t)$$
(1.33)

Definition 1.4.

The control function (1.33), which needs to be applied to system (1.1) after reaching the sliding surface σ = 0, to ensure that the system trajectory stays on the surface thereafter, is called the equivalent control.

The following properties of the equivalent control can be established:

  • The control function (1.33) is not the actual control that is applied to system (1.1) as soon as the sliding surface is reached. Furthermore, control (1.33) usually cannot be implemented, since the bounded disturbance f(x 1, x 2, t) is not known and appears explicitly in Eq. (1.33). The equivalent control action describes the “average” effect of the high-frequency switching control (1.19) on system (1.1). The average can be achieved via low-pass filtering (LPF) of the high-frequency switching term ρsign(σ) in the control law (1.19). Therefore, the equivalent control can be estimated (online) as follows:

    $$\hat{u}_{eq} = -cx_{2} -\rho LPF\left (\mbox{ sign}(\sigma )\right ),t \geq t_{r}$$
    (1.34)

    For instance, the LPF can be implemented as a first-order differential equation

    $$\begin{array}{l} \tau \dot{z} = -z + \mbox{ sign}(\sigma ) \\ \hat{u}_{eq} = -cx_{2} -\rho z\end{array}$$
    (1.35)

    where τ is a small positive scalar representing the time constant of the filter.

    The signal u eq can be estimated very accurately by \(\hat{u}_{eq}\) by making τ as small as possible, but larger than the sampling time of the computer-implemented LPF.

  • Comparing Eqs. (1.33) and (1.34) the disturbance term can be easily estimated:

    $$\hat{f}(x_{1},x_{2},t) =\rho LPF\left (\mbox{ sign}(\sigma )\right ),t \geq t_{r}$$
    (1.36)

Example 1.5.

The system (1.1) with the sliding mode control (1.5), (1.19), the initial conditions x 1(0) = 1,   x 2(0) = − 2, the control gain ρ = 2, the parameter c = 1. 5, and the disturbance f(x 1, x 2, t) = sin(2t), which is used for simulations purposes only, has been simulated. The equivalent control and the disturbance can be estimated using Eqs. (1.35) and (1.36) with τ = 0. 01. For comparison, the ideal equivalent control is plotted in accordance with Eq. (1.34). The results of the simulation are presented in Figs. 1.19 and 1.20.

Based on Figs. 1.19 and 1.20 we observe a high level of accuracy in terms of the estimation of the equivalent control and the disturbance.

1.4 Sliding Mode Equations

It was discussed earlier that system (1.1) with the SMC given by Eqs. (1.5), (1.19) exhibits a two-phase motion (Fig. 1.6), namely, the reaching phase (when the system trajectory moves towards the sliding surface) and the sliding phase (when the system trajectory moves along the sliding surface). The sliding variable (1.5) is supposed to be designed in order to provide a desired motion in the sliding mode. This design problem can be reduced to two tasks.

Task 1 is to find the system’s equation in the sliding mode for all tt r ; and task 2 is to parameterize the sliding variable (1.5) in order to ensure the desired/given compensated dynamics.

Substituting the SMC in Eqs. (1.5), (1.19) into Eq. (1.1) yields

$$\left \{\begin{array}{l} \dot{x}_{1} = x_{2} \\ \dot{x}_{2} = -cx_{2} -\rho \mbox{ sign}(x_{2} + cx_{1}) + f(x_{1},x_{2},t)\end{array} \right.\begin{array}{l} x_{1}(t_{r}) = x_{1r} \\ x_{2}(t_{r}) = -cx_{1r}\end{array}$$
(1.37)

Equation (1.37) is not suitable for the sliding mode analysis, since the right-hand side of the system is a discontinuous high-frequency switching function, which loses its continuity in each point on the sliding surface σ = x 2 + cx 1 = 0. However, from Sect. 1.3, we know that the system’s (1.1) dynamics in the sliding mode (when σ = x 2 + cx 1 = 0) are driven by the equivalent control (1.33). Therefore, in order to obtain the equations of system’s compensated dynamics in the sliding mode, we substitute the equivalent control into Eq. (1.1). Bearing in mind that in the sliding mode x 2 = − cx 1 we obtain

$$\left\{\begin{array}{l} \dot{x}_{1ll} = x_{2} \\ \dot{x}_{2} =\underbrace{ \left (-cx_{2} - f(x_{1},x_{2},t)\right )}\limits _{u_{eq}} + f(x_{1},x_{2},t) \end{array} \right. \Rightarrow \left\{\begin{array}{lll} \dot{x}_{1} = x_{2} \\ \dot{x}_{2} = -cx_{2} \end{array} \right. \Rightarrow \left\{\begin{array}{l} \dot{x}_{1} = -cx_{1} \\ \dot{x}_{2} = -cx_{2} \end{array} \right.$$
(1.38)

Finally the system’s (1.1) compensated dynamics in the sliding mode are reduced to the form

$$\left \{\begin{array}{l} \dot{x}_{1} = -cx_{1} \\ x_{2} = -cx_{1} \end{array} \right.,x_{1}(t_{r}) = x_{1r}$$
(1.39)

for all tt r . A solution of Eq. (1.39) for all tt r can be written as

$$\begin{array}{l} x_{1}(t) = x_{1r}\exp \left [-c(t - t_{r})\right ] \\ x_{2}(t) = -cx_{1r}\exp \left [-c(t - t_{r})\right ] \end{array}$$
(1.40)

It is clear that the parameter c > 0 can be selected to give a desired rate of convergence of x 1,  x 2 to zero.

The following properties are exhibited by the system’s dynamics in the sliding mode:

  • The SMC controller design is reduced to two tasks. The first task consists of the design of the first-order sliding surface in Eq. (1.20). The second task is to design the control u to drive the sliding variable (1.5) to zero. Again, the first-order sliding variable dynamics given by Eq. (1.6) are employed.

  • The original system’s dynamics are of second-order while its compensated dynamics in the sliding mode (1.39) are of order equal to one. The reduction in order is due to the fact that Eq. (1.39) describes the “slow” motion only. The “fast” motion that is due to the high-frequency switching control (see Figs. 1.7 and 1.9) is of very small amplitude and is disregarded in Eq. (1.39).

  • The system’s dynamics in the sliding mode (1.39) do not depend on the bounded disturbance f(x 1, x 2, t); however, its upper limit is taken into account in the SMC design [see Eqs. (1.16) and (1.17)].

1.5 The Matching Condition and Insensitivity Properties

It was discussed in Sect. 1.4 that the system’s dynamics in the sliding mode do not depend on the bounded disturbance f(x 1, x 2, t). We need to bear in mind that the disturbance f(x 1, x 2, t) enters only the second equation of the system (1.1). The question is whether this insensitivity property of the system’s dynamics in the sliding mode to the bounded disturbances/uncertainties can be extended to bounded disturbances/uncertainties entering the first equation of the system (1.1).

In order to address this issue consider the system

$$\left \{\begin{array}{l} \dot{x}_{1} = x_{2} +\varphi (x_{1},x_{2},t) \\ \dot{x}_{2} = u + f(x_{1},x_{2},t)\end{array} \right.\begin{array}{l} x_{1}(0) = x_{10}\;\; \\ x_{2}(0) = x_{20}\end{array}$$
(1.41)

where ∣f(x 1, x 2, t)∣ ≤ L, ∣φ(x 1, x 2, t)∣ ≤ P. Assume that an SMC u is designed to drive the trajectories of system (1.41) to the sliding surface σ = x 2 + cx 1 = 0 in finite time tt r and to maintain motion on the surface thereafter. The dynamics of system in the sliding mode can be easily derived using the equivalent control approach presented in Sect. 1.5. In this example the reduced-order motion is described by

$$\left \{\begin{array}{l} \dot{x}_{1} = x_{2} +\varphi (x_{1},x_{2},t) \\ x_{2} = -cx_{1}\end{array} \right.x_{1}(t_{r}) = x_{1r}\;\;$$
(1.42)

It can be observed from Eqs. (1.41)–(1.42) that the disturbance f(x 1, x 2, t) does not affect the system’s dynamics in the sliding mode while the disturbance φ(x 1, x 2, t) that enters the first equation (where the control is absent) can prevent the state variable from converging to zero in the sliding mode (1.41). The disturbance f(x 1, x 2, t) is called a disturbance matched by the control, and the disturbance φ(x 1, x 2, t) is called an unmatched one.

Note that such a criterion for detecting matched and unmatched disturbances is valid only for SISO systems with the control u entering in only one equation. The matching condition will be generalized later on for nonlinear systems of an arbitrary order.

1.6 Sliding Mode Observer/Differentiator

So far, we have assumed that both state variables x 1(t) and x 2(t) are measured (available). In many cases only x 1 (a position) is measured, but x 2 (a velocity) must be estimated.

In order to estimate x 2 (assuming a bound on | x 2 | is known) the following observation algorithm is proposed:

$$\dot{\hat{x}}_{1} = v$$
(1.43)

where v is an observer injection term that is to be designed so that the estimates \(\hat{x}_{1},\;\hat{x}_{2} \rightarrow x_{1},\;x_{2}\).

Let us introduce an estimation error (an auxiliary sliding variable)

$$z_{1} =\hat{ x}_{1} - x_{1}$$
(1.44)

Subtracting the first equation in Eq. (1.1) from Eq. (1.43) we obtain

$$\dot{z}_{1} = -x_{2} + v.$$
(1.45)

Let us design the injection term v that drives \(z_{1} =\hat{ x}_{1} - x_{1} \rightarrow 0\) in finite time. In this case \(\hat{x}_{1}\) will converge to x 1 in finite time. The following choice of injection term

$$v = -\rho \mbox{ sign}(z_{1}),\quad \rho > \left \vert x_{2}\right \vert +\beta,\quad \beta > 0$$
(1.46)

yields

$$z_{1}\dot{z}_{1} = z_{1}(-x_{2} -\rho \mbox{ sign}(z_{1})) \leq \vert z_{1}\vert (\vert x_{2}\vert -\rho ) \leq -\beta \vert z_{1}\vert $$
(1.47)

Inequality (1.47) mimics Eq. (1.21), which means that in a finite time \(t_{r} \leq \frac{\left \vert z_{1}(0)\right \vert } {\beta }\), z 1 → 0 or \(\hat{x}_{1} \rightarrow x_{1}\). Therefore, a sliding mode exists in the observer (1.43) for tt r . The sliding mode dynamics in Eq. (1.45) are computed using the concept of equivalent control studied in Sect. 1.4:

$$\dot{z}_{1} = -x_{2} + v_{eq} = 0$$
(1.48)

What about estimating x 2? It is clear from (1.48) that the state variable x 2 can be exactly estimated as

$$x_{2} = v_{eq},t \geq t_{r}.$$
(1.49)

The equivalent injection v eq can be estimated by LPF of the high-frequency switching control (1.46) as

$$\tau \dot{\hat{v}}_{eq} = -\hat{v}_{eq} -\rho \mbox{ sign}(z_{1})$$
(1.50)

where τ is a small positive constant, and finally

$$x_{2} \approx \hat{ x}_{2} =\hat{ v}_{eq},t \geq t_{r}$$
(1.51)

Remark 1.3.

The sliding mode observer given by Eqs. (1.43), (1.46), (1.50), and (1.51) also could be treated as a differentiator, since the variable it estimates is a derivative of the measured variable.

Example 1.6.

The system (1.1) with the sliding mode control (1.5), (1.19), the initial conditions x 1(0) = 1,   x 2(0) = − 2, the control gain ρ = 2, the parameter c = 1. 5, and the disturbance f(x 1, x 2, t) = sin(2t), which is used for simulation purposes only, is simulated. The variable x 1 is measured, and the variable x 2 is estimated using the sliding mode observer (1.43), (1.46), (1.50), and (1.51) with ρ = 10 and τ = 0. 01. The results of the simulations are shown in Figs. 1.211.24.

Fig. 1.21
figure 21figure 21

Estimating x 2

Fig. 1.22
figure 22figure 22

State variables

Fig. 1.23
figure 23figure 23

Sliding variable z 1

Fig. 1.24
figure 24figure 24

Sliding variable σ

The sliding mode observer given by Eqs. (1.43), (1.46), (1.50), and (1.51) estimates x 2 very quickly and very accurately (Figs. 1.21 and 1.23). The sliding variable (1.5) with x 2 replaced by its estimate \(\hat{x}_{2}\), \(\sigma =\hat{ x}_{2} + 1.5x_{1}\), converges to zero in finite time t r ≈ 1 s. Furthermore the state variables x 1,  x 2 → 0 as time increases (see Fig. 1.22) despite the presence of the bounded disturbance f(x 1, x 2, t) = sin(2t).

1.7 Second-Order Sliding Mode

As mentioned in Sect. 1.5, the compensated dynamics of system (1.1) in the sliding mode (1.39) are of the order one, while the system’s uncompensated dynamics are of second order. This reduction of order is called a partial dynamical collapse.

Let us consider if a complete dynamical collapse is possible, which means that the second-order uncompensated dynamics in Eq. (1.1) are reduced to algebraic equations (x 1 = x 2 = 0) in finite time. Addressing this question is very important especially in cascade control systems, where dynamical collapse means elimination of inner loop dynamics and/or any parasitic dynamics if properly compensated by SMC.

The first problem is the sliding variable design. Let us try the following nonlinear sliding variable:

$$\sigma =\sigma (x_{1},x_{2}) = x_{2} + c{\left \vert x_{1}\right \vert }^{1/2}\mbox{ sign}(x_{ 1}),\quad c > 0$$
(1.52)

Remark 1.4.

The sliding manifold (it is not a straight line anymore due to its nonlinearity) that corresponds to the sliding variable (1.52)

$$x_{2} + c{\left \vert x_{1}\right \vert }^{1/2}\mbox{ sign}(x_{ 1}) = 0,\quad c > 0$$
(1.53)

is continuous (see Fig. 1.25).

Fig. 1.25
figure 25figure 25

Sliding manifold

The second problem is to design the control u that drives the sliding variable (1.52) to zero in finite time tt r . We will address the second problem rigorously later on in Chap. 4. Assume that this control is already available.

The sliding mode equations of the systems (1.1), (1.52) are defined for all tt r as

$$\left \{\begin{array}{l} \dot{x}_{1} = x_{2} \\ x_{2} = -c{\left \vert x_{1}\right \vert }^{1/2}\mbox{ sign}(x_{1})\end{array} \right.x_{1}(t_{r}) = x_{1r}$$
(1.54)

Equation (1.54) can be rewritten as one nonlinear differential equation:

$$\dot{x}_{1} = -c{\left \vert x_{1}\right \vert }^{1/2}\mbox{ sign}(x_{ 1}),x_{1}(t_{r}) = x_{1r}$$
(1.55)

Integrating Eq. (1.55) we obtain

$${ \left \vert x_{1}(t)\right \vert }^{1/2} -{\left \vert x_{ 1r}\right \vert }^{1/2} = -\frac{c} {2}(t - t_{r})$$
(1.56)

We wish to identify a time instant \(t =\bar{ t}_{r}\) so that \(x_{1}(\bar{t}_{r}) = x_{2}(\bar{t}_{r}) = 0\). This is

$$\bar{t}_{r} = \frac{2} {c}{\left \vert x_{1r}\right \vert }^{1/2}t_{ r}$$
(1.57)

This result means that the state variables x 1,  x 2 → 0 in finite time equal to \(\bar{t}_{r} - t_{r}\) while the system (1.1) is in the sliding mode, with dynamics described by Eq. (1.54). Obviously, the overall reaching time from the initial condition x 1(0) = x 10,   x 2(0) = x 20 to zero will be \(t \leq \bar{ t}_{r}\), since tt r is required to reach the sliding manifold (1.53) and it will take time \(t =\bar{ t}_{r}\) for the state variables to reach zero while constrained to the nonlinear sliding manifold (1.53). This is a new phenomenon, since the variables in Eq. (1.1) reach zero asymptotically in the sliding mode (1.39) associated with a linear sliding surface (1.20).

The controller u design that drives the sliding variable (1.52) to zero in finite time tt r will be considered rigorously in Chap. 4. In this subsection we will design the controller in a similar fashion to the one given by Eq. (1.19):

$$u = -\rho \mbox{ sign}(\sigma ) \Rightarrow u = -\rho \mbox{ sign}\left (x_{2} + c\vert x{_{1}\vert }^{1/2}\mbox{ sign}(x_{ 1})\right )$$
(1.58)

where the positive gain ρ is sufficiently large. The control law in Eq. (1.58) is called the control with prescribed convergence law.

Definition 1.5.

The control u = u(x 1, x 2) in Eq. (1.58) with a nonlinear sliding manifold (1.53) that drives the controlled output x 1 and its derivative \(\dot{x}_{1} = x_{2}\) to zero in finite time \(t \leq \bar{ t}_{r}\) and keeps them there thereafter in the presence of a bounded disturbance f(x 1, x 2, t) is called second-order sliding mode (2-SM) control and an ideal 2-SM is said to be taking place in system (1.1) for all \(t >\bar{ t}_{r}\).

The entire theory of second-order sliding mode control will be rigorously presented together with a variety of 2-SM controllers in Chap. 4 and more generalized higher-order sliding mode control will be discussed in Chap. 6.

Example 1.7.

The results of the simulation of system (1.1) with the 2-SM control (1.58), the initial conditions x 1(0) = 1,   x 2(0) = − 2, the control gain ρ = 2, the parameter c = 1. 5, and the disturbance f(x 1, x 2, t) = sin(2t), which is used for simulation purposes only, which illustrate the second-order sliding mode control concepts, are presented in Figs. 1.261.28.

Fig. 1.26
figure 26figure 26

Controlled output x 1 and its derivative \(\dot{x}_{1}\)

Fig. 1.27
figure 27figure 27

Sliding variable σ

Fig. 1.28
figure 28figure 28

Second-order sliding mode control

Discussion. The sliding variable σ reaches zero in finite time t r ≈ 0. 5 s (see Fig. 1.27). It confirms the existence of the sliding mode in system (1.1) for all t > 0. 5 s. The controlled output x 1 and its derivative \(\dot{x}_{1} = x_{2}\) reach zero in finite time \(\bar{t}_{r} \approx 1.2\) s (Fig. 1.26). This confirms the existence of a second-order sliding mode in system (1.1) for all t > 1. 2 s. Dynamical collapse of system (1.1) is achieved in the second-order sliding mode, since the system’s dynamics are reduced to the algebraic equations x 1(t) = x 2(t) = 0 for all t > 1. 2 s.

1.8 Output Tracking: Relative Degree Approach

The output tracking (servomechanism) control problem is a very common practical task. For instance, an aircraft flight control system makes the aircraft attitude (Euler) angles follow reference profiles, often generated in real time, by means of controlled deflection of the aerodynamic surfaces, while the state vector associated with the aircraft dynamics contains a number of other variables, which are the subject of control. Another example concerns controlling DC-to-DC electric power converters. The electric energy conversion is performed by means of high-frequency switching control of power transistor while maintaining the output voltage at a given level.

Let us revisit system (1.1):

$$\left \{\begin{array}{l} \dot{x}_{1} = x_{2} \\ \dot{x}_{2} = u + f(x_{1},x_{2},t)\\ y = x_{ 1} \end{array} \right.\begin{array}{l} x_{1}(0) = x_{10}\;\; \\ x_{2}(0) = x_{20} \end{array}$$
(1.59)

where x 1, x 2 are position and velocity of the unit mass, y is a controlled output, u is a control force, and the disturbance term f(x 1, x 2, t), which may comprise dry and viscous friction as well as any other unknown resistance forces, is assumed to be bounded, i.e., f(x 1, x 2, t) ≤ L > 0.

The problem to be addressed now is to design an SMC control law u = u(x 1, x 2, t) that makes the output y (the position of the unit mass) follow asymptotically a reference profile y c (t) given in current time. In other words, the control u = u(x 1, x 2) is supposed to drive the output tracking error to zero: \(\lim_{|\sigma|\longrightarrow\infty} ({y_c}(t) - y(t)) = 0\) in the presence of the bounded disturbance f(x 1, x 2, t).

The proposed control design technique employs the concepts of input–output dynamics and relative degree.

Definition 1.6.

Consider a SISO dynamic system with output \(y \in \mathbb{R}\), state vector \(x \in \Theta \subset {\mathbb{R}}^{n}\), and the control input \(u \in \mathbb{R}\). If y (i) is independent of u for all i = 1, 2, , k − 1, but y (k) is proportional to u with the coefficient of proportionality not equal to zero in a reasonable domain \(\Omega \subset \Theta \subset {\mathbb{R}}^{n}\), then k is called the well-defined relative degree.

For the system (1.59) the input–output dynamics have relative degree k = 2 since

$${y}^{(2)} = u + f\left (y,\dot{y},t\right )$$
(1.60)

Remark 1.5.

The relative degree of the system in Eq. (1.59) is equal to the system’s order, which means that the system (1.59) does not have any internal dynamics.

1.8.1 Conventional Sliding Mode Controller Design

The desired input–output tracking error compensated dynamics for the system (1.59) or (1.60) can be defined as a linear differential equation of order equal to k − 1 with respect to the output tracking error e = y c (t) − y(t). Specifically, we define

$$\sigma =\dot{ e} + ce,\quad c > 0$$
(1.61)

Now we have to design a conventional SMC u that drives σ → 0 in finite time and keeps it at zero thereafter, bearing in mind that as soon as the sliding variable σ reaches zero the sliding mode starts and the output tracking error e in the sliding mode will obey the desired reduced (first)-order differential equation

$$\sigma =\dot{ e} + ce = 0\quad c > 0$$
(1.62)

that yields convergence to zero as time increases.

The sliding variable dynamics are derived as

$$\dot{\sigma }=\underbrace{ \ddot{y}_{c} + c\dot{y}_{c} - f(y,\dot{y},t) - c\dot{y}}\limits _{\varphi (y,\dot{y},t)} - u\quad \Rightarrow \quad \dot{\sigma } =\varphi (y,\dot{y},t) - u$$
(1.63)

where y c , \(\dot{y}_{c}\), and \(\ddot{y}_{c}\) are known in current time. The cumulative disturbance term \(\varphi (y,\dot{y},t)\) is assumed bounded, i.e., \(\left \vert \varphi (y,\dot{y},t)\right \vert \leq M\).

Conventional SMC u can be designed by using the sliding mode existence condition (1.21) rewritten in a form

$$\sigma \dot{\sigma }\leq -\bar{\alpha }\left \vert \sigma \right \vert,\quad \bar{\alpha } = \frac{\alpha } {\sqrt{2}}$$
(1.64)

Consequently

$$\sigma \dot{\sigma }=\sigma \left (\varphi (y,\dot{y},t) - u\right ) \leq \left \vert \sigma \right \vert M -\sigma u$$
(1.65)

and selecting

$$u =\rho \mbox{ sign}(\sigma )$$
(1.66)

and substituting it into Eq. (1.66) we obtain

$$\sigma \dot{\sigma }\leq \left \vert \sigma \right \vert (M-\rho ) = -\bar{\alpha }\left \vert \sigma \right \vert $$
(1.67)

The control gain ρ is computed as

$$\rho = M+\bar{\alpha }$$
(1.68)

Example 1.8.

The results of the simulation of system (1.59) with a conventional SMC control (1.61), (1.66), (1.68), the initial conditions x 1(0) = 1,   x 2(0) = − 2, the control gain ρ = 6, the parameter c = 1. 5, the output reference profile y c = 2cos(t), and the disturbance f(x 1, x 2, t) = sin(2t), (which is used for simulation purposes only), illustrating the output tracking SMC concepts, are presented in Figs. 1.291.31. The component \(\dot{e}\) of the sliding variable in Eq. (1.61) is computed using simple numerical differentiation during the simulation. In particular, the error e is fed to the input of the transfer function \(\frac{s} {\tau s+1}\) with τ = 0. 01, whose output gives an approximate \(\dot{e}\).

Fig. 1.29
figure 29figure 29

Sliding variable σ

Fig. 1.30
figure 30figure 30

The reference profile tracking

Fig. 1.31
figure 31figure 31

Traditional sliding mode control

Remark 1.6.

The more sophisticated sliding mode differentiator based on the 2-SM technique studied in Sect. 1.7 can also be employed to generate \(\dot{e}\).

Discussion. The sliding variable σ given by Eq. (1.61) reaches zero in finite time t r ≈ 0. 45 s (Fig. 1.29). It confirms the existence of the sliding mode in system (1.59) for all t > 0. 45 s. The controlled output y(t) accurately follows the reference profile y c (t): y(t) → y c (t) in the sliding mode (Fig. 1.30) as time increases, despite the presence of the bounded-disturbance f(x 1, x 2, t) = sin(2t). High-frequency switching SMC u is shown in Fig. 1.31.

1.8.2 Integral Sliding Mode Controller Design

An alternative sliding mode controller design for output tracking in system (1.59) is studied in this subsection. Assuming that the initial conditions in system (1.59) are known, asymptotic output tracking in this system can be achieved by splitting the control function u into two parts:

$$u = u_{1} + u_{2}$$
(1.69)

and then:

  • Designing the auxiliary sliding mode control law u 1 to compensate for the bounded disturbance \(\varphi (y,\dot{y},t)\) in Eq. (1.63) in the auxiliary sliding mode such that sliding starts right away (i.e., without a reaching phase)

  • Designing the control u 2 to drive the sliding variable (1.61) to zero as time increases, bearing in mind that the sliding variable dynamics (1.63) are not perturbed anymore

Control u 1 Design. The auxiliary sliding variable is designed as

$$\left \{\begin{array}{l} s =\sigma -z\\ \dot{z} = -u_{2}\end{array} \right.$$
(1.70)

The auxiliary sliding variable dynamics are given by

$$\begin{array}{lcl} \dot{s}& =&\dot{\sigma } -\dot{ z} =\varphi (y,\dot{y},t) - (u_{1} + u_{2}) - (-u_{2}) \\ & =&\varphi (y,\dot{y},t) - u_{1}\end{array}$$
(1.71)

Sliding mode control u 1 that drives the auxiliary sliding variable s to zero in finite time is designed as in Eq (1.66)

$$u_{1} =\rho _{1}\mbox{ sign}(s)$$
(1.72)

and thus the s-dynamics collapse in the auxiliary sliding mode. The original sliding variable dynamics (1.63) compensated by control u 1 given by Eq. (1.72) are

$$\left \{\begin{array}{l} \dot{\sigma }=\varphi (y,\dot{y},t) - u_{1} - u_{2}, \\ \dot{s} =\varphi (y,\dot{y},t) - u_{1},\quad u_{1} =\rho _{1}\mbox{ sign}(s)\end{array} \right.$$
(1.73)

In order to describe the σ-dynamics in the auxiliary sliding mode (s = 0) we have to find the equivalent control u 1eq that satisfies the condition \(\dot{s} = 0\) and substitute it to Eq. (1.73). It is easy to see that

$$\begin{array}{l} \dot{s} =\varphi (y,\dot{y},t) - u_{1eq} = 0\quad \Rightarrow \quad u_{1eq} =\varphi (y,\dot{y},t)\quad \Rightarrow \\ \dot{\sigma }=\varphi (y,\dot{y},t) -\underbrace{\mathop\varphi (y,\dot{y},t)}\limits _{u_{1eq}} - u_{2}\quad \Rightarrow \quad \dot{\sigma } = -u_{2}\end{array}$$
(1.74)

Therefore, the original sliding variable dynamics (1.74) do not depend on the disturbance \(\varphi (y,\dot{y},t)\) in the auxiliary sliding mode.

Now we will address the issue of starting the auxiliary sliding mode from the very beginning without any reaching phase. In order to achieve it we have to enforce the initial condition s(0) = 0 in Eq. (1.73). From Eq. (1.70) we obtain

$$\begin{array}{l} s(0) =\sigma (0) - z(0) = 0\quad \Rightarrow \quad z(0) =\sigma (0)\quad \Rightarrow \\ z(0) =\dot{ y}_{c}(0) + cy_{c}(0) - x_{2}(0) - cy(0) \end{array}$$
(1.75)

Therefore, the initial conditions for the variable z are identified from Eq. (1.70) that makes s(0) = 0.

The following properties of the auxiliary sliding mode control u 1 can be observed:

  • The sliding mode control u 1 provides compensation for the disturbance \(\varphi (y,\dot{y},t)\) from the very beginning without any reaching phase.

  • It was argued earlier that the use of sliding mode control reduces the system’s order in the sliding mode. On the other hand the original sliding variable dynamics in Eq. (1.63) retain their order after being compensated by the auxiliary sliding mode control u 1 as in Eq. (1.74). So, a very specific type of sliding mode control has been designed.

Definition 1.7.

Sliding mode control that retains the order of the compensated system’s dynamics in the sliding mode is called integral sliding mode control.

In order to complete the controller design that drives the sliding variable (1.61), select the control function u 2 in Eq. (1.74) as

$$u_{2} = k\sigma,\quad k > 0$$
(1.76)

The σ-dynamics compensated by the control (1.69), (1.72), (1.76) become

$$\dot{\sigma }= -k\sigma,\quad \sigma (0) =\sigma _{0}$$
(1.77)

and the desired convergence rate can be easily achieved by choosing the gain k > 0.

Example 1.9.

The results of the simulation of system (1.59) with the integral SMC control (1.69), (1.70) (1.72), (1.75), (1.76), the initial conditions x 1(0) = 1,   x 2(0) = − 2, \(z(0) =\dot{ y}_{c}(0) + cy_{c}(0) - x_{2}(0) - cy(0)\), the control gains ρ 1 = 8,   k = 6, the parameter c = 1. 5, the output reference profile y c = 2cos(t), and the disturbance f(x 1, x 2, t) = sin(2t) (which is used for simulation purposes only), which illustrate the output tracking Integral SMC concepts, are presented in Figs. 1.321.34. During the simulation, the component \(\dot{e}\) of the sliding variable (1.61) is computed using a simple numerical differentiation. In particular, the error e is fed to the input of the transfer function \(\frac{s} {\tau s+1}\) with τ = 0. 01, which gives an approximation of \(\dot{e}\).

Fig. 1.32
figure 32figure 32

Sliding variables σ and s

Fig. 1.33
figure 33figure 33

The reference profile tracking

Fig. 1.34
figure 34figure 34

Integral sliding mode control

Discussion. The auxiliary sliding variable s given by Eq. (1.62) is equal to zero from the very beginning [due to the selection of z(0) = 3. 5 using Eq. (1.75)] and is kept at zero thereafter (Fig. 1.32) by means of integral sliding mode control (1.72). The disturbance f(x 1, x 2, t) = sin(2t) is compensated completely for all t ≥ 0. The sliding variable σ converges to zero (Fig. 1.32) in accordance with Eq. (1.77) and the output y(t) accurately follows the reference profile y c (t): y(t) → y c (t) as time increases (Fig. 1.33). High-frequency switching SMC Eq. (1.69) is shown in Fig. 1.34.

1.8.3 Super-Twisting Controller Design

In Sects. 1.8.1 and 1.8.2 the discontinuous high-frequency switching sliding mode controllers are designed to drive the sliding variable (1.61) to zero, which yields the solution to the output tracking problem, i.e., y(t) → y c (t) as time increases, despite the presence of the bounded disturbance \(\varphi (y,\dot{y},t)\). In many cases high-frequency switching control is impractical, and continuous control is a necessity.

In order to drive the sliding variable (1.61) to zero in finite time we try the following continuous control:

$$u = c{\left \vert \sigma \right \vert }^{1/2}\mbox{ sign}(\sigma ),\quad c > 0$$
(1.78)

Assuming \(\varphi (y,\dot{y},t) = 0\) in the sliding variable dynamics equation (1.63), the compensated sliding variable dynamics (1.63) become

$$\dot{\sigma }= -c{\left \vert \sigma \right \vert }^{1/2}\mbox{ sign}(\sigma ),\quad \sigma (0) =\sigma _{ 0}$$
(1.79)

Integrating Eq. (1.79) we obtain

$${ \left \vert \sigma (t)\right \vert }^{1/2} -{\left \vert \sigma _{ 0}\right \vert }^{1/2} = -\frac{c} {2}t$$
(1.80)

We wish to identify a time instant t = t r so that σ(t r ) = 0. This is given by

$$t_{r} = \frac{2} {c}{\left \vert \sigma _{0}\right \vert }^{1/2}$$
(1.81)

So the control (1.78) drives the sliding variable to zero in finite time (1.81). However, in the case of \(\varphi (y,\dot{y},t)\neq 0\), the compensated σ-dynamics become

$$\dot{\sigma }=\varphi (y,\dot{y},t) - c{\left \vert \sigma \right \vert }^{1/2}\mbox{ sign}(\sigma ),\quad \sigma (0) =\sigma _{ 0}$$
(1.82)

and convergence to zero does not occur.

If we could add a term to the control function (1.78) so that it will start following the disturbance \(\varphi (y,\dot{y},t)\neq 0\) in finite time, then the disturbance will be compensated for completely. As soon as the disturbance is canceled the sliding variable dynamics will coincide with Eq. (1.79) and σ → 0 also in finite time.

Assuming \(\left \vert \dot{\varphi }(y,\dot{y},t)\right \vert \leq C\) the following control

$$\left \{\begin{array}{l} u = c{\left \vert \sigma \right \vert }^{1/2}\mbox{ sign}(\sigma ) + w \\ \dot{w} = b\,\mbox{ sign}(\sigma ) \end{array} \right.c = 1.5\sqrt{C};b = 1.1C$$
(1.83)

makes the compensated σ-dynamics become

$$\left \{\begin{array}{l} \dot{\sigma }+c{\left \vert \sigma \right \vert }^{1/2}\mbox{ sign}(\sigma ) + w =\varphi (y,\dot{y},t), \\ \dot{w} = b\,\mbox{ sign}(\sigma ) \end{array} \right.$$
(1.84)

The control (1.83) meets our expectation, and the term w becomes equal to \(\varphi (y,\dot{y},t)\) in finite time, and therefore Eq. (1.84) becomes Eq. (1.79). Consequently σ → 0 in finite time as well.

The control (1.83) is called super-twisting control and will be studied rigorously in Chap. 4.

The following properties are exhibited by the super-twisting control formulation:

  • The super-twisting control (1.83) is a second-order sliding mode control, since it drives both \(\sigma,\;\dot{\sigma }\rightarrow 0\) in finite time.

  • The super-twisting control (1.83) is continuous since both 1 ∕ 2sign(σ) and the term w = b∫signσdt are continuous. Now, the high-frequency switching term signσ is “hidden” under the integral.

Example 1.10.

The results of the simulation of the system (1.59) with the super-twisting control (1.61), (1.83), initial conditions x 1(0) = 1,   x 2(0) = − 2, the control gains c = 13. 5,   b = 88, the parameter C = 80, the output reference profile y c = 2cos(t); and the disturbance f(x 1, x 2, t) = sin(2t), which is used for simulation purposes only, which illustrate the super-twisting control concept for output tracking, are presented in Figs. 1.351.38. During the simulation, the component \(\dot{e}\) of the sliding variable (1.61) is computed using simple numerical differentiation, although the sliding mode differentiator studied in Sect. 1.6 could also be employed.

Fig. 1.35
figure 35figure 35

Sliding variable σ

Fig. 1.36
figure 36figure 36

The reference profile tracking

Fig. 1.37
figure 37figure 37

Super-twisting control

Fig. 1.38
figure 38figure 38

Time history of signσ

Table 1

Discussion. The sliding variable σ is driven to zero in finite time (Fig. 1.35) by the continuous super-twisting control (Fig. 1.37). The high accuracy asymptotic output tracking (Fig. 1.36), which is achieved, is similar to that obtained with conventional SMC (Fig. 1.30) and integral SMC (Fig. 1.33), but is obtained by means of continuous control (Fig. 1.37) rather than high-frequency switching (Figs. 1.31 and 1.34). Including the attenuated (by integration) high frequency switching term signσ (Fig. 1.38) in the super-twisting control (1.83) is mandatory—it compensates for the disturbance while retaining a continuity of the control function (Fig. 1.37).

1.8.4 Prescribed Convergence Law Controller Design

Let us summarize the results on output tracking sliding mode control studied in the previous subsections:

Notice that the integral sliding mode controller is able to compensate for the bounded disturbance right away without any reaching phase, thus reducing the output tracking problem to one without any disturbances.

Unlike the conventional, integral, and super-twisting sliding mode controllers, in this subsection we will design a 2-SM controller that ensures a full dynamical collapse of the output tracking error dynamics.

The uncompensated dynamics of the output tracking error are derived based on the input–output dynamics given by Eq. (1.60), namely

$${ e}^{(2)} =\underbrace{ \ddot{y}_{ c}-f(y,\dot{y},t)}\limits _{\varphi (y,\dot{y},t)} -u\quad \Rightarrow \quad {e}^{(2)} =\varphi (y,\dot{y},t)-u\quad \Rightarrow \quad \begin{array}{l} \dot{e}_{1} = e_{2} \\ \dot{e}_{2} =\varphi (y,\dot{y},t) - u \end{array}$$
(1.85)

where \(e_{1} = e,\;\;e_{2} =\dot{ e}\). The first problem is the sliding variable design, which is introduced in a format given by Eq. (1.52):

$$\sigma =\sigma (e_{1},e_{2}) = e_{2} + c{\left \vert e_{1}\right \vert }^{1/2}\mbox{ sign}(e_{ 1}),\quad c > 0$$
(1.86)

As soon as the trajectory of system (1.85) reaches the sliding manifold

$$\sigma =\sigma (e_{1},e_{2}) = e_{2} + c{\left \vert e_{1}\right \vert }^{1/2}\mbox{ sign}(e_{ 1}) = 0$$
(1.87)

in finite time tt r its dynamics coincide with Eq. (1.54) and are finite-time convergent, i.e.,

$$\left \{\begin{array}{l} \dot{e}_{1} = e_{2} \\ e_{2} = -c{\left \vert e_{1}\right \vert }^{1/2}\mbox{ sign}(e_{1})\end{array} \right.e_{1}(t_{r}) = e_{1r}$$
(1.88)

Therefore (as studied in Sect. 1.8) e 1, e 2 (or the output tracking error and its derivative) converge to zero in finite time.

The 2-SM controller with the prescribed convergence law that drives the sliding variable (1.86) to zero in finite time is designed by analogy with Eq. (1.58):

$$u = -\rho \mbox{ sign}(\sigma ) \Rightarrow u = -\rho \mbox{ sign}\left (e_{2} + c{\left \vert e_{1}\right \vert }^{1/2}\mbox{ sign}(e_{ 1})\right )$$
(1.89)

where the positive gain ρ is large enough and c > 0.

Example 1.11.

The results of the simulation of system (1.59) with prescribed convergence law control (1.89), which illustrate the prescribed convergence law control concepts for output tracking, are presented in Figs. 1.391.42. During the simulation, the component \(e_{2} =\dot{ e}\) of the sliding variable in Eq. (1.86) is computed using simple numerical differentiation.

Fig. 1.39
figure 39figure 39

Sliding variable σ

Fig. 1.40
figure 40figure 40

The reference profile tracking

Fig. 1.41
figure 41figure 41

The output tracking error and it derivative

Fig. 1.42
figure 42figure 42

The control function

Discussion. The sliding variable σ is driven to zero in finite time (Fig. 1.39) by the prescribed convergence law (Fig. 1.42). The finite-time convergence of the output tracking error and its derivative to zero (or dynamical collapse) is achieved in the presence of the bounded disturbance \(\varphi (y,\dot{y},t)\) (Figs. 1.40 and 1.41).

1.9 Notes and References

The objective of this chapter is to provide an intuitive overview of conventional (first-order) and second-order sliding modes. The definitions and concepts are consequently taken from a wide range of sources and will be rigorously referred to and discussed in the subsequent chapters. The main terminology and techniques are taken from the established monographs and papers [57, 61, 64, 67, 74, 91, 92, 113, 123, 132, 146, 147, 182, 183, 186, 195]. For an account of the early developments in VSS and SMC and the people involved, see the review in [184].

1.10 Exercises

Exercise 1.1.

A simplified m longitudinal motion of an underwater vehicle can be described by

$$m\ddot{x} + k\dot{x}\left \vert \dot{x}\right \vert = u$$
(1.90)

where x is position of the vehicle, u is the control input (a force that is provided by a propeller), m is the mass of the vehicle, and k > 0 is the drag coefficient. Assuming the value of m is known exactly, the drag coefficient is bounded k 1kk 2 and the position and its derivative (velocity) \(x,\;\dot{x}\) are measured:

  1. (a)

    Obtain a state system model of the vehicle using \(x_{1} = x,\;x_{2} =\dot{ x}\) as the state variables.

  2. (b)

    Design a conventional sliding mode control law u that drives x 1,  x 2 → 0 as time increases.

  3. (c)

    Simulate the control system for x 1(0) = 2 m,   x 2(0) = 0. 5 m∕s,   m = 4 kg,    and \(k = 1.5 + 0.4\sin (2t)\left [ \frac{\mathrm{kg}} {\mathrm{m}\mathrm{s}}\right ]\). Plot the time histories of the sliding variable, the control function u, the position x 1,  and the velocity x 2.

  4. (d)

    Identify the quantities that reach zero in finite time and the ones that approach zero asymptotically.

Hint: The function \(k\dot{x}\left \vert \dot{x}\right \vert\) can be bounded as \(\left \vert k\dot{x}\left \vert \dot{x}\right \vert \right \vert \leq k_{2}\dot{{x}}^{2} = 1.9\dot{{x}}^{2}.\)

Exercise 1.2.

Repeat Exercise 1.1 approximating the sign function in the control law by the sigmoid function \(\mbox{ sign}(\sigma ) \approx \frac{\sigma } {\left \vert \sigma \right \vert +\varepsilon }\) and separately by the saturation function

$$\mbox{ sign}(\sigma ) \approx \left \{\begin{array}{c} 1\quad if\;\sigma >\varepsilon \\ \frac{\sigma }{\varepsilon }\quad if\;\left \vert \sigma \right \vert \leq \varepsilon \\ -1\quad if\;\sigma < -\varepsilon \end{array} \right.$$

for ε = 0. 01. Compare the results of the simulations.

Exercise 1.3.

Repeat Exercise 1.1 designing a conventional sliding mode control law in terms of \(v =\dot{ u}\) that drives to zero an auxiliary sliding variable \(s =\dot{\sigma } +C_{1}\sigma\). The derivative of the original sliding variable σ may be obtained by using a sliding mode differentiator. Do you expect the original sliding variable σ to reach zero in finite time? Please explain why the original control function is continuous.

Exercise 1.4.

Repeat Exercise 1.1 designing u = u(x) using the super-twisting control law.

Exercise 1.5.

Repeat Exercise 1.1 designing a second-order sliding mode control law with \(v =\dot{ u}\) using the prescribed convergence law technique.

Exercise 1.6.

For the DC motor modeled by

$$\displaystyle\begin{array}{rcl} J \frac{d\omega } {dt}& =& k_{m}i - T_{L}\end{array}$$
(1.91)
$$\displaystyle\begin{array}{rcl}L\frac{di} {dt} = -iR - k_{b}\omega + u\end{array}$$
(1.92)

where J is the moment of inertia, i is the armature current, L and R are the armature inductance and resistance respectfully, ω is the motor angular speed, k b is a constant of back electromotive force, k m is a motor torque constant, T L is an unknown load torque which is bounded and has bounded derivative, and u is a control function defined by the armature voltage, design a sliding mode control u, steering the angular speed ω to zero assuming both i and ω are measurable and all parameters are known. Simulate the control system with R = 1 Ohm, L = 0. 5 H, k m = 5 ⋅10− 2 N m/A, k b = k m , J = 10− 3 N m s2/rad, T L = 0. 1 sin(t) N m, ω(0) = 1 rad/s, and i(0) = 0. Plot the time histories of the sliding variable, the control function u, the current i, and the angular speed ω.

Exercise 1.7.

Repeat Exercise 1.6 assuming that only ω(t) is measured. Design a sliding mode observer for estimating \(\hat{\imath }(t) \rightarrow i(t)\). Simulate the control system. Plot the time histories of the sliding variable, the control function u, the angular speed ω, the current i  and its estimate \(\hat{\imath }\).

Exercise 1.8.

Repeat Exercise 1.6 and design a second-order sliding mode control law u in the form of super-twisting control. Simulate the control system. Plot the time histories of the sliding variable, the control function u, the angular speed ω, and the current i.

Exercise 1.9.

For the DC motor given in Exercise 1.6 design a conventional sliding mode control u that provides asymptotic output tracking ω(t) → ω c (t), where ω c (t) is an angular speed command given in current time. Simulate the control system with ω c (t) = 0. 2 sin(2t) rad/s. Plot the time histories of the sliding variable, the control function u, the angular speed ω, the current i, and the output tracking error e ω = ω c (t) − ω(t). The torque load profile T L = 0. 1 sin(t) N m is given for simulation purposes only and must be considered unknown. When designing the controller.

Exercise 1.10.

Repeat Exercise 1.9 using integral sliding mode control to compensate for the unknown external disturbance. Simulate the control system with ω c (t) = 0. 2 sin(2t) rad/s. Plot the time histories of the sliding variable, the control function u, the angular speed ω, the current i, and the output tracking error e ω = ω c (t) − ω(t).

Exercise 1.11.

Repeat Exercise 1.9 and design the second-order sliding mode control law u as a super-twisting control.