Vous êtes sur la page 1sur 30

Performantele in reglare sunt legate de stabilitate

Daca in cadrul sistemelor liniare metodele de apreciere ale comportarii sistemelor (analiza stabilitatii) sunt destul de clare, in cazul sistemelor neliniare uneori este foarte dificil a aprecia aceasta. Metoda Lyapunov permite aprecierea stabilitatii unui sistem neliniar, utilizand sistemul liniarizat.
1

Exemplu apreciere stabilitate pentru un sistem neliniar


Fie sistemul dx/dt = f(x), f(0)=0. Pentru sisteme liniare
f1 ( x1 , x2 ,..., xn ) f ( x) = ... f n ( x1 , x2 ,..., xn ) nn

Cu fi(x) fiind combinatii liniare de x1,x2,,xn. Daca o singura functie fi(x) este neliniara atunci sistemul este neliniar. Liniarizam sistemul in vecinatatea starii de echilibru xe.
f ( x e + x ) = f ( x e ) + f x x + ...termeni neglijati
2

x=xe

Conducerea sistemelor electromecanice ELM8

Exemplu apreciere stabilitate pentru un sistem neliniar


Dar f(xe)=0 deoarece xe este solutie a f(x)=0, fiind un punct de echilibru. x ( t ) = x + x ( t ) de unde

e

& & x ( t ) = x ( t )

& x ( t ) = f ( x e + x )
f1 x 1 K = K f n x1

Atunci

& x =

f x

x=xe

f x

x=xe

Amintiti-va dx/dt=A*x de la sisteme liniare

f1 x 2 K K K

f1 x n K K = J( x e ) K K f n K x n x = x K
e

J(xe) matrice Jacobian a functiei f(x)


3

Exemplu apreciere stabilitate pentru un sistem neliniar


Conditia ca sistemul sa fie stabil in jurul punctului de echilibru este ca ecuatia caracteristica

det (s I J ( x e ) ) = 0
sa aiba radacini strict in semiplanul stang (radacini cu partea reala negativa)
Exp. Pentru sistem neliniar
4

Analiza stabilitatii pe baza proprietatilor functiilor Lyapunov


Fie sistemul:
& x 1 = f1 ( x 1 , x 2 ) x = ( x1 , x 2 ) & x 2 = f 2 ( x1 , x 2 )

caruia i se asociaza o functie Lyapunov, astfel incat:


V ( x1 , x 2 ) > 0 pentru x 0, & V ( x1 , x 2 ) < 0 & si V(0,0) = 0, V(0,0) = 0
Algoritmi de conducere a robotilor 5

Analiaza stabilitatii pe baza proprietatilor functiilor Lyapunov


Atunci Z(x1, x2)= V(x1, x2) cu x1=x1(t) si x2=x2(t) sunt ecuatii parametrice ale traiectoriilor de stare si admit un minim x1=x2=0 (deoarece dV(0,0)/dt=0) C3 C2 C1 x1 x2 V(x1,x2)
grad(V(x1,x2))

x2

Traiectorie

dx/dt

x1

C1,C2, C3 curbe de nivel constant


Algoritmi de conducere a robotilor 6

Analiaza stabilitatii pe baza proprietatilor functiilor Lyapunov


Fie un punct P de intersectie intre curba de nivel constant a V(x1,x2) si traiectoria de stare . Derivata:
T & & V( x1 , x 2 ) = [V( x1 , x 2 )] x = 2 2

V V + x1 2 + x 2 2 cos( ) & & = x x 1 2

Unde unghiul este unghiul intre gradientul lui V, normal la curba de nivel constant in punctul P si vectorul viteza dx/dt al punctului de stare P (pe tangenta la traiectoria de stare) de pe traiectoria
Algoritmi de conducere a robotilor 7

Analiaza stabilitatii pe baza proprietatilor functiilor Lyapunov


Pentru ca dV(x1,x2)/dt<0 trebuie ca unghiul sa apartina (/2, 3 /2), si deci vectorul dx/dt este permanent orientat catre interiorul oricarei curbe de nivel constant. Acest fapt implica evolutia starii x catre punctul de echilibru (0,0) atunci cnd t. Deci, originea x=(0,0) este punct de echilibru asimptotic stabil.

Algoritmi de conducere a robotilor

Analiaza stabilitatii pe baza proprietatilor functiilor Lyapunov


