Chapter 7

Sliding Mode Control*

Abstract

The sliding controllers are becoming popular when working with aerial vehicles. They are generally used for their good performance and robustness properties in the presence of unknown perturbations. They are often used in nonlinear systems despite their greatest weakness to produce chattering in the control inputs. In this chapter two results are presented: on the one hand, a methodology is described to represent the nonlinear and perturbed attitude dynamics of a quadcopter in a linear and perturbed attitude system as mostly used in several works, and, on the other hand, a robust sliding mode algorithm with an integral component is conceived and validated to stabilize this system. Graphs obtained from simulation and experimental results introduce good performance of the closed-loop system even in the presence of several disturbances and noise in the states.

Keywords

Sliding mode control; Nonlinear MIMO system; Attitude dynamics; Quadcopter vehicle; Real-time validation

Controlling the attitude dynamics of a drone is an essential task when working with aerial vehicles. This dynamics has a nonlinear nature included in the Coriolis matrix, see Chap. 2. It was demonstrated in previous chapters that generally this dynamics is used to conceive control algorithms in its linear or simplified nonlinear mode. Nevertheless, it is also possible to represent these nonlinear equations as linear and perturbed equations, implying the design of controllers in an easy way. Nonlinear controllers are becoming popular when working with UAVs because they can be robust with respect to unknown perturbations such as wind present in the environment. Several researchers have proposed countless algorithms to stabilize the attitude of the aerial vehicle. The sliding mode approach becomes an essential tool due to its robustness and quick dynamics to converge the states. This methodology has been extensively studied in many works, see [15].

In this chapter the sliding mode and singular optimal control methodologies are used to design nonlinear controllers to stabilize the nonlinear attitude of a quadcopter vehicle. Two results are introduced here: first, a new form to represent the nonlinear equations for the orientation of a VTOL1 vehicle in the presence of unknown disturbances as a linear MIMO and perturbed system is presented, and second, a control law is proposed and validated in simulations and in real time to stabilize the attitude of a quadcopter.

7.1 From the Nonlinear Attitude Representation to Linear MIMO Expression

The simplest form to represent the orientation of a quadcopter or VTOL vehicle is to consider two integrators in cascade with external perturbations as follows:

¨η=uη+wη,

Image (7.1)

or

˙x=ˉAx+ˉB1uη+ˉB2wηwithx=[η1η2],

Image (7.2)

where η represents the attitude vector with η being ϕ, θ, or ψ, i.e., the Euler angles, roll, pitch, and yaw, respectively, uηImage defines the control input, and wηImage the unknown and external perturbation. Even if this representation is experimentally valid for small angles, it does not represent the Coriolis and aerodynamic effects that the aerial vehicle experiences and can generate undesirable dynamics in flight when the vehicle moves quickly.

Studying the complete nonlinear attitude equations to design the controller can be an arduous task; nevertheless, some authors prefer to consider the strongest terms in the orientation to represent their model. These equations are described in the following and, considering our experience with quadcopters, they closely represent the attitude of a quadrotor vehicle:

¨ϕ=˙θ˙ψ(IyIzIx)IrIx˙θΩ+lIxuϕ+wϕ,¨θ=˙ϕ˙ψ(IzIxIy)IrIy˙ϕΩ+lIyuθ+wθ,¨ψ=˙θ˙ϕ(IxIyIz)+lIzuψ+wψ,

Image (7.3)

where the distance from each motor to the gravity center of the vehicle is denoted by l. The inertia of the vehicle in each axis is defined by IxImage, IyImage, and IzImage while the inertia of the motor is represented by IrImage, and the speed of the rotor is defined by Ω.

Notice that system (7.3) is quite different from (7.1) even if the unknown disturbances or uncertainties, wηImage, are also considered in the model. We study the system with bounded perturbations because it is obvious that the physical characteristics of the vehicle (power motors, etc.) are not unlimited, and, as a consequence, the perturbations need to be bounded, i.e., |wη|LηImage, where LηImage is a constant that defines the amplitude of each perturbation.

