Académique Documents
Professionnel Documents
Culture Documents
Department Iraq-Baghdad
Supervised By: Assist. Prof. Dr. Shibly Ahmed Al-Samarraie Lect. Yasir Khudhair Abbas
2012-2013
Table of Contents
1. Introduction 2. Non-Standard Backstepping Control... 2.1 Motivated Examples..................... A-Linear System Example................... B-Nonlinear System Example I... C-Nonlinear System Example II......... 3. Introduction to Lyapunov Function. 3.1 Lyapunov Function.......... A-Motivated Example (Stability of a 1st Order Linear System)......... B-Motivated Example (Stability of a 1st Order Nonlinear System)........................... C-Motivated Example (Controller Design Based On Lyapunov Function)......... 4. Standard Backstepping Method... A-Motivated Example.. B-Solution of H.w. 2.......... B-1:Solution Using Non-Standard Backstepping... B-2: Solution Using Standard Backstepping.. 5. Case Study: Mathematical Model of The Electro-Hydraulic Actuator System. 6. References... 34 38 12 13 13 19 19 24 12 11 3 3 3 3 8 9 11 11
Let us consider Eq. (1) as a first sub system and Eq. (2) as a second sub system . The control objective is to stabilize the system when starting from any initial condition and regulate the state to the origin. Considering the dynamical 3
Backstepping Control Design Lab 2012-2013 system as a set of separate sub systems is the main first step in applying the Backstepping method. Now we will treat each subsystem separately including the stabilization of its own variable. Accordingly consider Eq. (1) with 1 as the state variable which it is
required to stabilize it via 2 . 2 is considered here as a virtual controller, namely we rewrite Eq. (1) as follows: 1 = 1 + (3)
Eq. (3) is a first order system with as a control input. Let be chosen as Hence Eq. (3) becomes: = 1 1 = (1 + )1 , 1 = 1
> 0
(4)
(5)
to the value of .
The state 1 is an asymptotically stable with the required decay rate according Now in order to 1 to be asymptotically stable with the desired roots as in
and are started from different values, then the control effort must be directed to following output: force 2 to follow . Accordingly, the control could be designed to regulate the = 2 = 2 + (1 + )1 = 2 = 4 (6)
Eq. (5), the second variable 2 must be equal to the virtual control . Since 2
(7)
Backstepping Control Design Lab 2012-2013 Where = (1 + )1 = (1 + )(1 +2 ) . Let = , then Eq. (7) = , > 0 (8)
becomes:
Where: 1 = (1 + )(1 + ) , 2 = (1 + + )
= 1 1 2 2
= (1 + )(1 +2 ) {2 + (1 + )1 }
(9)
The simulation Results are obtained through using Matlab/simulink Ver. (14.9) or (2009b). By selecting the controller parameters as following: = 5, = 10
1 = 66, 2 = 16
0.4
0.3
x1 State
0.2
0.1
-0.1
0.5
1 Time (sec)
1.5
-0.5
State x2
-1
-1.5
-2
0.5
2.5
Control Action u
0.5
2.5
Figure (4): Virtual Controller and State 2 time history for example I. 7
Output y
(10) (11)
2 =
(12)
2 1 , > 0 = 1
(13)
1 = 1 8
(14)
Backstepping Control Design Lab 2012-2013 Eq. (14) is asymptotically stable system for positive . The other steps required to get the control law is as in the previous example. H.w1: Complete the design steps for the above example to obtain the control law .
(15) (16)
2 =
(17)
= 1
3 1 = 1 1
(18)
(19)
right hand side is negative odd function. The output can be written here as: To determine the control law we differentiate to get: Let the control law be taken as = 2 = 2 + 1
The state 1 in Eq.(19) is asymptotically stable (not exponentially) since the (20)
3 +2 = 2 + 1 = 1
(21)
(22)
positive .
With the control law as in Eq.(22) the output is asymptotically stable for
Design a control law u to stabilize the above system (Eq, (23)-(25)) based on
3 =
2 = 3
10
(26)
= 2
(27)
B-Motivated Example (Stability of a 1st Order Nonlinear System): Consider the following 1st order nonlinear differential equation: = ()
(28)
where () > 0 0 and (0) = 0 . The candidate Lyapunov function is as in Eq. (27), and accordingly becomes: = = () < 0 0
This proves that the nonlinear system as given in Eq. (28) is asymptotically stable around the origin. C-Motivated Example (Controller Design Based On Lyapunov Function): Consider the following system = + 12 (29)
Backstepping Control Design Lab 2012-2013 Let the candidate Lyapunov function is as in Eq. (27), then is = = +
By choosing = 2
(30)
we get,
above.
This proves the asymptotic stability of Eq. (29) with the control as selected The idea behind selecting as in Eq. (30) is that we need to make
= () = 2 < 0 0
negative definite. This can be accomplished if the bracket ( + ) is negative and odd function as in the following: ( + ) = = 2
In this section Backstepping method is presented based on a step-by-step construction of Lyapunov function. Hence the design of Backstepping control is Lyapunov based or as it named, the standard Backstepping method. A-Motivated Example: Consider the following system 1 = 1 +2 13 (31)
Lyapunov function is
Eq. (33) is a first order system with as a control input. Let the candidate
2 1 = 1 2 1
(34)
is Accordingly 1
= 1 1 = 1 1 1 +
1
(2 = = 21 ). This is a first step in the design procedure; the second is by defining the following output, = 2 = 2 + 21 (35)
2 = 1 < 0 1 0 1
Now Eq. (31) is rewritten with replacing 2 by the new state according to the 2 = 2 1 14 (36)
Differentiate in Eq. (35) with the transformation (Eq. (36)) to get, = 2 + 21 = + 2( 1 +2 ) = + 2(1 + 2 1 ) = + 2 21
1 2 1 2 1 2
(38)
Accordingly is,
+ = 1 (1 + ) + ( + 2 21 ) = 1 1
2 + 1 + ( + 2 21 ) = 1 2 = 1 + ( + 2 1 )
If
then becomes,
= 3 + 1
2 2 = 1
(39)
asymptotically. As and 1 go to zero, 2 goes to the origin asymptotically too as can be verified from the transformation (Eq. (35)). Finally the control law which will regulate 1 and 2 to the origin 15
The simulation results for the system with the proposed controller is done in figures (6-10)
0.6 0.5 0.4
State x1
16
4 Time (sec)
10
Control Action u
-0.5
-1
4 Time (sec)
10
Figure (9): Virtual Controller and State 2 time history for Motivated Example A.
0.5 0.4 0.3
Output z
Backstepping Control Design Lab 2012-2013 B-Solution of H.w. 2: For the following system dynamics:
2 + 2 1 = 1
Design a control law u to stabilize the above system (Eq, (23)-(25)) based on
3 =
2 = 3
B-1: Solution Using Non-Standard Backstepping: Before we get inside the design process, we will divide our system into two subsystems. Eq. (23) and (24) will represent subsystem 1 and Eq. (24) and (25) will represent subsystems 2. Step1: We start our design with subsystem 1 and by taking the scalar system Eq. (23), with 2 viewed as the control input, namely Eq. (23) will be rewritten in the
2 + 1 1 = 1
following way;
(41)
design the virtual control input 1 to stabilize the system [Eq. (41)] to the origin (1 = 0). So we formulate the virtual control law 1 to be;
2 1 , > 0 1 = 1
Where 1 ; is a virtual control input to the system [Eq. (41)]. Hence, we proceed to
(42)
19
provide the necessary damping for stabilizing the system. Thus after substituting Eq. (42) into Eq. (41), we obtain: 1 = 1 (43)
Now, in order the system dynamics (Eq. (43)) to be exist, state 2 should
(44)
From Eq. (44), we can find 2 with respect to output 2 in the following way: Using transformation Eq. (46), we transform subsystem 1 into the form; 1 = 1 + 2
2 1 2 = 2 1
2 + 2 )(21 + ) 2 = 3 + (1
(45)
(46)
(47) (48)
to zero (i.e. 2 = 1 ). To achieve this Eq. (48) will be rewritten by seeing 3 as a control input in the following way: 2 = 2 + (2 1 )(21 + ) 20 (49)
Now, it is clear that in order to stabilize the system (Eq. (47)), 2 should equal
2 = 3 + (2 1 )(21 + )
Backstepping Control Design Lab 2012-2013 Where 2 : is another virtual controller to stabilize the system [ Eq. (47) and (48)]. 2 = 2 + 1 (1 , 2 ) (50)
3 2 Where 1 (1 , 2 ) = (2 1 )(21 + ) = 21 2 + 21 + 2 + 1
yields
Where 1 is another design parameter, By substituting Eq. (51) into Eq. (50) , 2 = 1 2 (52)
2 = 1 (1 , 2 ) 1 2
(51)
that 2 will equal 1 . By this we end step1 and turn to step 2. Step2:
Where 2 will cause the 2 to stabilize to zero and the major consequence is
Now we consider subsystem 2 (Eq. (24) and (25), in order to achieve the above control objectives 3 should act like 2 . Thus again we have to backstep by introducing a new output variable 3 , which represent a change of variables as follows; 3 = 3 2
3 = 3 + 1 (1 , 2 ) + 1 2
2 3 + 21 Where 2 (1 , 2 ) = 1 1 + ( + 1 ) 2 + 21 2 + ( + 1 )1
3 = 3 + 2 ( 1 , 2 )
(53)
(54)
2 ( 1 , 2 )
2 ( 1 , 2 )
2 ]( 2 2 = [1 + 22 + [2( + 1 )1 + 61 + 2 ) + 1 + 2 )](1
2 (1 , 2 ) 2 1 2 2 = . + . 1 2 [( + 1 ) + 2 1 ]3
(55)
Using Eq. (53) to find 3 with respect to 3 , in the following way; Substituting Eq. (56) back into Eq. (55), so that Eq. (54) will be; 3 = + 3 (1 , 2 ) 3 = 3 + 2 (1 , 2 )
(56)
(57)
Where
2 ]( 2 2 3 (1 , 2 ) = [1 + 22 + [2( + 1 )1 + 61 + 2 ) + 1 + 2 )](1
The subsystem 2 will be transformed using Eq. (56), yields 2 = 3 + 2 (1 , 2 ) 3 = + 3 (1 , 2 ) (59) (60)
[( + 1 ) + 2 1 ]3 + 2 (1 , 2 )
(58)
will turn to 2 = 2 (1 , 2 ) = 1 . Actually this certifies our design steps, and by choosing the control action as; 22
Where 2 is a design parameter. Eventually by substituting the Eq. (61) back into Eq. (60) we found; 3 = 2 3 (62)
23
Backstepping Control Design Lab 2012-2013 B-2: Solution Using Standard Backstepping: In this section we repeat the design of controller using standard backstepping control, where the design is done based on constructing a Lyapunov function in each design step in the following way; Step1: Consider subsystem 1 and by taking the scalar system Eq. (23), with 2
2 + 1 1 = 1
viewed as the control input, so Eq. (23) will be rewritten in the following way;
(63)
Where 1 ; is a virtual control input to the system [Eq. (63)]. Now in order to design we candidate the following Lyapunov function;
2 1 = 1 2 1
the virtual control input 1 to stabilize the system [Eq. (63)] to the origin (1 = 0), (64)
2 = 1 1 = 1 1 + 1 1 1
(65)
(66)
as;
to the system with as a design parameter. The virtual control law 1 can be found
2 1 1 = 1
(67)
24
therefore we have to backstep by introducing a new output variable ( 2 ) which is actually a change of variables, i.e. 2 = 2 1
2 = 1 1 = 1 < 0 1 0 1
(68)
2 + 1 2 = 2 + 1
(69)
From Eq. (69), we can find 2 with respect to output 2 in the following way: Using transformation Eq. (71), we transform subsystem 1 into the form; 1 = 1 + 2
2 1 2 = 2 1
2 + 2 )(21 + ) 2 = 3 + (1
(70)
(71)
(72) (73)
Step2:
2 = 3 + (2 1 )(21 + )
to zero (i.e. 2 = 1 ). To achieve this Eq. (73) will be rewritten by seeing 3 as a control input in the following way: 2 = 2 + (2 1 )(21 + ) 25 (74)
Now, it is clear that in order to stabilize the system (Eq. (72)), 2 should equal
Backstepping Control Design Lab 2012-2013 Where 2 : is another virtual controller to stabilize the system [Eq. (72) and (73)]. Thus we rewrite Eq. (74) as: 2 = 2 + 1 (1 , 2 ) (75)
3 2 Where 1 (1 , 2 ) = (2 1 )(21 + ) = 21 2 + 21 + 2 + 1
The next step is to write the total Lyapunov function for step as follows:
2 2 2 2 = 1 + 2 = 1 + 2 2 2 2 1 1 1
(76)
is Accordingly 2
2 2 = 1 + 2 2 + 1 + 1 (1 , 2 ) 1 2
= 1 (2 1 ) + 2 2 + 1 (1 , 2 ) 2 (77)
= 1 1 + 2 2 2
(78)
be found as;
to the system with 1 as a design parameter. The second virtual control law 2 can 2 = 1 1 (1 , 2 ) 1 2 2 = 2 (1 , 2 )
(79)
2 3 21 ( + 1 )2 21 2 Where 2 (1 , 2 ) = (1 + 1 )1 ( + 1 )1
26
Backstepping Control Design Lab 2012-2013 By substituting Eq. (79) into Eq. (75), we get; 2 = 1 1 2 (80)
The above system will decay exponentially asymptotically to the origin when
2 (2 = 1 = 1 1 ).
Step3:
Now we consider subsystem 2 (Eq. (24) and (25), in order to achieve the introducing a new output variable 3 , which represent a change of variables as follows; 3 = 3 2 above control objectives 3 should act like 2 . Thus again we have to backstep by
We need to find 3 with respect to 3 using Eq. (81) as follows: Differentiating Eq. (81) with respect to time we got; 3 = 3
2 ( 1 , 2 )
3 = 3 2 ( 1 , 2 )
(81)
3 = 3 + 2 (1 , 2 )
(83)
2 ( 1 , 2 )
2 (1 , 2 ) 2 1 2 2 = . + . 1 2
27
The subsystem 2 will be transformed using Eq. (81), yields 2 = 3 + 2 (1 , 2 ) 3 = 3 (1 , 2 ) (85) (86)
[( + 1 ) + 2 1 ]3
(84)
2 ) [( + 1 ) + 21 ]3 + 2 (1 , 2 )
(87)
= 2 + 3 3 3 (88)
2 3
2 2 = 1 3 (1 , 2 ) 3 1 2 + 3
to the system with 2 as a design parameter. The final control law can be found as; = 2 3 + 3 ( 1 , 2 ) 28 (90)
3 (1 , 2 ) = 2 3 , 2 > 0
(89)
Backstepping Control Design Lab 2012-2013 Eventually by substituting the Eq. (90) back into Eq. (86) we found; 3 = 2 3 (91)
= 5, 1 = 2 = 2
29
0.15
0.1
State x1
0.05
-0.05
4 Time (sec)
10
Figure (11): State 1 Time History For both Standard and Non-Standard Backstepping Design.
0.25 0.2 0.15 0.1 Non-Standard Backstepping Standard Backstepping
State x2
4 Time (sec)
10
Figure (12): State 2 Time History For both Standard and Non-Standard Backstepping Design.
30
State x3
4 Time (sec)
10
Figure (13): State 3 Time History For both Standard and Non-Standard Backstepping Design.
2 0 -2
Control Action u
Figure (14): Control Action Time History For both Standard and Non-Standard Backstepping Design.
31
v1 Virtual Control-Non-Standard Backstepping x2 State-Non-Standard Backstepping v1 Virtual Control-Standard Backstepping x2 State-Standard Backstepping 0 2 4 Time (sec) 6 8 10
Figure (15): Virtual Control Action 1 versus 2 state Time History for both Standard and Non-Standard Backstepping Design.
0.5 0 -0.5 -1 -1.5 -2 -2.5 -3 0
v2 Virtual Control-Non-Standard Backstepping x3 State-Non-Standard Backstepping v2 Virtual Control-Standard Backstepping x3 State-Standard Backstepping 2 4 Time (sec) 6 8 10
Figure (16): Virtual Control Action 2 versus 3 state Time History for both Standard and Non-Standard Backstepping Design.
32
0.8
z2 Output Variable
0.6
0.4
0.2
0 0 2 4 Time (sec) 6 8 10
Figure (17): Output Function 2 Time History For both Standard and Non-Standard Backstepping Design.
4 3.5 3 Non-Standard Backstepping Standard Backstepping
z3 Output Variable
Figure (18): Output Function 3 Time History For both Standard and Non-Standard Backstepping Design.
33
The model dynamics for the cylinder can be described, via Newton's Law, by the following equation = (92)
Where;
represent the displacement of the actuator, = 1 2 is the load pressure of the cylinder, 34 is the mass of the load,
Backstepping Control Design Lab 2012-2013 1 and 2 are the pressure of the actuator of chamber 1 and chamber 2 respectively, is the ram area of the cylinder, represents the viscous damping coefficient, The load pressure of the cylinder can be represented with the following equation:
4
Where;
= +
(93)
is the total volume of the cylinder and the hoses between the cylinder and the servo valve, is the effective bulk modulus,
is the coefficient of the total internal leakage of the cylinder due to pressure, is related to the spool valve displacement of the servo valve, as in equation =
( ( ) )
(94)
Where;
is the spool valve displacement of the servo valve, as in the following equation: = +
(94)
Where the spool valve displacement is related to the current input , and are the time constant and gain of the servo-valve respectively. Here we omit the spool dynamics, as described in Eq. (94), and consider only that the spool follows the command signal ; namely By defining 1 = , = 2 =
(95)
becomes:
where is the desired actuator displacement, the mathematical model in Eq. (92) 1 = 2
and
3 = ,
where 1 = 2 =
3 = 2 2 + 3 3 + , 2 = , 3 = ,
2 = 1 1 + 2 2 + 3 3
(96)
4 4 , 3 = 36
The system parameters value is given in the following table: Table (1): The actuator parameters
The parameter b Vt Ctm K Cd w/ m kv Ps Description Viscous damping coefficient. Ram area of the cylinder. between the cylinder and the servo valve. Coefficient of the total internal leakage of the (15/(103)5) m5/Ns cylinder due to pressure. Effective bulk modulus of spring. Effective bulk modulus. valve area gradient and is the fluid density. Supply pressure of the fluid. Gain of the servo-valve. 70*103 N/m (700*(103)^2) N/m2 The value (SI units) 19.84*103 m/s (5550/1000000) m2
(97)
Student Task: our task here is to design a controller based on the Backstepping control method for the Electro-Hydraulic Actuator system as modeled above with a desired displacement = 2 . 37
6. References:
We recommend to our students the following references for further reading; [1] H. K. Khalil, Nonlinear Systems, 3rd Edition, Prentise Hall, USA, 2002. [2] R. Sepulchre, M. Jankovic, and P.V. Kokotovic, Constructive Nonlinear Control, 1st Edition, Springer, USA, 1997.
38