Commande non-linéaire Notes de Hannah Michalska, McGill University

Preview:

Citation preview

Commande non-linéaire

Notes de Hannah Michalska, McGill University

Contrôle par mode de glissement (sliding mode control)

Soit un système non-linéaire

Problème (T): Construire u(x) tel que:

Suivi de trajectoire…

2

( ) ( ) , ,n nx f x bu u x

( 1) ( 1), , , , , ,T Tn n

d d d dx x x x x x x x

Idée principale

Définissons Erreur de suivi de trajectoire.

Il existe un temps t1 tel que (i=1,2,…,n-2)

…et

Ce qui implique:

3

de x x

( )1( ) 0ie t

1( ), 0

ns e s

1( ) 0,e t t t

Idée principale

Pour un système du 2e ordre:

Pour un système du 3e ordre:

Ces équations différentielles sont stable pour

4

0e e

22 0e e e

0

Surface de glissement

La partie gauche des équations peut être vue comme l’équation d’un hyperplan de glissement S(t):

Cet hyperplan doit être un ensemble invariant. Une fois que l’on y est, on y reste !

5

( ) ( ) ( )S t e t e t

Problème (T) équivalent

Il faut construire la commande u(x) tel que: S(t) est atteint en un temps fini t1; S(t)=0, pout tout t≥t1.

Faits:

6

Fait #1

Si t1 est tel que: S(t1)=0 et S(t)=0 pour tout t≥t1;

Alors, e(t)0 exponentiellement pendant que t∞.

7

( ) ( ) ( )

( ) 0 ( ) ( )

S t e t e t

S t e t e t t

( ) (0) 0t

te t e e

Fait #2

Si |S(t)|≤δ pout tout t≥t0… Cela implique que

8

( )

1

( ) 2ii

n

e t t

0,1, , 1i n

Solution au problème (T)

Choisir u(x) tel que

Pour tout t≥0 pour un η donné.

Distance au plan de glissement décroissant sur toutes les trajectoires du système.

9

21( ) ( )

2

dS t S t

dt

Phase d’atteinte

Ça marche car 1) si S(0)>0, alors

10

21( ) ( )

2

( ) ( ) ( )

( )

( ) 0

dS t S t

dt

S t S t S t

S t

S t

Phase d’atteinte

Et le temps d’atteinte est

11

1 1

1

1

( )

( ) (0)

0 (0)

(0)

S t

S t S t

S t

t S

Phase d’atteinte

Ça marche car 2) si S(0)<0, alors

12

21( ) ( )

2

( ) ( ) ( )

( )

( ) 0

dS t S t

dt

S t S t S t

S t

S t

Phase d’atteinte

Et le temps d’atteinte est

13

1 1

1

1

( )

( ) (0)

0 (0)

(0)

S t

S t S t

S t

t S

Temps d’atteinte

Le temps d’atteinte de l’hyperplan de glissement est

14

(0)reacht S

Phase de glissement

Construction de la commande u(x) qui maintient le système sur l’hyperplan de glissement.

Requiert que

15

1( ) 0,S t t t

Exemple

Soit le système suivant:

Plan de glissement, on choisi:

Phase de glissement exige:

16

, , , ...d d dx f u x x x est donné

S e e

1( ) 0,S t t t

Exemple

Ce qui peut s’écrire:

Le contrôle équivalent est donc:

17

10,S e e t t

10,x

d df u x x x t t

( )d du f x x x

Exemple

Ce contrôle permet de maintenir le système sur l’hyperplan de glissement. Car on désire que S(t) soit un ensemble

invariant.

18

Exemple

Reste à voir la phase d’atteinte du plan de glissement. Cela requiert que:

19

21,

2,

de e e e t

dte e e e e e t

sign ,e e e e t

Exemple

Que l’on peut écrire:

La commande u est alors:

20

sign ( )

sign ,d d

S t

u f x x x e e t

sign ,d df u x x x e e t

Contrôle équivalent (phase de glissement)

Exemple

Que se passe-t-il si f n’est pas connu de façon exacte ? Supposons que seul un estimé est

connu, et tel que:

Contrôle basé sur le modèle:

21

ˆˆ sign ( ) ,d du f x x x S t t

ˆ ( , ), ,f f F x x x x

f

Exemple

Il faut choisir un η en fonction de tel que fonctionnera avec le système réel.

22

21

2

ˆ

ˆ sign

d d

d d

dS SS e e S

dt

x x x x S

f u x x x S

f f S S

u,x x

Exemple

Suite:

Si on choisi:

Alors:

23

21 ˆ sign2

ˆ ,

dS f f S S S

dt

f f S S t

( , ) ', ' 0F x x avec

2

0

1 ˆ ( , ) '2

'

dS f f S F x x S S

dt

S

Exemple #2

Système:

Contrôle équivalent:

Commande:

24

2 cos(3 )x x x u

2 cos(3 ) d du x x x x x

2 cos(3 ) sign( )d du x x x x x e e

RÉTROACTION LINÉARISANTE(LINEARIZING STATE FEEDBACK)

25

Rétroaction linéarisante

Principe (contrôle de niveau):

26

0( ) ( ) 2

hdA h dh u t a gh

dt

( ) ( ) 2A h h u t a gh

Système non-linéaire

Rétroaction linéarisante

