Regulatoare Automate - Curs 6 - Ing Electrica

download Regulatoare Automate - Curs 6 - Ing Electrica

of 10

description

Regulatoare Automate - Curs 6

Transcript of Regulatoare Automate - Curs 6 - Ing Electrica

  • Regulatoare Automate

    3.Stabilizarea sistemelor utiliznd o lege de comand dup stare

    Scop:

    Stabilizarea sistemelor, printr-o lege de comand dup stare;

    Controlabilitate i alocabilitate

    Algoritmului Ackermann pentru calculul unei legi de comand dup stare;

  • Regulatoare Automate

    O lege de comand dup stare este o relaie de forma:

    3.1. Legea de comand dup stare

    xKu = mRu - comanda sistemuluinRx - starea sistemuluimxnRK - calcul K determina o lege de comand

    ( )

    xCyuKBAx

    ==&

    Evoluia strilorsistemului rezultant: ( ) ( )( )

    =

    Zt xKBA

    Rt xetx

    t

    tKBA

    0

    000 )( == ttxx

    starea iniial

    - matricea mrimilor de starea sistemului rezultant

    BKAA =1Scopul unei legi de comand dup stare este de-a impune care s fie valorile proprii ale sistemului rezultant

  • Regulatoare Automate

    Caz particular: Sisteme cu o singur mrime de comand xku T = nRk 1

    [ ]

    =

    n

    n

    x

    x

    x

    kkkuM

    L 21

    21

    ( )nn xkxkxku +++= L2211

    u y ( )CB,A,

    nK

    1K

    2K

    _ _

    ...M

    1x 2x nx_

    RuLegea de comand dup stare pentru cazul m=1,

    ( ) =

    =xcy

    xkbAxT

    T&Sistemul rezultant :

    Prin aplicarea unei legi de comand dup stare se poate obine:- stabilizarea sistemelor (dac erau iniial instabile) - mbuntirea performanelor

  • Regulatoare Automate

    3.2 Controlabilitate. Alocabilitate

    Def. :Un sistem este controlabil dac pentru orice stare x1 dat, exist o comand u(t) care conduce la o evolutie a strii de la valoarea iniial la valoarea x(t)=x100 )( == ttxx

    Testatea controlabilitrii unui sistem:

    matricea de controlabilitate [ ] )(12 mnnn xRBABABABR + = L dac nRrang =)(

    n -dimensiunea sistemuluisistemul este controlabil

    Caz particular: Sistem cu o singur mrime de comand, m=1

    [ ] nnn xRbAbAbAbR = 12 L matrice ptraticNot: n Matlab, matricea de controlabilitate se obine cu funcia ctrb i rangul unei matrici cu funcia rank

    Exemplu:>>A=[0 1 0;0 0 1;2 1 2];>>b=[0;0;1];>>R=ctrb(A,b)R =

    0 0 10 1 21 2 5

    >> rank(R)ans =

    3 Dac un sistem este controlabil, atunci el este i alocabil.

    Pentru orice mulime de valori proprii dorite:

    se poate determina o lege de comand dup stare

    { }n= ...,,, 21( ) = BKA

    xKu =Spectrul matricei sistemului rezultant, adic mulimea valorilor ei proprii.

  • Regulatoare Automate

    3.3 Algoritmul AckemannSisteme cu o singur mrime de comand

    Date de intrare:1, nxnxn RbRA } ..., , ,{ n21 =

    Legea de comand dup stare se obine cu relaia

    ( ) )...( 0111 ++++== AAAqAqk nnnTdTT011 ,,..., n - coeficienii polinomului caracteristic dorit pentru sistemul rezultant

    Polinomul coracteristic dorit se obine cu relaia:( ) ( ) ( ) ( ) 011121 ... ++++== nnnnd L

    =

    1...00

    qRT [ ] 11...00 = RqT[ ] nnn xRbAbAbAbR = 12 L

    Tq soluia ecuaiei:

    - matricea de controlabilitate

  • Regulatoare Automate

    Din punct de vedere practic

    - Se obine polinomului caracteristic dorit pentru sistemul rezultant ( )d- Se rezolv sistemul de ecuaii:

    =

    1

    00

    MqRT [ ]nT qqqq L21=

    nRrang =)(- Se calculeaz prin nmuliri succesive produsele [ ]

    [ ][ ][ ]

    [ ] 1

    ..............................

    ...

    11

    22

    1

    021

    ==

    ===

    nTn

    nT

    T

    Tn

    T

    Aq

    Aq

    Aq

    Aq

    qqqq

    - Se obine nTkTn

    kk

    T AqAqk += =

    11

    1

    Obs: Sistemul are o soluie unic numai dac matricea R este inversabil

  • Regulatoare Automate

    Not: n cazul cnd perechea (A, b) a sistemului comandat este n form standard controlabil, prin aplicarea unei legi de comand dup stare matricea

    [ ] k...kk - A 1-n10n

    =

    1

    00

    10

    010

    110

    1 MKOOOM

    10

    010

    10

    010

    '1

    '1

    '0111100

    1

    =

    =

    nnn kkk

    A

    KOOOM

    KOOOM

    polinomul cararacteristic dorit( ) '0'11' 1 ... ++++= nnndDeterminarea [ ] [ ]101 1'0 ...... = nnTk

    1,...,0,' = nii - coeficienii polinomului caracteristic dorit1,...,0, = nii - coeficienii polinomului caracteristic al sistemului controlat

    Not: n Matlab, calculul unei legi de comand dup stare se poate face cu funcia acker care aplic algoritmul Ackermann.

  • Regulatoare Automate

    Sisteme cu mai multe mrimi de comand

    Cazul sistemelor cu m mrimi de comand

    - Se aleg aleator mxnRK 0mRg

    Se poate demonstra c dac perechea (A,B) este controlabili perechea este controlabil),( 0 BgBKA

    - Se calculeaz Tk

    ))(()( 011TT gkKBAkbA += TgkKK += 0

    mxnRK

    = )( 11 TkbA

    01 BKAA = Bgb =1

  • Regulatoare Automate

    ExempleS se calculeze o lege de comand dup stare care plaseaz valorile proprii ale sistemului

    [ ]010100

    ,212100010

    =

    =

    = TcbA { }1 ,1 ,1 =

    Polinomul caracteristic dorit

    ( ) ( )( )( ) ( ) 1331111 233 +++=+=+++= dPerechea (A,b) este n form standard controlabil

    [ ] [ ] [ ]543212331 ==Tk

  • Regulatoare Automate

    S se calculeze o lege de coamnd dup stare care plaseaz valorile proprii ale sistemului discretizat

    ]100[,010

    ,101001010

    =

    =

    = ddd cbA { }0 ,0 ,0=

    Soluia 1. Polinomul caracteristic dorit ( ) 3=dMatricea de controlabilitate [ ]

    ==

    100101010

    2ddddd bAbAbR

    Se rezolv ecuaia:

    =

    100

    qRT

    =

    100

    101001010

    3

    2

    1

    qqq

    100

    3

    2

    1

    ===

    qqq

    Se construiesc produsele urmatoare,

    [ ][ ][ ][ ]

    [ ] 1121 112

    0 111

    0 101

    0 100

    3

    2

    =====

    T

    dT

    dT

    dT

    T

    k

    Aq

    Aq

    Aq

    qi se nmulesc cu coeficienii polinomului caracteristic dorit

    Soluia 2. Utiliznd Matlab>>A=[0 1 0;1 0 0;-1 0 1];>>b=[0;1;0];>>P=[0 0 0]; % Valorile proprii dorite>>k=acker(A,b,P) % Apelare algoritm Ackermannk =

    2 1 -1