Pentru < /2 evolutia starii catre origine nu mai este posibila, deci sistemul este instabil. Daca V(x) este negativ semidefinita, la intersectia unei curbe de nivel constant este posibila realizarea unui unghi = /2 astfel incat sistemul ar putea evolua chiar pe curba de nivel constant. In acest caz sistemul nu poate evolua catre starea de echilibru din origine, dar ramane intr-o vecinatate a originii => se obtine o stabilitate simpla.

Algoritmi de conducere a robotilor

Comanda robotilor mobili bazata pe model cartezian


Robot referinta

Traiectorie dorita

Robot real

2b

r r r MM r = xe i1 + ye j1
xe = x x r ye = y y r = r e

In sistemul fixat pe robotul real, pentru care sunt figurati versorii axelor Ox si Oy, i , respectiv j, vectorul eroare de pozitie este:

Algoritmi de conducere a robotilor

10

Comanda robotilor mobili bazata pe model cartezian


Derivata acestui vector in raport cu timpul este:
r r r r r d ( MM r ) & & & & = xe i1 + ye j1 ye i1 + xe j1 dt
Si mai putem explicita relatiile:

r r r d ( MM r ) d (OM r ) d (OM ) = dt dt dt
Algoritmi de conducere a robotilor 11

Comanda robotilor mobili bazata pe model cartezian


Unde:
r r r d ( OM r ) = vr cos( e ) i1 vr sin( e ) j1 dt
Si:
r r = 0 relativ la sistemul { i1 , j1} deci r = e

r d ( OM ) dt

r = v i1
12

Algoritmi de conducere a robotilor

Comanda robotilor mobili bazata pe model cartezian


Pe baza relatiilor anterioare se formeaza sistemul:

& & x e = v r cos e + y e v & & y e = v r sin e x e


Unde, introducand schimbarea de variabila (pentru a lucra doar cu variabile tip eroare, valori cunoscute la robotul referinta si intrari de comanda): u1 = v v r & & u 2 = r
Algoritmi de conducere a robotilor 13

Comanda robotilor mobili bazata pe model cartezian


Sistemul n spaiul strilor (erori de urmrire) devine:

& x e = u 1 + y e u 2 + y e r + v r ( cos e 1) & & & y e = x e u 2 v r sin e x e r & e = u 2


Reactia dupa stare, aplicata robotului real va fi in functie de variabilele masurate x, y, si variabilele descriind traiectoria de referinta xr, yr, r.
Algoritmi de conducere a robotilor 14

Comanda robotilor mobili bazata pe model cartezian


Relatia intre aceste variabile, fata de sistemul de baza {io, jo}, este:

xe cos( ) sin( ) 0 xr x y = sin( ) cos( ) 0 y y e r e 0 0 1 r

Algoritmi de conducere a robotilor

15

Comanda robotilor mobili bazata pe model cartezian


Modelul linearizat al sistemului (e 0 => cos(e)=1, sin(e)= e, ye*u2 0, xe*u2 0, comenzi f. mici), n jurul unei configuraii de echilibru Xe=[0 0 0]T, u1=0, u2=0 () este dat de:

& X e = A( t )X e + BU
& 0 - 1 0 r (t ) 0 u1 & v r ( t ); B = 0 0; U = 0 A( t ) = r ( t ) u 2 0 0 1 0 0
Algoritmi de conducere a robotilor 16

Comanda robotilor mobili bazata pe model cartezian


Sistemul este comandabil dac vr i r nu sunt nule n acelai timp. Daca s-ar intampla ca:

& r ( t ) = 0 si vr ( t ) = 0

& xe = u1 & ye = 0 = +u & 2 e

sistemul nu ar fi controlabil deoarece Ye nu poate fi controlata. Algoritmi de conducere a robotilor

17

Comanda robotilor mobili bazata pe model cartezian


Alegnd o reacie dup stare de forma : u1 = k1*xe u2 = - k2*e sistemul n bucl nchis se poate modifica

& X e = A r ( t )X e

& k1 r (t) 0 & 0 A r ( t ) = r ( t ) v r ( t ); k1 > 0; k 2 > 0 0 0 k2


Algoritmi de conducere a robotilor 18

Comanda robotilor mobili bazata pe model cartezian


Stabilitatea sistemului in bucla inchisa se analizeaza pe baza locului radacinilor ecuatiei caracteristice:

det (sI Ar ) = 0
Cu radacinile:

s1 = k 2 ; s 2 ,3