Theorem 7.1

System (7.3) is equivalent to system

˙x=Ax+B(u+ˉw)

Image (7.4)

with x=(ϕ1θ1ψ1ϕ2θ2ψ2)TImage, u=(uϕuθuψ)TImage,

ˉw=(θ2(ψ2(IyIzIx)IrIxΩ)ϕ2+wϕlIxϕ2(ψ2(IzIxIy)IrIyΩ)θ2+wθlIyθ2ϕ2(IxIyIz)ψ2+wψlIz),A=(03×303×3I3×3I3×3),B=(03×3B2),B2=(lIx000lIy000lIz).

Image

Proof

Consider γ1=(IyIzIx)Image, γ2=(IzIxIy)Image, γ3=(IxIyIz)Image, β1=IrIxΩImage, β2=IrIyΩImage, b1=lIxImage, b2=lIyImage, and b3=lIzImage. Define ϕ1=ϕImage, θ1=θImage, ψ1=ψImage, ˙ϕ1=ϕ2Image, ˙θ1=θ2Image, and ˙ψ1=ψ2Image.

Then, rewriting (7.3) it follows that

˙ϕ1=ϕ2,˙ϕ2=θ2(ψ2γ1β1)+b1uϕ+wϕ,˙θ1=θ2,˙θ2=ϕ2(ψ2γ2β2)+b2uθ+wθ,˙ψ1=ψ2,˙ψ2=θ2ϕ2γ3+b3uψ+wψ.

Image (7.5)

To simplify the analysis, define f1=θ2(ψ2γ1β1)Image, f2=ϕ2(ψ2γ2β2)Image, and f3=θ2ϕ2γ3Image. Taking the three right equations of (7.5), we obtain

˙ϕ2=ϕ2ϕ2+f1+b1uϕ+wϕ,˙θ2=θ2θ2+f2+b2uθ+wθ,˙ψ2=ψ2ψ2+f3+b3uψ+wψ.

Image

Define Φ1=f1ϕ2Image, Φ2=f2θ2Image, and Φ3=f3ψ2Image. Then

˙ϕ2=ϕ2+b1(uϕ+ˉwϕ),˙θ2=θ2+b2(uθ+ˉwθ),˙ψ2=ψ2+b3(uψ+ˉwψ)

Image

with ˉwi=(Φi+wη)/biImage. Finally, define ηi=(ϕiθiψi)TImage, i=1,2Image. Then we can write

˙η1=η2,˙η2=η2+B2(u+ˉw),

Image

which is equivalent to system (7.4).

7.2 Nonlinear Optimal Controller with Integral Sliding Mode Design

The goal is to stabilize the quadcopter attitude using an optimal control u that is robust with respect to perturbations and parameter variations. For this it is necessary to minimize the following singular quadratic cost:

J(x(t))=12t1[x(t)TQx(t)]dt,

Image (7.6)

with Q=QT>0Image. The minimization of (7.6) is subject to

˙η1=η2.

Image (7.7)

Developing (7.6), it follows that

J=12t1(η1TQ11η1+2η1TQ12η2+η2TQ22η2)dt.

Image (7.8)

To eliminate the cross terms, the Utkin variable υ=η2+Q122QT12η1Image is used. Then

J=12t1(ηT1Q1η1+υTQ22υ)dt

Image (7.9)

with Q1=Q11Q12Q122QT12Image. Rewriting (7.7) with the Utkin variable yields

˙η1=A1η1+υ,

Image (7.10)

where A1=Q122QT12Image. Then (7.9) is not singular with respect to the variable υ, so that υ is taken as an optimal virtual control variable and is given by

υ=Q122Pη1,

Image (7.11)

where PR3×3Image is the solution to the Riccati equation PA1+AT1PPQ122P+Q1=0Image. Introducing the Utkin variable into (7.11), we have

η2+Q122(QT12+P)η1=0.

Image (7.12)

