Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Robust Control Design Via Feedback Linearization: Harry G. Kwatny

Download as pdf or txt
Download as pdf or txt
You are on page 1of 22

Robust Control Design via Feedback Linearization

Harry G. Kwatny
Department of Mechanical Engineering & Mechanics Drexel University

Outline

Perturbations of feedback linearizable systems Triangular forms Lyapunov Redesign

Setup

x = f ( x) + G ( x)u y = h( x ) x Rn , u Rm , y R p g m ( x)] , h( x) smooth

f ( x), G ( x) = [ g1 ( x)

z = Az + bv y = cz 0 1 0 0 A= 0 0 1 0 0 , b = , c = [1 0 1 0 0 1

0]

Perturbations of SISO Feedback Linearizable Systems


x = f ( x) + ( x) + [ g ( x) + ( x) ] u y = h( x )
Assumption: the nominal system is feedback linearizable. What happens when the nominal system transformation is applied to the actual system?

Matched Uncertainty, etc.


Gi = span { g , , ad if g} , 0 i n 1
Definition: Suppose the system is of relative degree r. We say that the perturbation satisfies: The triangularity condition if

adGi Gi +1 , 0 i r 3
ad Gi Gi +1 , 0 i r 2

The strict triangularity condition if The extended matching condition if The matching condition if

G1

G0

Triangular Forms (r = n)
triangularity zi = zi +1 + i ( z1 , , zi +1 ) , 1 i n 1 zn = ( x ( z ) ) + n ( z1 , , zn ) + ( x ( z ) ) u strict triangularity zi = zi +1 + i ( z1 , , zi ) , 1 i n 1 zn = ( x ( z ) ) + n ( z1 , , zn ) + ( x ( z ) ) u extended matching zi = zi +1 , 1 i n 2 zn 1 = n 1 ( z1 , , zn ) zn = ( x ( z ) ) + n ( z1 , , zn ) + ( x ( z ) ) u matching zi = zi +1 , 1 i n 1 most restrictive zn = ( x ( z ) ) + n ( z1 , , zn ) + ( x ( z ) ) u least restrictive

Example
0 x2 0 x x x ( x , x ) 0 1 1 2 3 1 2 + + x= u 0 0 x4 x1 x3 x4 / 2 2 ( x3 , x4 ) 1
f

0 0 0 0 0 0 0 0 0 1 0 0 G0 = , G1 = , , G2 = , , 0 1 0 0 1 0 1 0 1 0 0 1

Example Contd
0 0 0 0 0 0 , ad G0 = , ad G1 = , 0 0 0 x x x 2 4 2 4 2 3 0 0 0 1 x2 0 0 ad G2 = , , 0 0 0 0 2 x4 2 x3 strict triangularity

Example Contd
z1 = x1 z2 = x2 z3 = x1 x2 + x3 z4 = x1 x3 + x4 x1 = z1 x2 = z2 x3 = z1 + z2 + z3 x4 = z2 + z3 + z4

z2 0 z z , z ( ) 0 3 1 1 2 z= u + 0 z4 + 1 ( z1 , z2 ) 1 z z z z z z z z z + + + + 3 5 3 2 , 2 3 4 2( 1 2 3 2 3 4 ) ) 2 ( 1

Lyapunov Redesign Process


Begin with an exactly feedback linearizable nominal system with matched uncertainty Apply the nominal control u*(z) to actual system and test stability using a Lyapunov function Add a new component to nominal control, u(z) = u*(z) + (z)-1(z) to enhance stability Choose (z) via Lyapunov design

Problem Setup

A state linearizable system with matched uncertainty is transformable to:

(*)

z = Az + E [ ( z ) + ( z, u, t ) + ( z )u ]

Choose a control based on nominal system:

u * (t ) = 1 ( z ) ( ( z ) + Kz ) , with ( A + EK ) stable

Nominal Closed Loop System


(**)
z = ( A + EK ) z
function
2

( A + EK ) stable Lyapunov
T

V ( z ) = z T Pz , V ( z ) = z T Qz z

P ( A + EK ) + ( A + EK ) P = Q I , Q = QT > 0
along trajectories of (**)

Actual Closed Loop System


Apply u* to actual system (*). Try V(z)


V ( z ) = z Qz z + 2 z T PE
T 2

Assume

< z , 0
2 2

V ( min ( Q ) + 1) z + 2 PE z stability if < ( min ( Q ) + 1) / 2 PE

This implies some inherent robustness

Redesign (we can do more) ~ 1


u = u * + 1

Assume the uncertainty satisfies:


(0,0, t ) = 0, t ( z, u* + 1 , t ) ( z ) z + k , 0 k < 1, smooth

The actual closed loop dynamics are:


z = ( A + EK ) z + E + ( z , u * + 1 , t )

The time derivative of V along trajectories is 2 T V = z Qz z + 2 z T PE ( + )

Redesign ~ 2

Set w := z PE and try to achieve z + wT ( + ) 0 Notice that


T T
2

wT + wT wT + w wT + w ( z ) z + k For a smooth control set := w , ( z ) > 0


z + w + w w (1 k ) + w ( z ) z z
2 T T 2 2

=
z +w +w
2 T T 1 4 2

1 2 4 (1 k )
2 2 1 2

w + w z z = ( w z

Redesign ~ 3

1 2 will do So any > 4 (1 k )

In particular
2 ( z) T = E Pz , 0 + > 0 0 4 1 k ( )

Redesign ~ 4

There are other possibilities, recall


V = z Qz z + wT ( + )
T 2

And
wT + wT wT + w ( z ) z + k

So choose
= ( z) w
1 k w , ( z) > ( z) z

Example
x2 x1 0 3 + au u x + 1 x = 0.2 x + x 3 / 2 + 1 2 2 1 [ 0,1] , a [ 0.1, 0.1]

= 0.1x2 + x1 + x13 / 2, = 1
x1 u = + [ 1 2] = 2 x1 1.9 x2 x13 / 2 x2
* 1 3 x 3 1 = x1 + a 2 x1 1.9 x1 + a 2 2 = 0.0761 + 1.1025 x14 , k = a

x13 u = u + = 5.02114 x1 0.30625 x15 4.92114 x2 0.30625x14 x2 2


*

Example ~ Results
x1 1.4 1.2 1 0.8 0.6 0.4 0.2 2 4 6 8 x1 1.4 1.2 1 0.8 0.6 0.4 0.2 t 10

= 1, a = 0.1

x1 14 12 10 8 6 4

10

0.2 0.4 0.6 0.8

1.2 1.4

nom system/nom control


x2 2 -0.2 -0.4 -0.6 -0.8 4 6

actual system/robust control actual system/nom control


2 4 6 8 10 t x2 140 120 100 80 60 40 20 0.2 0.4 0.6 0.8 1 1.2 1.4 t

x2 t 10 8 -0.05 -0.1 -0.15 -0.2 -0.25 -0.3

Setup for Backstepping


SISO system r=n strict triangularity assumption

xi = xi +1 + i ( x1 , , xi , t ) , 1 i n 1 xn = ( x ) + ( x ) u + n ( x, t )

det ( 0 ) 0 ( 0, t ) = 0, i ( X i , t ) i ( X i ) X i , i 0 X i = { x1 xi }

Step 1
x1 = v1 + 1 ( x1 , t ) y1 = x1 y1 = v1 + 1 ( y1 , t ) := f1 ( y1 )
2 V1 := 1 y 2 1

L f1V1 = y1 ( v1 + 1 ( y1 , t ) ) choose : v1 = k1 y1 1 ( y1 ) y1 L f1V1 = k1 y12 1 ( y1 ) y12 + y11


2 take : 1 ( y1 ) > 1 4 1 ( x1 ) , x1 0

L f1V1 = ( k1 1) y12

Step 2

x1 = x2 + 1 ( x1 , t ) x2 = v2 + 2 ( x1 , x2 , t ) y2 = x2 v1 ( x1 )

( x1 , x2 )

( y1 , y2 )
:= f1 ( y1 , y2 )

y1 = v1 ( y1 ) + y2 + 1 ( y1 , t ) y2 = v2 + 2 ( y1 , y2 , t )

choose : v2 = y1 k2 y2 2 ( y1 , y2 ) y2
2 2 2 y , y L V k 2 y k 1 y 2 ( y1 , y2 ) > 1 ( ) ( ) ( ) f 2 2 1 2 1 1 2 2 4
2

2 y define : V2 = V1 + 1 2 2

You might also like