03 Optimal

download 03 Optimal

of 4

Transcript of 03 Optimal

  • 8/6/2019 03 Optimal

    1/4

    3. Control optimal

    In cazul sintezei legii de conducere optimala, se considera procesearacterizate prin modele de stare. Structurile de control optimal se aplicaentru rejectia perturbatiilor stocastice ce pot actiona atat asupra iesirii, cat

    asupra starii.

    Scopul lucrarii: dezvoltarea unui controller optimal pentru unul dinstemele "Pendul invers" sau "Bila pe plan inclinat" si testarea acestora

    tat pe modelele liniarizate, cat si pe modelele neliniare.

    Consideratii teoretice: Se da sistemul caracterizat prin urmatoareaeprezentare de stare:

    x=A xBu

    y=C xDu(1)

    nde x (dimensiune nx1) este vectorul starilor, y (dimensiune px1) esteesirea sistemului, iar u (dimensiune mx1) vectorul comenzilor. Matricile Adimensiune nxn), B (dimensiune nxm), C (dimensiunepxn), D (dimensiunexm) au semnificatia cunoscuta, iar D se considera a fi nula (adica iesireastemului de interes depinde numai de stare).

    Problema sintezei legii de conducere optimala poate fi formulatastfel: dandu-se un sistem (1), se cere determinarea comenzii u astfel incatn criteriu de performantaJsa aiba valoare minima.

    Criteriul de performanta in cazul legii de conducere optimala estenul de tip integral, dat de formula:

    J=xTQxuTRu2xTNudt (2)

    undexsi u au semnificatia cunoscuta, iar:

    - matricea Q (dimensiune nxn) se numeste matrice de penalizaredeoarece ea penalizeaza deviatia starii fata de zero), este patratica

  • 8/6/2019 03 Optimal

    2/4

    Q=[a

    10 ... 0

    0 a2

    ... 0

    0 0 ... an

    ] (3)- ai este un factor care pondereaza stareaxidin vectorul de stare si n

    ste dimensiunea vectorului de stare.

    - matricea R (dimensiune mxm) se numeste matrice de cost,eoarece ea pondereaza comanda, dand proiectantului posibilitateaptimizarii consumului de energie in executia comenzii, devenind utila inazul existentei unor restrictii de tip protectiv asupra elementelor de

    xecutie sensibile la variatii bruste sau salturi exagerate de comanda. Inazul sistemelor SISO si SIMO, R = 1 (comanda este un scalar).

    - matricea N reprezinta un cost care pondereaza interinfluenteletare-comanda; in cazul de fata, se va considera Nnula.

    In cazul controlului optimal, comanda se construieste sub forma:

    u=Kx (4)

    unde K (dimensiune mxn) este matricea de comanda, iar x estetarea sistemului (1).

    Matricea K se obtine in urma rezolvarii unei ecuatii Riccati de forma:

    ATx

    lqrx

    lqrAx

    lqrBR

    1B

    Tx

    lqrQ=0 (5)

    unde singura necunoscuta este xlqr.

    Solutia acestei ecuatii este utilizata pentru calcularea matricii K:

    K=R1

    bTx

    lqr (6)

    Pentru rezolvarea ecuatiilor (5) si (6) in Matlab se utilizeaza functia

    qr, care primeste ca parametri un obiect de tip sistem si matricile pondereintoarce K,XlqrsiCL (valorile proprii ale sistemului in bucla inchisa):

    >> [K, Xlqr, CL] = lqr(SYS, Q, R, N)

  • 8/6/2019 03 Optimal

    3/4

    Mod de lucru:

    1. Se realizeaza schema Simulink a modelelor date (elaborata inboratorul anterior), fie pentru procesul "Pendul invers", fie pentru procesu

    Bila pe plan inclinat".

    2. Se construieste controllerul optimal pentru modelul liniarizat:

    2.1. Se liniarizeaza modelul utilizand comanda:

    >> [A, B, C, D] = linmod('model')

    2.2. Se construieste un obiect de tip sistem pe baza matricilor

    de stare obtinute:

    >> SYS = ss(A, B, C, D)

    2.3. Se introduc matricile Q, R si N de la tastura, in mod

    corespunzator specificatiilor date.

    2.4. Se calculeaza matricea de comanda K utilizand functia

    "lqr" explicata anterior:

    >> K = lqr(SYS, Q, R, N)

    3. Se construiesc schemele de reglare in Simulink pentru fiecaremodel liniarizat in parte:

  • 8/6/2019 03 Optimal

    4/4

    4. Se construiesc schemele de reglare in Simulink pentru fiecaremodel neliniar in parte:

    Observatie 1: Pentru modelul Pendulului invers se va adauga in

    chema un generator de puls (aditiv pe semnalul de comanda), cu urmatoriarametri: Amplitude = 1000; Period = 10; Pulse Width = 0.01%.

    Observatie 2: Factorul de scalare a referintei se modifica o data cumodificarea matricii K. Pentru aflarea acestuia, se va executa o rulare cu unactor de scalare unitar, apoi se va citi pe grafic iesirea in regim stationar.mpartind referinta curenta la aceasta valoare, se va determina factorul decalare dorit.

    Observatie 3: In cazul Pendului invers, referinta se va aplica pentruozitia liniara a cartului (matricea Q se reactualizeaza in asa fel incat

    eviatia starii fata de zero este minima, rezultand astfel mentinereanerenta a pendului in pozitia de echilibru instabil).

    5. Se va realiza o comparatie intre performantele obtinute la pasii 3 4 (cu aceeasi matrice K obtinuta la punctul 2.4. si acelasi factor de

    calare), analizand comparativ rezultatele obtinute (forma raspunsului, timpranzitoriu, suprareglaj, comanda maxima).

    6. Se cere redactarea unui referat.

    Figura 2. Schema de reglare Simulink pentru un model neliniar