Un choix possible de la commande u(t) est:

Ainsi:

27

( ) 2 ( ) ( )u t a gh A h v t

( )

( ) 2 ( ) ( ) 2 ( ) ( )u t

A h h a gh A h v t a gh A h v t

Nouveau contrôle

Rétroaction linéarisante

Que l’on peut simplifier à:

Si on choisi:

Alors:

28

( ) ( ) dv t h t h

( )h v t

Système linéaire

( ) dh h t h dh hs

Rétroaction linéarisante

Le système converge vers la valeur désirée de niveau.

Finalement, la commande est:

29

( ) 2 ( ) du t a gh A h h h

Système non-linéaire sous « forme compagnon »

Système non-linéaire avec contrôle scalaire:

Avec:

Et:

30

( ) ( ) ( )nx f x b x u

( 1)

1 2

Tn

T

n

x x x x

x x x

( ) 0, nb x x

Système non-linéaire sous « forme compagnon »

Représentation dans l’espace d’état:

31

1 2

2 3

1

( ) ( )n n

n

x x

x x

x x

x f x b x u

Système non-linéaire sous « forme compagnon »

Commande linéarisante:

32

1( )

( )u v f x

b x

Nouveau contrôle

Système non-linéaire sous « forme compagnon »

Système linéaire équivalent:

Qui donne:

33

1 1

2 2

0 1 0 0 0 0

0 0 1 0 0

0

0 0 0 0 0 0 1n n

x x

x xv

x x

( ) 1( ) ( ) ( ( ))

( )nx f x b x v f x v

b x

Système non-linéaire sous « forme compagnon »

Correspond à une chaine de n intégrateurs. Facile à contrôler. Soit:

Contrôleur v(t):

34

( ) ( ) ( ),de t x t x t t

( ) ( 1)1 2 3

n nd nv x K e K e K e K e

Système non-linéaire sous « forme compagnon »

Le système contrôlé est:

Que l’on peut réécrire:

Équivaut à:

35

( ) ( ) ( 1)1 2 3

n n nd nx x K e K e K e K e

( ) ( 1)1 2 3

n nne K e K e K e K e

12 1 0n n

ns K s K s K

Système non-linéaire sous « forme compagnon »

Il faut choisir les gains pour que les racines de:

… soient dans le demi plan gauche.

i.e. pour avoir un système stable.

36

12 1 0n n

ns K s K s K

Système non-linéaire sous « forme compagnon »

Donc la commande u(t) est:

37

( ) ( 1)1 2 3

1( )

( )n n

d nu x K e K e K e K e f xb x

Exemple

Soit ce système:

Définissons ces variables d’état:

Ce qui donne:

2 cos(3 )x x x u

1

2 1

x x

x x x

1 22

2 2 1cos(3 )

x x

x x x u

Exemple

Ce système non-linéaire est sous « forme compagnon ». Ainsi:

Et:

Avec:

22 1cos(3 )u v x x

1 2dv x K e K e

de x x

Exemple #2

Soit ce système:

La non-linéarité dans x1 ne peut être annulée par le choix de la commande u. Ce n’est pas la forme compagnon!

1 1 2 1

2 2 1 1

2 sin

cos( ) cos(2 )

x x ax x

x x x u x

Exemple #2

Il faut donc transformer le système pour avoir une forme compagnon.

Considérez ces nouvelles variables d’état:

1 1

2 2 1sin( )

z x

z ax x

Exemple #2

Notes: Transformation inverse:

1 1

2 2 1sin( )

x z

x z z a

1 2 1 2, (0,0) , (0,0)x x z z

Exemple #2

Transformons le système:

1 1 1 2 1 1 22 sin 2z x x ax x z z

2 2 1 1

2 1 1

1 1 2 1 1 1

1 1 1 1 1

cos( )

cos( ) cos(2 )

2 cos( ) cos( ) sin( )cos( )

2 cos( ) sin( )cos( ) cos(2 )

z ax x x

ax x au x

x x ax x x x

z z z z au z

Exemple #2

Il est maintenant sous sa forme compagnon:

Ainsi, on peut choisir:

1 1 2

2 1 1 1 1 1

2

2 cos( ) sin( ) cos( ) cos(2 )

z z z

z z z z z au z

1 1 1 11

12 cos( ) sin( )cos( )

cos(2 )u v z z z z

a z

Exemple #2

Avec cette commande, le système équivalent est:

Choisissons: Cela donne un système globalement

asymptotiquement stable…

1 1 2

2

2z z z

z v

22v z

Exemple #2

Pour le système réel:

Exige que cos(2x1) n’égale pas 0.

2 1 1 1 11

2 1 1 1 1 11

12 2 cos( ) sin( )cos( )

cos(2 )

12 2sin( ) 2 cos( ) sin( )cos( )

cos(2 )

u z z z z za z

ax x x x x xa x

Mais…

Ce n’est pas toujours aussi simple… Pour aider, cela prend des outils:

Qui exigent l’algèbre de Lie; Qui exigent des fonctions vectorielles

nommées en anglais « diffeomorphism ».

Linéarisation entrée-sortie

VTOL aircraft simplified model:

Petit couplage entre les deux commandes:

1 2

1 2

2

sin cos

cos sin 1

x u u

y u u

u

(0,1)

Recommended