& k1 k12 4 r2 ( t ) = 2
19

Algoritmi de conducere a robotilor

Comanda robotilor mobili bazata pe model cartezian


Pentru ca sistemul in bucla inchisa sa fie stabil, trebuie ca partea reala a radacinilor sa fie negativa, deci k1 > 0 si k2 >0 Mai mult, daca d(r)/dt=0 rezulta s3=0 si deci trebuie impusa si conditia ca d(r)/dt diferit de 0.
Pe baza consideratiilor de mai sus, cu legile de control propuse, va rezulta ca punctul de echilibru Xe=[0 0 0] al sistemului in bucla inchisa este asimptotic stabil.
Algoritmi de conducere a robotilor 20

Stabilizarea prin lege de comanda neliniara


Sistemul descris in spaiul strilor (erori de urmrire):

& x e = u 1 + y e u 2 + y e r + v r ( cos e 1) & & & y e = x e u 2 v r sin e x e r & e = u 2 u1 = f 1 ( xe , ye ,r ) Se urmareste gasirea unei comenzi (u1, u2) care stabilizeaza u 2 = f 2 ( xe , ye ,r )
sistemul in jurul Xe=[0 0 0].
Algoritmi de conducere a robotilor 21

Stabilizarea prin lege de comanda neliniara


Considernd funcia candidat Lyapunov:

k3 2 k3 2 1 2 V( X e ) = xe + ye + e 2 2 2
Daca k3>0 atunci se observa ca V(Xe)>0 pentru orice xe, ye, e. Daca reusim sa impunem ca d(V(Xe))/dt <0 pentru orice xe, ye, e, atunci sistemul va fi stabil.
Algoritmi de conducere a robotilor 22

Stabilizarea prin lege de comanda neliniara


Daca derivam V(Xe), si tinem cont de forma sistemului, rezulta:
d ( V ( Xe )) = k 3 xe u1 + e u 2 + k 3 xe vr (cos( e ) 1 ) k 3 ye vr sin( e ) dt

Problema: Cum alegem u1 si u2 astfel incat d(V(Xe))/dt <0 pentru orice xe, ye, e ?
Algoritmi de conducere a robotilor 23

Stabilizarea prin lege de comanda neliniara


Alegem:
u 1 = k 1x e + v r ( cos e 1) sin e u 2 = k 2 e + k 3 v r y e e

Cu: k1 > 0, k2 > 0, k3 > 0 ;

Algoritmi de conducere a robotilor

24

Stabilizarea prin lege de comanda neliniara


Rezulta:
& V( X e ) = k 1 k 3 x 2 k 2 2 e e

Dac xe0 i e0 atunci d(V(Xe))/dt<0 ; Macar una dintre valorile xe sau e trebuie sa fie diferita de zero.

Algoritmi de conducere a robotilor

25

Stabilizarea prin lege de comanda neliniara


Pentru t atunci d(V(Xe))/dt 0 iar V(Xe) descreste catre o limita pozitiva sau nula. Cum xe si e sunt marginite iar xe si e converg catre zero atunci si ye 0 cand t .
Algoritmi de conducere a robotilor 26

S-au considerat valorile:


k 1 =5, k 2 =2, k 3 =5, xe init.=1m, ye init.= -2m,

Stabilizarea prin lege de comanda neliniara

e init.=/2.
Algoritmi de conducere a robotilor 27

S-au considerat valorile:


k 1 =5, k 2 =2, k 3 =5, xe init.=1m, ye init.= -2m,

Stabilizarea prin lege de comanda neliniara

e init.=/2.
Algoritmi de conducere a robotilor 28

Stabilizarea prin lege de comanda neliniara Pentru acest tip de comand se observ o convergen destul de bun, iar legea de comand se obine destul de simplu. Totui, cea mai bun lege de comand trebuie obinut prin jocul coeficienilor k1, k2, k3 i nu exist o modalitate optim de obinere a acestora.
Algoritmi de conducere a robotilor 29

Stabilizarea prin lege de comanda neliniara n consecin, se poate aprecia c modelul cinematic de urmrire a unei traiectorii (cazul vr0), prezint termeni suplimentari ai derivatelor devenind comandabil prin reacie dup stare continu i autonom. Dar n cazul unei probleme de stabilizare ntr-o configuraie de echilibru dorit, apare necesitatea unor noi tehnici de control.
Algoritmi de conducere a robotilor 30

Vous aimerez peut-être aussi