Notice that (7.11) and (7.12) are only true if (7.9) is minimized for all t10Image.

Observe that (7.12) is an optimal vector that can be used for designing the vector SR3Image given by

S=η2+Q122(QT12+P)η1,

Image (7.13)

where (7.13) represents the sliding surface vector. Taking the derivative of the previous equation with respect to time gives

˙S=[I3×3+Q122(QT12+P)]η2+B2(u+ˉw).

Image (7.14)

To remove the linear parts, take u as

u=B12{ˉu[I3×3+Q122(QT12+P)]η2}.

Image (7.15)

Thus

˙S=ˉu+B2w,

Image (7.16)

where ˉuImage is the new controller to assure the convergence of the system. Developing the above, it follows that

(˙S1˙S2˙S3)=(ˉu1+f1ϕ2+wϕˉu2+f2θ2+wθˉu3+f3ψ2+wψ).

Image

To remove the linearities η2Image, we propose ˉuImage as

ˉu=(ˉu1ˉu2ˉu3)=(ˉv1+ϕ2ˉv2+θ2ˉv3+ψ2).

Image

Then, rewrite ˙SImage as

˙S=(ˉv1+f1+wϕˉv2+f2+wθˉv3+f3+wψ),

Image

where each ˙Si˙SImage is represented as

˙Si=ˉvi+fi(η1,η2,t)+wη.

Image (7.17)

7.2.1 Convergence of the Sliding Surfaces

In the conventional sliding mode control the robustness property is not guaranteed from the first time instant because the robustness is only guaranteed when the sliding surface reaches zero.

With the integral sliding mode we will be able to compensate nonlinear terms and bounded uncertainties, also the robustness will be guaranteed from the initial time instance. In the following, we introduce variable ˉviImage to stabilize the sliding surfaces.

Then, we propose

ˉvi=ˉvi1+ˉvi2.

Image (7.18)

• Part ˉvi1Image will be responsible of compensating the nonlinear terms fiImage and the bounded disturbance wηImage from the beginning.

• Component ˉvi2Image will make sure that each sliding surface SiImage reaches the optimal surface Si=0Image at a defined finite time t1Image taking in consideration that the perturbations fiImage and wηImage have been compensated from the initial time instance t=0Image.

Design of ˉvi1Image

For ˉvi1Image we propose a new auxiliary surface σiImage with i=1,2,3Image given by2

{σi=SiZi,˙Zi=ˉvi2.

Image (7.19)

It should be mentioned that ˉvi1Image is designed as a conventional sliding mode control. This means that for the stability analysis a candidate Lyapunov function could be used. Therefore

V(σi)=12σ2i>0.

Image (7.20)

The asymptotic stability of (7.19) at the equilibrium point 0 can be proved if the following conditions are satisfied:

(a)lim|σi|V=,

Image (7.21)

(b)˙V<0for σi0.

Image (7.22)

Condition (a) is obviously satisfied by V in (7.20). Nevertheless, the finite-time convergence (global finite-time stability) could be achieved if condition (b) is modified as

˙VαiV1/2,αi>0.

Image (7.23)

Indeed, separating variables and integrating inequality (7.23) over the time interval 0τtImage, we obtain

V1/2(σi(t))12αit+V1/2(σi(0)),

Image (7.24)

and, considering that V(σi(t))Image reaches zero in finite time trImage, get

tr2V1/2(σi(0))αi.

Image (7.25)

Therefore control ˉvi1Image that satisfies (7.23) will drive σiImage to zero in finite time trImage and will keep it at zero ttrImage.

Now notice that (7.23) can be written as

σi˙σiˉαi|σi|,ˉαi=αi2,ˉαi>0.

Image (7.26)

Consequently, from the above and with (7.17), (7.18) and (7.19) we have

σi(˙Si˙Zi)=σi(ˉvi1+ˉvi2+fi(η1,η2,t)+wηˉvi2)=σi(ˉvi1+fi(η1,η2,t)+wη),

Image

and, selecting ˉvi1=ρisgn(σi)Image, condition (7.26) is fulfilled if and only if

ρi=ˉαi+|fi(η1,η2,t)|+Lη.

Image (7.27)

Notice that (7.27) represents the necessary gains for ensuring the finite time stability in a bounded finite time trImage, which means

tr2V1/2(σi(0))αi=|σi(0)|ˉα.

Image (7.28)

The above implies that σi=˙σi=0Image for all ttrImage, then the condition ˙σi=0Image produces

˙σi=ρisgn(σi)ˉvi1+fi(η1,η2,t)+wη=0ttr,

Image

meaning that ρ1sgn(σi)Image will compensate the perturbative terms fi(η1,η2,t)+wηImage only during the reaching phase.

In the following, to eliminate the reaching phase, we observe in (7.28) that proposing σi(0)=0Image will imply tr=0Image and as a result σi=˙σi=0Image for all t0Image.

Based on the above considerations, we present the next result

ˉvi1=ρisgn(σi)=(fi(η1,η2,t)+wη),t0

Image

if and only if σi(0)=0Image.

Therefore control ˉvi1=ρisgn(σi)Image compensates fi(η1,η2,t)+wηImage for all t0Image if and only if σi(0)=0Image.

Now considering that control ˉvi1Image accomplishes σi(t)=0Image for all t0Image and due to (7.19), it follows that Si(t)=Zi(t)Image for all t0Image. Therefore (7.19) can be rewritten as

{Si=Zi,˙Zi=ˉvi2,with Zi(0)=Si(0).

Image (7.29)

Then considering (7.29) we have

˙Si=ˉvi2.

Image

The next step is to design ˉvi2Image such that SiImage converges to zero in finite time.

Design of ˉvi2Image

In order to achieve global finite-time stability at the optimal sliding surfaces Si=0Image, we introduce ˉvi2=ki|Si|1/2sgn(Si)Image; then ˙SiImage is written as

˙Si=ki|Si|1/2sgn(Si).

Image (7.30)

The following Lyapunov function is proposed to prove that (7.30) converges to zero in finite time:

V(Si)=|Si|>0.

Image (7.31)

The previous equations must satisfy conditions (7.22). Observe that, by definition (7.31), condition (a) is achieved; to fulfill condition (b), we use (7.23). Notice that when introducing (7.31) into (7.23) an equivalent modified condition is obtained, which is given by

Si˙Si|Si|αi|Si|1/2.

Image (7.32)

Introducing (7.30) into (7.32), the previous inequality becomes

ki|Si|1/2αi|Si|1/2.

Image (7.33)

Therefore to satisfy (7.33) each gain kiImage must be equal to αiImage, meaning that ki>0Image, and this implies that

˙V=αiV1/2ifki=αi>0.

Image

Observe that the finite-time convergence time triImage will not be bounded, it will be exactly equal to

tri=2V1/2(Si(0))ki=2|Si(0)|1/2ki;

Image (7.34)

consequently, Si=0Image in a finite time triImage. Observe that (7.34) represents the finite-time convergence of each SiImage to the optimal sliding surface Si=0Image. With the purpose that each SiImage has the same finite time convergence, we fix tri=t1=cteImage,3 then we will be able to design the gains kiImage in order to have S1(t1)=S2(t1)==Sn(t1)=0Image.

Fixing tri=t1=cteImage, the necessary gains for getting Si(t1)=0Image can be obtained with ki=2|Si(0)|1/2t1Image.

Summarizing the methodology, it follows that when considering (7.17) and the fact that ˉvi=ˉvi1+ˉvi2Image, we have

˙Si=ρisgn(SiZi)ˉvi1+(ki|Si|1/2sgn(Si))ˉvi2+fi+wη

Image

with gains

ρi=ˉαi+|fi(η1,η2,t)|+Lηandki=2|Si(0)|1/2t1.

Image (7.35)

• Component ˉvi1Image will compensate the perturbative terms fi(η1,η2,t)+wηImage for all t0Image if and only if Zi(0)=Si(0)Image.

• Considering that the perturbative terms have been compensated from the initial time, control ˉvi2Image will ensure that every SiImage will converge to the optimal sliding surface Si=0Image in a fixed reaching time t1Image.

Therefore, component ˉuiImage from (7.15) is given by

ˉui=ρisgn(SiZi)ki|Si|1/2sgn(Si)+η2i,Zi=ki|Si|1/2sgn(Si)dtwith Zi(0)=Si(0),

Image (7.36)

and gains t1=cteImage and ˉαi=αi2Image in (7.35).

7.3 Numerical Validation

Simulations are realized to validate the proposed controllers. From section 7.1 notice that (7.3) can be expressed in regular form as

˙η1=η2,˙η2=η2+B2(u+ˉw),

Image

where η1=(ϕ1,θ1,ψ1)TImage and η2=(ϕ2,θ2,ψ2)TImage.

Following the previous control procedure, some matrices are necessary to compute u. These matrices are proposed as follows:

Q=QT=(178764282664413761191264923944419932132438)>0,

Image

thus

Q11=(178782667611),Q12=QT12=(6424413912),Q22=(2394993438).

Image

Therefore, from (7.9) and (7.10),

Q1=(13.19243.92448.03783.92444.57733.71138.03783.71136.1443),

Image

A1=(0.17870.12030.56010.43300.00340.50170.50171.68380.1581).

Image

Solving the Riccati equation, it follows that

P=(25.31329.93950.51819.93958.96791.52170.51811.52174.4597),

Image

and finally S can be written as

S=η2+Q122(QT12+P)Mη1,

Image (7.37)

where

M=(M11M12M13M21M22M23M31M32M33)=(0.97020.00360.58140.24041.10360.92750.20971.02280.8646).

Image

Then, the sliding surfaces are given by

S1=ϕ2+M11ϕ1+M12θ1+M13ψ1,S2=θ2+M21ϕ1+M22θ1+M23ψ1,S3=ψ2+M31ϕ1+M32θ1+M33ψ1.

Image

Rewriting uR3Image, it follows that

uϕ=(Ix/l)(ˉu1M13ψ2M12θ2(M11+1)ϕ2),uθ=(Iy/l)(ˉu2M21ϕ2M23ψ2(M22+1)θ2),uψ=(Iz/l)(ˉu3M31ϕ2M32θ2(M33+1)ψ2),

Image

with

ˉu1=ρ1sgn(S1Z1)k1|S1|1/2sgn(S1)+ϕ2,Z1=k1|S1|1/2sgn(S1)dtwithZ1(0)=S1(0),ˉu2=ρ2sgn(S2Z2)k2|S2|1/2sgn(S2)+θ2,Z2=k2|S2|1/2sgn(S2)dtwithZ2(0)=S2(0),ˉu3=ρ3sgn(S3Z3)k3|S3|1/2sgn(S3)+ψ2,Z3=k3|S3|1/2sgn(S3)dtwithZ3(0)=S3(0),

Image

and gains given by

ρ1=(α12+|θ2(ψ2γ1β1)|+L1),ρ2=(α22+|ϕ2(ψ2γ2β2)|+L2),ρ3=(α32+|θ2ϕ2γ3|+L3).

Image

k1=2|S1(0)|1/2t1k2=2|S2(0)|1/2t1k3=2|S3(0)|1/2t1|,t1=cte

Image (7.38)

The initial conditions were set as ϕ1(0)=5Image, θ1(0)=2Image, ψ1(0)=3Image, all in grad, ϕ2(0)=6Image, θ2(0)=4Image, ψ2(0)=6Image in grad/s. These conditions imply S1(0)=0.6026Image, S2(0)=10.1917Image, and S3(0)=6.5004Image. We can also define t1=1 sImage as a finite-time convergence instance for the sliding surfaces S1Image, S2Image, and S3Image. Thus, from (7.38) we obtained k1=1.5525Image, k2=6.3849Image, and k3=5.0992Image. Furthermore, for simulation purposes we assumed α1=0.12Image, α2=0.14Image, and α3=0.2Image. The bounded disturbances were selected as follows:

wϕ=2sin(t)sgn(S1),|wϕ|Lϕ=2,wθ=1.5cos(2t)sgn(S2),|wθ|Lθ=1.5,wψ=0.5exp(cos(t))sgn(S3),|wψ|Lψ=0.5exp(1).

Image

The above disturbances were considered multiplied by sgn(Si)Image for the following reasons:

1. To observe that the effect chattering produced by sgn(Si)Image is not relevant for the compensation of such disturbances. We are only interested in the knowledge of the maximum amplitude that each perturbation can reach, and not in the high frequency that it can produce.

2. To graphically validate the theory. It is expected to observe an evident chattering effect in wϕImage, wθImage, and wψImage when Si=0Image at the desired finite time t1=1Image.

The following graphs were obtained when applying the proposed control scheme. From Fig. 7.1 observe that the auxiliary sliding surfaces σ1Image, σ2Image, and σ3Image are zero from the initial time instance, meaning that the robustness is guaranteed with respect to bounded uncertainties all the time. Besides, S1Image, S2Image, and S3Image converge to zero in a desired finite time t1=1Image; this means that the vector of sliding surface S=η2+Q122(QT12+P)η1Image converges to the optimal vector of sliding surfaces S=0Image in finite time t1=1Image, and with this fact every solution η1=(ϕ,θ,ψ)TImage and η2=(˙ϕ,˙θ,˙ψ)TImage that belongs to S=0Image will be called an optimal sliding mode because it will be able to minimize the cost function (7.9) for all tt1Image and in this manner solve the LQR problem.4

Image
Figure 7.1 Convergence of auxiliary surfaces σi and sliding surfaces Si.

In Fig. 7.2 an asymptotic stabilization is clearly visible for the dynamics of ϕ,θ,ψImage and ˙ϕ,˙θ,˙ψImage due to the convergence of the vector S to the optimal sliding vector S=0Image in finite time t1=1Image.

Image
Figure 7.2 Stabilization of the dynamics of ϕ, θ, ψ and ˙ϕImage, ˙θImage, ˙ψImage.

In Fig. 7.3 it can be observed that the bounded uncertainties wϕImage, wθImage, and wψImage present an evident chattering effect by considering the factor sgn(Si)Image, and also that this chattering effect appears at time t1=1Image. However, although these uncertainties present a high frequency, the control signal responses uϕImage, uθImage, and uψImage shown in Fig. 7.4 compensate such perturbations from the initial time instance t=0Image.

Image
Figure 7.3 Bounded uncertainties wϕ, wθ, and wψ.
Image
Figure 7.4 Control signals uϕ, uθ, and uψ.

In Fig. 7.4 it is shown that the control signal responses uϕImage, uθImage, and uψImage have a chattering effect from the beginning, meaning that such controllers are compensating the proposed bounded uncertainties wϕImage, wθImage, and wψImage for all t0Image.

7.3.1 Emulation Results

One of the problems existing today is due to the discontinuity produced by the sgn function. This discontinuity produces a high frequency, normally called the chattering effect, which in practical applications is not convenient because it could produce unwanted vibrations that could damage the instruments in real-time implementations. Nevertheless, there exists extensive literature on techniques that help diminish the chattering effect.

Notice the chattering effect produced by the sgn function in Fig. 7.4. If we want to improve the performance of the control inputs, several tricks could be used. One technique used frequently is to approximate the sgn function; see, for example, [6, Chap. 1]. This approximation can be applied as

sgn(σ)σ|σ|+ϵ.

Image (7.39)

For our simulations purposes we consider ϵ=0.0007Image.

The idea when validating the proposed algorithm is to have similar results in simulations and/or experiments. For this we consider that all states ϕ, θ, ψ, ˙ϕImage, ˙θImage, and ˙ψImage are affected by some kind of white noise (that it is true when using inertial sensors). Under these assumptions the following graphs are obtained.

In Fig. 7.5 we observe that the sliding surfaces S1Image, S2Image, and S3Image converge to zero in finite time t1Image, although the nonlinear system is being affected by white noise. In Fig. 7.6 asymptotic convergence is observed for the dynamics of ϕ,θ,ψImage and ˙ϕ,˙θ,˙ψImage in spite of having white noise in the internal dynamics of the system. Due to this, the controls shown in Fig. 7.7 achieve the convergence of the vector S to the optimal sliding vector S=0Image in finite time. In Fig. 7.7 a representation of the controllers uϕImage, uθImage, and uψImage is shown; they drive S to zero in finite time in the presence of white noise and bounded uncertainties.

Image
Figure 7.5 Convergence of the sliding surfaces S1, S2, and S3.
Image
Figure 7.6 Dynamic stabilization of ϕ, θ, ψ and ˙ϕImage, ˙θImage, ˙ψImage with sensor noise.
Image
Figure 7.7 Control signals uϕ, uθ, and uψ.

7.4 Real-Time Validation

The previous controller was validated on our platform (see Sect. 4.1.5 of Chap. 4) to analyze the attitude performance of a quadcopter. Manual and aggressive references were given to test the behavior of the controller. The following main graphs illustrate the results.

Applying the controller as obtained in Sect. 7.3 in real time is very difficult, and the system is very sensible to small changes. This effect appears because even if the sliding surfaces go to zero, the cross terms of other variables are present in these surfaces, e.g., recall that surface S1Image is for assuring the roll angle convergence and notice that pitch and yaw terms are also included. In addition, if the terms MijImage of these variables (pitch and yaw) are bigger then they will strongly influence the controller performance. Therefore, in this part we will include a theoretical–practical tune up that could be used for sliding controllers.

Observe that S=vq+MqImage. Then we can choose M not only to assure convergence of the sliding surfaces but also to facilitate the implementation in real time. Therefore the goal will be to weigh the main diagonal of M to assure good convergence of each state. Remember that M is given by M=Q122(QT12+P)Image and Q is given by

Q=QT=(Q11Q12QT12Q22)>0,Q11,Q12,Q22R3×3.

Image

For a practical tune up we can consider Q12=03×3Image and Q22Image as

Q22=(r000s000g)

Image

with r, s, and g being positive numbers to guarantee Q22=QT22>0Image. Hence M becomes

M=(P11/r000P22/s000P33/g)=(M11000M22000M33),

Image

and this implies that each SiImage is given by

S1=ϕ2+M11ϕ1,S2=θ2+M22θ1,S3=ψ2+M33ψ1.

Image

Then uR3Image for practical validation is given as

uϕ=(Ix/l)(ˉu1(M11+1)ϕ2),uθ=(Iy/l)(ˉu2(M22+1)θ2),uψ=(Iz/l)(ˉu3(M33+1)ψ2),

Image

with

ˉu1=ρ1sgn(S1Z1)k1|S1|1/2sgn(S1)+ϕ2,Z1=k1|S1|1/2sgn(S1)dtwithZ1(0)=S1(0),ˉu2=ρ2sgn(S2Z2)k2|S2|1/2sgn(S2)+θ2,Z2=k2|S2|1/2sgn(S2)dtwithZ2(0)=S2(0),ˉu3=ρ3sgn(S3Z3)k3|S3|1/2sgn(S3)+ψ2,Z3=k3|S3|1/2sgn(S3)dtwithZ3(0)=S3(0).

Image

The new gains are given by

ρ1=(α12+|θ2(ψ2γ1β1)|+L1),ρ2=(α22+|ϕ2(ψ2γ2β2)|+L2),ρ3=(α32+|θ2ϕ2γ3|+L3),

Image

and other parameters are

k1=2|S1(0)|1/2t1k2=2|S2(0)|1/2t1k3=2|S3(0)|1/2t1|t1=cte,

Image

β1=β2(γ1+1),γ3=γ1(1γ2(γ1+1)+1),b2=b1(γ1+1),b3=b1[γ2(γ1+1)+1],b12=(γ1+1)b1,b13=[γ2(γ1+1)+1]b1.

Image

Analyzing the previous gains, we can observe that the gains for heuristic tune up are β2,γ1,γ2Image, and b1Image. Thus, the gains can be proposed as

ρ1=(|θ2(ψ2γ1β1)|+Lx),ρ2=(|ϕ2(ψ2γ2β2)|+Ly),ρ3=(|θ2ϕ2γ3|+Lz),

Image

and if we want Image and Image then for the tune up we can use the following expressions:

γ3=γ1γ1+1,γ1,b1=any number,b2=b3=b1(γ1+1),

Image

and then the gains become ρ1=(Lx),ρ2=(Ly)Image, and ρ3=(|θ2ϕ2γ3|+Lz)Image.

Fig. 7.8 introduces the behavior of the controllers when they are applied in a quadcopter prototype. Observe in this figure that the controller performs well in practice and that the closed-loop system is guaranteed even in the presence of aggressive maneuvers. Also notice that the procedure to tune the gains in the controller works pretty well and can be applied to others sliding controllers. Desired references were given manually by the pilot. Notice that several changes were produced to observe the performance of the controller.

Image
Figure 7.8 Attitude response when applying the controller in real time.

7.5 Discussion

Sliding mode control is becoming a popular tool when working with UAVs since robustness and quick convergence properties make such controllers very interesting to apply in autonomous vehicles. On the negative side, the main problem is the chattering effect produced in the control responses. This effect could damage the physical parts of the system and could require lots of energy for good efficiency. New controllers as proposed in this chapter try to reduce these drawbacks and improve the performance of such algorithms. Nevertheless, many issues still need to be solved and remain an open research topic.

The controller presented in this chapter was designed to be robust with respect to unknown and bounded perturbations and to guarantee convergence in finite time. This fact is not typical in controllers. From emulation results we could observe good performance of the algorithms. The next step for this controller will be to reduce the chattering effect in its design. In addition, a methodology to theoretically tune sliding algorithms was also presented in this chapter. It is very useful when applying the controller in real time. The graphs obtained when implementing the proposed controller demonstrated good performance in closed-loop system.

References

[1] T. Ledgerwood, M.E., Controllability and nonlinear control of rotational inverted pendulum, Advances in Robust and Nonlinear Control Systems. ASME Journal on Dynamic Systems and Control 1992;43:81–88.

[2] A. Lukyanov, Optimal nonlinear block-control method, In: Proceedings of the 2nd European Control Conference. Groningen, Netherlands. 1993:1853–1855.

[3] A. Lukyanov, S.J. Dodds, Sliding mode block control of uncertain nonlinear plants, In: Proceedings of the IFAC World Congress. San Francisco, CA, USA. 1996:241–246.

[4] V. Utkin, Sliding Modes in Control and Optimization. Springer-Verlag; 1992.

[5] V. Utkin, J. Guldner, J. Shi, Sliding Mode Control in Electromechanical Systems. Taylor and Francis; 1999.

[6] Y. Shtessel, C. Edwards, L. Fridman, A. Levant, Sliding Mode Control and Observation. Birkhäuser; 2014.


*  “This chapter was developed in collaboration with Efrain Ibarra from the Laboratoire Heudiasyc at the Université de Technologie de Compiegne in France and with M. Jimenez from the Universidad Autonoma de Nuevo Leon in Mexico.”

1  “Vertical Take-Off and Landing.”

2  “In this chapter variable σ is used only as an auxiliary sliding surface and not as a saturation function.”

3  “cte = constant.”

4  “This means that the state variables which minimize the quadratic cost function will be asymptotically stable.”

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset