florin s. tudor, florin stoican, tudor c. ionescu,...

147
Florin S. Tudor, Florin Stoican, Tudor C. Ionescu, Cristian Oar˘ a, Radu S ¸tefan PROIECTAREA ˆ IN FRECVENT ¸ ˘ A A SISTEMELOR DE REGLARE AUTOMAT ˘ A. ˆ INDRUMAR DE LABORATOR

Upload: others

Post on 03-Jan-2020

14 views

Category:

Documents


0 download

TRANSCRIPT

Florin S. Tudor, Florin Stoican, Tudor C. Ionescu,Cristian Oara, Radu Stefan

PROIECTAREA IN FRECVENTA A SISTEMELOR DE REGLAREAUTOMATA. INDRUMAR DE LABORATOR

Copyright

Universitatea Politehnica BucurestiFacultatea de Automatica si Calculatoare

Departamentul de Automatica si Ingineria Sistemelor

Proiectarea ın Frecventa aSistemelor de Reglare Automata.

Indrumar de laborator

Florin S. Tudor, Florin Stoican, Tudor C. Ionescu,Cristian Oara, Radu Stefan

Bucuresti, 2019

Cuprins

1. Stabilizare si performante dinamice ale SRA 131.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . 131.2. Sarcini de lucru . . . . . . . . . . . . . . . . . . . . . . . . . . . 171.3. Sarcini aditionale . . . . . . . . . . . . . . . . . . . . . . . . . . 25

2. Performantele si robustetea SRA 302.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . 302.2. Sarcini de lucru . . . . . . . . . . . . . . . . . . . . . . . . . . . 382.3. Sarcini aditionale . . . . . . . . . . . . . . . . . . . . . . . . . . 55

3. Limitari fundamentale ale SRA 633.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . 633.2. Sarcini de lucru . . . . . . . . . . . . . . . . . . . . . . . . . . . 733.3. Sarcini aditionale . . . . . . . . . . . . . . . . . . . . . . . . . . 83

4. Tehnica de loopshaping 874.1. Breviar teoretic . . . . . . . . . . . . . . . . . . . . . . . . . . . 874.2. Sarcini de lucru . . . . . . . . . . . . . . . . . . . . . . . . . . . 964.3. Sarcini aditionale . . . . . . . . . . . . . . . . . . . . . . . . . . 112

A. Anexa – laborator 1 119A.1. Introducere ın Simulink . . . . . . . . . . . . . . . . . . . . . . 119A.2. Algoritmul Euclid . . . . . . . . . . . . . . . . . . . . . . . . . . 122A.3. Listing-uri pentru problemele rezolvate . . . . . . . . . . . . . . 124

B. Anexa – laborator 2 127B.1. Robust Control Toolbox . . . . . . . . . . . . . . . . . . . . . . 127B.2. Datele problemei R2.6 – fisierul dateInterp.mat . . . . . . . . 128B.3. Listing-uri pentru problemele rezolvate . . . . . . . . . . . . . . 130

C. Anexa – laborator 3 136C.1. Listing-uri pentru problemele rezolvate . . . . . . . . . . . . . . 136

6 Teoria sistemelor automate. Indrumar de laborator

D. Anexa – laborator 4 139D.1. Listing-uri pentru problemele rezolvate . . . . . . . . . . . . . . 139D.2. Listing-uri pentru problemele rezolvate . . . . . . . . . . . . . . 144

Note bibliografice 146

Lista de listing-uri

A.1. Implementare a algoritmului lui Euclid . . . . . . . . . . . . . . 122A.2. Implementare factorizare coprima . . . . . . . . . . . . . . . . . 123A.3. Cod Matlab pentru Problema R1.1 . . . . . . . . . . . . . . . . 124A.4. Cod Matlab pentru Problema R1.2 . . . . . . . . . . . . . . . . 124A.5. Cod Matlab pentru Problema R1.3 . . . . . . . . . . . . . . . . 124A.6. Cod Matlab pentru Problema R1.4 . . . . . . . . . . . . . . . . 124A.7. Cod Matlab pentru Problema R1.4 partea 2 . . . . . . . . . . . 124A.8. Cod Matlab pentru Problema R1.5 . . . . . . . . . . . . . . . . 125A.9. Cod Matlab pentru Problema R1.6 . . . . . . . . . . . . . . . . 125

B.1. Cod Matlab pentru Problema R2.1 . . . . . . . . . . . . . . . . 130B.2. Cod Matlab pentru Problema R2.2 . . . . . . . . . . . . . . . . 130B.3. Cod Matlab pentru Problema R2.3 . . . . . . . . . . . . . . . . 130B.4. Cod Matlab pentru Problema R2.4 . . . . . . . . . . . . . . . . 131B.5. Cod Matlab pentru Problema R2.5 . . . . . . . . . . . . . . . . 131B.6. Cod Matlab pentru Problema R2.6 . . . . . . . . . . . . . . . . 132B.7. Cod Matlab pentru Problema R2.7 . . . . . . . . . . . . . . . . 135B.8. Cod Matlab pentru Problema R2.8 . . . . . . . . . . . . . . . . 135

C.1. Cod Matlab pentru Problema R3.1 . . . . . . . . . . . . . . . . 136C.2. Cod Matlab pentru Problema R3.2 . . . . . . . . . . . . . . . . 136C.3. Rutina stab inv.m . . . . . . . . . . . . . . . . . . . . . . . . . 136C.4. Cod Matlab pentru Problema R3.6, cazul (i) . . . . . . . . . . 137C.5. Cod Matlab pentru Problema R3.6, cazul (ii) . . . . . . . . . . 137C.6. Cod Matlab pentru Problema R3.6, cazul (iii) . . . . . . . . . . 138

D.1. Loopshaping satelit geostationar- cazul I . . . . . . . . . . . . . 139D.2. Loopshaping satelit geostationar- cazul II . . . . . . . . . . . . 141D.3. Cod Matlab pentru Problema R4.3 . . . . . . . . . . . . . . . . 144D.4. Cod Matlab pentru Problema R4.5 . . . . . . . . . . . . . . . . 144

Lista de figuri

1.1. Bucla de reactie elementara . . . . . . . . . . . . . . . . . . . . 131.2. Bucla cu reactie unitara . . . . . . . . . . . . . . . . . . . . . . 151.3. Diagrama (Simulink) pentru Problema R1.1. . . . . . . . . . . 181.4. Urmarirea referintei si rejectia perturbatiei pentru Problema R1.1. 181.5. Diagrama (Simulink) pentru Problema R1.2. . . . . . . . . . . 191.6. Urmarirea referintei si rejectia perturbatiei pentru Problema R1.2. 191.7. Urmarirea referintei pentru Problema R1.3. . . . . . . . . . . . 201.8. Urmarirea referintei si rejectia asimptotica a perturbatiei pentru

Problema P1.4. . . . . . . . . . . . . . . . . . . . . . . . . . . . 231.9. Urmarirea referintei pentru Problema R1.5. . . . . . . . . . . . 24

2.1. Sistem de reglare automata cu bucla de reactie. . . . . . . . . . 322.2. Marginile de stabilitate ale sistemului L(s). . . . . . . . . . . . 372.3. Margini de stabilitate pentru Problema R2.1 . . . . . . . . . . 392.4. Locul Nyquist si Diagrama Bode Problema R2.2 . . . . . . . . 412.5. Raspunsul la perturbatii pentru Problema R2.3 . . . . . . . . . 432.6. Sistemul Ducted Fan - dinamica longitudinala a avionului. Ilustratie

pentru Problema P2.4. . . . . . . . . . . . . . . . . . . . . . . . 442.7. Functia de sensibilitate si functia pondere asociata pentru Pro-

blema R2.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462.8. Functia de urmarire a referintei si ponderea asociata pentru

Problema R2.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . 472.9. Verificare robustete pentru Problema R2.4 . . . . . . . . . . . . 472.10. Caracteristicile frecventiale pentru Problema P2.5 . . . . . . . 492.11. Profilul de incertitudine WT din (2.17) satisfacand relatia (2.16)

(puncte stelate) si datele reale (puncte tip cruce) masuratorimediate (linie ıntrerupta) . . . . . . . . . . . . . . . . . . . . . 51

2.12. Diagramele de amplitudine a procesului nominal (linie continua),

a proceselor P1 incerte (linie ıntrerupta), P2 incerte (linie punc-

tata) si P3 incerte (linie stelata) . . . . . . . . . . . . . . . . . . 522.13. Locul Nyquist ınchis cu ω ∈ (−∞,∞) pentru Problema R2.7 . 532.14. Diagrama Bode pentru Problema R2.8 . . . . . . . . . . . . . . 542.15. Vehicul ın urcare. Ilustratie pentru Problema P2.14. . . . . . . 582.16. ACC Benchmark Problem. Ilustratie pentru Problema P2.16. . 602.17. Amplificatorul operational cu dinamica incerta si diagrama bloc.

Ilustratie pentru Problema P2.18. . . . . . . . . . . . . . . . . . 62

Lista de figuri 9

3.1. Sistem de reglare automata cu bucla de reactie. . . . . . . . . . 633.2. Raspunsul indicial al sistemului H(s) := −s+0.5

0.5(s+1)(0.5s+1) pre-

zinta”raspuns invers“. . . . . . . . . . . . . . . . . . . . . . . . 65

3.3. Efectul de”saltea de apa“ ın cazul existentei ın bucla deschisa

a unui exces poli-zerouri egal cu 2. . . . . . . . . . . . . . . . . 703.4. Graficul de amplificare al ponderii (3.19) pentru un zerou real z. 71

3.5. Graficul functiei ln coth |ν|2 . . . . . . . . . . . . . . . . . . . . . 733.6. Efectul

”Saltea cu apa“. Ilustratie Problema R3.1 . . . . . . . . 74

3.7. Sisteme de faza nonminima pentru Problema R3.2 . . . . . . . 753.8. Pendul fixat pe un carucior pentru Problema R3.6 . . . . . . . 783.9. Raspunsul la treapta pentru q variabil pentru Problema R3.6 . 803.10. Variatia raspunsului la treapta cu p pentru Problema R3.6 . . . 813.11. Diagramele Bode pentru S(jω) si T (jω) pentru Problema R3.6 823.12. Aeronava X-29 . . . . . . . . . . . . . . . . . . . . . . . . . . . 833.13. Dinamica sistemului de pozitionare pentru Problema P3.8 . . . 84

4.1. Sistem ın bucla de reactie unitara. . . . . . . . . . . . . . . . . 874.2. Zonele de joasa, medie si ınalta frecventa definite de functiile

pondere WS si WT . . . . . . . . . . . . . . . . . . . . . . . . . . 884.3. Marginile lui |L| pentru loopshaping. . . . . . . . . . . . . . . . 904.4. Diagramele Bode ale blocului cu ıntarziere de faza C(s) = b

as+as+b ,

a > b. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 934.5. Diagramele Bode ale blocului cu avans de faza C(s) = b

as+as+b ,

b > a. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 944.6. Diagramele Bode ale blocului cu ıntarziere si avans de faza

C(s) = bas+as+b

dcs+cs+d , a > b ≥ 0 si d > c ≥ 0. . . . . . . . . . . . . 95

4.7. Diagramele Bode ale blocului de tip notch C(s) =s2+2ξNωNs+ω

2N

s2+ωNs+ω2N

.

De notat ca amplificarea este ın unitati standard (nu ın decibeli). 954.8. Diagrama satelit geosincron pentru Problema R4.1 . . . . . . . 964.9. Loopshaping satelit – pasul 1 . . . . . . . . . . . . . . . . . . . 994.10. Loopshaping satelit – pasul 2 . . . . . . . . . . . . . . . . . . . 1004.11. Loopshaping satelit – pasul 3 . . . . . . . . . . . . . . . . . . . 1014.12. Loopshaping satelit – pasul 3 (verificare) . . . . . . . . . . . . . 1024.13. Loopshaping satelit – pasul 5 . . . . . . . . . . . . . . . . . . . 1034.14. Loopshaping satelit – pasul 6 . . . . . . . . . . . . . . . . . . . 1044.15. Loopshaping satelit – pasul 7 . . . . . . . . . . . . . . . . . . . 1054.16. Loopshaping satelit – pasul 8 . . . . . . . . . . . . . . . . . . . 1064.17. Loopshaping satelit – pasul 8 (verificare) . . . . . . . . . . . . . 1074.18. Diagramele Bode ale lui P (s) si marginile lui |L| pentru loop-

shaping din cadrul Problemei R4.2. . . . . . . . . . . . . . . . . 1084.19. Diagramele Bode ale sistemului L(s) = 14 29

2.15s+2.15s+29

1s(s+1) din

cadrul Problemei R4.2. . . . . . . . . . . . . . . . . . . . . . . . 1104.20. Diagramele Bode pentru Problema R4.3 . . . . . . . . . . . . . 111

10 Teoria sistemelor automate. Indrumar de laborator

4.21. Diagramele Bode pentru Problema R4.5 . . . . . . . . . . . . . 1134.22. Controlul unghiului de rostogolire θ pentru o aeronava cu pro-

pulsie vectoriala. Unghiul este controlat prin cele doua motoarepozitionate pe aripi, rezultand un moment generat de F1. Aici,F2 este propulsia vectoriala. . . . . . . . . . . . . . . . . . . . . 117

A.1. Diagrama Simulink pentru bucla de reactie unitara – cazul “hard-coded”. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

A.2. Diagrama Simulink pentru bucla de reactie unitara – interactiunecu Matlab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

Prefata

Prezenta lucrare se adreseaza ın primul rand studentilor de la facultatile deautomatica, dar se poate dovedi extrem de utila si pentru studentii altor fa-cultati, care urmeaza cursuri de Teoria Sistemelor Automate.

Aflata de multa vreme ın planul grupului de Sisteme Dinamice, Reglare,Optimizare si Algoritmi Numerici (DYSCONA) de la Facultatea de Auto-matica si Calculatoare a Universitatii Politehnica din Bucuresti, ındrumarulınglobeaza experienta didactica a unor autori din generatii diferite. Ne-ampropus sa punem la dispozitia studentilor un material care sa sprijine efortu-rile acestora de a ıntelege mai bine metodele moderne de sinteza ın frecventa aregulatoarelor automate, asa cum sunt acestea implementate astazi cu succesın domenii de varf precum industria spatiala si aeronautica, industria auto saubioinginerie, respectiv ın reglarea altor procese complexe. Speram ca proble-mele rezolvate propuse ın ındrumar, ale caror solutii sunt sustinute de fiecaredata de codurile-sursa scrise ın Matlab, sa compenseze, macar ın parte, rare-fierea cunostintelor fundamentale ale viitorilor ingineri automatisti datoratamai ales reducerii drastice a timpului alocat studiului stiintelor fundamentale.

Dealtfel, tinand cont de aceasta nefericita realitate, am decis ca fiecare ca-pitol sa ınceapa cu un scurt breviar teoretic ın care sunt recapitulate notiunilesi conceptele de baza, absolut necesare pentru ıntelegerea corecta si rezolvareaproblemelor propuse. Acest breviar se constituie ca o chintesenta a foliilor pebaza carora se face predarea la curs si care sunt actualizate si disponibile ın fi-ecare semestru pe platforma moodle a facultatii. In continuare, o selectie binealeasa de probleme rezolvate vine sa ilustreze aplicarea efectiva a notiunilorcu care se lucreaza la curs. Ultima parte a fiecarui capitol este dedicata obiec-tivelor de la laborator, care sa permita studentilor reproducerea tehnicilorasimilate, abordand cu ıncredere, ın registru propriu, rezolvarea problemelortrasate.

Primul capitol al ındrumarului este dedicat familiarizarii cu notiunile fun-damentale privind sinteza elementara pe baza buclei de reactie standard, farade care nu se poate merge mai departe: stabilitate interna, parametriza-rea Youla a tuturor compensatoarelor stabilizatoare, preformante specificede regim stationar (urmarirea referintelor si rejectia perturbatiilor). Esteaprofundata structura de baza a reglarii automate, extrem de utila viito-rului inginer automatist. In capitolul urmator este exersata utilizarea nor-melor sistemice (si ale semnalelor) pentru cuantificarea performantelor SRA.

12 Teoria sistemelor automate. Indrumar de laborator

Este evidentiata legatura directa dintre evaluarea acestor performante si re-prezentarile ın frecventa ale diverselor functii de transfer ale buclei de re-glare, subliniind rolul decisiv jucat de norma L∞ ın obtinerea stabilitatii siperformantelor robuste.

Capitolul 3 ilustreaza limitarile fundamentale intrinseci care pot afecta per-formantele SRA. Este extrem de important ca inginerul automatist sa fie avizatcu privire la ”capcanele” care pot sa aparaa ın limitarea drastica a obiectivelorstabilite prin specificatiile de proiectare, obiective care ın anumite situatii nupot fi atinse de catre nici un regulator. In acest caz, proiectantul este obligatsa gaseasca compromisul rezonabil ıntre relaxarea cerintelor de performanta siimplementarea unei solutii de reglare viabile.

Toate competentele asimilate ın urma parcurgerii primelor trei capitole suntpuse la lucru ın ultimul capitol al lucrarii. Acesta este dedicat procedurilor desinteza moderna ın frecventa, asa-numitele tehnici de loopshaping, consacrateastazi ca state-of-the-art ın automatizarea proceselor complexe.

O serie de lucrari fundamentale citate la sfarsitul Indrumarului si care austat la baza elaborarii acestui material pot constitui surse excelente de studiuaprofundat al conceptelor prezentate.

Dorim ca ın final sa-i adresam multumirile cele mai calduroase coleguluisi prietenului nostru Bogdan Ciubotaru, care, pe parcursul ultimilor ani, afost liantul care a unit experienta profesorilor coordonatori cu entuziasmul siputerea de lucru a colegilor mai tineri.

Bucuresti, aprilie 2019.

1. Sinteza elementara a SRA1

Scopul laboratorului

Laboratorul are ca scop sinteza (sau proiectarea) elementara a unui SRA liniarce vizeaza obtinerea stabilitatii si a performantelor dinamice cuantificate subforma unor specificatii de regim permanent (urmarire si rejectie a perturbatiei).Metoda generala de proiectare pentru obtinerea acestor proprietati este bazatape parametrizarea Youla.

Pentru ıntelegerea acestor concepte, laboratorul contine o serie de problemepropuse (sarcinile de laborator) cu caracter preponderent aplicativ.

1.1. Breviar teoretic

Consideram conexiunea (bucla) cu reactie negativa a sistemelor liniare cu ointrare si o iesire – single input, single output (SISO) din2 Fig. 1.1 unde P estefunctia de transfer a procesului, C este functia de transfer a compensatorului(regulatorului), iar F este functia de transfer pe calea de reactie (F corespundetipic traductorului). Presupunem ın continuare ca P , C si F sunt toate functiide transfer rationale proprii.

C P

F

r x1 u x2

dy

x3

n

v−

Figura 1.1.: Bucla de reactie elementara

Semnalele r, d, n sunt semnale exogene (sau externe), iar u, y, v, x1, x2, x3 suntsemnale interne cu r semnalul de referinta ce trebuie urmarit, iar n si d suntsemnale perturbatoare. Fiecarei perechi de semnale externe-interne ıi cores-punde o functie de transfer.

1SRA – Sistem de Reglare Automata.2Prin conventie, omitem semnul

”+“ la jonctiunile de ınsumare.

14 Teoria sistemelor automate. Indrumar de laborator

Definitia 1.1. Sistemul ın bucla ınchisa din Fig. 1.1 este bine definit ın sensstrict daca toate cele 9 functii de transfer de la semnalele externe r, d, n lasemnalele interne x1, x2, x3 exista si sunt proprii.

Teorema 1.2. Sistemul ın bucla ınchisa este bine definit ın sens strict dacasi numai daca 1 + PCF (∞) 6= 0.

Stabilitate interna

Definitia 1.3. Spunem ca sistemul ın bucla ınchisa din Fig. 1.1 este internstabil daca toate functiile de transfer din bucla sunt stabile.

Scriem functiile P , C, F ca un cat de doua polinoame coprime (adica farafactori comuni):

P =NPMP

; C =NCMC

; F =NFMF

.

Atunci au loc urmatoarele doua teoreme echivalente de stabilitate interna.

Teorema 1.4. Sistemul ın bucla ınchisa din Fig. 1.1 este intern stabil dacasi numai daca polinomul caracteristic χ = NPNCNF + MPMCMF are toateradacinile ın C−.

Teorema 1.5. Sistemul ın bucla ınchisa din Fig. 1.1 este intern stabil dacasi numai daca urmatoarele doua conditii sunt ındeplinite simultan:

(i) Functia de transfer 1 + PCF are toate zerourile ın C−;

(ii) Nu apar simplificari poli-zerouri ın C0∪C+ la formarea produsului PCF .

Problema fundamentala a reglarii

Fiind data functia de transfer a procesului P , se cere un compensator C a.ı.sistemul ın bucla ınchisa din Fig. 1.23:

(S) sa fie intern stabil;

(R) sa urmareasca (asimptotic) referinta si sa rejecteze (asimptotic) perturbatiile.

Solutia problemei reglarii se bazeaza pe parametrizarea Youla: se deter-mina mai ıntai clasa parametrizata a tuturor compensatoarelor stabilizatoareC (ce verifica (S)) iar apoi se cauta parametrii corespunzatori a.ı. (R) sa fieverificata.

3Pentru simplitate, consideram bucla ınchisa cu reactie unitara, i.e., F = 1.

Laboratorul 1. Stabilizare si performante dinamice ale SRA 15

C Pr e u

dy

n

Figura 1.2.: Bucla cu reactie unitara

Parametrizarea Youla

Urmatoarea teorema este centrala ın Automatica teoretica.

Teorema 1.6. Fie P =N

M, unde N , M sunt coprime peste4 S si ımpreuna

cu X, Y satisfac identitatea Bezout5 ın S, i.e., NX +MY = 1.Clasa compensatoarelor stabilizatoare este data de

C =X +MQ

Y −NQ : Q ∈ S.

Daca P ∈ S (P este stabil) atunci

C =Q

1− PQ : Q ∈ S.

Dam ın continuare principalii pasi ai algoritmului pentru obtinerea lui M ,N , X, Y .

Algoritmul 1. Rezolvarea identitatii Bezout peste S

Date initiale: Se da sistemul P .

Pasul 1: Daca P este stabil, N = P , M = 1, X = 0, Y = 1, stop. Altfel,continua.

Pasul 2: Transforma P (s) ın P (λ) folosind s =1− λλ

. P (λ) se va scrie ca

un raport de doua polinoame coprime:

P (λ) =n(λ)

m(λ).

Pasul 3: Gaseste cu algoritmul Euclid polinoamele x(λ), y(λ) care rezolvaidentitatea Bezout peste polinoame, i.e., nx+my = 1.

Pasul 4: Transforma n(λ),m(λ), x(λ), y(λ) ın N(s), M(s), X(s), Y (s) folo-

sind transformarea inversa λ =1

s+ 1.

4Notam cu S clasa functiilor de transfer proprii, stabile si rationale, cu coeficienti reali.5Detalii asupra identitatii Bezout si algoritmului Euclid se gasesc ın Anexa A.2.

16 Teoria sistemelor automate. Indrumar de laborator

Urmarirea asimptotica a referintei / rejectia perturbatiei

Considerand sistemul ın bucla ınchisa din Fig. 1.2 avem urmatoarele relatiiıntre semnalele externe r, d, n si iesirea y, respectiv eroarea de urmarire asistemului e = r − y:

y =P

1 + PC︸ ︷︷ ︸Hyd

d+PC

1 + PC︸ ︷︷ ︸Hyr

r +

(− PC

1 + PC

)

︸ ︷︷ ︸Hyn

n,

e =

(− P

1 + PC

)

︸ ︷︷ ︸Hed

d+1

1 + PC︸ ︷︷ ︸Her

r +PC

1 + PC︸ ︷︷ ︸Hen

n.

Aici Hzx denota functia de transfer de la semnalul x la semnalul z. Uzual,Her este numita functia de sensibilitate a sistemului si este notata cu S iarcomplementara sa, Hyr := 1 − Her este notata cu T si reprezinta functia detransfer ın bucla ınchisa de la referinta r la iesirea y.

Folosind parametrizarea Youla se observa ca toate functiile de transfer dinbucla ınchisa sunt functii afine de parametrul Q:

y = N(Y −NQ)d+N(X +MQ)r −N(X +MQ)n,

e = −N(Y −NQ)d+M(Y −NQ)r +N(X +MQ)n.

Presupunem ca sistemul ın bucla ınchisa este intern stabil si ca n = 0.Conditiile necesare si suficiente de satisfacere a conditiei de reglare (R) sebazeaza pe principiul modelului intern:

A) pentru urmarirea asimptotica, functia de transfer ın bucla deschisa PCtrebuie sa contina polii instabili ai lui r;

B) pentru rejectia asimptotica este necesar ca polii instabili ai lui d sa seregaseasca printre zerourile lui P si / sau polii lui C.

In practica ıntalnim urmatoarele cazuri uzuale de reglare si rejectie deperturbatii:

(i) Daca r(t) = 1(t) (semnalul treapta unitara) si d = 0, atunci are locreglarea daca si numai daca produsul PC are un pol ın origine (s = 0).

(ii) Daca r(t) = t1(t) (semnalul rampa unitara) si d = 0, atunci are locreglarea daca si numai daca produsul PC are doi poli ın origine (s = 0).

(iii) Daca d este o sinusoida d(t) = sin(ωt) 1(t) si r = 0, atunci are loc rejectiaperturbatiei daca si numai daca P are un zerou ın s = jω sau C are un polın s = jω (automat vor avea un zerou sau un pol si ın s = −jω deoarecesistemele au coeficienti reali).

Laboratorul 1. Stabilizare si performante dinamice ale SRA 17

1.2. Sarcini de lucru

Problema R1.1. Consideram bucla de reactie din Figura 1.1 cu

P =1

2s+ 1, C =

3

ssi F =

1

s+ 10.

(i) Determinati functia de transfer de la d la y, notata cu Hyd presupunandr = 0, n = 0. Este aceasta functie de transfer stabila ın sens BIBO?

(ii) Este sistemul ın bucla ınchisa intern stabil? Ilustrati iesirea si eroarea deurmarire la intrare treapta r(t) = 1(t) cu perturbatie d(t) = sin 2t1(t− 15)si zgomot de masura n(t) = cos 10t1(t− 30).

Solutie. (i) Pornim de la

y = Px2 = P (d+ u) = P (d+ Cx1)

si observam ca x1 = −v = −Fx3 si x3 = y, de unde rezulta ca x1 = −Fy.Inlocuind, obtinem:

y = P (d− CFy)⇒ (1 + PCF )y = Pd⇒ Hyd =y

d=

P

1 + PCF.

Folosind valorile numerice pentru blocurile schemei, obtinem

Hyd =1

2s+1

1 + 12s+1 · 3

s · 1s+10

=s(s+ 10)

2s3 + 21s2 + 10s+ 3.

Pentru a testa stabilitatea functiei de transfer Hyd verificam ca polii aces-teia (radacinile numitorului) sunt ın C−. Comanda Matlab

1 r e a l ( r oo t s ( [ 2 21 10 3 ] ) )

va returna partea reala a radacinilor numitorului,

1 ans =−10.0157

3 −0.2421−0.2421

si dupa cum se poate observa, acestea sunt ıntr-adevar ın C−.

(ii) Stabilitatea interna a sistemului ın bucla ınchisa este verificata cu ajutorulTeoremei 1.5: partea (i) este deja validata la punctul anterior, iar partea(ii) a teoremei se verifica observand ca nici unul din blocurile sistemului nucontine zerouri instabile si ın consecinta nu au loc simplificari poli-zerouriin Co ∪ C+ la formarea produsului PCF .

18 Teoria sistemelor automate. Indrumar de laborator

C(s) P(s)

F(s)

r

d

iesire

eroare

n

Figura 1.3.: Diagrama (Simulink) pentru Problema R1.1.

0 5 10 15 20 25 30 35 40 45 500

4

8

12

timp

iesi

re

0 5 10 15 20 25 30 35 40 45 50

0

0.5

1

timp

eroar

e

t = 15

t = 30

Figura 1.4.: Urmarirea referintei si rejectia perturbatiei pentru Problema R1.1.

Pentru testarea experimentala a stabilitatii interne a sistemului realizamdiagrama Simulink din Fig. 1.3. In Fig. 1.4 reprezentam iesirea si respec-tiv eroarea de urmarire a sistemului. Codul Matlab corespunzator acesteifiguri este implementat in Sursa A.3.

Se poate observa ca ın prezenta unor perturbatii (si zgomote de masura)marginite, marimile relevante ale sistemului raman de asemenea marginite(stabilitate ın sens BIBO), ınsa eroarea stationara e(∞) nu este zero (nusunt ındeplinite conditiile din Principiul Modelului Intern pentru in-trare treapta unitara).

Laboratorul 1. Stabilizare si performante dinamice ale SRA 19

Problema R1.2. Consideram bucla de reactie din Fig. 1.2 cu P =s− 1

s2 + 2s+ 1

si C =1

s− 1. Este sistemul intern stabil? Ilustrati iesirea si eroarea de

urmarire la o intrare treapta r(t) = 0, cu perturbatie d(t) = sin t1(t− 10) sizgomot de masura n(t) = sin 5t1(t− 20).

Solutie. Stabilitatea interna a sistemului ın bucla ınchisa nu are loc, cu toate ca

1 + PC =s2 + 2s+ 2

s2 + 2s+ 1are zerourile stabile (Re z1,2 = −1 < 0): ıntre termenii

P si C exista o simplificare poli-zerouri instabila (s = 1).

C(s) P(s)r iesire

eroared

n

Figura 1.5.: Diagrama (Simulink) pentru Problema R1.2.

0 10 20 30 40 50 60−10

0

10

20

30

timp

iesi

re

0 10 20 30 40 50 60−40

−20

0

20

timp

eroa

re

t = 20t = 10

Figura 1.6.: Urmarirea referintei si rejectia perturbatiei pentru Problema R1.2.

Pentru testarea experimentala a stabilitatii interne a sistemului realizam

20 Teoria sistemelor automate. Indrumar de laborator

diagrama Simulink din Fig. 1.5. In Fig. 1.6 reprezentam iesirea si respectiveroarea de urmarire a sistemului. Dupa cum se observa, ın prezenta unorperturbatii si zgomote de masura marginite, marimile relevante ale sistemuluinu raman marginite6.

Codul Matlab corespunzator acestei figuri este implementat in Sursa A.4.

Problema R1.3. Fie P =1

(s+ 2)(s+ 3). Se cere clasa compensatoarelor

care stabilizeaza intern si asigura urmarirea unei referinte treapta, r(t) = 1(t),cu d = n = 0. Calculam analitic (folosind Teorema 1.6) si verificam urmarireaasimptotica a referintei ın Matlab.

Solutie. Teorema 1.6 ne da clasa compensatoarelor stabilizatoare. Atunci,conform Principiului Modelului Intern y(t) urmareste asimptotic referintadaca S are cel putin un zerou ın origine.

S =1

1 + PC=

1

1 + P Q1−PQ

= 1− PQ, Q ∈ S.

Dar cum S(0) = 0 (impunem un zerou ın origine), avem ca

P (0)Q(0) = 1⇒ Q(0) =1

P (0)= 6.

0 1 2 3 4 5 6 7 80

0.2

0.4

0.6

0.8

1

timp

iesi

re

Figura 1.7.: Urmarirea referintei pentru Problema R1.3.

Putem alege asadar orice Q ∈ S, cu Q(0) = 6. Spre exemplu, Q(s) =6

s+ 1.

Pentru testare, folosim codul Matlab din Sursa A.5 ce conduce la Fig. 1.7 ıncare se observa ca referinta este urmarita asimptotic.

6Graficul unui semnal (functie de timp) trasat pe orizont finit poate doar sa sugereze unposibil comportament asimptotic al acestuia.

Laboratorul 1. Stabilizare si performante dinamice ale SRA 21

Problema R1.4. Se considera sistemul P =1

s− 1. Se cere clasa compen-

satoarelor care stabilizeaza intern. Calculati analitic (folosind Teorema 1.6)aceasta clasa si verificati apoi ın Matlab parametrizarea obtinuta anterior fo-losind Sursa A.2. Alte cerinte:

(i) Calculati parametrii Q ∈ S ce asigura urmarirea unei referinte treapta,r(t) = 1(t), d = n = 0;

(ii) Calculati parametrii Q ∈ S ce asigura rejectia unei perturbatii de formad(t) = sin t1(t− 10), r = n = 0;

(iii) Calculati parametrii Q ∈ S ce asigura ındeplinirea simultana a cerintelorde mai sus, cu n = 0.

Testati ın Matlab urmarirea si rejectia asimptotica a semnalelor externe pentrufiecare dintre cazurile enumerate mai sus.

Solutie. Observam ca procesul are un pol instabil. Trecem deci la pasul aldoilea din Algoritmul 1.1:

P (λ) =1

1−λλ − 1

1− 2λ=

n(λ)

m(λ).

Din algoritmul Euclid: n = mq1 + r1, cu q1 = − 12 , r1 = 1

2 . Deoarece r1 e oconstanta nenula, algoritmul se opreste. Obtinem:

n−mq1 = r1

/: r1 ⇒ n

(1

r1

)+m

(−q1

r1

)= 1 ⇒ x =

1

r1= 2 ; y = −q1

r1= 1.

In continuare, aplicam transformarea inversa (pasul 4 al Algoritmului 1.1):

N =1

s+ 1; M = 1− 2

1

s+ 1=s− 1

s+ 1; X = 2 ;Y = 1.

Observati ca N,M sunt functii coprime:

NX +MY =2

s+ 1+s− 1

s+ 1=s+ 1

s+ 1= 1.

Am obtinut astfel factorizarea coprima peste S a lui P .Pentru verificarea corectitudinii rationamentului de mai sus, consideram co-

dul Matlab din Sursa A.6 care apeleaza functia coprim.m si afiseaza:

N = 1/( s + 1)2 M = ( s − 1) /( s + 1)

X = 24 Y = 1

22 Teoria sistemelor automate. Indrumar de laborator

(i) Calculam functia de sensibilitate:

Her = S = M(Y −NQ) =s− 1

s+ 1

(1− 1

s+ 1·Q), Q ∈ S

si impunem Her(0) = S(0) = 0 (un zerou ın origine pentru urmarireaasimptotica a referintei treapta), ceea ce conduce la Q(0) = 1. Putem

alege asadar orice Q ∈ S cu Q(0) = 1. Spre exemplu, Q(s) =1

s+ 1.

(ii) Calculam functia Hed:

Hed = −N(Y −NQ) = − 1

s+ 1

(1− 1

s+ 1·Q), Q ∈ S

si impunem Hed(±j) = 0 (un zerou ın ±j pentru rejectia asimptotica a

perturbatiei), ceea ce conduce la − 1

1 + j

(1− 1

1 + j·Q(j)

)= 0. Putem

alege asadar oriceQ ∈ S cuQ(j) = 1+j. Spre exemplu, Q(s) = 2s− 1

(s+ 1)2.

(iii) Consideram simultan atat urmarirea referintei de la punctul (i) cat sirejectia perturbatiei de la punctul (ii) care impun ambele constrangeri

asupra lui Q: Q(0) = 1 si Q(j) = 1 + j. Alegem Q(s) =5s2 + 1

(s+ 1)3ce le

verifica pe ambele.

In continuare testam urmarirea referintei, respectiv rejectia asimptotica aperturbatei implementand codul Matlab din Sursa A.7 si ilustram rezultateleın Figurile 1.8a, 1.8b si respectiv 1.8c.

Nota: Datorita invariantei ın timp a sistemului, ıntarzierile aparute la sem-nalele externe nu influenteaza structura compensatoarelor determinata de pa-rametrizarea Youla si de Principiul Modelului Intern.

0 2 4 6 8 10 12 14 16 18 20 22 240

0.5

1

1.5

timp

iesi

re

referinta

iesire

(a) cazul i)

Laboratorul 1. Stabilizare si performante dinamice ale SRA 23

0 2 4 6 8 10 12 14 16 18 20 22 24−1

−0.5

0

0.5

1

timp

iesi

re

perturbatie

iesire

(b) cazul ii)

0 2 4 6 8 10 12 14 16 18 20 22 240

0.5

1

1.5

timp

iesi

re

(c) cazul iii)

Figura 1.8.: Urmarirea referintei si rejectia asimptotica a perturbatiei pentruProblema P1.4.

Problema R1.5. Fie bucla de reactie din Figura 1.2, cu P =1

2s+ 1, C =

k

s.

Gasiti intervalul admisibil pentru k a.ı.:

a) Sistemul sa fie intern stabil (folositi Teorema 1.5 pentru demonstratie).

b) Implementati bucla de reglare ın Simulink si ilustrati iesirea pentru diversevalori admisibile ale lui k la referinta treapta.

Solutie. Pentru verificarea stabilitatii interne recurgem la Teorema 1.5. Functiade transfer

1 + PC = 1 +k

s(2s+ 1)=

2s2 + s+ k

2s+s

are zerourile z1,2 =−1±

√1− 8k

4ın C− pentru k > 0. Aditional, observam

24 Teoria sistemelor automate. Indrumar de laborator

ca nu exista simplificari de zerouri / poli instabili. Asadar, 0 < k < ∞ esteintervalul admisibil pentru k.

0 2 4 6 8 10 12 14 16 18 200

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

k = 0.33

k = 1

k = 3

timp

iesi

re

Figura 1.9.: Urmarirea referintei pentru Problema R1.5.

Diagrama Simulink este implementata similar cu cea din Fig. 1.5 iar codulMatlab necesar pentru obtinerea iesirii sistemului la intrare treapta este datın Sursa A.8. Rezultatul este ilustrat ın Fig. 1.9.

Problema R1.6. Se da sistemul

P =r(s)

p(s)=

s− 1

s2 + 1.

Gasiti un compensator C care plaseaza toti polii ın bucla ınchisa ın -1.

Solutie. Consideram C =a+ bs

c+ ds. In continuare, selectam coeficientii a, b, c,

d a.ı. sa alocam zerourile lui 1 + PC ın -1 (echivalent cu a spune ca dorim saalocam polii sistemului ın bucla ınchisa ın -1). Conditia necesara si suficientaeste ca polinomul caracteristic ın bucla ınchisa

χ(s) = (c+ ds)(s2 + 1) + (a+ bs)(s− 1)

sa verifice identitatea:

(c+ ds)(s2 + 1) + (a+ bs)(s− 1) = (s+ 1)3 = s3 + 3s2 + 3s+ 1.

Laboratorul 1. Stabilizare si performante dinamice ale SRA 25

Identificand coeficientii polinoamelor din identitatea de mai sus, obtinem sis-temul de ecuatii liniare

[a b c d

]

−1 1 0 00 −1 1 01 0 1 00 1 0 1

︸ ︷︷ ︸M

=[1 3 3 1

]

a carui unica solutie este[a b c d

]=[2 0 3 1

]ceea ce conduce la

C =2

s+ 3.

Matricea M se numeste eliminantul polinoamelor r(s) si p(s) si este nesingu-lara daca si numai daca polinoamele r(s) si p(s) sunt coprime. Pentru codulMatlab corespunzator consultati Sursa A.9. Generalizare.

1.3. Sarcini aditionale

Problema P1.7. Consideram bucla de reactie unitara din Figura 1.2. Secunosc

C =s− 1

s+ 1, P =

1

s2 − 1.

i) Realizati diagrama Simulink pentru Figura 1.2. Pentru jonctiunile deınsumare folositi blocul Sum din biblioteca Math Operations.

ii) Fixati d = n = 0 si r(t) = 1(t). Vizualizati semnalul de iesire y(t). Esteacesta marginit? Calculati functia de transfer de la r la y, Hyr. Analizatistabilitatea lui Hyr.

iii) Reluati punctul ii) pentru r = n = 0 si d(t) = 1(t). Ne intereseaza stabi-litatea functiei de transfer de la d la y, Hyd. In urma acestor observatii,pronuntati-va asupra stabilitatii interne a sistemului ın bucla ınchisa folo-sind definitia.

iv) Calculati polinomul caracteristic ın bucla ınchisa χ = NPNC + MPMC .Folositi Teorema 1.4 pentru a decide daca sistemul ın bucla ınchisa esteintern stabil.

v) Analizati stabilitatea cu Teorema 1.5.

Problema P1.8. Fie bucla de reactie din Figura 1.2, cu P =1

10s+ 1, C = k.

Gasiti intervalul admisibil pentru k a.ı.:

i) Sistemul sa fie intern stabil (folositi Teorema 1.5).

26 Teoria sistemelor automate. Indrumar de laborator

ii) |e(∞)| ≤ 0.1, cu r(t) = 1(t) si d = n = 0. Folositi TVF (Teorema ValoriiFinale) impreuna cu expresia lui S (functia de sensibilitate).

iii) Implementati bucla ın Simulink. Verificati rezultatele de la punctele ante-rioare (se va baleia parametrul k admisibil).

iv) Alegeti un k care stabilizeaza (spre exemplu, k = 5). Gasiti un com-pensator C asa ıncat sistemul sa urmareasca o referinta treapta unitarar(t) = 1(t) si sa rejecteze un semnal sinusoidal de pulsatie ω = 10 rad/s,d(t) = sinωt1(t). Folositi principiul modelului intern. Verificati rezulta-tele cu Simulink.

Problema P1.9. Plasarea polilor ın bucla ınchisa. Se da sistemul

P =s− 2

s2 + 4.

Gasiti un compensator C care plaseaza toti polii ın bucla ınchisa ın -1. Se vaimplementa un script Matlab cu cerintele i), iv), v):

i) Reprezentati diagrama poli-zerouri (folositi functia Matlab pzmap) si ras-punsul la treapta pentru P .

ii) Fie un compensator de forma

C =b1s+ b0a1s+ a0

, a0, b0, a1, b1 ∈ R.

Calculati polinomul caracteristic ın bucla ınchisa χ. Care este gradul sau?

iii) Radacinile polinomului caracteristic sunt chiar polii sistemului ın buclaınschisa. Impuneti ca toate radacinile sale sa fie -2, adica,χ = χd = (s+ 1)n. Pentru n = 3, veti obtine un sistem de 4 ecuatii cu 4necunoscute. Poate fi n mai mic decat 3? Dar mai mare? Comentati.

iv) Scrieti sistemul de la punctul iii) ın forma matriceala, x>M = p>. Deter-minati x folosind Matlab.

v) Scrieti ın Matlab expresia compensatorului si gasiti sistemul ın bucla ınchisa(functia feedback). Verificati plasarea polilor si trasati raspunsul la treapta.

vi) Repetati procedura pentru P =3

(s+ 1)(s+ 3). Ne dorim ca poli dominanti

−3± j. Restul polilor (auxiliari) vor fi in -12.

vii) Incercati generalizarea rezultatelor pentru P oarecare (raport de doua po-linoame). Cand este matricea M inversabila?

Laboratorul 1. Stabilizare si performante dinamice ale SRA 27

Problema P1.10. Se da procesul stabil

P =1

(s+ 1)(s+ 2).

Sa se gaseasca un compensator C care stabilizeaza intern sistemul ın buclaınchisa si care asigura urmarirea asimptotica a unei referinte de tip rampa.Implementati sistemul ın Simulink.Indicatie. Se alege Q exprimat sub forma de mai jos si se determina a, b ∈ R.

Q =as+ b

s+ 1∈ S.

Problema P1.11. Fie sistemul

P =1

(s− 1)(s− 2).

Se cer urmatoarele:

i) Obtineti o factorizare coprima a lui P . Pentru aceasta, folositi functiaMatlab [N,M,X,Y] = coprim(P). Verificati ca NX + MY = 1 si ca

P =N

M.

ii) Verificati ın Simulink ca pentru Q = 0 compensatorul C =X

Ystabilizeaza

intern sistemul ın bucla ınchisa.

Am rezolvat la punctele anterioare problema stabilizarii (S). Ne propunemrezolvarea completa a problemei reglarii (R).

iii) Aratati ca, pentru ca sistemul sa urmareasca o referinta de tip treaptaunitara r(t) = 1(t), d = 0, conditia de interpolare pentru parametrul Qeste

N(0)[X(0) +M(0)Q(0)] = 1.

iv) Ne propunem rejectia unei perturbatii sinusoidale d(t) = sin(ωt) 1(t) cuω = 10 rad/s, cand r = 0. Verificati ca functia de transfer de la d la yeste N(Y −NQ).

Conditia de interpolare devine N(10j)[Y (10j) −N(10j)Q(10j)] = 0. Ar-gumentati.

v) Gasiti Q care satisface simultan constrangerile de la punctele iii) si iv).Sunt trei conditii de interpolare, prin urmare apar trei parametri libericare trebuie determinati. Se va lua astfel Q de forma

Q = x1 + x21

s+ 1+ x3

1

(s+ 1)2.

28 Teoria sistemelor automate. Indrumar de laborator

Indicatie. Pentru punctul v), se recomanda implementarea unei rutineMatlab care sa realizeze calculele. Symbolic Math Toolbox este in-strumentul principal. Folositi functia subs din aceasta librarie pentru ainlocui valori numerice ın expresii simbolice. Spre exemplu, subs(P,s,3)calculeaza P (3) pentru variabila simbolica P care depinde de s.

Problema P1.12. La problema anterioara se obtin

Q =−79s2 − 881s+ 6

(s+ 1)2, C =

−60s4 − 589s3 + 2515s2 − 1794s+ 1

s(s2 + 100)(s+ 9).

Implementati ın Simulink bucla de reglare din Figura 1.2 cu n = 0, r(t) = 1(t)si d(t) = sin(ωt)1(t). Verificati ca cele doua cerinte (S) si (R) ale problemeireglarii sunt satisfacute.

Problema P1.13. Compensatoare PID. Clasa compensatoarelor PID (pro-portional, integral, derivativ) este extrem de raspandita ın practica. Un com-pensator PID este de forma

C = kp +kis

+ kds, kp, ki, kd ≥ 0.

(i) Este functia de transfer a lui C proprie? Remediati aceasta situatie prinintroducerea unui pol suplimentar care sa nu afecteze considerabil di-namica sistemului. Indicatie. Constanta de timp a polului suplimentartrebuie sa fie mica. Argumentati.

(ii) Se considera

P =1

(s+ 1)3.

Implementati ın Simulink bucla standard cu reactie unitara. Se da refe-rinta r(t) de tip treapta unitara. Initial, valorile parametrilor sunt kp = 1,ki = 0, kd = 0. Vizualizati iesirea y(t).

(iii) Modificati valoarea lui kp (2, 4, 6, 8, 10, 12, ...) pana cand sistemul ajungela limita de stabilitate (la limita de stabilitate, iesirea sistemului intraıntr-un regim de oscilatii neamortizate). Retineti valoarea kp0 si perioadaoscilatiilor neamortizate T0.

(iv) Calculati parametrii regulatorului cu relatiile:

kp = 0.75kp0, ki =1

0.6T0, kd = 0.1T0.

(v) Implementati ın Simulink bucla de reglare. Dupa ce sistemul atinge regi-mul stationar, introduceti un zgomot n(t) = 1(t) (folositi blocul Trans-port Delay). Verificati ca cerintele reglarii sunt ındeplinite (urmarireareferintei si rejectia perturbatiilor). Modificati valoarea treptei de la in-trare ın timpul rularii simularii, e.g., r(t) = 2 · 1(t).

Laboratorul 1. Stabilizare si performante dinamice ale SRA 29

(vi) Metoda descrisa mai sus este metoda Ziegler-Nichols de acordare expe-rimentala a compensatoarelor pentru procese lente la care perturbatiileau o durata mare. Metoda asigura amortizarea ın sfert de amplitudine7.Confirmati acest fapt.

Problema P1.14. Stabilizarea pendulului invers utilizand criteriulNyquist. Dinamica liniarizata si normalizata pentru pendulul invers poate fireprezentata prin functia de transfer

P =1

s2 − 1.

Aici, intrarea este acceleratia pivotului, iar iesirea sistemului este pozitia un-ghiulara θ. Ne dorim stabilizarea pendulului invers cu un compensator PD,i.e., proportional - derivativ, cu functia de transfer C = k(s+ 2).

(i) Calculati L, precum si polii lui L. Schitati de mana locul Nyquist pentruL(jω), ω ≥ 0. Cat este L(0)? Dar L(∞)? Verificati rezultatele ın Matlab.

(ii) Alegem k = 1. Este sistemul ın bucla ınchisa intern stabil pentru acestk? Veti folosi criteriul de stabilitate al lui Nyquist8.

(iii) Gasiti k a.ı. sistemul sa se afle la limita de stabilitate, adica hodograful satreaca prin punctul critic. Desenati step(L) pentru acest k. Determinatiintervalul admisibil pentru k care asigura stabilitate interna.

(iv) Verificati rezultatele de la punctul anterior ın Matlab, trasand pe acelasigrafic locul Nyquist pentru k = 0.1 : 0.1 : 1.

(v) Compensatorul este impropriu. Introduceti un pol suplimentar rapid, cuconstanta de timp T = 0.001 sec9. Verificati stabilitatea noului sistem.

7Amortizarea ın sfert de amplitudine ınseamna ca raspunsul indicial are un raport de 1/4ıntre doua maxime succesive (i.e., factorul de amortizare este 1/4).

8Criteriul Nyquist. Presupunem ca L(s) are n+ poli instabili, i.e., ın C+. Atunci,sistemul ın bucla ınchisa este intern stabil numai si numai daca locul Nyquist cuω ∈ (−∞,∞) ınconjoara ın sens antiorar punctul critic (-1,0) de exact n+ ori.

9Procedura este cunoscuta ca filtrarea componentei derivative.

2. Performantele si robusteteaSRA

Scopul laboratorului

Laboratorul are ca scop cuantificarea sintetica a performantelor si a robusteteiSRA prin intermediul normelor sistemice care reprezinta principalul instru-ment utilizat ın proiectarea moderna a SRA.

2.1. Breviar teoretic

Norme pentru semnale si sisteme

Cele mai uzuale norme pentru semnale sunt normele p (cu p ≥ 1)

‖u‖p :=

(∫ ∞

−∞|u(t)|p dt

) 1p

, (2.1)

definite pentru toate semnalele u pentru care membrul drept din (2.1) are senssi este finit. Cele mai importante norme se obtin pentru p = 1, p = 2 si p =∞,avand expresiile explicite si semnificatia din paranteza

‖u‖1 =

∫ +∞

−∞|u(t)|dt (actiunea),

‖u‖2 =

(∫ +∞

−∞|u(t)|2 dt

) 12

(energia),

‖u‖∞ = supt|u(t)| (amplitudinea).

Introducem ın continuare normele sistemice. Fie un sistem de convolutiedescris de o functie pondere g(t), cu suport pozitiv, cu transformata LaplaceG(s), avand intrarea u(t) si iesirea y(t), cu transformatele Laplace u(s) sirespectiv y(s) si relatiile intrare-iesire

y(t) = (g ∗ u)(t) =

∫ ∞

−∞g(t− τ)u(τ) dτ, y(s) = G(s)u(s).

Folosim majuscula G pentru a indica sistemul atunci cand ne referim la nor-mele asociate acestuia.

Laboratorul 2. Performantele si robustetea SRA 31

La fel ca ın cazul semnalelor, normele sistemice releva sintetic proprietatisofisticate ale sistemelor. Cele mai importante norme sistemice sunt normeleinduse (de catre semnale), norma 2 si norma ∞.

Norme induse Pentru un p fixat, norma indusa p a unui sistem este definitaca

‖G‖pind:= sup

u∈Lpu 6=0

‖g ∗ u‖p‖u‖p

= supu∈Lpu 6=0

‖y‖p‖u‖p

= sup‖u‖p≤1

‖y‖p‖u‖p

= sup‖u‖p=1

‖y‖p

si are semnificatia de amplificare maxima (pana la iesire) a normelor p aletuturor semnalelor de intrare u aplicate sistemului.1

Norma 2 Norma 2 a unui sistem este prin definitie

‖G‖2 =

(1

∫ +∞

−∞|G(jω)|2 dω

) 12

. (2.2)

Norma 2 este bine definita (finita) daca si numai daca functia de transfer Geste strict proprie si nu are poli pe axa imaginara. Norma 2 sistemica nu esteo norma indusa de o norma de semnale.2 Totusi, daca g ∈ L2 (i.e., functia detransfer G este strict proprie si stabila) este valida relatia lui Parseval

1

∫ +∞

−∞|G(jω)|2 dω =

∫ +∞

−∞|g(t)|2 dt.

Norma ∞ Norma ∞ a unui sistem este prin definitie

‖G‖∞ = supω|G(jω)|. (2.3)

Norma ∞ este bine definita (finita) daca si numai daca functia de transfer Geste proprie si nu are poli pe axa imaginara. In plus, daca G este stabila atuncinorma∞ sistemica coincide cu norma indusa de norma 2 a semnalelor3,4, i.e.,

‖G‖∞ = ‖G‖2ind= sup

u 6=0

‖y‖2‖u‖2

. (2.4)

1Pentru fiecare norma Lp de semnal se defineste o norma sistemica indusa corespunzatoare.2Pentru un sistem norma 2 nu coincide cu norma 2 indusa.3 In acest caz este interesant de observat ca norma sistemica indusa ∞ coincide de fapt cu

norma 1 a functiei pondere (vazuta ca semnal)

‖G‖∞ind = sup‖u‖∞ 6=0

‖y‖∞‖u‖∞

= ‖g‖1.

4Acest fapt nu este valabil atunci cand G nu este stabila ıntrucat norma indusa 2 nu estefinita.

32 Teoria sistemelor automate. Indrumar de laborator

Sumar relatii intrare-iesire5 ıntre semnale si norme

u = δ(t) u = sin(ωt) ‖u‖2 = 1 ‖u‖∞ = 1

‖y‖2 ‖G‖2 ∞ ≤ ‖G‖∞ ∞‖y‖∞ ‖G‖∞ |G(jω)| ≤ ‖G‖2 ≤ ‖G‖1

Performantele si robustetea SRA ın termenii normelor

Consideram sistemul ın bucla de reactie din Fig. 2.1 ın care procesul P este dat,iar regulatorul C trebuie determinat astfel ıncat sistemul rezultant ın buclaınchisa sa atinga anumite performante impuse de specificatiile de proiectare.

C Pr e u

d

up

do

y

n

Figura 2.1.: Sistem de reglare automata cu bucla de reactie.

Semnalele de intrare ın sistem sunt referinta r, perturbatia pe intrare d,perturbatia pe iesire do si zgomotul n, iar semnalele de interes (iesire) sunteroarea e de urmarire a referintei, iesirea y a sistemului, comanda u (datade regulator) si comanda up efectiv aplicata procesului. Semnalele r, d si dosunt ın general semnificative la frecvente joase, ω ≤ ωr, ω ≤ ωd si respectivω ≤ ωdo, iar n este semnificativ la frecvente ınalte ω ≥ ωn. Aici ωr, ωd,ωdo sunt marginile superioare, iar ωn este marginea inferioara a intervalelor ıncare semnalele respective sunt considerate nenule. Tipic, procesul P este binemodelat la frecvente joase, iar incertitudinile inerente de modelare devin mariın special la frecvente ınalte (apare asa numita dinamica nemodelata).

Transferurile corespunzatoare intrare-iesire din Fig. 2.1 sunt

euyup

=

S −PS −S −STP −T −T

P −TP

T PS −T STP S −T

P −TP

rdndo

, (2.5)

unde S := 11+L , T := L

1+L , iar L := PC.

5Celulele din tabel ın care apare semnul ≤ indica faptul ca valoarea respectiva reprezintao margine superioara ce poate fi atinsa (pentru anumite sisteme, dar nu pentru toate)de norma semnalului de iesire y, pentru un semnal particular de intrare u de norma 1.

Laboratorul 2. Performantele si robustetea SRA 33

Cerintele de performanta si robustete se formuleaza ın termenii transferurilorın bucla ınchisa si cuprind tipic urmatoarele categorii:

1. Rejectia perturbatiilor;2. Rejectia zgomotului;3. Limitarea comenzii;4. Eroare mica de urmarire a referintei;5. Stabilitate robusta;6. Performanta robusta.

Primele patru tipuri de performanta 1–4 se obtin ın conditiile ın care trans-ferurile de la semnalele corespunzatoare de intrare la cele de iesire sunt

”mici“,

ceea ce tipic se reduce la a asigura ca norma ∞ a produsului ıntre o functiepondere si S sau T este marginita de o functie prescrisa (prin cerintele deproiectare).6 Vom vedea ca si cerintele de robustete 5 si 6 ce apar ca urmarea incertitudinilor de modelare se reduc tot la conditii asupra normelor ∞ aletransferurilor ın bucla ınchisa S si T .

Detaliem ın continuare fiecare dintre cerintele de performanta pe benzile defrecventa pe care semnalele sau incertitudinile de modelare sunt semnificative.

1. Rejectia perturbatiilor. Prin aceasta cerinta de performanta se ur-mareste reducerea influentei perturbatiilor d si d0 asupra intrarii up si a iesiriiy ale procesului P . Transferurile sunt:

y = PSd+ Sdo, up = Sd− T

Pdo.

Atunci:

• Pentru a rejecta do la iesirea y si d la intrarea up trebuie ca:

S :=1

1 + Lsa fie

”mic“ ⇔ L := PC sa fie

”mare“, ∀ω ≤ max{ωd, ωdo };

• Pentru a rejecta d la iesirea y trebuie ca (aici L este”mare“):

PS =L

C(1 + L)sa fie

”mic“ ⇔ C sa fie

”mare“, ∀ω ≤ ωd;

• Pentru a rejecta do la intrarea up trebuie ca (aici L este”mare“):

TP =

L

P (1 + L)sa fie

”mic“ ⇔ P sa fie

”mare“, ∀ω ≤ ωdo.

6Toate transferurile ın bucla ınchisa din (2.5) au fost scrise sub forma generica WS sauWT , unde functiile pondere W sunt ±1, ±P sau ± 1

P.

34 Teoria sistemelor automate. Indrumar de laborator

In concluzie, pentru rejectia perturbatiilor trebuie sa asiguram:

(i) Amplificare ın bucla deschisa |L(jω)| � 1, ∀ω ≤ max{ωd, ωdo };(ii) Amplificare a regulatorului |C(jω)| � 1, ∀ω ≤ ωd;(iii) Amplificare a sistemului |P (jω)| � 1, ∀ω ≤ ωd.2. Rejectia zgomotului. Prin aceasta cerinta de performanta se urmares-

te reducerea influentei zgomotului n asupra intrarii up si iesirii y ale procesuluiP . Transferurile sunt:

y = −Tn, up = −TPn.

Atunci:

• Pentru a rejecta n la iesirea y trebuie ca:

T :=L

1 + Lsa fie

”mic“ ⇔ L := PC sa fie

”mic“, ∀ω ≥ ωn;

• Pentru a rejecta n la intrarea up trebuie ca (aici L este”mic“):

T

P=

C

1 + Lsa fie

”mic“ ⇔ C sa fie

”mic“, ∀ω ≥ ωn.

In concluzie, pentru rejectia zgomotelor trebuie sa asiguram:

(i) Amplificare ın bucla deschisa |L(jω)| � 1, ∀ω ≥ ωn;(ii) Amplificare a regulatorului |C(jω)| � 1, ∀ω ≥ ωn.

Pentru a asigura simultan rejectia perturbatiilor d, do si zgomotelor n estenevoie ca cel putin ωn > max{ωd, ωdo }. De fapt, trebuie sa ne asiguram caωn � max{ωd, ωdo } pentru ca|L(jω)| nu poate varia prea rapid (de la � 1 la� 1) ıntr-o banda ıngusta de frecvente.7

3. Limitarea comenzii. Prin aceasta cerinta de performanta se urmarestemarginirea superioara a comenzii u pentru a preveni iesirea din zona de lini-aritate a procesului (de exemplu prin intrarea ın saturatie a elementului deexecutie). Marginile pentru comanda sunt tipic prescrise tehnologic si trebuiesatisfacute la orice frecventa ω ≥ 0. Transferurile sunt

u =T

P(r − n− do)− Td.

Distingem doua cazuri relevante:

• Acolo unde L este”mic“, trebuie ca

{CS sa fie

”mic“⇔ C sa fie

”mic“,

T sa fie”mic“;

7Acest fapt este o consecinta a primei teoreme Bode (vezi lucrarea de laborator urmatoare).

Laboratorul 2. Performantele si robustetea SRA 35

• Acolo unde L este”mare“, trebuie ca

CS =

L

P (1 + L)sa fie

”mic“⇔ P sa fie

”mare“,

T ≈ 1.

In concluzie, pentru limitarea comenzii trebuie ca:

(i) Pe banda de frecvente pe care |L(jω)| � 1 (de exemplu ω ≥ ωn) saavem |C(jω)| � 1. Acest lucru este ın acord cu rejectia zgomotelor pe bandaω ≥ ωn;

(ii) Sa asiguram |L(jω)|�1 doar ın banda de trecere a lui P , unde |P (jω)|>1.

In general comanda u nu se poate impune mai mica decat perturbatia d (avemu ≈ d, acolo unde |L(jω)| � 1, adica pentru frecvente joase unde d este mare).

4. Eroare mica de urmarire. Prin aceasta cerinta de performanta seurmareste obtinerea unei erori de urmarire a referintei cat mai mici. Transferuleste e = Sr. Pentru a avea eroare e mica trebuie ca:

S :=1

1 + Lsa fie

”mic“ ⇔ L := PC sa fie

”mare“, ∀ω ≤ ωr.

Cerintele de robustete 5 si 6 (stabilitate si performanta robusta) implica asi-gurarea stabilitatii interne si respectiv a performantelor specificate la punctele1–4 ın conditiile prezentei inerente a unei incertitudini ın modelul procesu-lui nominal P (modelul real P nu este cunoscut cu exactitate, doar se stieca apartine unei multimi de modele admisibile formalizate matematic ıntr-unanumit fel). In aceste conditii, stabilitatea si performantele sistemului de re-glare trebuie sa fie asigurate, prin proiectarea adecvata a regulatorului robustC, pentru toate sistemele din multimea admisibila (nu numai pentru P nomi-nal).

Descrierea matematica a multimii admisibile de modele se poate face ın maimulte feluri: aditiv, multiplicativ, sau pe factori coprimi. Pentru modelareamultiplicativa prezentata ın continuare multimea de modele admisibile estedescrisa de modelul nominal P si o functie de transfer data (o pondere) W cecuantifica profilul frecvential al amplitudinii incertitudinii, sub forma

P = (1 + ∆W )P, (2.6)

unde ∆ este o functie de transfer variabila ce descrie incertitudinea de faza siactioneaza ca un factor de scalare a amplitudinii, cu

‖∆‖∞ ≤ 1.

36 Teoria sistemelor automate. Indrumar de laborator

Folosim urmatoarele ipoteze8: ambele functii W si ∆ sunt stabile, W estetipic de faza minima si monoton crescatoare (incertitudinile de modelare crescodata cu cresterea frecventei) si nu au loc simplificari poli-zerouri la formarealui P .

Ideea din spatele clasei de modele (2.6) este ca ∆W este incertitudineanormalizata ın raport cu 1, i.e.,

P

P− 1 = ∆W.

Cum ‖∆‖∞ ≤ 1, rezulta

∣∣∣∣P (jω)

P (jω)− 1

∣∣∣∣ ≤ |W (jω)|, ∀ω. (2.7)

5. Stabilitate robusta. Stabilitatea interna a sistemului ın bucla dereactie din Fig. 2.1 este robusta daca se pastreaza pentru o ıntreaga vecinatatede procese ın jurul procesului nominal P . Pentru a masura robustetea stabi-litatii s-au introdus mai multi indicatori numiti sintetic margini de stabilitate:marginile de amplificare, marginea de faza si marginea vectoriala.

Margini de amplificare. Daca exista o frecventa ωπ astfel ıncatargL(jωπ) = −π si |L(jωπ)| ∈ (0, 1), se defineste marginea de amplificare su-perioara

MAs = 1/|L(jωπ)|. (2.8)

Daca o asemenea frecventa nu exista, se considera MAs =∞. Daca exista maimulte astfel de frecvente, se ia cea pentru care modulul este cel mai mare.

Daca exista o frecventa ωπ astfel ıncat argL(jωπ) = −π si |L(jωπ)| > 1, sedefineste marginea de amplificare inferioara

MAi = 1/|L(jωπ)|. (2.9)

Daca o asemenea frecventa nu exista, se considera MAi = 0. Daca existamai multe astfel de frecvente, se ia cea pentru care modulul este cel mai mic.

O interpretare uzuala a notiunii de margine de amplificare este ca ea repre-zinta factorul maxim cu care poate creste amplificarea ın bucla deschisa faraca sistemul ın bucla ınchisa sa-si piarda stabilitatea. Mai exact, sistemul kLeste stabil ın bucla ınchisa ∀k a.ı., 1 ≤ k < MA.

Marginea de faza. Fie ωt frecventa la care |L(jωt)| = 1 (daca exista maimulte astfel de frecvente, se ia cea pentru care argL(jωt) este cel mai aproapede −π). Marginea de faza este

MF = π + argL(jωt). (2.10)

8Ipotezele sunt de natura tehnica si nu limiteaza practic aplicabilitatea metodei.

Laboratorul 2. Performantele si robustetea SRA 37

O interpretare uzuala a notiunii de margine de faza este ca ea reprezintafaza negativa ce se poate adauga sistemului ın bucla deschisa fara ca sistemulın bucla ınchisa sa-si piarda stabilitatea. Mai exact, sistemul e−jθL este internstabil ın bucla ınchisa ∀θ a.ı. 0 ≤ θ < MF .

Marginea vectoriala. Marginea vectoriala este definita ca distanta de lapunctul critic la locul Nyquist:

MV = infω|1 + L(jω)| = ‖S‖−1

∞ . (2.11)

Marginile introduse mai sus sunt reprezentate ın Fig. 2.2. Conventional seconsidera ca sistemul este stabil robust daca

MAs > 2, MAi < 0.5, MF > 30◦, MV > 0.5. (2.12)

Marginea vectoriala este cel mai bun indicator al marginii de stabilitate ceınlocuieste cu succes marginile de amplitudine si de faza, eliminand toate ne-ajunsurile legate de punctele multiple de taiere.9

Im

ReMF

MV

1MAi

1MAs

ωπ

ωt

ωπ

1

Figura 2.2.: Marginile de stabilitate ale sistemului L(s).

9Se poate arata ca o margine buna vectoriala implica atat margini de amplitudine cat side faza bune, dar reciproca nu este ın general adevarata, cel putin pentru sisteme cucomplexitate mai ridicata.

38 Teoria sistemelor automate. Indrumar de laborator

In cazul ın care clasa de modele incerte este descrisa de (2.6), stabilitatearobusta se poate testa simplu folosind urmatorul rezultat necesar si suficientpentru stabilitate robusta:

Regulatorul C asigura stabilitate robusta sistemului din Fig. 2.1, cuincertitudinea de modelare descrisa ın (2.6), daca si numai daca

‖WT‖∞ < 1. (2.13)

Conditia (2.13) este ın forma ın care am cuantificat diversele tipuri de perfor-manta 1–4 (ın termenii lui T ). De aceea pentru profilul incertitudinii de modelse utilizeaza adesea notatia WT := W (folosita si ın continuare).

6. Performanta robusta. Notiunea de performanta robusta se refera lafaptul ca stabilitatea interna si performanta nominala (specificata de exemplude conditia ‖WSS‖∞ < 1, unde WS este o functie data prin cerintele deproiectare) sunt satisfacute pentru toate procesele incerte. In cazul modelariimultiplicative a proceselor incerte avem P = (1 + ∆WT )P , unde WT este ofunctie pondere ce cuantifica profilul frecvential al amplitudinii incertitudinii.Urmatorul rezultat contine un test de performanta robusta:

O conditie necesara si suficienta pentru performanta robusta este∥∥|WSS|+ |WTT |

∥∥∞ < 1. (2.14)

Daca apar simultan mai multe cerinte de performanta (ce implica diferiteponderi asupra lui S si T ) de forma

‖WSiS‖∞ < 1, i = 1, . . . , k, ‖WTjT‖∞ < 1, j = 1, . . . , l,

atunci definind

|WS(jω)| := maxi=1,...,k

|WSi(jω)|, |WT (jω)| := maxj=1,...,l

|WTj (jω)|

se poate arata ca toate cerintele de stabilitate si performanta (nominala sirobusta) pot fi sintetizate echivalent sub forma compacta din testul (2.14).

2.2. Sarcini de lucru

Problema R2.1. Fie sistemul de ordinul III, L =3

(s+ 1)3. Determinati

marginile MA si MF .

Solutie. Folosim functia Matlab margin. Marginile se pot citi de pe loculNyquist sau din diagramele Bode. In Fig. 2.3 se reprezinta locul Nyquistsi diagrama Bode obtinute prin codul Matlab din Sursa B.1 ce conduce laMA = 2.667 = 8.52 dB, ωπ = 1.73 rad/sec, MF = 41.7◦, ωc = 1.04 rad/sec.

Laboratorul 2. Performantele si robustetea SRA 39

−3 −2 −1 0 1 2 3 4

−2

−1

0

1

2

Re

Im

MF = 41.7◦

1

MA= 0.375

(a) locul Nyquist

10−1 100 101−60

−50

−40

−30

−20

−10

0

10

Am

pli

tud

ine

(dB

)

MA = 8.52 dB

ωc = 1.04 rad/sec

10−1 100 101−270

−225

−180

−135

−90

−45

0

MF = 41.7◦

ωπ = 1.73 rad/sec

Faz

a(g

rad

e)

Pulsatie (rad/sec)

(b) diagrama Bode

Figura 2.3.: Margini de stabilitate pentru Problema R2.1

40 Teoria sistemelor automate. Indrumar de laborator

Problema R2.2. Aceasta problema ilustreaza limitarile marginilor traditio-nale de faza si amplitudine ın raport cu marginea vectoriala. Fie

L =0.38(s2 + 0.1s+ 0.55)

s(s+ 1)(s2 + 0.06s+ 0.5).

Gasiti marginile de faza, amplitudine si vectoriala ale sistemului.

Solutie. Din diagramele Bode (vezi Fig. 2.4b), putem determina marginile deamplitudine si de faza. Conform cu Fig. 2.4, acest sistem are MA = ∞ siMF = 69.8◦, care satisfac conditiile generale asupra marginilor respective,vezi (2.12). Cu toate acestea, se observa ca locul Nyquist (vezi Fig. 2.4a)este extrem de aproape de punctul critic (−1, 0). O combinatie ıntre o micaamplificare si un mic defazaj poate duce sistemul ın instabilitate.

Fig. 2.4(a) ilustreaza marginea vectoriala a sistemului ın discutie. Pentruproiectare se impune tipicMV > 0.5. iar acest sistem areMV = 0.27. UtilizandMatlab, putem determina norma infinit ın doua moduri (pe baza careia amobtinut valorea numerica a MV ): cu functia norm sau direct din diagrameleBode. In acest caz,

‖S‖∞ = 3.6773 = 11.31 dB ⇒ MV = 0.27.

In consecinta pentru acest sistem marginile traditionale de robustete a sta-bilitatii, MA si MF , cu toate ca sunt ambele bune, sunt de fapt ınselatoareıntrucat sistemul este aproape de instabilitate, lucru evidentiat de MV mica.Codul MATLAB corespunzator este cel din Sursa B.2.

−2.25 −1.75 −1.25 −0.75 −0.25 0.25 0.75 1.25 1.75 2.25

−1

−0.5

0

0.5

1

Re

Im

MV = 0.27

(a) locul Nyquist

Laboratorul 2. Performantele si robustetea SRA 41

10−2 10−1 100 101 102−100

−80

−60

−40

−20

0

20

40A

mp

litu

din

e(d

B)

MA =∞ dB

10−2 10−1 100 101 102−225

−180

−135

−90

MF = 69.8◦

Faza

(gra

de)

Pulsatie (rad/sec)

(b) diagrama Bode

Figura 2.4.: Locul Nyquist si Diagrama Bode Problema R2.2

Problema R2.3. Consideram un sistem de ordinul III (vezi Fig. 2.1) cu

functia de transfer P =1

(s+ 1)3si un regulator de tip PID (proportional,

integral, derivativ) cu kp = 0.6, ki = 0.5 si kd = 2, C = kp +kis

+ kds.

Punem ın serie cu regulatorul un filtru de zgomot de ordinul II, avand functiade transfer

C =kds

2 + kps+ kis(s2 T 2

f /2 + sTf + 1),

cu Tf = 1.Analizati raspunsurile ın frecventa si timp ale iesirii la perturbatii d(t) = 1(t)

si raspunsurile ın frecventa si timp ale comenzii la zgomot n(t) = 1(t).

Solutie. Sa tratam primul caz. Raspunsul sistemului Hyd ın timp si frecventa

este dat ın Figurile 2.5a si 2.5b. Observati ca perturbatia este rejectata. In

42 Teoria sistemelor automate. Indrumar de laborator

plus, ymax = 0.4133 pentru tmax = 4.1044 sec. Raspunsul ın frecventa arataca amplificarea maxima este de −1.8249 dB la ωmax = 0.3511 rad/sec.

Figurile 2.5c si 2.5d prezinta raspunsul comenzii u la n(t) = 1(t). Amelio-rarea amplificarii la ınalta frecventa pentru functia Hun(jω) apare datoritafiltrarii; ın absenta acestui filtru, amplificarea ar fi continuat sa creasca chiarsi dupa valoarea ei maxima de la 25.9808 rad/sec.

0 5 10 15 20 25 30 35 40−0.2

0

0.2

0.4

0.6

Timp (sec)

Iesi

rey

tmax = 4.1044, ymax = 0.4133

(a) raspuns ın timp la treapta

10−2 10−1 100 101 102−150

−100

−50

0

Pulsatie (rad/sec)

|Hyd(jω

)|[d

B]

ωmax = 0.3511, |Hyd(jω)|max = −1.8249 dB

(b) diagrama Bode Hyd

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2−15

−10

−5

0

5

Timp (sec)

Com

and

au

tmax = 0.4190, umax = 0.3930

(c) raspuns ın timp la treapta

Laboratorul 2. Performantele si robustetea SRA 43

10−2 10−1 100 101 102 103−10

0

10

20

30

Pulsatie (rad/sec)

|Hun(jω

)|[d

B]

ωmax = 13.0782, |Hun(jω)|max = 25.9808 dB

(d) diagrama Bode Hyd

Figura 2.5.: Raspunsul la perturbatii pentru Problema R2.3

Se mai poate observa ca umax = 0.3930 la tmax = 0.4190 sec. Raspunsul ınfrecventa are amplificarea maxima de 25.9808 dB la ωmax = 13.0782 rad/sec.

Ilustratiile din Fig. 2.5 sunt realizate cu codul Matlab din Sursa B.3.

Problema R2.4. Proiectare ın frecventa: ventilator pozitionat pe oaripa. (Ducted Fan, vezi http://www.cds.caltech.edu/~murray/papers/1998n_mm99-cca.html, echipament din dotarea unui laborator de la Caltech,Fig. 2.6). Sistemul replica dinamica longitudinala a unei aeronave (aripa simotor). Ecuatia diferentiala neliniara dintre unghiul θ si forta aerodinamicaf1 este

Jθ = rf1 − ζθ −mgl sin θ,unde J = 0.04754 kg·m2 este momentul de inertie, m = 1.5 kg este masamotorului, r = 0.25 m este distanta de la punctul de aplicatie al fortei f1 laflapsuri, g = 10 m/s2 este acceleratia gravitationala, ζ = 0.1 este coeficientulde frecare vascoasa, iar l = 0.05 m este pozitia centrului de masa.

Sistemul prezinta cateva incertitudini: parametrii r, ζ pot varia (nu pot fideterminati cu precizie), aerodinamica aripii este neglijata, dinamica supor-tului nu este luata ın considerare. De asemena, apar numeroase surse dezgomot de masura pentru x, y, θ. In aceste conditii, ne propunem realizareaurmatoarelor specificatii de performanta:

• eroare stationara sub 1% pentru raspunsul indicial, i.e., |εst| ≤ 0.1;

• eroare de urmarire de sub 5% pentru semnale armonice de frecventa depana la 2Hz, i.e. |εurm| ≤ 5%;

• incertitudini parametrice: r poate varia cu pana la 20%.

Pentru compensatorul

C = 4500s+ 25

s+ 300

rezolvati urmatoarele cerinte:

44 Teoria sistemelor automate. Indrumar de laborator

(a) (b)

Figura 2.6.: Sistemul Ducted Fan - dinamica longitudinala a avionului.Ilustratie pentru Problema P2.4.

(i) Determinati functia de transfer ıntre unghiul θ si forta f1, P =θ

f1;

(ii) Pe baza specificatiilor de performanta din enunt, gasiti functia pondereWS . Verificati grafic ca se respecta relatia ‖WSS‖∞ < 1;

(iii) Considerand incertitudinile parametrice r = r + δr, calculati functia detransfer P = P (1 + ∆WT ) unde ||∆||∞ ≤ 1 si functia pondere asociataWT ; Verificati grafic ca se respecta relatia ‖WTT‖∞ < 1.

(iv) Verificati conditia de performanta robusta, ‖ |WSS|+ |WTT | ‖∞ < 1.

Solutie. (i) Pentru variatii mici ale lui θ, folosim aproximarea liniara sin θ ≈ θ.In consecinta sistemul devine liniar si prin aplicarea transformatei Laplacese ajunge la relatia:

s2 · Jθ = rf1 − s · ζθ −mglθde unde se extrage functia de transfer ıntre unghiul θ si forta f1:

P =r

Js2 + sζ +mgl=

0.25

0.0475s2 + 0.1s+ 0.75.

(ii) Conform definitiei, obtinem functia de sensibilitate

S =1

1 + PC=

0.0475s3 + 14.35s2 + 30.75s+ 225

0.0475s3 + 14.35s2 + 1156s+ 28350,

iar specificatiile de performanta pot fi exprimate formal:

|S(0)| ≤ 0.01,

|S(jω)| ≤ 0.05, 0 < ω ≤ 4π ≈ 12 rad/sec.

Laboratorul 2. Performantele si robustetea SRA 45

Dupa cum se observa ın Fig. 2.7(a), specificatiile de performanta suntrespectate.

Cautam o functie pondere de forma

WS =K

(Ts+ 1)2

a.ı. sa rescriem sintetic specificatiile anterioare sub forma compacta‖WSS‖∞ < 1.

Deoarece

S(0) =225

28350= 0.0079

si WS(0) = K rezulta ca orice valoare K · 0.0079 ≤ 1, adica K < 126.58,este suficienta. Alegem K = 125.

Din grafic se observa ca functia S creste ıncepand cu ω ≈ 4 de la −50 dBpana la −25 dB ın ω = 12. Aceasta ınseamna o crestere de aproximativ

31 dB/decada. Un pol dublu cu pulsatia de rezonanta ın T =1

4va

contracara comportamentul lui S.

Cu valorile obtinute anterior obtinem

WS =125

(0.25s+ 1)2.

In Fig. 2.7(b) ilustram termenul |WSS|.

10−2 10−1 100 101 102 103 104

−40

−20

0

0.01 = −40 dB

0.01 = −26.02 dB

ω = 12

Pulsatie (rad/sec)

Am

pli

tud

ine

(dB

)

(a) |S|

46 Teoria sistemelor automate. Indrumar de laborator

10−2 10−1 100 101 102 103 104

−40

−20

0

1 = 0 dB

ω = 12

Pulsatie (rad/sec)

Am

pli

tud

ine

(dB

)

(b) |WSS|

Figura 2.7.: Functia de sensibilitate si functia pondere asociata pentru Pro-blema R2.4

(iii) Scriem P sub forma

P =

(1 +

δr

r

)P ,

∣∣∣∣δr

r

∣∣∣∣ = |∆WT | ≤ 0.2 ,∀ω , cu |∆| ≤ 1.

Prin urmare, putem alege WT = 0.2, i.e., o functie constanta care ınde-plineste specificatia de performanta |WTT | ≤ 1.

100 101 102 103 104

−60

−40

−20

0

Pulsatie

Am

pli

tud

ine

(dB

)

δr = 0

δr = −0.2

δr = 0.2

(a) |T |

Laboratorul 2. Performantele si robustetea SRA 47

100 101 102 103 104

−60

−40

−20

0

Pulsatie

Am

pli

tud

ine

(dB

)

δr = 0

δr = −0.2

δr = 0.2

(b) |WTT |

Figura 2.8.: Functia de urmarire a referintei si ponderea asociata pentru Pro-blema R2.4

In Fig. 2.8(a) ilustram functia T (pentru diverse valori ale parametruluiδr) iar ın Fig. 2.8(b) valorile termenului |WTT |.

(iv) Reprezentam pe acelasi grafic, ın Fig. 2.9, marimile |WSS| , |WTT | si|WSS|+ |WTT |.

10−1 100 101 102 103 104

−60

−40

−20

0

Pulsatie (rad/sec)

Am

pli

tud

ine

(dB

)

|WSS||WTT ||WSS|+ |WTT |

Figura 2.9.: Verificare robustete pentru Problema R2.4

Se observa ca nu se ındeplineste conditia de robustete (se depaseste va-loarea 1 = 0 dB ın jurul valorilor ω = 0.1 si ω = 10.

Ilustratiile sunt realizate cu codul Matlab din Sursa B.4.

48 Teoria sistemelor automate. Indrumar de laborator

Problema R2.5. Functia de transfer nominala P si functia pondere W ca-racterizeaza sistemul incert P , vezi relatia (2.6). Fie

P =1

s2, P = e−τs

1

s2, (2.15)

cu 0 ≤ τ ≤ 0.1. Cuantificati incertitudinea multiplicativa W introdusa deelementul de ıntarziere.

Solutie. Vrem sa gasim o multime P a.ı.

P ∈ P = {(1 + ∆W2)P : ‖∆‖∞ ≤ 1} .

Inegalitatea (2.7) devine

|e−jωτ − 1| ≤ |W2(jω)| , ∀ω, τ.Dupa cateva ıncercari, functia pondere de ordinul I a fost aleasa

W =0.21s

0.1s+ 1.

Fig. 2.10 reprezinta grafic diagrama Bode si locul Nyquist pentru τ = 0.1,cea mai mare valoare. Observati ca functia pondere margineste superior am-plitudinea |e−jωτ − 1|.

10−1 100 101 102 103

−300

−200

−100

0

Pulsatie (rad/sec)

Am

pli

tud

ine

(dB

)

e−τs − 1

W2(s)

(a) Diagrama Bode

Laboratorul 2. Performantele si robustetea SRA 49

−2 −1 0 1 2 3−1.25

−0.75

−0.25

0.25

0.75

1.25

Re

Im e−τs − 1

W2(s)

(b) Locul Nyquist

Figura 2.10.: Caracteristicile frecventiale pentru Problema P2.5

Codul Matlab folosit este detaliat ın Sursa B.5.

Problema R2.6. Se considera un proces al carui model se obtine prin identi-ficare experimentala ın frecventa. Amplitudinea si faza sunt masurate ıntr-unnumar de pulsatii ωi ∈ [0.01, 100], i = 1 : 61, repetand masuratorile de 10 orila fiecare pulsatie, rezultand punctele (Mik , φik), la experimentul k = 1 : 10.Valorile medii ale amplitudinii si ale fazei la fiecare pulsatie ın parte rezultaın 61 de perechi de date (M,φ). Datele sunt centralizate ın fisierul MatlabdateInterp.mat care contine valorile medii ale amplitudinii masurate ın vec-torul m si ale fazei masurate ın vectorul f, precum si pulsatiile ın care aufost efectuate masuratorile respective date ın vectorul interp, vezi Anexa B.2.Folosind aceste date experimentale, potriviti o functie de transfer P , de fazaminima. Mai mult, gasiti o functie pondere WT astfel ıncat

∣∣∣∣Mikε

jφik

Miεjφi− 1

∣∣∣∣ ≤ |WT (jωi)| , i = 1 : 121, k = 1 : 10. (2.16)

Solutie. Din definitia proceselor cu incertitudini multiplicative avem

P = P [1 + ∆WT ]⇔∣∣∣∣∣P

P− 1

∣∣∣∣∣ ,

de unde rezulta relatia (2.16).Folosind functia Matlab tfest calculam ın ordine crescatoare a preciziei mo-

delele

Pi =BiAi, Ai = a0 +a1s+ · · ·+ai+2s

i+2, Bi = b0 +b1s+ · · ·+bisi, i = 1 : 3,

50 Teoria sistemelor automate. Indrumar de laborator

i.e.,

• cu un zerou si doi poli,• cu doua zerouri si patru poli,• cu trei zerouri si cinci poli,

care sa interpoleze datele experimentale. Astfel, ın baza codului Matlab demai jos,

data=f rd (m.∗ exp (1 j ∗ f ∗ pi /180) , i n t e r p ) ; \% Se creeaza puncte l e din\\ \hspace ∗{8cm}\% planu l complex m i∗exp ( i ∗omega i ) .

2 np=[3 4 5 ] ;nz=[1 2 3 ] ;

4 f o r j =1:3P( j )=t f e s t ( data , np( j ) , nz ( j ) ) ; \% Functia Matlab care c reeaza\\ \hspace ∗{8 .6cm}\% f u n c t i i l e r a t i o n a l e complexe \\ \hspace∗{8 .6cm}\% care i n t e r p o l e a z a data .

6 end ,

rezulta cele trei functii de transfer care interpoleaza datele frecventiale aleprocesului nominal dat. In tabelul 2.1 sunt dati coeficientii funtiilor de transferPi rezultate, pentru i = 1 : 3. Interpoland cu tfest, se rezolva in sensul Celor

a0 a1 a2 a3 a4

i = 1 5.57 · 1016 4.07 · 1016 4.05 · 1013 0 0i = 2 1.303 · 108 1.011 · 1019 6.6 · 1018 8.077 · 1016 0i = 3 1.17 · 106 3.69 · 106 1.38 · 105 2865.8 79.749

b0 b1 b2 b3

i = 1 5.63 · 1015 3.54 · 1016 0 0i = 2 1.01 · 1016 1.359 · 1018 4.79 · 1018 0i = 3 1.75 · 105 1.34 · 106 6117.7 743.43

Tabelul 2.1.: Tabele cu coeficientii functiilor de transfer Pi, i = 1 : 3 careinterpoleaza datele experimentale

Mai Mici Patrate (CMMP) sisteme subdeterminate care au drept necunoscutecoeficientii numaratorilor si ai numitorilor functiilor de transfer. Functia tfestproduce sisteme de faza minima care potrivesc datele experimentale.

Incertitudinile sunt profilate cu WT care sa satisfaca relatia (2.16), ca unfiltru trece-sus

WT =s+ ωB/M

As+ ωB.

Alegand ωB = 0.3, A = 0.2 si M = 15 rezulta un profil

WT (s) =s+ 0.02

0.2s+ 0.3, (2.17)

Laboratorul 2. Performantele si robustetea SRA 51

care satisface relatia (2.16) vezi figura 2.11. Incertitudinea ∆, cu ‖∆‖∞ ≤ 1este creata astfel,

Delta=u l t idyn ( ’ DeltaP ’ , [ 1 1 ] )

Comanda de mai sus genereaza un sir de sisteme ∆ cu o intrare si o iesire,liniare si invariante ın timp, care modeleaza incertitudinile la ınalta frecventa.Functiile ∆ obtinute satisfac proprietatea ca |∆(jω)| ≤ 1. Astfel procesele

incerte vor fi Pi = Pi[1 + ∆WT ], i = 1 : 3.

10−2 10−1 100 101 102

−50

0

Pulsatie (rad/sec)

Am

pli

tud

ine

(dB

)

data

data p

data p1

WT

Figura 2.11.: Profilul de incertitudine WT din (2.17) satisfacand relatia (2.16)(puncte stelate) si datele reale (puncte tip cruce) masuratori me-diate (linie ıntrerupta)

Asa cum ne asteptam, se observa din Fig. 2.12 ca P3 este cea mai buna apro-ximare a datelor, ındepartandu-se de profilul de incertitudini ın zona de ınaltafrecventa. De asemenea, P3 este un proces de faza minima cu polii si zerouriledeterminate de functiile Matlab pole si, respectiv, zero:

1 >> po le (P3) ’ans =

3 Columns 1 through 3−39.714 − 23 .383 i −39.714 + 23.383 i −1.5324e−08 − 41 .428 i

5 Columns 4 through 5−1.5324e−08 + 41.428 i −0.32179

7 >> zero (P3) ’ans =

9 −4.0494 − 42 .312 i −4.0494 + 42.312 i −0.13028

52 Teoria sistemelor automate. Indrumar de laborator

10−2 10−1 100 101 102 103

−100

−50

0

50

Pulsatie (rad/sec)

Am

pli

tud

ine

(dB

)

Pn

P1t 1z3p

P2t 2z4p

P3t 3z5p

Figura 2.12.: Diagramele de amplitudine a procesului nominal (linie continua),

a proceselor P1 incerte (linie ıntrerupta), P2 incerte (linie punc-

tata) si P3 incerte (linie stelata)

Codul software Matlab cu care au fost obtinute rezultatele se regaseste ınSursa B.6.

Problema R2.7. Consideram un sistem perturbat dat de

P = [1 + ∆W ]P

(incertitudini multiplicative), unde

P =1

s− 1, W =

4

s+ 10.

Perturbatia stabila ∆ satisface conditia ‖∆‖∞ ≤ 1. Alegem un compensatorproportional de forma C = k. Gasiti intervalul admisibil pentru k a.ı. sistemulsa fie stabil ∀∆.

Solutie. Pentru stabilitatea nominala polinomul caracteristic χ(s) are toateradacinile ın C−:

χ = s− 1 + k ⇔ 1− k < 0 ⇔ k > 1.

Conditia pentru stabilitate robusta se scrie echivalent

‖WT‖∞ < 1 ⇔ |W (jω)T (jω)| < 1,∀ω ⇔∣∣∣∣

4k

(jω + 10)(jω − 1 + k)

∣∣∣∣ < 1,∀ω.

Laboratorul 2. Performantele si robustetea SRA 53

-120dB

-60dB

0dB

60dB

Figura 2.13.: Locul Nyquist ınchis cu ω ∈ (−∞,∞) pentru Problema R2.7

Observam din diagrama Bode a functei WT ca supremumul se atinge pentruω = 0.

Tinand cont ca k > 1, relatia de mai sus devine

∣∣∣∣4k

10(k − 1)

∣∣∣∣ < 1 ⇔ k >10

6> 1.

Fig. 2.13 reprezinta locul Nyquist cu k = 2 pentru L(jω) cu ω ∈ R (inclusivınchiderea sferei Riemann la infinit). Am folosit functia Matlab nyqlog(sys),pe care o puteti gasi ın Anexa. Observati ca hodograful ıncercuieste o singuradata punctul critic (exact cati poli instabili are L). Testam pentru catevafrecvente ca punctul critic se afla ın exteriorul discului de centru L si raza|W2L| cu ajutorul Sursei B.7.

54 Teoria sistemelor automate. Indrumar de laborator

Problema R2.8. Impuneti o specificatie de performanta nominala, mai exact,o eroare de urmarire de sub 5% pentru semnale armonice cu frecventa de panala 4 Hz. Formal:

|εurm| ≤ 0.05 ⇔ |S(jω)| ≤ 0.05 , 0 < ω ≤ 8π ≈ 25 rad/sec.

Solutie. Pentru a scrie specificatia de performanta sub forma ‖WS‖∞ < 1,trebuie sa impunem prin proiectare o pondere functie de frecventa W . Avem

|S(jω)| ≤ 1

|W (jω)| = 0.05 , 0 < ω ≤ 8π ≈ 25.

Prin urmare, |W (jω)| = 1/0.05 = 20, adica |W (jω)|dB = 26 dB. W esteasadar un filtru trece-jos, cu pulsatia de taiere ωr = 25 rad/s, de forma

Wa =20

s25 + 1

sau Wb =20

(s25 + 1

)2 .

Fig. 2.14 prezinta diagrama Bode ın amplitudine pentru W si 1/W (ambelevariante a si b). Se vede din grafic ca |Wb(jω)| are panta mai mare la pulsatiade taiere, fiind astfel mai buna. Observati ca functia de sensibilitate estemica la frecvente joase (i.e., atenueaza) si e marginita superior de 1/|W (jω)|.Fig. 2.14 a fost obtinuta cu ajutorul codului din Sursa B.8.

100 101 102 103−40

−20

0

20

40

Wb

Wa1

Wa

1

Wb

Figura 2.14.: Diagrama Bode pentru Problema R2.8

Laboratorul 2. Performantele si robustetea SRA 55

2.3. Sarcini aditionale

Problema P2.9. Studiul dinamic al pendulului invers. Consideramsistemul cu functia de transfer de la u la x a pendulului inversat Hxu si datelenumerice M = 9 kg, ` = 9/10 m, respectiv m = 1 kg, g = 10 m/s2. Se dispunede o functie care calculeaza compensatorul stabilizator, prin alocarea polilorın bucla ınchisa ın {−1,−2,−3,−4}. Apelul tipic al functiei este

1 [ Hxu ,C] = stab p inv (m,M, l ) ;

Cerinte:

(i) Gasiti un compensator stabilizator si desenati cu Matlab raspunsul latreapta. Observati daca C este propriu sau strict propriu. Determinatipolii sistemului ın bucla ınchisa. Care este valoarea de regim stationar?Justificati.

(ii) Realizati modelul Simulink al buclei de reglare. Sa se vizualizeze ras-punsurile la treapta respectiv rampa. Veti face un script *.m care vainteractiona cu diagrama Simulink. Cum justificati faptul ca oricare dincompensatoarele stabilizatoare alese de voi regleaza la referinte de tiptreapta sau rampa ?

(iii) Aceleasi cerinte ca la punctul (ii), pentru sistemul cu functia de transferde la u la x a pendulului direct, folosind rutina MATLAB stab pdir.mcare returneaza compensatorul stabilizator.

(iv) Probati ın Matlab ca regulatorul calculat la (ii) pentru sistemul liniarizatın jurul punctului de echilibru (x, θ) = (0, 0) (pendulul inversat) nu sta-bilizeaza sistemul liniarizat ın jurul punctului de echilibru (x, θ) = (0, π)(pendulul neinversat). In concluzie, comportamentul sistemului neliniardepinde esential de punctul de echilibru ın jurul caruia a fost liniarizat.

(v) Sa se localizeze marginea de amplitudine, de faza si vectoriala pentrufunctia de transfer ın bucla deschisa, pe diagramele Nyquist respectivBode. Analiza se va face pentru ambele sisteme, pendul invers si penduldirect.

Problema P2.10. Microscopul de putere atomica este un microscop curezolutie foarte fina, de ordinul fractiunilor de nanometru, 1nm = 10−9m,mult sub limita de difractie a sistemelor optice. Cautati pe Google sintagma”atomic force microscopy”.

Consideram aici sistemul de pozitionare a probei ın microscopul atomic.Sistemul are o dinamica puternic oscilatorie si poate fi aproximat cu un modelmasa - resort avand o amortizare mica, e.g., ζ = 0.01, ωn = 10 rad/sec,

56 Teoria sistemelor automate. Indrumar de laborator

P =ω2n

s2 + 2ζωns+ ω2n

.

Folosim un compensator cu actiune integrala, de forma C =kis

pentru satis-

facerea urmatoarelor cerinte:

(i) Determinati L si L(jωn). Verificati ca argL(jωn) = −π. Rezulta imediatca ωπ = ωn, valoare independenta de ki.

(ii) Aratati ca

MV = 1− ki2ζωn

.

Indicatie. Observati ca infimumul se atinge ın ωn din expresia lui MV .Puteti folosi Matlab ca sa desenati diagramele Bode si locul Nyquist pen-tru L: click dreapta, Characteristics - All stability margins.

(iii) Daca impunem pentru MV o valoare prestabilita prin proiectare, obtinem

ki = 2ζωn(1−MV ) .

Alegeti MV = 0.6. Trasati locul Nyquist si diagramele Bode pentru L cuacest ki. Determinati frecveta ωc, marginile de stabilitate si frecventa derezonanta.

(iv) Fie MV = 0.5 : 0.1 : 0.8. Cum se modifica diagramele Bode si loculNyquist pentru sistemul ın bucla deschisa L? Dar frecventa critica ωc?

Problema P2.11. Propagarea caldurii. Un model simplificat pentrupropagarea caldurii ın solide este dat de functia de transfer

P = ke√s.

(i) Aratati ca√j = ±

(√2

2 +√

22 j).

(ii) Desenati ın Matlab locul Nyquist pentru k = 1, cu ω = 0 : 0.1 : 500.Indicatie. Calculati U(ω) si V (ω), iar apoi apelati plot(U,V).

(iii) Pentru k = 1, gasiti ωπ pentru care argP (jωπ) = −π, amplificarea|P (jωπ)| si MA. Indicatie. Cautam practic intersectia cu axa reala, i.e.,V (ωπ) = 0. Asadar, se impune ın Matlab o conditie de tipul |V | ≤ 10−9.

(iv) Aratati ca pentru k = eπ sistemul se afla la limita de stabilitate, adicalocul Nyquist trece prin punctul critic (−1, 0). Verificati ın Matlab.

(v) Generalizati punctul (iii) pentru k oarecare.

Laboratorul 2. Performantele si robustetea SRA 57

Problema P2.12. Am vazut ca anumite specificatii de performanta se potscrie sub forma ‖WS‖∞ < 1. Dati o interpretare geometrica acestei relatiiın termenii locului Nyquist al sistemului L. Indicatie. Relatia se poate scrieechivalent

‖WS‖∞ < 1 ⇔∣∣∣∣W (jω)

1 + L(jω)

∣∣∣∣ < 1, ∀ω ⇔ |W (jω)| < |1 + L(jω)|, ∀ω.

Problema P2.13. Sistem cu ıntarziere. Fie functia de transfer pe caleadirecta

L =ke−τs

s+ 1.

(i) Pentru τ = 0.1 sec gasiti k a.ı. MF ≈ 45◦.

(ii) Desenati graficul luiMF (τ) pentru k de la punctul anterior si 0 ≤ τ ≤ 0.25.

Problema P2.14. Controlul vitezei de croaziera a unui vehicul. Consi-deram aici problema mentinerii vitezei unui vehicul care urca un deal. Sistemuldinamic simplificat pentru masina ın urcare este prezentat ın Fig. 2.15. Fiev(t) viteza masinii, m masa totala (inclusiv pasagerii), F (t) forta de tractiunegenerata de motor, iar Fd(t) forta perturbatoare cauzata de gravitatie, frecaresi rezistenta aerodinamica. Ecuatia de miscare a masinii este

mdv(t)

dt= F (t)− Fd(t).

Dupa analiza dinamica a sistemului - se scriu ecuatiile fizice detaliat si seliniarizeaza dinamica ın jurul unui punct stationar de echilibru (veti studiamai multe la cursul de Modelare si Simulare), se obtine ecuatia diferentiala

d

dt[v(t)− ve] = −a[v(t)− ve] + b[u(t)− ue]− gθ,

unde u(t) este comanda data de motor (intrarea sistemului), iar (ve, ue) estepunctul de echilibru ın care forta dezvoltata de motor echilibreaza forteleperturbatoare, cu ve = 20 m/s, ue = 0.1616 m/sec2. Se cunosc parametriia = 0.0101, b = 1.3203, g = 9.81 m/sec2.

(i) Gasiti functia de transfer Pvu de la variatia comenzii ∆u(t) = u(t) − uela variatia vitezei ∆v(t) = v(t) − ve pentru miscarea pe plan orizontal,adica θ = 0. Veti obtine o functie de transfer de ordinul I centrata.

(ii) Desenati raspunsul la treapta si la impuls pentru P . Determinati po-lii si zerourile. Care este timpul tranzitoriu? Dar timpul de crestere?Indicatie. Pe graficul returnat de functia Matlab step, dati click dreaptasi alegeti Characteristics. Observati dinamica lenta a sistemului.

58 Teoria sistemelor automate. Indrumar de laborator

F

Fg

mg

θ

Figura 2.15.: Vehicul ın urcare. Ilustratie pentru Problema P2.14.

(iii) Ne propunem ın continuare proiectarea unui compensator PI prin metodaplasarii polilor ın bucla ınchisa. Compensatorul este dat de relatia

C = kp +kis,

unde kp si ki trebuie determinati. Gasiti expresia polinomului caracteris-tic χ = NPNC +MPMC .

(iv) Aici vom impune (plasa) radacinile lui χ. Ne dorim un polinom caracte-ristic ın bucla ınchisa de forma χd = s2 +2ζωns+ω2

n cu ζ = 1 si ωn = 0.5rad/s. Calculati numeric compensatorul PI (constantele necunoscute).Implementati ın Simulink bucla de reactie cu r(t) = 1(t) si n = d = 0,cu un timp de simulare de 100 sec. Vizualizati semnalele ∆u(t) si ∆v(t).Indicatie. Egalati coeficientii polinoamelor χ si χd.

(v) Presupunem acum ca automobilul ıntalneste un deal cu θ = 4◦ la momen-tul t = 60 sec. Simulati acest lucru ın Simulink. Vizualizati semnalele∆u(t) si ∆v(t). Indicatie. Introduceti o perturbatie de tip treapta pecomanda cu intarzierea de 60 sec. Considerati ca r(t) = 1(t) si n = 0.

(vi) Analizati dinamica sistemului reglat cu ajutorul diagramei Simulink. Ob-servati cum se modifica performantele pentru diferite valori ale lui ωn siζ. Indicatie. Fixati ζ = 1 si alegeti ωn ∈ {0.2; 0.5; 1} rad/s. Apoi, fixatiωn = 1 si alegeti ζ ∈ {0.5; 0.8; 1}.

(vii) Analizam ın continuare efectul variatiei parametrilor a si b asupradinamicii sistemului P si a performantelor sistemului reglat (spre exempluvariaza masa vehiculului din cauza numarului de pasageri). Consideram

a′ = a± 30%a, b′ = b± 30%b.

Reprezentati pe acelasi grafic raspunsul indicial pentru diferite valori aleparametrilor. Verificati ın Simulink performantele reglarii.

Laboratorul 2. Performantele si robustetea SRA 59

Problema P2.15. Altfel de analiza de robustete. Consideram sistemulde control al regimului de croaziera pentru un vehicul ın viteza a IV-a cuve = 25 m/s:

P =1.38

s+ 0.0142, C = 0.72 +

0.18

s.

Compensatorul este PI. Tratam ın aceasta problema incertitudinile aditive deforma P = P + ∆. Pentru stabilitate robusta trebuie ca

|δ(jω)| =∣∣∣∣∆(jω)

P (jω)

∣∣∣∣ <1

|T (jω)| , ∀ω ≥ 0.

Numim ın continuare δ eroarea relativa si ∆ eroarea absoluta. Se cere:

(i) Reprezentati pe acelasi grafic

∣∣∣∣P (jω)

T (jω)

∣∣∣∣ si1

|T (jω)| pentru plaja de frecvente

ω ∈ [10−2, 102]. Indicatie. Folositi bodemag(sys1, sys2, {1e-2,1e2}).Observati ca

|∆(jω)| <∣∣∣∣P (jω)

T (jω)

∣∣∣∣ , |δ(jω)| < 1

|T (jω)| , ∀ω ≥ 0.

(ii) Calculati ‖T‖∞ si frecventa ωpeak la care se atinge supremumul. Desenatidiagrama Bode pentru sistemul T si observati ca supremumul se atingela joasa frecventa. Determinati numeric cele mai mici incertitudini admi-sibile ε1 si ε2, i.e.,

|∆(jω)| < ε1, |δ(jω)| < ε2, ω = ωpeak.

Indicatie. Folositi apelul [ninf,fpeak] = norm(SYS,inf). Pentru adetermina amplitudinea la o pulsatie precizata, se apeleaza, e.g.,Ppeak = bode(P,fpeak).

(iii) Studiem acum conditiile de stabilitate robusta la ınalta frecventa. Ale-gem spre exemplu ωıf = 10 rad/sec. Calculati ın Matlab incertitudinileadmisibile ε1 si ε2 pentru ωıf.

(iv) Ce puteti concluziona despre robustetea stabilitatii sistemului ın buclaınchisa studiat? Argumentati riguros. Reprezentati locul Nyquist pentruL. Analizati grafic conditia de stabilitate robusta.

Problema P2.16. ACC Benchmark Problem. Consideram aici problemacelor doua vagoane interconectate printr-un resort. Fig. 2.16a prezinta sistemulmecanic, iar Fig. 2.16b prezinta diagrama bloc a sistemului. Parametri m1,m2 si k sunt incerti, toti egali cu 1 plus sau minus 20%. Functia de transfer dela forta f1 la x1 este G1, iar de la f2 la x2 este G2. Observati ca sistemul are o

60 Teoria sistemelor automate. Indrumar de laborator

m1 m2

forta u

pozitia x1 pozitia x2

(a) Sistemul mecanic

G1(s)

m1

G2(s)

m2

k

arc

u1 + f1 x1

+

y1x2

y2

u2

f2

F (s)

P (s)

(b) Diagrama bloc a sistemului y1 = Pu1

Figura 2.16.: ACC Benchmark Problem. Ilustratie pentru Problema P2.16.

singura marime de comanda u1 si un singur senzor de pozitie y1. Ne propunemproiectarea unui compensator robust si analiza de robustete a sistemului reglat:

(i) Calculati G1 si G2. Indicatie. Se pleaca de la ecuatia dinamica f = mx.

(ii) Verificati algebric din diagrama bloc a sistemului ca are loc relatia

F =

[0G1

] [1 −1

]+

[1−1

] [0 G2

].

(iii) Creati ın Matlab parametrii reali incerti m1, m2 si k folosind functiaureal. Construiti de asemenea functiile de transfer F si P . Gasiti poliisi zerourile sistemului nominal.Indicatie. P se construieste apeland P = lft(F,k).

(iv) Compensatorul este dat de functia de transfer

C(s) =100(s+ 1)3

(0.001s+ 1)3.

Laboratorul 2. Performantele si robustetea SRA 61

Calculati sistemul ın bucla ınchisa T . Reprezentati raspunsul indicialal lui T pentru 5 valori aleatoare. Indicatie. Utilizati functiile Matlabfeedback, step, usample.

(v) Studiati robustetea stabilitatii cu functia robuststab. Afisati raportulsi combinatia de parametri care duce la instabilitate. Ce putem conclu-ziona?

(vi) Sistemul prezinta o stabilitate robusta confortabila, mult peste anticipatul± 20%. Dar cat de mult se deterioreaza performantele sistemului ın buclaınchisa T? Calculati numeric cea mai nefavorabila amplificare a lui Tsi frecventa corespunzatoare acestei situatii. Desenati pe acelasi graficdiagrama Bode pentru cea mai nefavorabila situatie si 4 valori aleatoareale lui T . Indicatie. Folositi wcgain(T), usample, usubs.

Problema P2.17. Pe langa incertitudinile multiplicative, pot aparea si altemodele de incertitudine. Consideram functiile de transfer de forma

P =1

s2 + as+ 1, 0.4 ≤ a ≤ 0.8.

(i) Gasiti α si β a.ı. a = α + β∆, unde ∆ este un scalar cu proprietatea|∆| ≤ 1.

(ii) Functiile de transfer P (s) pot fi aduse la forma

P =P

1 + ∆W2P.

Determinati numeric functia de transfer nominala P si ponderea W2.Indicatie. Observati ca P = P pentru ∆ = 0.

(iii) Gasiti expresia care este marginita superior de |W2(jω)|. Probati acestfapt - desenati diagrama Bode pentru a = 0.4 : 0.1 : 0.8.

(iv) Implementati analiza din Anexa B.1 pentru problema noastra.

Problema P2.18. Amplificatorul operational. Consideram acum am-plificatorul operational (AO) studiat la Electronica, aratat ın Fig. 2.17. Nepropunem analiza performantelor AO ın prezenta incertitudinilor parametricesi a variatiilor pe sarcina la iesire (rezistenta suplimentara Rl, load). Dacamodelam dinamica AO ca v2 = −Gv, atunci functia de transfer pentru totcircuitul este

Gv2v1 = αG

G+ α+ 1,

62 Teoria sistemelor automate. Indrumar de laborator

unde α = R2/R1 >> 1 este raspunsul ideal al amplificatorului. Functia detransfer a AO este data de relatia

G =kb

s+ b,

unde b este largimea de banda a AO, iar k este amplificarea. Valorile parame-trilor sunt cunoscute: α = 104, b = 10 rad/sec, k = 107. Se cer urmatoarele:

+G(s)

v

R2R1

v2

v1

Rl

(a) schema eletrica

R2

R1

R1

R1 +R2−G(s)

v1 e vdv2

(b) schema bloc

Figura 2.17.: Amplificatorul operational cu dinamica incerta si diagrama bloc.Ilustratie pentru Problema P2.18.

(i) Calculati ın Matlab T si S. Reprezentati diagramele Bode pentru celedoua functii. Pentru ce banda de frecvente semnalul perturbator d esteatenuat? Indicatie. Verificati ca functia de sensibilitate este transferulıntre d si v2.

(ii) Presupunem acum ca apar variatii de ±30% ale parametrilor k si b.Reprezentati raspunsul indicial si diagrama Bode pentru Gv2v1 pertur-bat. Comentati rezultatele.

(iii) Rl introduce perturbatii nestructurate. Determinati P si implicit tipulde perturbatii (aditive, multiplicative) pentru ‖∆‖∞ < 1. Indicatie. Rleste legat ın paralel cu R2.

3. Limitari fundamentale ale SRA

Scopul laboratorului

In acest laborator sunt puse ın evidenta principalele limitari ale sistemelor dereglare automata (SRA), limitari ce nu pot fi depasite prin constructia niciunuiregulator conectat ın bucla de reactie.

3.1. Breviar teoretic

Consideram sistemul ın bucla de reactie din Fig. 3.1 ın care procesul P este dat,iar regulatorul C trebuie determinat astfel ıncat sistemul rezultant ın buclaınchisa sa atinga anumite performante impuse de specificatiile de proiectare.Definim

L := PC, S :=1

1 + L, T :=

L

1 + L,

numite functia de transfer ın bucla deschisa, functia de sensibilitate si respectivfunctia complementara de sensibilitate. Scopul acestui capitol este evidentiereadiferitelor constrangeri (limitari) de proiectare impuse de ınsusi modelul pro-cesului P , constrangeri ce nu pot fi depasite de nici un regulator din clasacelor care stabilizeaza intern sistemul. Pentru realizarea unei sinteze proactivea regulatorului este deci importanta cuantificarea limitarilor fundamentale deperformanta ınca din faza preliminara de prescriere a cerintelor proiectarii.

Punem ın evidenta trei categorii principale de constrangeri de proiectare:

• Algebrice;• In domeniul timp;• Frecventiale (analitice).

C Pr e u

d

up

do

y

n

Figura 3.1.: Sistem de reglare automata cu bucla de reactie.

64 Teoria sistemelor automate. Indrumar de laborator

Constrangeri algebrice

S + T = 1. Aceasta este o consecinta imediata a definitiilor lui S si T . Inparticular, relatia este valabila pentru orice s = jω si arata ca nu se poate cafunctia de sensibilitate si functia complementara de sensibilitate sa fie simul-tan (la aceeasi frecventa) foarte mici. O consecinta imediata este ca pentruındeplinirea conditiei de performanta robusta (2.14) este necesar ca

min{ |WS(jω)|, |WT (jω)| } < 1, ∀ω. (3.1)

Pentru o performanta buna de urmarire a semnalelor la joasa frecventa |WS(jω)|trebuie sa fie

”mare“ la acele frecvente, fiind tipic o functie monoton des-

crescatoare (tip filtru trece-jos), iar deoarece incertitudinile sunt pronuntatela ınalta frecventa |WT (jω)| este mare la frecvente mari, fiind tipic o functiemonoton crescatoare (tip filtru trece-sus). Prin urmare, conditia (3.1) impunede fapt constrangeri ın zona de medie frecventa.

Constrangeri de interpolare. Daca P are un zerou z si/sau un pol p cuRe(z) ≥ 0 si Re(p) ≥ 0 atunci S si T satisfac conditiile de interpolare

T (p) = 1, S(p) = 0, (3.2)

T (z) = 0, S(z) = 1. (3.3)

Constrangeri ın domeniul timp

Prezentam ın continuare constrangeri ce se manifesta ın raspunsul ın timp alproceselor, constrangeri ce apar ın prezenta zerourilor instabile, ın prezentapolilor instabili si ın prezenta atat a zerourilor, cat si a polilor instabili.

Zerouri instabile. Pentru un sistem stabil cu nz+ zerouri instabile raspunsulindicial la treapta unitara y(t) intersecteaza abscisa (valoarea initiala y(0)) denz+ ori. Acest fenomen se numeste raspuns invers al sistemului (vezi Fig. 3.2).

Fie sistemul ın bucla deschisa L avand un zerou q cu Re(q) > 0. Dacasistemul ın bucla ınchisa (cu reactie negativa unitara) este intern stabil, iary(t) si e(t) sunt raspunsul si respectiv eroarea la treapta unitara atunci

∫ ∞

0

e−qte(t) dt =1

q, (3.4)

∫ ∞

0

e−qty(t) dt = 0. (3.5)

Mai mult, subreglajul yi satisface

yi ≥1− ε

eqtt − 1> 0, (3.6)

Laboratorul 3. Limitari fundamentale ale SRA 65

y(t)

t

1

Figura 3.2.: Raspunsul indicial al sistemului H(s) := −s+0.50.5(s+1)(0.5s+1) prezinta

”raspuns invers“.

unde tt este timpul tranzitoriu necesar pentru ca raspunsul sa intre ıntr-obanda de ±ε ın jurul raspunsului stationar.

Acest rezultat arata ca daca avem un zerou instabil, atunci raspunsul indicialy(t) si eroarea corespunzatoare e(t) trebuie sa satisfaca constrangeri integralece sunt valabile oricare ar fi regulatorul C. Mai mult, raspunsul tranzitoriupoate fi oricat de neplacut (depinzand doar de locatia polilor ın bucla ınchisaın raport cu q). Rezultatul are loc si pentru zerouri stabile atunci cand acestease gasesc ın dreapta polilor ın bucla ınchisa. Relatia (3.6) arata ca daca avemzerouri instabile atunci raspunsul la treapta va prezenta un subreglaj cu atatmai mare cu cat asiguram un timp tranzitoriu mai scurt (cu cat facem sistemulmai rapid prin alegerea regulatorului).

Poli instabili. Fie sistemul ın bucla deschisa L avand un pol p cu Re(p) > 0.Daca sistemul ın bucla ınchisa (cu reactie negativa unitara) este intern stabil,iar y(t) si e(t) sunt raspunsul si respectiv eroarea la treapta unitara atunci

∫ ∞

0

e−qty(t) dt =1

p> 0,

∫ ∞

0

e−pte(t) dt = 0. (3.7)

Mai mult, suprareglajul ys satisface

ys ≥(ptc − 1)eptc + 1

ptc≥ ptc

2

unde tc este timpul de crestere. Acest rezultat arata ca daca avem un polinstabil ın bucla deschisa si sistemul ın bucla ınchisa este relativ

”lent“ (i.e.,

tc este mare), atunci raspunsul la treapta va avea un suprareglaj mare. Acestlucru este ın contrast cu sistemele stabile ın bucla deschisa pentru care su-prareglajul mare apare la un timp de crestere mic. In cazul prezentei polilor

66 Teoria sistemelor automate. Indrumar de laborator

instabili pentru a avea performanta acceptabila trebuie sa proiectam un sistemın bucla ınchisa relativ rapid – sau, echivalent, cu o largime de banda mare.Situatia este din nou ın contrast cu cea corespunzatoare zerourilor instabilepentru care performanta buna implica o largime de banda mica si un sistemrelativ lent.

Poli si zerouri instabile. Fie un sistem ın bucla deschisa L avand un zerou qsi un pol p instabile (p 6= q). Daca sistemul ın bucla ınchisa este intern stabil,atunci daca p < q suprareglajul ys satisface ys ≥ p

q−p , iar daca q < p atunci

subreglajul yi satisface yi ≥ qp−q .

Constrangeri frecventiale (analitice)

Prezentam ın continuare cateva dintre constrangerile fundamentale ın dome-niul frecvential, pe care le clasificam ın mai multe categorii: datorate zerouri-lor instabile, datorate polilor instabili, datorate prezentei simultane a polilorsi zerourilor instabile, saltelele de apa si teorema lui Bode.

Zerouri instabile. Prezenta zerourilor instabile limiteaza amplificarea ın bucladeschisa si constrange largimea de banda.

Intr-adevar, considerand un sistem de reglare cu bucla de reactie negativa ıncare C = c, unde c este constant (regulator proportional), daca c→∞ atuncipolii sistemului ın bucla ınchisa migreaza spre zerourile sistemului ın bucladeschisa. Daca P are zerouri instabile acest lucru previne cresterea amplificariiın bucla deschisa peste un anumit nivel (pentru pastrarea stabilitatii interne) sideci limiteaza performantele de proiectare ce necesita L = cP

”mare“. Acelasi

fenomen (chiar mai drastic ın anumite cazuri) apare daca avem C rationala.Mai mult, daca P are un zerou instabil z, WS este o pondere oarecare stabila

si sistemul ın bucla ınchisa este intern stabil, atunci

‖WSS‖∞ ≥ |WS(z)|. (3.8)

Asa cum am vazut ın capitolul precedent, diverse cerinte de proiectare se potreformula sub forma

‖WSS‖∞ < 1⇔ |S(jω)| < 1

|WS(jω)| , ∀ω, (3.9)

unde WS este o functie pondere (stabila) aleasa ın functie de cerinta concretade proiectare. Combinand (3.8) cu (3.9) rezulta ca la fiecare zerou instabilponderea trebuie sa satisfaca

|WS(z)| < 1. (3.10)

Relatia (3.10) impune anumite constrangeri atat ın cazul unei ponderi WS cecuantifica performanta la frecvente joase (filtru trece-jos), cat si ın cazul uneifunctii pondere ce cuantifica performanta la frecvente ınalte (filtru trece-sus).

Laboratorul 3. Limitari fundamentale ale SRA 67

Consideram ponderea de tip filtru trece-jos

WS(s) =s/M + ωBs+ ωBA

,

cu ωB > 0, A > 0 si M > 0. Tipic M > 1 si A < 1. Aceasta pondere implica obanda de trecere de minim ωB , o valoare maxima a lui ‖S‖∞ mai mica decatM si o eroare stationara (la treapta) mai mica decat A. Daca presupunem caavem un zerou real z > 0 din conditia (3.10) rezulta ca

ωB(1−A) < z

(1− 1

M

), (3.11)

ceea ce ne arata ca largimea de banda este limitata de zeroul instabil ωB < z.Deasemenea, arata ca daca vrem largime de banda cat mai mare ωB ≈ z atuncitrebuie M � 1 (vezi si constrangerea de tip saltea de apa de la pagina 69).

Consideram acum ponderea de tip filtru trece-sus

WS(s) =s+ ωB/M

As+ ωB,

cu ωB > 0, A > 0 si M > 0. Tipic M > 1 si A < 1. Daca presupunem caavem un zerou real z > 0, din conditia (3.10) rezulta ca

ωB > z(1−A)

1− 1/M

ceea ce ne arata din nou ca avem o limitare (de data aceasta inferioara).

Poli instabili. Zerourile instabile impun margini superioare ale benzii de tre-cere. Intuitiv vorbind, prezenta polilor instabili implica necesitatea stabi-lizarii si deci a unei amplificari mari ceea ce impune margini inferioare pentrulargimea de banda.

Am vazut ca daca P are un pol instabil p, WT este o pondere oarecarestabila si sistemul ın bucla ınchisa este intern stabil atunci

‖WTT‖∞ ≥ |WT (p)|. (3.12)

Am vazut deasemenea ca diverse cerinte de proiectare se pot reformula subforma

‖WTT‖∞ < 1⇔ |T (jω)| < 1

|WT (jω)| , ∀ω, (3.13)

unde WT este o functie pondere (stabila) aleasa ın functie de cerinta concretade proiectare. Combinand (3.12) cu (3.13) rezulta ca la fiecare pol instabilponderea trebuie sa satisfaca

|WT (p)| < 1. (3.14)

68 Teoria sistemelor automate. Indrumar de laborator

Consideram ponderea

WT =s

ωBT+

1

M.

cu ωBT > 0 si M > 0. Tipic, M > 1. Daca presupunem ca avem un pol realp > 0 din conditia (3.14) rezulta ca

ωBT > pM

M − 1(3.15)

ceea ce ne arata ca un pol instabil impune o limita inferioara asupra largimiide banda ın termenii lui T . Mai precis, nu putem lasa sistemul sa aiba roll-off la frecvente mai mici decat p. Deci stabilizarea cu performante rezonabileimplica o largime de banda mai mare decat p.

Poli si zerouri instabile. Prezenta simultana a unui pol si a unui zerou impuneatat limitari superioare, cat si inferioare asupra benzii de trecere si marginiinferioare pentru ‖S‖∞ si ‖T‖∞, facand ın toate situatiile proiectarea extremde dificila.

Intr-adevar, pentru M = 2 si A = 0 ın (3.15) si (3.11) obtinem relatia2p < ωBT < 0.5z (avem ωB ≈ ωBT ) de unde concluzia ca daca un sistem areun pol si un zerou reale instabile pentru a obtine performante acceptabiletrebuie

z > 4p.

Mai mult, avem

‖S‖∞ ≥ c, ‖T‖∞ ≥ c, c =|z + p||z − p| .

Iar ın prezenta polilor si/sau zerourilor instabile constrangerile de inter-polare impun la randul lor anumite limite inferioare. Fie P cu nz+ zerouriinstabile zi si np+ poli instabili pj . Atunci pentru fiecare zerou zi avem

‖WSS‖∞ ≥ cSi |WS(zi)|, cSi := Πnp+j=1

|zi + pj ||zi − pj |

≥ 1, (3.16)

iar pentru fiecare pol pj avem

‖WTT‖∞ ≥ cTj |WT (pj)|, cTj := Πnz+i=1

|zi + pj ||zi − pj |

≥ 1. (3.17)

Daca nu exista poli instabili atunci ın (3.16) avem cSi := 1, iar daca nuexista zerouri instabile atunci ın (3.17) avem cTj := 1.

In particular, daca WS = WT = 1 obtinem ca

‖S‖∞ ≥ maxicSj , ‖T‖∞ ≥ max

jcTj ,

Laboratorul 3. Limitari fundamentale ale SRA 69

ceea ce arata ca nu putem evita extreme mari ın S si T daca avem un pollanga un zerou instabil. Pentru o proiectare buna se impun tipic

‖S‖∞ < 2 (aprox. 6 dB), ‖T‖∞ < 1.25 (aprox. 2 dB).

Valori mari pentru S sau T (mai mari decat 4) indica performante foarte slabesau respectiv robustete foarte scazuta. Daca ‖S‖∞ este

”mare“ atunci si ‖T‖∞

este”mare“ (si viceversa) ıntrucat S + T = 1 si la orice frecventa avem

∣∣|S| − |T |∣∣ ≤ |S + T | = 1.

Pin urmare ‖S‖∞ si ‖T‖∞ difera prin cel mult 1.Ratiunile pentru care dorim marginirea lui ‖S‖∞ si ‖T‖∞ sunt multiple.

De exemplu, pentru performanta buna la urmarirea referintelor si rejectareaperturbatiilor cerem |S(jω)| � 1 (

”mic“) la frecvente joase, tipic cu S(0) = 0.

Deoarece la frecvente ınalte avem o rata de roll-off superioara lui 1, rezultaS ≈ 1 (la aceste frecvente). La frecvente medii (intermediare) nu putem ıngeneral evita |S| > 1 (de exemplu din motive de saltele de apa). Acest lucrurezulta si din

L(jωπ) = − 1

MA⇒ S(jωπ) =

1

1− 1MA

> 1, T (jωπ) =−1

−1 +MA,

unde MA este marginea de amplitudine. In consecinta, la frecvente mediiefectul feedback-ului este de a degrada performanta si putem deci interpreta‖S‖∞ drept cea mai defavorabila degradare a performantelor.

Saltele de apa. Aceste constrangeri sunt consecinte directe ale formulelorintegrale ale lui Cauchy si arata ca putem asigura |S|

”mic“ pe un anumit in-

terval de frecventa (ceea ce este echivalent cu obtinerea performantelor — vezicapitolul anterior) doar daca acceptam |S|

”mare“ pe alt interval de frecventa.

Acest fapt este ın analogie cu o saltea de apa justificand numele dat acestorconstrangeri: daca apasam salteaua ıntr-o zona reducand local nivelul apei varezulta o crestere a nivelului apei ıntr-o alta zona a saltelei. Fenomenul aparechiar daca avem o singura cerinta de proiectare de tipul |S|

”mic“, independent

de faptul ca dorim simultan si reducerea lui |T | pe anumite benzi de frecventa(de exemplu pentru rejectie de zgomote, stabilitate robusta — vezi capitolulanterior). Fenomenul de saltea de apa poate fi descris relativ usor din punctde vedere analitic ın urmatoarele doua situatii:

• L are excesul poli-zerouri mai mare sau egal cu 2;• L are (macar) un zerou de faza neminima.

Efectul de saltea de apa cand excesul poli-zerouri este superior sau egal cu 2.Daca pi, unde i = 1, . . . , np+, sunt polii din C+ ai lui L, iar excesul poli-zerouri

70 Teoria sistemelor automate. Indrumar de laborator

(gradul relativ) al lui L este mai mare sau egal cu 2, atunci

∫ ∞

0

log |S(jω)|dω = (π log e)

np+∑

i=1

Re(pi) ≥ 0.

Formula spune ca aria totala marginita de graficul lui |S(jω)| este ıntotdeaunapozitiva, de unde rezulta ca eventuala arie negativa, necesara pentru urmarirecu suficienta precizie pe o anumita plaja de frecvente (si corespunzand decilui |S| < 1) este obligatoriu compensata pe o alta plaja de frecvente de o ariepozitiva corespunzand lui |S| > 1 (vezi Fig. 3.3).

1

ω (log)

|S(jω)|

+

Figura 3.3.: Efectul de”saltea de apa“ ın cazul existentei ın bucla deschisa a

unui exces poli-zerouri egal cu 2.

Aria pozitiva ce compenseaza aria negativa poate, teoretic vorbind, sa pro-vina dintr-o crestere a lui S

”foarte mica“ pe o banda de frecvente oricat

de larga, ω ∈ [ω1, ω2], unde ω2 poate fi facut oricat de mare. In realitate,cum L(∞) = 0, rezulta ca ω2 este limitat si deci (3.1) impune ıntr-adevarconstrangeri reale, ın sensul cresterii importante si cu necesitate a lui S laanumite frecvente.

Efectul de saltea de apa pentru procese cu zerouri instabile (de faza nemi-nima). Pentru simplitate ilustram fenomenul ın cazul unui proces L avand unsingur zerou real z > 0. Fie pi pentru i = 1, . . . , np+ polii din C+ ai lui L.Daca sistemul ın bucla ınchisa este intern stabil atunci

∫ ∞

0

ln|S(jω)|w(z, ω) dω = π ln Πnp+i=1

∣∣∣∣pi + z

pi − z

∣∣∣∣ (3.18)

unde

w(z, ω) =2

z

1

1 + (ω/z)2. (3.19)

Mai mult, daca

M1 := supω1≤ω≤ω2

|S(jω)|, M2 := supω|S(jω)| = ‖S‖∞,

Laboratorul 3. Limitari fundamentale ale SRA 71

atunci exista doua constante pozitive c1 si c2 (ce depind exclusiv de ω1, ω2 siz),

c1 :=1

π

I

z

z2 + ω2dω si c2 :=

1

π

R\I

z

z2 + ω2dω,

astfel ıncat

c1 logM1 + c2 logM2 ≥ 0, (3.20)

unde z = σ0 + jω0 si I = [−ω2,−ω1] ∪ [ω1, ω2].

Asa cum reiese din Fig. 3.4, functia pondere w(z, ω)”taie“ contributia lui

ln|S| pentru frecvente ω > z. Pentru un sistem ın bucla deschisa stabil, mem-brul drept al relatiei (3.18) este nul si presupunand ca la frecvente ınalte |S| ≈ 1rezulta ∫ z

0

ln|S(jω)|dω ≈ 0 (|S| ≈ 1 pentru ω > z). (3.21)

Relatia (3.21) arata ca avem un efect de tip saltea de apa ınsa ın care com-

−40 dB/dec

20 log 1z

z

20 log 2z

|w(z, ω)|[dB]

ω (log)

Figura 3.4.: Graficul de amplificare al ponderii (3.19) pentru un zerou real z.

promisul ıntre S mare si S mic se”negociaza“ pe un interval finit de frecvente.

Mai precis, salteaua de apa este finita si daca reducem S la frecvente joaseatunci trebuie neaparat sa avem un varf mare ın zona de medie frecventa.Efectul este agravat daca avem un pol ın apropierea unui zerou ın C+ ıntrucat

pi → z ⇒∣∣∣∣pi + z

pi − z

∣∣∣∣→∞.

Acest rezultat este ın acord cu practica inginereasca care arata ca procesele cuun pol si un zerou instabile si apropiate unul de celalalt sunt practic imposibilde reglat.

Acest efect de tip saltea de apa este specific doar sistemelor care au cel putinun zerou instabil. Mai precis, daca sistemul L ın bucla deschisa este de faza

72 Teoria sistemelor automate. Indrumar de laborator

minima atunci pentru orice ε > 0 si δ > 1 exista un regulator C astfel ıncatsistemul ın bucla ınchisa sa fie intern stabil si

M1 < ε, M2 < δ.

Relatia (3.20) pune ın evidenta un alt fenomen interesant: daca dorimurmarire buna a referintei si rejectie a perturbatiilor pe banda de frecvente[ω1, ω2], adica M1 � 1, atunci marginea de stabilitate masurata de 1

‖S‖∞ = 1M2

devine inevitabil mica.

Fenomene similare au loc pentru T ın prezenta polilor instabili.

Teorema lui Bode (relatia faza-amplitudine). Teorema lui Bode este o altaaplicatie directa a formulei integrale Cauchy si afirma ca, pentru orice sistem,faza (la orice pulsatie fixata ω0) se poate deduce din valoarea amplitudinii(cunoscuta la toate pulsatiile).

Fie L functia de transfer a unui sistem ın bucla deschisa ce este propriu,stabil si de faza minima (fara zerouri instabile), normalizat a.ı. L(0) > 0.Atunci la orice pulsatie ω0 faza φ(ω0) := argL(jω0) satisface

φ(ω0) =1

π

∫ ∞

−∞

d ln|L|dν

ln coth|ν|2

dν (3.22)

unde variabila de integrare este ν := ln ωω0

. Expresia d ln|L|dν da panta (con-

siderata adimensional) a diagramei Bode a amplitudinii. Ea este ın generalnegativa pentru majoritatea frecventelor (panta adimensionala este ` pentruo panta ın diagrama Bode de 20` dB/dec). Functia

ln coth|ν|2

= lne

|ν|2 + e−

|ν|2

e|ν|2 − e−

|ν|2

ia valori mari pentru ω ≈ ω0 si descreste rapid cand ω se departeaza de ω0 (veziFig. 3.5). Aceasta ınseamna ca faza la ω0 este de fapt determinata doar depanta amplitudinii ın apropierea lui ω0. Faza va fi mare daca |L| este atenuatlent si va fi mica daca este atenuat rapid (faza este considerata cu semn). Maiexact, faza va fi cu atat mai negativa cu cat panta amplitudinii ın jurul lui ω0

este mai abrupta. In consecinta, daca ıntr-o vecinatate suficient de larga a luiω0 panta este `, putem folosi aproximatia (relativ grosiera)

φ(ω0) =`

π

∫ ∞

−∞ln coth

|ν|2

dν =`

π

π2

2= `

π

2.

Deci o panta a amplitudinii de 20` dB/dec ın jurul lui ω0 implica o faza deaproximativ `π2 rad/s.

Laboratorul 3. Limitari fundamentale ale SRA 73

ν

ln coth |ν|2

−2 −1 0 1 2

Figura 3.5.: Graficul functiei ln coth |ν|2 .

Comportarea lui φ(ω) este esentiala ın zona de medie frecventa (ın zonafrecventei de taiere ωt) la care |L(jωt)| = 1 deoarece π + φ(ωt) este margineade faza a sistemului. Avem

|1 + L(jωt)| = |1 + L−1(jωt)| = 2

∣∣∣∣sinπ + φ(ωt)

2

∣∣∣∣

si aceasta trebuie sa nu fie prea mica pentru a avea stabilitate robusta. Dacaπ + φ(ωt) este fortat sa fie foarte mic printr-o atenuare rapida a amplificarii,sistemul ın bucla ınchisa va avea o margine foarte mica de stabilitate. Inconsecinta ın zona de medie frecventa panta maxima admisa este −1 (cu unmaxim teoretic de −2 pentru a avea stabilitate, chiar daca nerobusta). Aceastapanta trebuie mentinuta pentru un interval de frecvente suficient de mare ınjurul lui ωt.

Formula lui Bode se poate extinde si ın cazul sistemelor de faza neminimasi instabile. Pentru aceste sisteme necesitatea unei atenuari lente ın zona demedie frecventa este si mai stringenta ıntrucat polii/zerourile instabile con-tribuie cu faza negativa. Exista formule Bode similare care dau dependentareal-imaginar, imaginar-real, amplitudine-faza etc., dar ele au o importantamai restransa ın Teoria Sistemelor.

3.2. Sarcini de lucru

Problema R3.1. Se considera

L =10

(s− 1)(s+ 2).

Sa se ilustreze pe un grafic efectul de”saltea de apa“ pentru L.

Solutie. Graficul functiei |S(jω)| ın dB, versus ω ın scala liniara este dat ınFigura 3.6. Aria care se afla sub |S| = 1 (0 dB) este negativa, iar cea de

74 Teoria sistemelor automate. Indrumar de laborator

0 1 2 3 4 5 6 7 8 9 10

10−0.5

100

100.5

ω [rad/sec]

S(jω

)[d

B]

Figura 3.6.: Efectul”Saltea cu apa“. Ilustratie Problema R3.1

deasupra, pozitiva. Teorema spune ca suma ariilor este pozitiva (avem un polın C+), fiind egala cu π

∑pk = π.

Asadar, aria negativa, necesara pentru rejectia perturbatiilor si urmarireaasimptotica pentru o plaja de frecvente, este inevitabil ınsotita de o arie pozi-tiva. Aria neta se conserva.

Ilustratiile din Fig. 3.6 sunt realizate cu codul Matlab din Sursa C.1.

Problema R3.2. Consideram sistemul de faza minima G0(s) =1

s+ 1. Ne

propunem analiza comparativa a sistemelor de faza neminima tipice. Alegempentru studiu functiile

G1(s) = e−τsG0(s), G2(s) =s− as+ a

G0(s), G3(s) =s+ a

s− a G0(s), cu τ, a > 0.

Solutie. Observati ca toate cele 4 functii de transfer au acelasi modul,|G0,1,2,3(jω)| = |G0(jω)|. In particular, G1(s) este un sistem cu ıntarziere, iar|ejωτ | = 1 (cercul unitate). Sistemul este de faza neminima:

argG1(jω) = argG0(jω)− ωτ.

Sistemul H =s− as+ a

este un sistem de tip trece-tot, deoarece

|H(jω)| =∣∣∣∣jω − ajω + a

∣∣∣∣ = 1.

Laboratorul 3. Limitari fundamentale ale SRA 75

10−2 10−1 100 101 102−40

−20

0A

mp

litu

din

e(d

B)

10−2 10−1 100 101 102−270

−180

−90

0

90

180

G3

G2G

Faza

(gra

de)

Pulsatie (rad/sec)

(a) diagrame Bode pentru G0, G2 si G3

10−2 10−1 100 101 102−40

−30

−20

−10

0

Am

pli

tud

ine

(dB

)

10−2 10−1 100 101 102−540

−360

−180

0

180

G1

G

Faz

a(g

rad

e)

Pulsatie (rad/sec)

(b) diagrame Bode pentru G0 si G1

Figura 3.7.: Sisteme de faza nonminima pentru Problema R3.2

76 Teoria sistemelor automate. Indrumar de laborator

Se observa ca G2 are un zerou instabil ın s = a > 0. Sistemul G3 este instabil,din cauza polului ın s = a > 0. Deci toate cele 3 sisteme G1,2,3 sunt de faza

neminima. In Fig. 3.7 s-au reprezentat diagramele Bode pentru cele 4 sisteme,cu τ = 1 si a = 3. Desenati si voi diagramele Bode. Ce se ıntampla cu faza ?

Ilustratiile din Fig. 3.7 sunt realizate cu codul Matlab din Sursa C.2.

Problema R3.3. Zerou ın C+. Factorul de faza neminima pentru o functie

de transfer cu un zerou ın C+ este de forma Ptt =z − sz + s

, unde z > 0 este

zeroul ın C+.

Solutie. Faza este

− argPtt(jω) = 2 arctanω

z.

Pentru ω = ωc, cf. inegalitatii frecventei critice avem ca − argPtt(jωc) ≤MC .Rezulta succesiv:

arctanωcz≤ MC

2⇔ ωc

z≤ tan

MC

2⇒ ωc ≤ z tan

MC

2.

Pentru MC = π/3 obtinem ωc ≤ 0.5774 z. Zerourile lente din C+ (z mic) daurestrictii mai stranse pentru ωc fata de zerourile rapide.

Intarzierile impun limitari similare cu cele impuse de zerourile din C+. Pu-tem deduce acest fapt intuitiv din aproximarea lui Pade:

e−sτ ≈ 1− sτ2

1 + sτ2

=2τ − s2τ + s

.

O ıntarziere mare este asadar echivalenta cu zeroul lent z = 2τ din C+.

Problema R3.4. Pol ın C+. In acest caz, factorul de faza neminima (trece-tot) este

Ptt =s+ p

s− p , p > 0.

Solutie. Faza sistemului este

− argPtt(jω) = 2 arctanp

z⇒ ωc ≥

p

tan(MC/2).

Polii ın C+ impun asadar o largime de banda suficient de mare. PentruMC = π/3 obtinem ωc ≥ 1.7321 p. Prin urmare, polii rapizi (p mare) daurestrictii mai stranse asupra frecventei critice.

Problema R3.5. Fie sistemul L(s) =1

sq, q ∈ Z. Gasiti amplitudinea si

argumentul acestei functii folosind rezultatele prezentate anterior (cf. relatiei(3.22)).

Laboratorul 3. Limitari fundamentale ale SRA 77

Solutie. Amplitudinea este

|L(jω)| = 1

|(jω)q| =1

|ω|q ⇒ |L(jejν)| = 1

|eν |q = e−νq.

Din reguli elementare de derivare avem ca:

d

dνln |L(jejν)| = 1

|L(jejν)|d|L(jejν)|

deνdeν

dν= eνq

d|L(jejν)|deν

eν .

Calculam si termenul ramas:d|L(jejν)|

deν= −qe−ν(q+1). Prin urmare rezulta:

d

dνln |L(jejν)| = −eνq qe−ν(q+1) eν = −q.

Asadar, din formula lui Bode faza devine:

argL(jω0) = − qπ

∫ ∞

−∞ln coth

|ν|2dν = − q

π

π2

2= −q π

2,

unde am considerat ca se cunoaste integrala

∫ ∞

−∞ln coth

|ν|2dν =

π2

2.

In concluzie, pentru aceasta clasa de sisteme faza si amplitudinea sunt legateprin relatia

|L(jω)| = −20q dB/dec ⇔ argL(jω) = −q π2.

Observati ca acest rezultat este bine cunoscut din analiza Bode, tratatala cursul de Semnale si Sisteme. Testati ın Matlab aceasta concluzie printrasarea diagramelor Bode, pentru q = 1 (integratorul) si q = −1 (elementulde derivare).

Problema R3.6. Pendulul inversO problema interesanta si complexa de proiectare este pendulul fixat pe un

carucior. Schema de principiu a sistemului fizic este prezentata ın Fig. 3.8.Acesta este compus dintr-un carucior de masa M care aluneca unidimensionalde-a lungul axei x pe o suprafata orizontala, pendulul constand dintr-o bila demasa m la capatul rigid al unei tije de lungime l considerata rigida.

Caruciorul si bila sunt asimilate unor puncte materiale. Se presupune ca nuexista frecare la alunecare sau frecare cu aerul. De asemenea, presupunem capivotul este fixat de centrul caruciorului. Marimea de comanda (de intrare)este o forta orizontala u pe carucior. Marimea perturbatoare este forta d ceactioneaza direct asupra bilei, perpendicular pe pendul. Celelalte semnalefigurate sunt unghiul θ si respectiv pozitia bilei y = x+ l sin θ.

78 Teoria sistemelor automate. Indrumar de laborator

x1

x2

m

M`θ

d

u

y

x

`co

` sin θ

Figura 3.8.: Pendul fixat pe un carucior pentru Problema R3.6

Din legile fundamentale ale dinamicii deducem urmatorul sistem de ecuatiidiferentiale care descriu dinamica sistemului:

{u+ d cos θ = (M +m)x+ml(θ cos θ − θ 2

sin θ),

d = m(x cos θ + lθ − g sin θ).(3.23)

Acest sistem de ecuatii diferentiale ordinare, neliniar poate fi liniarizat ınjurul unui punct de echilibru. Sistemul de ecuatii diferentiale de mai sus aredoua astfel de puncte de echilibru: (x, θ) = (0, 0) si respectiv (x, θ) = (0, π),adica pendulul inversat, respectiv direct. In continuare, liniarizam ecuatiiledinamice ın jurul acestor puncte de echilibru.Liniarizarea pendulului inversat. Cele doua ecuatii liniarizate ın jurulpunctului de echilibru (x, θ) = (0, 0) sunt:

u+ d = (M +m)x+mlθ,1

md = x+ lθ − gθ.

Aplicand transformarea Laplace, dupa cateva calcule algebrice rezulta ca func-tiile de transfer de la u la x si respectiv de la u la y sunt:

Hxu =ls2 − g

s2[Mls2 − (M +m)g]respectiv Hyu =

−gs2[Mls2 − (M +m)g]

.

Ambele functii de transfer sunt instabile cu polii ın semiplanul complex dreptın punctele:

s = 0; 0;

√(M +m)g

Ml.

Laboratorul 3. Limitari fundamentale ale SRA 79

De asemenea, functia de transfer de la u la x are un zerou ın semiplanulcomplex drept (zerou de faza neminima) ın punctul:

s =√g/l.

Liniarizarea pendulului direct. Inlocuind θ cu π + θ ın ecuatiile (3.23) siliniarizand obtinem

u− d = (M +m)x−mlθ,1

md = −x+ lθ + gθ.

In acest caz functiile de transfer de la u la x si respectiv de la u la y sunt:

Hxu =ls2 + g

s2[Mls2 + (M +m)g]respectiv Hyu =

g

s2[Mls2 + (M +m)g].

Datele numerice se considera cunoscute: M = 9 kg, ` = 9/10 m, respectivm = 1 kg, g = 10 m/s2. Problema principala este stabilizarea pendululuiinversat, adica mentinerea masei suspendate ın echilibru, tratata pe larg ıncontinuare.

Se cer urmatoarele:

(i) Exemplificati limitarile fundamentale discutate anterior pentru exemplulpendulului inversat, considerand functia de transfer de la u la x.

(ii) Variati pozitia polilor (prin varierea raportului m/M) si observati rezul-tatele.

(iii) Pentru un raport m/M fixat, ilustrati caracteristicile de frecventa ampli-tudine-pulsatie pentru functiile T si S.

Solutie. (i) Consideram functia de transfer de la u la x

Hxu(s) =(s− q)(s+ q)

Ms2(s− p)(s+ p), q =

√g

l, p =

√(M +m)g

Ml.

In continuare, folosim rutina stab pinv ce se regaseste ın Sursa C.3 pen-tru a stabiliza functia de transfer de la u la x, i.e., Hxu. Rutina areapelul tipic de forma [Hxu,C] = stab pinv(m,M,l) unde Hxu repre-zinta functia de transfer a procesului iar C returneaza compensatorulstabilizant ce aloca polii ın bucla ınchisa ın {−1; −2; −3; −4}.Ilustram ın Fig. 3.9 limitarile fundamentale ın timp ce apar pentru acestsistem. Diagramele sunt obtinute cu ajutorul Sursa C.4.

80 Teoria sistemelor automate. Indrumar de laborator

0 2 4 6 8 10 12 14

−400

−200

0

200

q scade

timp [sec]

amp

litu

din

ey(t

)

(a) Variatie subreglaj (raspuns la treapta)

0 2 4 6 8 10 12 14

−200

0

200

400

q scade

timp [sec]

am

pli

tud

inee(t)

(b) Variatie suprareglaj (raspuns la treapta)

Figura 3.9.: Raspunsul la treapta pentru q variabil pentru Problema R3.6

(ii) Observam ca pendulul satisface automat conditia (3.6). Normalizam pen-tru simplitatea relatiilor, adica q = 1, considerand ca ` = 10 m. Astfel,rezulta ca

q

p− q > 20.

Laboratorul 3. Limitari fundamentale ale SRA 81

0 2 4 6 8 10 12 14

−100

0

100

200

m

Mscade

timp

am

pli

tud

iney(t

)

Figura 3.10.: Variatia raspunsului la treapta cu p pentru Problema R3.6

Observam cu catm

Mscade, adica

p =

√(M +m)g

Ml=

√(1 +

m

M

)gl≈ q ⇒ p

q − p creste ⇒ ysubr creste.

Variem pozitia polilor dand diverse valori raportului m/M si observamın Fig. 3.10 rezultatul (folosim Sursa C.5 pentru generarea figurii).

(iii) In continuare, alegem intervalul de frecventa [0, 102] pentru aceleasi valoriale raportului m/M si trasam ın Fig. 3.11 caracteristicile de frecventaamplitudine-pulsatie pentru T (jω) si respectiv S(jω) (folosim Sursa C.6pentru generarea figurilor).

82 Teoria sistemelor automate. Indrumar de laborator

10−1 100 101 102 103−180

0

180

360

540

Pulsatie (rad/sec)

Faz

a(g

rad

e)

10−1 100 101 102 103−20

0

20

40

60A

mp

litu

din

e(d

B)

(a) Variatie subreglaj

10−16 10−13 10−10 10−7 10−4 10−1 102 105−360

−180

0

180

360

540

Pulsatie (rad/sec)

Faz

a(g

rad

e)

10−16 10−13 10−10 10−7 10−4 10−1 102 105

−200

0

200

400

Am

pli

tud

ine

(dB

)

(b) Variatie suprareglaj

Figura 3.11.: Diagramele Bode pentru S(jω) si T (jω) pentru Problema R3.6

Laboratorul 3. Limitari fundamentale ale SRA 83

3.3. Sarcini aditionale

Problema P3.7. Aeronava X-29. Un exemplu de aplicare a formulei inte-grale a lui Bode este sistemul de comanda pentru aeronava X-29, vezi Figura3.12a. Dinamica longitudinala a avionului este similara cu cea a pendululuiinvers (ıl vom studia detaliat ın Problema R4.3 din laboratorul 4), si are doipoli p1,2 = ±6 si un zerou ın z = 26. Elementele de executie care stabilizeazaunghiul de tangaj al aeronavei (i.e. pitch angle) au o latime de banda ωa = 40rad/sec, iar latimea de banda dorita pentru bucla de reglare a tangajului esteω1 = 3 rad/sec. Observati ca z/p1 = 4.33 < 6. Specificatiile par greu deındeplinit.

Cautam o lege de reglare a.ı. functia de sensibilitate este mica pe latimeade banda dorita si nu mai mare de o valoare Ms. Ne propunem determinarealui celui mai mic Ms realizabil. Observati ca Ms ≡ ‖S‖∞ = M−1

V .

(i) Pentru a ındeplini specificatiile de proiectare, functia de sensibilitate tre-buie sa arate ca ın Fig. 3.12b. Cum trebuie sa fie Ms fata de 1? Mai maresau mai mic? Interpretati graficul. Indicatie. Folositi formula integrala alui Bode - efectul saltea cu apa.

(ii) Gasiti expresia functiei |S(jω)| din grafic. Punctul (0, 0) se afla pe grafic.Indicatie. Functia are trei ramuri. Calculati

∫ ∞

0

ln |S(jω)|dω .

Se cunoaste integrala nedefinita∫

ln(x)dx = x lnx− x.

(iii) Evaluand integrala de la punctul precedent obtinem −ω1 + ωa lnMs.Folositi formula integrala a lui Bode (salteua de apa) pentru a determinanumeric valoarea realizabila a lui Ms.

(iv) Vantul este o perturbatie de ınalta frecventa, ωvant > ω1. Ce efect arevantul asupra dinamicii aeronavei (amplificare/atenuare/trece-tot) ?

338 CHAPTER 11. FREQUENCY DOMAIN DESIGN

(a) X-29 aircraft

1

Ms

ω1 ωa

|S(iω

)|

Frequency ω [rad/s]

(b) Sensitivity analysis

Figure 11.15:X-29 flight control system. The aircraft makes use of forward swept wings anda set of canards on the fuselage to achieve high maneuverability (a). The desired sensitivityfor the closed loop system is shown in (b). We seek to use our control authority to shape thesensitivity curve so that we have low sensitivity (good performance) up to frequency ω1 bycreating higher sensitivity up to our actuator bandwidth ωa.

the sensitivity function is small up to the desired bandwidth and not greater thanMs beyond that frequency. Because of the Bode integral formula, we know thatMs must be greater than 1 at high frequencies to balance the small sensitivity atlow frequency. We thus ask if we can find a controller that has the shape shownin Figure 11.15b with the smallest value of Ms. Note that the sensitivity above thefrequency ωa is not specified since we have no actuator authority at that frequency.However, assuming that the process dynamics fall off at high frequency, the sen-sitivity at high frequency will approach 1. Thus, we desire to design a closed loopsystem that has low sensitivity at frequencies below ω1 and sensitivity that is nottoo large between ω1 and ωa.From Bode’s integral formula, we know that whatever controller we choose,

equation (11.19) must hold. We will assume that the sensitivity function is givenby

|S(iω)| =!

ωMsω1

ω ! ω1Ms ω1 ! ω ! ωa,

corresponding to Figure 11.15b. If we further assume that |L(s)| ! δ/ω2 for fre-quencies larger than the actuator bandwidth, Bode’s integral becomes

" ∞

0log |S(iω)|dω =

" ωa

0log |S(iω)|dω

=" ω1

0log

ωMsω1

dω+(ωa"ω1) logMs = π p.

Evaluation of the integral gives "ω1+ωa logMs = π p or

Ms = e(π p+ω1)/ωa .

This formula tells us what the achievable value of Ms will be for the given controlspecifications. In particular, using p = 6, ω1 = 3 and ωa = 40 rad/s, we find thatMs = 1.75, which means that in the range of frequencies between ω1 and ωa,disturbances at the input to the process dynamics (such as wind) will be amplified

Figura 3.12.: Aeronava X-29

84 Teoria sistemelor automate. Indrumar de laborator

(v) Supremumul functiei de sensibilitate apare uzual la frecventa critica ωc.Aici supremumul apare aproximativ la ωc = 3 rad/sec. Folosind relatia

|S(jωc)| =1

2 sin(MF /2),

determinati numeric marginea de faza MF . Se respecta MF > 45◦ ? Deunde credeti ca apare aceasta limitare fundamentala?

Problema P3.8. Pilotarea unui vehicul. Consideram sistemul de pilotare-pozitionare a unui vehicul, dat ın Fig. 3.13. Functia de transfer non-normali-zata de la directia unghiulara δ la viteza laterala v a vehiculului este

G(s) =av0s+ v2

0

bs(Ts+ 1),

unde v0 este viteza vehiculului, a, b > 0, iar T este constanta de timp co-respunzatoare dinamicii sistemului de actionare. Pentru pilotare normala,v0 > 0, iar pentru pilotare ın sens invers, v0 < 0. Aplicatie numerica:a = 1, b = 2, T = 0.1.

v α δ

a

b

x

yO

δ

α

δ

Figura 3.13.: Dinamica sistemului de pozitionare pentru Problema P3.8

Se cer urmatoarele:

(i) Care sunt polii si zerourile sistemului? Desenati diagrama poli-zerouripentru ambele moduri de pilotare. Alegeti spre exemplu v0 = 5 sauv0 = −5. In ce caz sistemul este de faza neminima?

(ii) Desenati diagramele Bode pentru ambele cazuri pe acelasi grafic.

Laboratorul 3. Limitari fundamentale ale SRA 85

(iii) Reprezentati raspunsul indicial pentru ambele cazuri pe acelasi grafic.Pentru o vizualizare mai buna a raspunsului tranzitoriu, impuneti pentrusimulare tfinal = 1 sec. Se observa un fenomen reprezentativ pentru siste-mele de faza neminima, raspunsul invers. Comentati aceasta observatie.

(iv) Raspunsul invers apare din cauza zeroului −v0/a, care depinde de pozitiasenzorului de viteza (distanta a). In problema noastra, am presupus casenzorul este plasat ın centrul de masa. Unde trebuie plasat senzorul(a =?) a.ı. zeroul din G sa dispara? Reluati punctele b) si c) pentruaceasta valoare a parametrului a.

Problema P3.9. Pol si zerou ın C+ Consideram functia de transfer

P (s) =z − ss− p , z, p > 0.

Observati ca pentru p si z apropiati ca valoare, sistemul este extrem de dificilde controlat. Asadar, o limitare fundamentala este data de raportul z/p. Nepropunem determinarea unor conditii asupra raportului z/p a.ı. sistemul saaiba anumite performante.

(i) Determinati o factorizare de forma P = PttPfm unde Ptt este asimilarunui filtru trece-tot iar Pfm unui ....

(ii) Impunem o margine de faza deMF = 45◦ si pantamc = −1/2. Determinatinumeric MC . Scrieti inegalitatea frecventei critice pentru acest MC .

(iii) Desenati cu Matlab − argPtt(jω) pentru p = 1 si z ∈ {1, 2, 5, 20, 100}.Indicatie. Schimbati semnul functiei Ptt(s). Astfel, z − s de la numitordevine s− z.

(iv) Pentru ce valoare a raportului z/p inegalitatea frecventei critice este ve-rificata? Variati z oricat de fin. Ne dorim o conditie de forma

z

p> N, pentru un N dat.

(v) Refaceti punctele c) si d) pentru p = 1 si z ∈ {0.5, 0.2, 0.05, 0.01}. Cautamo conditie de forma z

p < N , pentru un N dat.

Problema P3.10. Limitari fundamentale pentru pendulul invers.

(i) Folosind rutina Matlab stab pinv.m care primeste ca parametrii M, `,respectiv m si returneaza un compensator stabilizator care aloca mereuaceiasi poli ın bucla ınchisa {−1; −2; −3; −4}, sa se studieze y(t) sirespectiv ε(t) atunci cand zeroul instabil al pendulului

q =

√g

l

86 Teoria sistemelor automate. Indrumar de laborator

este din ce ın ce mai aproape de axa imaginara. Cu alte cuvinte, variatiparametrul ` (din ce ın ce mai mare).

(ii) Se va relua punctul (i) pentru diverse valori ale raportului m/M , jus-tificand semnificatia raspunsurilor obtinute. Ceilalti parametrii ramanfixati.

(iii) Fie pendulul invers, cu functia de transfer de la u la x:

Hxu(s) =(s− q)(s+ q)

Ms2(s− p)(s+ p), q =

√g

l, p =

√(M +m)g

Ml

Consideram ` = 10 m, q = 1. Trasati caracteristicile Bode pentru |T (jω)|si respectiv |S(jω)| pentru diverse valori ale raportului m/M .

4. Tehnica de loopshaping

Scopul laboratorului

In acest laborator prezentam cea mai avansata tehnica de proiectare ın frecventaa SRA, numita loopshaping. Pentru aplicarea acestei tehnici sunt necesarenotiunile studiate ın precedentele trei laboratoare.

4.1. Breviar teoretic

Consideram sistemul ın bucla de reactie din Fig. 4.1 ın care procesul P este dat,iar regulatorul C trebuie proiectat. In acest capitol prezentam o metoda grafica— numita loopshaping — de gasire a regulatorului C astfel ıncat sistemulrezultant ın bucla ınchisa sa aiba performanta robusta, conditie exprimatasintetic sub forma (vezi Laboratorul 2)

∥∥|WSS|+ |WTT |∥∥∞ < 1, (4.1)

unde WS si WT sunt doua functii pondere ce se construiesc (sau sunt date) pebaza cerintelor de performanta si respectiv pe baza profilului de incertitudineasociat modelului procesului P (vezi Laboratorul 2),

S =1

1 + L

este functia de sensibilitate,

T =L

1 + L

este functia complementara de sensibilitate, iar L = PC este functia de trans-fer ın bucla deschisa.

C Pyr e u y

Figura 4.1.: Sistem ın bucla de reactie unitara.

Ideea intuitiva din spatele loopshaping-ului este explicitarea relatiei (4.1),la fiecare pulsatie ω, ın raport cu functia de transfer ın bucla deschisa L, sub

88 Teoria sistemelor automate. Indrumar de laborator

ω [rad/s]

[dB] |WS | |WT |

Joasafrecventa

Mediefrecventa

Inaltafrecventa

0 ωj ωi

Figura 4.2.: Zonele de joasa, medie si ınalta frecventa definite de functiile pon-dere WS si WT .

forma ∣∣∣∣WS(jω)

1 + L(jω)

∣∣∣∣+

∣∣∣∣WT (jω)L(jω)

1 + L(jω)

∣∣∣∣ < 1, ∀ω ∈ R (4.2)

si obtinerea expresiei potrivite pentru L folosind reprezentarea grafica ampli-tudine-pulsatie a acestei inegalitati.

Sub ipotezele ca procesul P este stabil si de faza minima1 regulatorul secalculeaza la final din expresia C = L

P . Pentru ca problema de constructiea regulatorului sa aiba solutie este necesar ca L gasit sa aiba un exces poli-zerouri mai mare sau egal cu P (pentru ca C rezultat sa fie propriu si deciimplementabil fizic), iar cele doua functii pondere sa ındeplineasca (la toatepulsatiile) conditia de buna definire

min{ |WS |, |WT | } < 1. (4.3)

Sub ipoteza de buna definire, cele doua functii pondere WS si WT ımpartdomeniul frecvential ın trei zone distincte de interes (vezi Fig. 4.2):

(i) Zona de joasa frecventa, caracterizata de |WS | > 1, ın care se obtineperformanta nominala. In aceasta zona tipic |WT | � 1;

(ii) Zona de ınalta frecventa, caracterizata de |WT | > 1, ın care se obtinestabilitatea robusta. In aceasta zona tipic |WS | � 1;

(iii) Zona de medie frecventa, caracterizata de |WS | ≤ 1 si |WT | ≤ 1,reprezentand o zona de tranzitie ın care nu domina niciuna dintre ponderi.

1 In cazul ın care P nu satisface aceasta ipoteza, i.e., are poli si/sau zerouri instabile, pentrua asigura stabilitatea interna a sistemului ın bucla ınchisa acestea nu se pot simplificala formarea produsului L = PC, aparand deci cu necesitate ca moduri ın L. Acest faptimplica ca L sa satisfaca conditii de interpolare, ceea ce complica considerabil procedurade loopshaping. Presupunem ın continuare ca aceasta ipoteza este satisfacuta si indicamla sfarsitul sectiunii o modalitate ın care se poate proceda ın caz contrar.

Laboratorul 4. Tehnica de loopshaping 89

Conditia de performanta robusta poate fi aproximata cu

|L| > |WS |1− |WT |

(> 1) cand |WS | � 1 (4.4)

si cu

|L| < 1− |WS ||WT |

(< 1) cand |WT | � 1. (4.5)

Dat fiind profilul tipic al functiilor pondere WS si WT (prima filtru trece-jos, adoua filtru trece-sus), conditia (4.4) defineste o constrangere ın zona de joasafrecventa (ω

”mic“), ın timp ce conditia (4.5) defineste o constrangere ın zona

de ınalta frecventa (ω”mare“), justificand astfel numele dat zonelor cores-

punzatoare de frecventa. Profilul lui |L| ın zona de tranzitie (medie frecventa)trebuie construit astfel ıncat sistemul ın bucla ınchisa sa rezulte stabil, ceeace conform teoremei lui Bode implica o panta a caracteristicii de amplificarea lui L mai lina de −40 dB/dec pe un interval suficient de mare (de preferatcel putin o decada) ın jurul pulsatiei de taiere a lui L (ın zona care definestemedia frecventa). In plus, pentru obtinerea unei margini de faza acceptabile serecomanda ca panta caracteristicii de amplificare a lui L sa nu fie mai abruptade −20 dB/dec. In zona de medie frecventa unde proiectarea este tipic dificilase folosesc valori mai precise pentru marginile inferioara si superioara ale lui|L|, folosindu-se macar la capetele intervalului de medie frecventa

|L(jωj)| >|WS(ωj)|+ 1

1− |WT (jωj)|, (4.6)

|L(jωi)| <1− |WS(jωi)||WT (jωi)|+ 1

, (4.7)

ın locul inegalitatilor corespunzatoare rezultate din (4.4) si respectiv (4.5).Din punct de vedere formal, zona de joasa frecventa este definita de interva-

lul [0, ωj), unde ωj este frecventa de taiere a functiei pondere WS (i.e., cea maimare frecventa pentru care |WS(jωj)| = 1 = 0 dB), zona de ınalta frecventaeste definita de intervalul (ωi,∞), unde ωi este frecventa de taiere a functieipondere WT (i.e., cea mai mica frecventa pentru care |WT (jωi)| = 1 = 0 dB),iar zona de medie frecventa este definita de intervalul [ωj , ωi].

In consecinta, pentru satisfacerea conditiei de performanta robusta trebuiesa asiguram ın zona de joasa frecventa ca graficul lui |L| este deasupra marginiidate ın (4.4), ın zona de ınalta frecventa ca graficul lui |L| este sub margineadata ın (4.5), iar ın zona de medie frecventa trebuie sa asiguram conditiile(4.6) si (4.7), simultan cu o panta cat mai lina (vezi Fig. 4.3). Descriem ıncontinuare procedura de loopshaping.

Procedura de loopshaping

Date initiale: Se da sistemul stabil si de faza minima P .

90 Teoria sistemelor automate. Indrumar de laborator

ω [rad/s]

[dB]

Joasafrecventa

Mediefrecventa

Inaltafrecventa

|WS |1−|WT |

1−|WS ||WT |

|L|

ωj

ωi0

(4.7)(4.6)

Figura 4.3.: Marginile lui |L| pentru loopshaping.

Pasul 0: Se construiesc functiile pondere WS si WT , WS cuantificand cerin-tele de performanta la frecvente joase siWT cerintele de performantasi profilul incertitudinii la frecvente ınalte2 (vezi Laboratorul 2).Se identifica zonele de joasa, medie si ınalta frecventa. Pentru caproblema sa aiba solutie trebuie sa fie verificata conditia de bunadefinire (4.3), iar functiile pondere trebuie sa satisfaca ın plus lafrecvente joase

|WT | � 1

si la frecvente ınalte|WS | � 1.

Pasul 1: Se traseaza grafic in dB la frecvente joase|WS |

1− |WT |si la frecvente

ınalte1− |WS ||WT |

(pulsatia de pe abscisa se reprezinta pe o scala

logaritmica).Pasul 2: Pe acest grafic se construieste diagrama de amplificare a unui sistem

(real-rational) L ce satisface simultan:

(i) La frecvente joase este deasupra diagramei|WS |

1− |WT |;

(ii) La frecvente ınalte este sub diagrama1− |WS ||WT |

;

(iii) La frecvente foarte ınalte are o panta superioara sau egala cupanta lui P (de preferat superioara cu cel putin 20 dB/dec);

(iv) In zona de medie frecventa, la pulsatia ωj este deasupra, darcat mai aproape de membrul drept din (4.6), iar la pulsatia

2Uneori functiile pondere sunt obtinute anterior fiind furnizate ca date de intrare ın pro-cedura, WS fiind construita ın faza de definire a cerintelor de proiectare, iar WT ın fazade identificare a modelului P .

Laboratorul 4. Tehnica de loopshaping 91

ωi este dedesubt, dar cat mai aproape de membrul drept din(4.7). In rest are o panta cat mai lina (tipic −20 dB/dec,maxim teoretic absolut −40 dB/dec).

Pasul 3: Se obtine functia de transfer L a carei diagrama Bode corespundecu diagrama construita la Pasul 2 si ın plus este stabila si de fazaminima, normalizand astfel ıncat L(0) > 0.

Pasul 4: Se valideaza proiectarea de mai sus verificand ca pentru C =L

Pobtinut sunt verificate cerintele de stabilitate interna si conditia deperformanta robusta(4.2) la toate frecventele.3 In caz ca una dintreaceste conditii nu este verificata se reia procedura de loopshaping,reıncepandu-se ın anumite situatii chiar cu Pasul 0 (faza de alegerea functiilor pondere).

In cazul ın care sistemul original nu este liniar, prezinta ıntarzieri, nu estestabil sau nu este de faza minima, se poate proceda la parcurgerea unor pasipreliminari ce reduc sistemul la unul care satisface ipotezele standard:

• Daca procesul nu este liniar, acesta se liniarizeaza si se trateaza termeniireziduali neliniari ca o incertitudine nestructurata care este inclusa ınWT . Similar, daca procesul are ıntarzieri acestea se considera ca incer-titudini de faza si se includ ın WT ;4

• Daca procesul nu este stabil, se construieste un compensator stabilizator(folosind de exemplu parametrizarea Youla) dupa care se aplica proce-dura de loopshaping sistemului rezultant ın bucla ınchisa ce acum estestabil;5

• Daca procesul nu este de faza minima se simetrizeaza zerourile instabileın raport cu axa imaginara prin extragerea unei componente serie de tiptrece-tot si se trateaza aceasta ca o incertitudine multiplicativa.6

3Acest lucru este necesar ıntrucat pentru obtinerea lui L s-au folosit aproximarile de joasafrecventa (4.4) si respectiv de ınalta frecventa (4.5) ale inegalitatii (4.2).

4Procedeul de ınlocuire a unui proces oarecare printr-un aproximant liniar, finit dimensio-nal, invariant ın timp si aplicarea tehnicilor de reglare robusta pentru aproximant repre-zinta astazi una dintre cele mai folosite tehnici de reglare ın Automatica, conducand lasolutii viabile din punct de vedere ingineresc.

5Desi logic simplu, acest procedeu nu este foarte agreat ın practica ıntrucat este vazutca o abordare de tip brute-force prin care dinamica instabila a sistemului original esteınlocuita cu (si deci profund alterata de) una stabila, ınca ınaintea ınceperii propriu-zisea proiectarii de detaliu. Procedeul poate fi evitat prin folosirea tehnicilor avansate deoptimizare H∞.

6Orice P (s) stabil avand zerourile reale instabile zi > 0, i = 1, . . . , k, se poate pune succesivsub formele

P (s) = P (s)Πis− zis+ zi

= P (s)(1 + ∆(s))

unde P (s) este stabil si de faza minima, Πis−zis+zi

are modulul egal cu 1, iar

∆(s) := Πis−zis+zi

− 1 functioneaza ca o incertitudine multiplicativa stabila. Extensia la

cazul zerourilor instabile complex conjugate se obtine prin analogie.

92 Teoria sistemelor automate. Indrumar de laborator

Blocuri elementare pentru loopshaping

Atunci cand functia de transfer a sistemului ın bucla deschisa gasita L nu areforma dorita este necesara compensarea acesteia. Compensarea functiei detransfer se poate face prin introducerea sistematica ın conexiune serie a unorblocuri elementare ce se construiesc astfel ıncat sa modifice forma lui L ın acelezone de frecventa ın care acest lucru este necesar, lasand (relativ) neschimbatL la frecventele la care forma deja corespunde cerintelor de proiectare.7 Blo-curile elementare ce sunt uzual folosite pentru compensarea serie a functiei detransfer sunt: de amplificare constanta, de avans si/sau ıntarziere de faza, deopreste-banda (Notch) si de panta (la ınalta frecventa).

Compensare proportionala. Functia de transfer a blocului proportional este

C = K,

unde K ∈ R. Alegand un compensator serie proportional cu K > 1 rezultaurmatoarele doua efecte complementare:• Creste largimea de banda a sistemului (asigurand un sistem cu raspuns

mai rapid) si amplificarea ın bucla deschisa la toate frecventele (asi-gurand o mai buna rejectie a perturbatiilor);

• Creste sensibilitatea sistemului la zgomote si la incertitudini de modelare.

Compensare cu ıntarziere de faza. Functia de transfer a blocului cu intarzierede faza este

C =b

a

s+ a

s+ b,

unde a > b ≥ 0, avand diagramele Bode din Fig. 4.4. Actiunea unui astfel debloc consta ın urmatoarele doua efecte complementare:• Scade amplificarea ın bucla la frecvente mai mari decat polul b (asigurand

o mai buna rejectie a zgomotelor);• Adauga faza negativa ın zona de tranzitie de medie frecventa (ıntre b sia) ceea ce poate destabiliza sistemul ın bucla ınchisa daca blocul nu estebine ales.

In consecinta, blocul cu ıntarziere de faza creste performanta (la zgomote)simultan cu diminuarea marginii de faza (ın zona de medie frecventa). Pentrua diminua efectul negativ al micsorarii marginii de faza compensarea trebuiesa fie facuta cu cel putin o decada distanta de frecventa de taiere.

Compensare cu avans de faza. Functia de transfer a blocului cu avans defaza este

C =b

a

s+ a

s+ b,

7Adesea se pleaca initial cu L = P , compensandu-se ulterior forma prin ınserierea unorblocuri potrivite.

Laboratorul 4. Tehnica de loopshaping 93

0ω [rad/s]

|C(jω)|[dB]

20 lg(ba

)

b a

0ω [rad/s]

argC(jω)[rad]

b a

Figura 4.4.: Diagramele Bode ale blocului cu ıntarziere de faza C(s) = bas+as+b ,

a > b.

unde b > a ≥ 0, avand diagramele Bode din Fig. 4.5. Actiunea unui astfel debloc consta ın urmatoarele efecte complementare:

• Creste amplificarea ın bucla la frecvente mai mari decat polul b (asi-gurand o banda de trecere mai larga si deci un sistem mai rapid) siadauga faza pozitiva ın zona de tranzitie de medie frecventa (ıntre b sia) ceea ce conduce la cresterea marginii de faza;

• Crescand amplificarea la frecvente ınalte sistemul devine mai sensibil lazgomote si la erorile de modelare (incertitudini).

In consecinta, blocul cu avans de faza creste marginea de faza si banda detrecere simultan cu cresterea nedorita a sensibilitatii la zgomote. Acest bloc— folosit ın principal pentru efectul dezirabil de marire a marginii de faza —se alege astfel ıncat frecventa de taiere a sistemului original sa fie ıntre a si b,maximizand astfel contributia sa benefica. Marginea de faza (maxima) φ+ cepoate fi adaugata se obtine din

sin(φ+) =ba − 1ba + 1

,

iar aceasta faza suplimentara este adaugata la pulsatia

ω+ =√ab.

Precedentele ecuatii definesc modul ın care sunt alesi parametrii blocului ınprocesul de proiectare.

94 Teoria sistemelor automate. Indrumar de laborator

0ω [rad/s]

|C(jω)|[dB]

20 lg(ba

)

a b

0ω [rad/s]

argC(jω)[rad]

φ+

a ω+ b

Figura 4.5.: Diagramele Bode ale blocului cu avans de faza C(s) = bas+as+b ,

b > a.

Compensare cu ıntarziere si avans de faza. Acest bloc de compensare lecombina pe precedentele doua, avand functia de transfer

C(s) =b

a

s+ a

s+ b

d

c

s+ c

s+ d,

unde a > b ≥ 0 si d > c ≥ 0, avand diagramele Bode din Fig. 4.6. Actiuneaunui astfel de bloc consta ın reducerea amplificarii ıntr-o anumita banda defrecvente simultan cu adaugarea de faza pozitiva respectiv negativa, cores-punzator celor doua blocuri din care este compus.

Compensare stop–banda (Notch). Acest bloc de compensare este imple-mentat printr-un filtru particular de tip stop-banda care plaseaza, la o anu-mita frecventa specificata ωN , o

”depresiune“ ın graficul amplificarii ın bucla

deschisa. Functia de transfer a blocului este

C =s2 + 2ξNωNs+ ω2

N

s2 + ωNs+ ω2N

,

unde ξN determina adancimea”depresiunii“ sub forma

|C(jωN )| = 2ξN ,

iar diagramele Bode sunt date ın Fig. 4.7. Acest bloc de compensare se fo-loseste ın special pentru situatia ın care sistemul ın bucla deschisa are anumitefrecvente de rezonanta (la care amplificarea devine foarte mare).

Laboratorul 4. Tehnica de loopshaping 95

ω [rad/s]0

20 lg(bdac

)|C(jω)|

[dB]b a c d

ω [rad/s]0

b a

c d

argC(jω)[rad]

Figura 4.6.: Diagramele Bode ale blocului cu ıntarziere si avans de faza C(s) =bas+as+b

dcs+cs+d , a > b ≥ 0 si d > c ≥ 0.

Compensare de panta (la frecvente ınalte). Compensarea de panta esteutila pentru reducerea rapida a amplificarii ın bucla deschisa, ıncepand de la

ξN = 0 ξN = 0.1

ξN = 0.3

ω [rad/s]ωN

|C(jω)|

0

1

ω [rad/s]

argC(jω)[rad]

−π/4

0

π/4

ξN = 0

ξN = 0.1

ξN = 0.3

Figura 4.7.: Diagramele Bode ale blocului de tip notch C(s) =s2+2ξNωNs+ω

2N

s2+ωNs+ω2N

.

De notat ca amplificarea este ın unitati standard (nu ın decibeli).

96 Teoria sistemelor automate. Indrumar de laborator

o frecventa data ωr ın sus. Functia de transfer a blocului este

ωNr(s+ ωr)N

,

proiectantul alegand numarul natural N si frecventa ωr (de la care pantaamplificarii se considera conventional ca a scazut cu 20N dB/dec).

4.2. Sarcini de lucru

Problema R4.1. Satelit geosincronConsideram un satelit aflat ın orbita geosincrona. Suntem interesati de

mentinerea unui unghi de tangaj de referinta (astfel ıncat antena sa pastrezeorientarea dorita). Sistemul este reprezentat ın Fig. 4.8.

bratul mom

entului

pres

iune

solara

θm – unghi tangaj

Figura 4.8.: Diagrama satelit geosincron pentru Problema R4.1

Orientarea satelitului este reglata prin roti de reactie (cf. legii conservariimomentului) si este afectata de o perturbatie periodica datorata presiunii so-lare (d(t) = 10−5 sin(7 · 10−5t)). Luand ın calcul aceste elemente, unghiulde tangaj masurat θm depinde de voltajul v aplicat rotilor de reactie si deperturbatia d:

θm(s) =1

102s(s+ 0.01)(s+ 10)︸ ︷︷ ︸P (s)

V (s) +−0.01

s2(s+ 10)D(s).

Functia de transfer P (s) reprezinta dinamica nominala a sistemului. In reali-tate, trebuie sa consideram perturbatii de model datorate flexibilitatii antenei:

P (s) = P (s)(1 + ∆m(s))

Laboratorul 4. Tehnica de loopshaping 97

unde

|∆m(jω)| < |WT (jω)| =∣∣∣∣(s/0.03 + 1)2

30

∣∣∣∣s=jω

=1 + ω2

0.0009

30.

Cerinta de performanta impusa este ca la frecventa perturbatiei (ωe = 7 ·10−5

rad/s) deviatia unghiului de tangaj fata de referinta sa fie mai mica de 0.01◦

(1.7 · 10−4 rad/s):

|θm(jωe)| =0.01

ω2e

√ω2e+100

10−5

|1 + C(jωe)P (jωe|< 1.7 · 10−4

unde C(s) este compensatorul ce trebuie aflat. Din ecuatia anterioara obtinem

|1 + C(jωe)P (jωe| ≥0.01 · 10−5

(7 · 10−5)210(1.7 · 10−4)= 12000

ceea ce ınseamna ca functia pondere a sensibilitatii respecta conditia

|WS(jωe)| = 12000.

Tinand cont de ecuatiile anterioare, putem scrie conditia de performantarobusta astfel:

∣∣∣∣P (jω)

1 + P (jω)

∣∣∣∣ · |WT (jω)|+∣∣∣∣

1

1 + P (jω)

∣∣∣∣ · |WS(jω)| < 1. (4.8)

Se cer umatoarele:

(i) Obtineti un compensator prin tehnici de loopshaping.

(ii) Rezultatele obtinute sunt satisfacatoare, dar sunt conservative datorita in-certidunii largi de model. In continuare presupunem ca avem la dispozitieun model ımbunatatit:

P (s) =0.01

s(s+ 0.01)(s+ 10)· (s+ 1)2

s2 + 0.04s+ 1

cu incertitudinile de model marginite de functia pondere WT (s):

|∆m(jω)| < |WT (s)| =∣∣∣∣(s/0.3 + 1)2(s+ 1)2

30(s/10 + 1)2

∣∣∣∣s=jω

=

∣∣∣∣∣∣

(1 + ω2

0.09

)(1 + ω2)

30(1 + ω2

100

)

∣∣∣∣∣∣.

Solutie. (i) Primul pas pentru obtinerea compensatorului robust este identi-ficarea domeniilor de frecventa:

• alegem intervalul de joasa frecventa (0, ωe ≈ 10−4);

98 Teoria sistemelor automate. Indrumar de laborator

• frecventa de taiere a lui WT (jω) este ≈ 0.1 rad/s, alegem (0.5,∞)ca interval de ınalta frecventa pentru ca la 0.5 rad/s, WT are −20dB.

Modelam WS ca un filtru trece-jos si tinem cont ca frecventa polului este≥ ωe = 10−4 rad/s si ca, la ω = 0.5 rad/s, [WT ]dB < 0 < [WS ]dB. Alegematunci

WT (s) =12 · 10−5

(s+ 10−4)2

ce scade ın 3.5 decade (ıntre 10−4 si 10−0.3 ≈ 0.5) cu ≈ 140 dB, ceea ceeste suficient, tinand cont ca 12000 ≈ 80 dB.

Pentru L = PC putem acum formula conditiile de loopshaping:

• la joasa frecventa:

|L(jω)| > |1 +WS(jω)|1− |WT (jω)| ≈ 80 dB;

• la ınalta frecventa:

|L(jω)| < 1− |WS(jω)||1 +WT (jω)| ≈

30

1 + ω2

0.0009

.

Determinarea compensatorului robust este un proces iterativ. Vom pornide la cea mai simpla formulare si vom itera pana la obtinerea rezultatuluidorit.

Pasul 1 – componenta proportionala

In Fig. 4.9a ilustram functia de transfer P (s) ımpreuna cu constrangerilede joasa si ınalta frecventa. Dupa cum se observa, nu este respectata con-strangerea de joasa frecventa. In consecinta, alegem Cp(s) = 10 ceea ceadauga 20 dB la amplitudinea lui L(s) si valideaza constrangerea. Pentrufrecventa de taiere ωg = 10−1 rad/s avem o margine de faza asa cumse observa ın Fig. 4.9b, de MF = 5◦. Aceasta conduce, la frecventa de

taiere ωg = 0.1 la un suprareglaj 2 sinMF

2= 0.09 ≈ 10%, ceea ce este

inacceptabil.

Pasul 2 – componenta avans de faza

Pentru a avea o margine de faza de 60◦ adaugam ınca 55◦ printr-uncompensator anticipativ (cu avans de faza)

Cld(s) =s+ 0.019

s+ 0.19.

Laboratorul 4. Tehnica de loopshaping 99

10−5 10−4 10−3 10−2 10−1 100 10110−6

10−4

10−2

100

102

104

|1 +WS |1− |WT |

1− |WS ||1 +WT |

|P |

|Cp · P |

|ωg = 10−1|

(a) amplitudine

10−5 10−4 10−3 10−2 10−1 100 101

−200

−150

−100

frecventa de taiere

marginea de faza

(b) faza

Figura 4.9.: Loopshaping satelit – pasul 1

Alegem frecventa de avans ωl = 0.06 ceea ce face ca frecventa de taiere alui Cld(s) · Cp(s) · P (s) sa ramana ωg = 0.1. Rezultatul aplicarii acestuitermen este ilustrat ın Fig. 4.10. Dupa cum se observa (Fig. 4.10b), avemmarginea de faza dorita, dar ıncalcam constrangerea de joasa frecventa(Fig. 4.10a).

Pasul 3 – componenta ıntarziere de faza

Pentru a ındeplini constrangerea de joasa frecventa adagam un termen deıntarziere

Clg(s) =s+ 0.005

s

ce va creste amplificarea la joasa frecventa si va scadea marginea de fazacu doar 6◦ (pentru ca am avut grija sa luam zero-ul ωlg = 0.005 cu o

100 Teoria sistemelor automate. Indrumar de laborator

10−5 10−4 10−3 10−2 10−1 100 10110−6

10−4

10−2

100

102

104

|1 +WS |1− |WT |

1− |WS ||1 +WT |

|Cl · Cp · P |

|Cp · P |

|ωg = 0.1||Cld · Cp · P |

(a) amplitudine

10−5 10−4 10−3 10−2 10−1 100 101

−200

−150

−100

frecventa de taiere

marginea de faza

|Cp · P |

|Cld · Cp · P |

(b) faza

Figura 4.10.: Loopshaping satelit – pasul 2

decada ınaintea frecventei de frangere ωg = 0.1). Rezultatul aplicariiacestui termen este ilustrat ın Fig. 4.11.

Considerand compensatorul obtinut,

C(s) = 10 · s+ 0.005

s· s+ 0.019

s+ 0.19,

putem acum ilustra functiile de transfer ın bucla ınchisa (T (s)) si de sen-sibilitate (S(s)) ımpreuna cu cerinta de performanta (4.8). Rezultatelesunt ilustrate ın Fig. 4.12. Observam ın Fig. 4.12a ca alegerea compen-satorului este conservativa deoarece coeficientul de performanta este cumult sub valoarea maxim admisa (� 1). In Fig. 4.12b ilustram raspunsul

la treapta cu si fara pre-filtrare (Pf (s) =0.019

s+ 0.019). Dupa cum se poate

observa, raspunsul este lent.

Laboratorul 4. Tehnica de loopshaping 101

10−5 10−4 10−3 10−2 10−1 100 10110−6

10−4

10−2

100

102

104

|1 +WS |1− |WT |

1− |WS ||1 +WT |

|ωg = 0.1||Cld · Cp · P |

|Clg · Cld · Cp · P |

(a) amplitudine

10−5 10−4 10−3 10−2 10−1 100 101

−200

−150

−100

frecventa de taiere

marginea de faza

|Clg · Cld · Cp · P |

|Cld · Cp · P |

(b) faza

Figura 4.11.: Loopshaping satelit – pasul 3

Figurile 4.9–4.12 au fost realizate cu Sursa D.1.

(ii) Pasul 4 – model ımbunatatit

Domeniile de frecventa se calculeaza similar cazului anterior. Intervalulde joasa frecventa ramane ω ∈ (0, ωe ≈ 10−4). In schimb, intervalul deınalta frecventa este acum (3,∞) pentru ca ıncepand cu ω = 3 rad/sincertitudinea de model devine semnificativa (WS(3j) ≈ −30 dB). Com-parativ cu cazul precedent am redus semnificativ eroarea de incertitudine(de la 0.3 la 3, o ıntreaga decada).

102 Teoria sistemelor automate. Indrumar de laborator

10−4 10−3 10−2 10−1 100 10110−3

10−2

10−1

100

101

S(s)T (s)

coeficient performanta

(a) amplitudine

0 40 80 120 160 2000

0.5

1

fara pre-filtrare

cu pre-filtrare

(b) faza

Figura 4.12.: Loopshaping satelit – pasul 3 (verificare)

Pasul 5 – componenta proportionala

In Fig. 4.13a ilustram functia de transfer P (s) ımpreuna cu constrangerilede joasa si ınalta frecventa. Dupa cum se observa, nu este respectata con-strangerea de joasa frecventa. In consecinta, alegem Cp(s) = 10 ceea ceadauga 20 dB la amplitudinea lui L(s) si valideaza constrangerea. Pentrufrecventa de taiere wg = 10−1 avem o margine de faza asa cum se observa

ın Fig. 4.9b, de MF = 15◦. Insa avem un varf de rezonanta la ωp = 1ceea ce conduce la o margine de amplitudine de 0 dB, deci sistemul ınbucla ınchisa este instabil.

Laboratorul 4. Tehnica de loopshaping 103

10−5 10−4 10−3 10−2 10−1 100 10110−6

10−4

10−2

100

102

104

106

|1 +WS |1− |WT |

1− |WS ||1 +WT |

|P |

|Cp · P |

|ωg = 0.1|

(a) amplitudine

10−5 10−4 10−3 10−2 10−1 100 101

−250

−200

−150

−100

frecventa de taiere

marginea de faza

(b) faza

Figura 4.13.: Loopshaping satelit – pasul 5

Pasul 6 – adaugare filtru notch

Nu putem proceda ca la Pasul 2 unde am marit marginea de faza prinadaugarea unui compensator de avans pentru ca astfel ridicam si varful derezonanta ceea ce ar conduce la margine de amplitudine negativa. Prinurmare trebuie solutionata mai ıntai problema acestui varf de rezonanta.Pentru aceasta, consideram

Cn(s) =s2 + 0.0316s+ 1

s2 + s+ 1

ce “netezeste” varful de amplitudine de la ωp = 1. Amplitudinea si fazanoului sistem sunt ilustrate ın Fig. 4.14.

Adagand filtrul notch, am introdus doua probleme aditionale: constran-gerea de ınalta frecventa este ıncalcata (Fig. 4.14a) iar marginea de faza

104 Teoria sistemelor automate. Indrumar de laborator

10−5 10−4 10−3 10−2 10−1 100 10110−6

10−4

10−2

100

102

104

106

|1 +W2|1− |W1|

1− |W2||1 +W1|

|ωg = 0.1|

|Cp · P |

|Cn · Cp · P |

(a) amplitudine

10−5 10−4 10−3 10−2 10−1 100 101

−250

−200

−150

−100

frecventa de taiere

marginea de faza

|Cn · Cp · P |

|Cp · P |

|ωg = 10−1|

(b) faza

Figura 4.14.: Loopshaping satelit – pasul 6

este redusa (Fig. 4.14b).

Laboratorul 4. Tehnica de loopshaping 105

Pasul 7 – rezolvare ıncalcare constrangere la ınalta frecventa:compensare de panta

Pentru a rezolva prima problema (ıncalcare constrangere la ınalta frecventa)adaugam un filtru de compensare de panta ce aduna ınca −40 dB/decıncepand cu ω = 3 rad/s:

Cr(s) =9

(s+ 3)2.

Amplitudinea si faza noului sistem sunt ilustrate ın Fig. 4.15.

10−5 10−4 10−3 10−2 10−1 100 10110−6

10−4

10−2

100

102

104

106

|1 +W2|1− |W1|

1− |W2||1 +W1|

|ωg = 0.1|

|Cr · Cn · Cp · P |

|Cn · Cp · P |

(a) amplitudine

10−5 10−4 10−3 10−2 10−1 100 101

−250

−200

−150

−100

frecventa de taiere

marginea de faza

|Cn · Cp · P |

|Cr · Cn · Cp · P |

|ωg = 10−1|

(b) faza

Figura 4.15.: Loopshaping satelit – pasul 7

106 Teoria sistemelor automate. Indrumar de laborator

Pasul 8 – adaugare margine de faza

In acest ultim pas adaugam faza la frecventa de taiere pentru a ajunge lao margine de faza de 60◦. Pentru aceasta, adaugam termenul de avans:

Cld(s) =s+ 0.063

s+ 0.63

9

(s+ 3)2.

Amplitudinea si faza noului sistem sunt ilustrate ın Fig. 4.16.

10−5 10−4 10−3 10−2 10−1 100 10110−6

10−4

10−2

100

102

104

106

|1 +W2|1− |W1|

1− |W2||1 +W1|

|ωg = 0.1|

|Cld · Cr · Cn · Cp · P |

|Cr · Cn · Cp · P |

(a) amplitudine

10−5 10−4 10−3 10−2 10−1 100 101

−250

−200

−150

−100

frecventa de taiere

marginea de faza

|Cld · Cr · Cn · Cp · P |

|Cr · Cn · Cp · P |

|ωg = 10−1|

(b) faza

Figura 4.16.: Loopshaping satelit – pasul 8

Considerand compensatorul obtinut,

C(s) = 10 · s+ 0.063

s+ 0.63

s2 + 0.0316s+ 1

s2 + s+ 1,

putem acum ilustra functiile de transfer ın bucla ınchisa T (s) si de sensi-bilitate S(s) ımpreuna cu cerinta de performanta (4.8). Rezultatele sunt

Laboratorul 4. Tehnica de loopshaping 107

ilustrate ın Fig. 4.17.

10−4 10−3 10−2 10−1 100 10110−3

10−2

10−1

100

101

S(s)T (s)

coeficient performanta

(a) amplitudine

0 20 40 60 80 100 120 140 160 180 2000

0.5

1

cazul anterior

cazul curent

(b) faza

Figura 4.17.: Loopshaping satelit – pasul 8 (verificare)

Figurile 4.13–4.17 au fost realizate cu Sursa D.2.

Problema R4.2. Se considera procesul P (s) =1

s(s+ 1). Obiectivul este ur-

marirea de referinte sinusoidale cu eroare de cel mult 10% ın banda de frecvente0 ≤ ω ≤ 1, ın conditiile existentei unor incertitudini multiplicative cu profil

dat de WT (s) =s+ 1

10(0.01s+ 1).

(i) Figurati pe acelasi grafic diagramele Bode ale restrictiilor la joasa si ınaltafrecventa si ale lui P (s);

108 Teoria sistemelor automate. Indrumar de laborator

(ii) Plecand de la L(s) = P (s), adaugati un bloc proportional pentru a satis-face performanta la joasa frecventa;

(iii) Ce margini de amplitudine si de faza s-au obtinut?

(iv) Folositi un bloc cu avans de faza pentru cresterea marginii de faza la celputin π/3 radiani;

(v) Verificati ca proiectarea propusa satisface cerintele.

Solutie. (i) Diagramele cerute sunt date ın Fig. 4.18.

|P |

|14P ||WS |

1− |WT |

1

|WT |

ω [rad/s]0.1 1 3.7 10 100

[dB]

0

20

40

ω [rad/s]

argP (jω)[rad]

0.1 1 3.7 10 100−π/2

−πMF

Figura 4.18.: Diagramele Bode ale lui P (s) si marginile lui |L| pentru loopsha-ping din cadrul Problemei R4.2.

(ii) Pentru a satisface restrictia la joasa frecventa se observa din grafice caeste necesara adaugarea a cel putin 20 dB prin intermediul unui blocproportional, obtinand L(s) = 14

s(s+1) . Pentru acest L(s) conditia la ınalta

frecventa este automat ındeplinita, singura problema provenind din zonade medie frecventa ın care panta este de −40 dB/dec (la limita absolutapermisa de teorema lui Bode) — vezi diagrama din Fig. 4.18.

(iii) Marginea de amplitudine si de faza se calculeaza gasind ıntai punctele ıncare hodograful intersecteaza axa reala ın intervalul (−1, 0) si respectiv

Laboratorul 4. Tehnica de loopshaping 109

cercul cu centrul ın zero si raza 1. Pentru L(s) =14

s(s+ 1)obtinem

MA = ∞ si respectiv MF = π/12, care se atinge pentru o pulsatie deωf = 3.7 rad/s. Observam ca marginea de faza este relativ mica, lucrudatorat pantei prea abrupte din zona de medie frecventa.

(iv) Pentru a atenua panta ın zona de medie frecventa si a mari ın consecintamarginea de faza proiectam un bloc cu avans de faza. Propunem un avansde faza egal cu π/4, pentru a obtine o margine totala de faza egala cuπ/3. Parametrii ce definesc blocul de avans de faza a si b satisfac

b

a=

1 + sin(π/4)

1− sin(π/4)≈ 6, ωf =

√ab,

obtinandu-se a ≈ 1.5 si b ≈ 9. Functia de transfer ın bucla deschisadevine

L(s) = 149

1.5

s+ 1.5

s+ 9

1

s(s+ 1),

iar regulatorul corespunzator este

C(s) = 149

1.5

s+ 1.5

s+ 9.

Calculand marginea de faza totala obtinuta cu noul regulator aceasta esteaproximativ π/4, mult sub valoarea prezisa de proiectare de π/3. Aceastase datoreaza faptului ca marginea de faza se obtine acum la pulsatia detaiere de aproximativ 7 rad/s, mult peste valoarea de proiectare de 3.7 ra-d/s. Pentru a creste marginea de faza ınspre valoarea dorita, adaugamfaza la o valoare apropiata, dar mai mare decat noua pulsatie de taiere,de exemplu la 8 rad/s. Valoarea pe care o adaugam este mai mare, ınparticular π/3, obtinand ın final un regulator de forma

C(s) = 1429

2.15

s+ 2.15

s+ 29.

Trasand diagrama Bode a amplitudinii lui

L(s) = 1429

2.15

s+ 2.15

s+ 29

1

s(s+ 1)

observam ca noul regulator obtinut nu ıncalca marginile impuse de pro-iectare (vezi Fig. 4.19). Ultima etapa consta ın validarea proiectarii prinverificarea stabilitatii ın bucla ınchisa si inegalitatii de performanta ro-busta (4.2).

110 Teoria sistemelor automate. Indrumar de laborator

|WS |1− |WT |

1

|WT |

ω [rad/s]

|L(jω)|[dB]

0.1 1 10 1000

20

ω [rad/s]

argL(jω)[rad]

0.1 1 10 100−π/2

−π

MF

Figura 4.19.: Diagramele Bode ale sistemului L(s) = 14 292.15

s+2.15s+29

1s(s+1) din

cadrul Problemei R4.2.

Problema R4.3. Analizam aici controlul vitezei unghiulare de tangaj θ(t)pentru o aeronava. O prima aproximare a sistemului este

P (s) =s+ 1

s2 + 2ζωns+ ω2n

.

Functia de transfer modeleaza dinamica rigida a aeronavei, ignorand torsiu-nea. Consideram factorul de amortizare ζ = 0.7 si frecventa naturala ωn = 5rad/sec. Uzual, se specifica o forma dorita a functiei pe calea directa L(s).Alegem simplu

L(s) =ωcs,

unde ωc > 0 este frecventa critica pentru care |L(jωc)| = 1. Aceasta formaextrem de simpla asigura cateva performante importante:

(i) Stabilitate interna;

(ii) Urmarire buna si rejectia perturbatiilor (i.e., |S(jω)|mic) la joasa frecventa;

Laboratorul 4. Tehnica de loopshaping 111

(iii) Robustete buna (i.e., |T (jω)| mic) la ınalta frecventa.

Rezulta din aceasta alegere a functiei L(s) ca

S(s) =s

s+ ωc, C(s) =

L(s)

P (s)= ωc

s2 + 2ζωns+ ω2n

s(s+ 1).

100 101−10

0

10

20

30

L(s)

(a) pentru L(s)

10−1 100 101 102 103−50

−30

−10

10

S(s) T (s)

(b) pentru S(s) si T (s)

Figura 4.20.: Diagramele Bode pentru Problema R4.3

Diagramele Bode pentru functiile L(s), S(s) si T (s) sunt date ın Fig. 4.20,unde am ales ωc = 10 rad/sec. Observati ca cerintele de proiectare (i) - (iii)sunt satisfacute.

In principiu, cu cat ωc este mai mare, cu atat performantele sunt mai bune- spre exemplu, |S| este mic pentru o banda mai larga de frecvente. Existaınsa o limitare la alegerea lui ωc din cauza incertitudinilor de model la ınaltafrecventa: P (s) modeleaza doar corpul rigid, fara torsiuni. Cunoastem caprimul mod de torsiune este la aproximativ ωn2 = 45 rad/sec. Daca inclu-dem acest mod ın P (s), apar doi poli foarte aproape de axa imaginara, ınvecinatatea punctelor ±45j. |P (jω)| devine mare ın jurul frecventei de 45

112 Teoria sistemelor automate. Indrumar de laborator

rad/sec. Pentru a rezolva aceasta situatie, impunem ca |L| sa fie mic pen-tru frecventele la care incertitudinea de model apare. Spre exemplu, vrem saasiguram

|L(jω)| ≤ 0.5 , ∀ω ≥ 45.

Avem succesiv:∣∣∣∣ωcjω

∣∣∣∣ ≤1

2, ∀ω ≥ 45 ⇔ 0 < ωc ≤

ω

2, ∀ω ≥ 45.

Cea mai mare valoare pentru ωc care satisface aceasta conditie este ωc = 45/2.Desenati si voi diagramele Bode pentru acest ωc.Fig. 4.20 este realizata cu ajutorul Sursa D.3.

4.3. Sarcini aditionale

Problema P4.4. Discutam aici despre filtrul Butterworth, un filtru largraspandit ın inginerie, ın domenii ca electronica, telecomunicatii, sisteme audios.a. Noi ıl vom folosi pentru impunerea specificatiilor nominale de performanta‖WSS‖∞ < 1, mai concret pentru determinarea functiei pondere WS(s).

Spre exemplu, ne dorim ca sistemul reglat sa urmareasca cu o eroare decel mult 10% = 0.1 semnale armonice din banda de frecvente [0, 1] rad/sec.O alegere uzuala pentru WS(s) este un filtru Butterworth de tip trece jos cufrecventa de taiere de 1 rad/sec. In Matlab, apelul

1 [ b , a ] = butte r (3 , 1 , ’ low ’ , ’ s ’ ) ;WS = 10∗ t f (b , a ) ;

determina functia dorita. Am ales un filtru analogic de ordinul N = 3 detip trece jos. Pentru detaliile necesare, apelati help butter. Observati caam introdus o amplificare care corespunde erorii de urmarire admise. Aceastaamplificare se calculeaza simplu ca 1/0.1 = 10. Desenati voi diagrama Bodeın amplitudine pentru |WS | si 1/|WS | cu functia Matlab bodemag.

Problema P4.5. Proiectam acum un compensator robust pentru sistemuldublu integrator cu o ıntarziere incerta. Alegem o aproximare stabila de forma

P (s) =1

(s+ 0.01)2.

Elementul de ıntarziere incert e−τs care apare ın expresia functiei de transfersub forma P (s) = e−τsP (s) este tratat ca o incertitudine multiplicativaP = (1 + ∆WS)P , unde ‖∆‖∞ < 1 si

WS(s) =0.1s

0.05s+ 1.

Laboratorul 4. Tehnica de loopshaping 113

Sa impunem acum cerintele de proiectare. Ne dorim ca sistemul reglat saurmareasca cu o eroare de cel mult 10% semnale armonice din banda defrecvente [0, 1] rad/sec, ca ın Problema R4.4. Functia pondere obtinuta este

WT (s) =10

s3 + 2s2 + 2s+ 1.

10−2 10−1 100 101 102 103−160

−130

−100

−70

−40

−10

20

W2(s) W1(s)

[W1]dB > 0 > [W2]dB [W1]dB < 0 < [W2]dB

(a) Functiile pondere

10−2 10−1 100 101 10210−1

100

101

102

|WT |1− |WS |

1− |WT ||WS |

L(s)

(b) Tehnica de loopshaping

Figura 4.21.: Diagramele Bode pentru Problema R4.5

Dam ın continuare pasii care trebuie urmati pentru proiectarea unui com-pensator robust prin tehnica de loopshaping (pentru o discutie detaliata vezicursul):

1. Reprezinta ın scala loglog amplitudine vs. frecventa graficele functiilor

|WT |1− |WS |

pentru banda de frecvente la care |WT | > 1 > |WS | si

114 Teoria sistemelor automate. Indrumar de laborator

1− |WT ||WS |

pentru banda de frecvente la care |WT | < 1 < |WS |.

2. Pe acest grafic potriviti o curba care reprezinta graficul lui |L|. La joasafrecventa curba se va afla deasupra primului grafic, cu |L| � 1. La ınaltafrecventa curba se va afla sub ce de-al doilea grafic, cu |L| � 1. Tranzitiade la ınalta la joasa frecventa se va face fara ruperi de derivata, cu atentiesporita ın vecinatatea lui 1 (adica 0 dB).

3. Gasiti o functie de transfer stabila, de faza minima L(s), a carei diagramaBode a fost proiectata anterior, cu L(0) > 0. Compensatorul robust seobtine din relatia C(s) = L(s)/P (s).

Fig. 4.21a prezinta diagramele Bode pentru cele doua functii pondere. De ase-menea, am proiectat un compensator robust pentru exemplul nostru. Fig. 4.21bilustreaza graficele aferente pasilor prezentati. Functia de transfer L(s) obtinutaprin mai multe ıncercari este

L(s) =20

2s+ 1.

Incercati sa obtineti o alta functie L(s). Calculati compensatorul C(s). Repre-zentati pe graficul din Fig. 4.21b functia P (s). Codul Matlab corespunzatorse gaseste ın Sursa D.4.

Problema P4.6. Consideram functia de transfer:

P (s) =s+ 1

s2 + 2× 0.7× 5s+ 52

s2 + 2× 0.05× 30s+ 302

s2 + 2× 0.01× 45s+ 452.

Problema este o extensie a Problemei R.4.3, cu modelul primului mod de tor-siune la 45 rad/sec inclus. Acest mod este slab amortizat, avand coeficientulde vascozitate 0.01. Frecventa si coeficientul de amortizare au tipic o incer-titudine asociata de 2 − 3%. De asemenea, ın P (s) a fost inclusa o perechede zerouri slab amortizate. Alegem functia de transfer pe calea directa ca ınProblema R4.3:

L(s) =ωcs

(i) Desenati caracteristica amplitudine-frecventa pentru P . Gasiti compen-satorul C = L/P si reprezentati grafic caracteristica amplitudine-frecventapentru ωc = 1 : 10. Observati ca C(s) este un filtru stop-banda (FSB).Cum se modifica “adancitura” filtrului (filter notch) cu ωc?

8

8 In electronica, se teoretizeaza ca filtrele SB se parametrizeaza dupa un Q, care este functiede frecventa de centru si de alti parametrii electrici. Cu cresterea lui Q, circuitul varaspunde cu sub- si suprareglaj care pot distruge integritatea ıntregului circuit.

Laboratorul 4. Tehnica de loopshaping 115

(ii) Numerele 45 si 0.01 sunt incerte. O alegere mai prudenta pentru L este

L(s) =ωcs

s2 + 2× 0.03× 45s+ 452

s2 + 2× 0.01× 45s+ 452.

Ne dorim maximizarea lui ωc a.ı.

|L(jω)| ≤ 0.5, ∀ω ≥ 45.

Gasiti valoarea lui ωc. Veti folosi rationamentul din Problema R4.3.

(iii) Calculati cu Matlab C(s). Desenati caracteristica amplitudine - frecventapentru L(jω), C(jω), S(jω) si T (jω). Ce puteti spune despre factorul Qal compensatorului? Interpretati rezultatele.

Problema P4.7. Microscopul de putere atomica ın tapping mode. Unmodel simplificat pentru dinamica verticala a microscopului de putere atomicaın modul de contact intermitent este dat de functia de transfer

P (s) =a(1− e−sτ )

sτ(s+ a),

unde a = 1 si τ = 0.25. Pasi de lucru:

(i) Pentru a ımbunatati atenuarea perturbatiilor pe comanda crestem ampli-ficarea de la joasa frecventa folosind un compensator integral. Atunci

L1(s) =kisP (s).

Desenati diagramele Bode pentru P si L1, pentru ω ∈ [10−2, 102] si ki = 1,pe acelasi grafic. Determinati marginea de amplitudine, respectiv margi-nea de faza pentru L(s). Indicatie. Pentru P veti utiliza functia Matlabbode, iar pentru L1, margin.

(ii) Gasiti valoarea lui ki la care marginea de faza a lui L1 este MF ≈ 0. Cese ıntampla cu amplificarea de la joasa frecventa? Indicatie. Veti repetapunctul (i). variind crescator valoarea lui ki. Observati ce se ıntamplapentru ki = 9.

(iii) Ne dorim ımbunatatirea marginii de faza prin introducerea unei actiuniproportionale. Functia de transfer pe calea directa devine

L2(s) =kps+ ki

sP (s).

Desenati diagramele Bode pentru P, L1 si L2 pe acelasi grafic, pentruω ∈ [10−2, 102], ki = 8.3 si kp = 1. Cum se modifica caracteristica faza -frecventa?

116 Teoria sistemelor automate. Indrumar de laborator

(iv) Il vom gasi aici pe acel kp care minimizeaza ‖S‖∞, i.e., supremumul depe diagrama Bode. Desenati pe acelasi grafic caracteristica amplitudine- frecventa pentru

S(s) :=1

1 + L2, cu kp = 1 : 5.

In ce interval se schimba monotonia functiei ‖S(kp)‖∞? Pentru a-l deter-mina pe kp, ajustati la o zecimala. Verificati ca ‖T‖∞ este mica pentruacest kp. Indicatie. Folositi rutinele bodemag si S = feedback(1,L2).Reamintim ca T = L2/(1 + L2).

(v) Desenati diagramele Bode pentru P, L1 si L2 pe acelasi grafic, pentruω ∈ [10−2, 102], ki = 8.3 si kp = 3.5. Concluzionati.

Problema P4.8. Consideram functia de transfer

P (s) =−s+ 16

(s− 6)(s+ 11).

Pasi de lucru:

(i) Desenati diagrama poli - zerouri pentru P (s). Care sunt polii si zerourile?Este sistemul stabil si de faza neminima?

(ii) Din cauza celor constatate anterior, loopshaping-ul este dificil de aplicat.In acest caz, functia de transfer pe calea directa trebuie sa contina polii sizerourile instabile ale sistemului nominal. O alegere potrivita este asadar

L1(s) =ωcs

−s+ 16

16

s+ 6

s− 6.

Calculati cu Matlab C1(s) = L1(s)/P (s). Este acest compensator pro-priu?

(iii) Constatam ca trebuie introdus un pol suplimentar, dorit extrem de rapid.Justificati aceasta afirmatie. Impuneti un pol suplimentar cu constantade timp T = 0.001 sec ın functia L1(s), pentru a obtine L(s) potrivit.

(iv) Il vom calcula iterativ pe acel ωc care minimizeaza ‖S‖∞. Desenatipe acelasi grafic caracteristica amplitudine - frecventa pentru S(jω), cuωc = 1 : 10 si observati supremum-ul. Care ωc este mai bun?

(v) Reluati punctul anterior pentru ωc = 0.1 : 0.1 : 1. Ce se observa? Putemrestrange si mai mult intervalul de cautare? Daca da, implementati acestlucru. Daca nu, determinati numeric ωc.

Laboratorul 4. Tehnica de loopshaping 117

x

y F2

r

F1

θ

simbol descriere valoarem masa vehicol 4.0 kgJ inertie vehicol 0.0475 kg m2

r bratul momentului 25.0 cmc coeficient amortizare 0.05 kg m/sg const. gravitationala 9.8 m/s2

Figura 4.22.: Controlul unghiului de rostogolire θ pentru o aeronava cu pro-pulsie vectoriala. Unghiul este controlat prin cele doua motoarepozitionate pe aripi, rezultand un moment generat de F1. Aici,F2 este propulsia vectoriala.

Problema P4.9. Roll control pentru o aeronava cu propulsie vec-toriala. Sistemul dinamic al aeronavei este prezentat ın Fig. 4.22. Modelulsimplificat este dat de

P (s) =r

Js2.

Modelul descrie transferul de la forta F1 la unghiul θ. Ne dorim ca eroarea ınregim stationar sa fie cel mult 1% si o eroare de urmarire de sub 10% pana la10 rad/sec.

(i) Pentru a atinge performantele impuse ne trebuie o amplificare de cel putin10=20 dB la 10 rad/sec. Prin urmare, frecventa de taiere este mare.Incercam un compensator proportional de forma C(s) = kp. Desenati peacelasi grafic diagramele Bode pentru P (s) si L(s), pentru diferite valoriale parametrului kp. Determinati marginea de faza si amplitudine pentruL(s). Ce puteti concluziona? Indicatie. Folositi instructiunea bode(P);hold on; margin(L).

(ii) O simpla amplificare duce la o margine de faza foarte mica. Scopul esteasadar cresterea marginii de faza. Pentru a atinge acest deziderat, intro-ducem un compensator cu avans (a < b) sau cu ıntarziere de faza(a > b) de forma

C(s) = ks+ a

s+ b.

Alegem a = 2, b = 50 si k = 1. Se observa modificarea fazei? Creste sauscade MF ? Justificati.

118 Teoria sistemelor automate. Indrumar de laborator

(iii) Reluati punctul anterior, pentru k crescator. Care este valoarea lui kpentru care MF ≥ 60◦ si frecventa de taiere9 ωc > 10?

9Frecventa la care amplitudinea este 1=0 dB. La ωc, hodograful taie cercul unitate dinplanul C.

A. Anexa – laborator 1

A.1. Introducere ın Simulink

Simulink este un pachet software pentru modelarea, simularea, analiza si regla-rea sistemelor dinamice. Simulink, extensie a pachetului de programe Matlab,permite atat analiza sistemelor liniare, cat si a celor neliniare, continue, dis-crete sau hibride. Accesul la mediul Simulink este posibil lansand urmatoareacomanda ın Matlab:

s imul ink

Va fi deschisa o fereastra de lucru (Simulink Library Browser), din caresunt accesibile cele 15 biblioteci Simulink. Aceste biblioteci contin toate ele-mentele necesare constructiei unui model grafic al sistemului dorit (operatiimatematice de baza, functii de transfer, generatoare de semnal etc.).

O sesiune de lucru ın Simulink se ımparte ın doua etape:

Definirea modelului este realizata prin crearea unei diagrame bloc, prin adu-cerea ın fereastra de lucru a unor blocuri grafice din bibliotecile existente.

Simularea modelului se poate face din meniul Simulation / Start (sau prinapasarea butonului Run, disponibil ın bara de meniu). Parametrii desimulare pot fi setati prin intermediul meniului Simulation / Confi-guration Parameters.

Simulink va utiliza informatia din diagrama bloc pentru a construi o functiesistem (S-function), ca reprezentare interna a modelului. Fiecare diagramabloc creata de utilizator are drept corespondent o functie sistem cu acelasinume ca si modelul, functie ce va fi utilizata pentru simularea si analiza siste-mului de catre rutinele de integrare, liniarizare, etc.

Simularea modelelor Simulink implica integrarea unor ecuatii diferentialeordinare. Sunt accesibile mai multe metode de integrare numerica; acesteapot fi setate din meniul Simulation / Configuration Parameters.

Ne propunem implementarea unui exemplu simplu ın Simulink. Consideram

functia de transfer P (s) =1

(s+ 2)(s+ 3)si compensatorul C(s) =

Q

1− PQ ,

unde Q(s) =1

s+ 1, legate ıntr-o bucla de reactie unitara. Acestui sistem ın

120 Teoria sistemelor automate. Indrumar de laborator

bucla ınchisa dorim sa ıi aplicam o intrare treapta si sa ıi vizualizam iesireacorespunzatoare.Deschidem mediul de lucru Simulink. Utilitatea fiecarui bloc folosit poate fivizualizata ın partea de sus a ferestrei Simulink Library Browser. Pasii deurmat sunt urmatorii:

1. Din fereastra Simulink Library Browser se selecteaza File / New /Model;

2. Din biblioteca Sources se selecteaza blocul Step si se aduce ın fereastrade lucru (aducerea blocului ın fereastra de lucru se face prin “drag anddrop” cu mouse-ul);

3. Din biblioteca Continuous se selecteaza doua blocuri Transfer Fcn;

4. Din Sinks se selecteaza Scope si se aduce ın fereasta de lucru;

5. Din Math Operations se selecteaza Subtract;

6. Se conecteaza blocurile conform Fig. A.1;

7. Se seteaza parametrii blocurilor: se selecteaza fiecare bloc ın parte si seface dublu-click. Pentru fiecare bloc va aparea o fereastra de dialog. Prinintermediul acesteia pot fi setati parametrii fiecarui bloc;

8. Se face dublu-click pe Scope pentru deschiderea ferestrei osciloscopului,prin intermediul careia poate fi urmarita evolutia simularii; se apasa buto-nul Run pentru pornirea simularii.

C(s) P(s)r

eroare

iesire

Figura A.1.: Diagrama Simulink pentru bucla de reactie unitara – cazul “hard-coded”.

In Fig. A.1 valorile numerice sunt scrise direct ın campurile blocurilor ce aparın model. O alternativa este definirea acestora in Matlab si apoi referirea ın di-agrama Simulink. De asemenea, prin folosirea blocurilor Simout este posibilatrimiterea rezultatelor catre mediul Matlab. Spre exemplificare, implementamurmatorul cod Matlab:

Laboratorul A. Anexa – laborator 1 121

1 c l c ; c l e a r a l l ; c l o s e a l l

3 s = t f ( ’ s ’ ) ;P = 1/( s+2)/( s+3) ;

5 Q = 6/( s+1) ;C = Q/(1−P∗Q) ; % compensator obt inut pr in parametr i zarea Youla

7 [numP, denP ] = t fda ta (P) ; %extragem c o e f i c i e n t i i numaratorului s inumitoru lu i pentru proces

[numC, denC ] = t fda ta (C) ; %extragem c o e f i c i e n t i i numaratorului s inumitoru lu i pentru compensator

9

%i e s i r i l e f u n c t i e i t f da ta sunt c e l l−arrray , t r e b u i e sa apelam informa numP{1} , denP{1}

11

l oad system ( ’ r1 anexa s im 2 ’ ) ; %incarcam in memorie modelulsymulink ( e roa r e daca e s t e de ja d e s c h i s )

13 sim ( ’ r1 anexa s im 2 ’ ) % rulam modelul symulink , l a terminareas i m u l a r i i avem s t o c a t e i e s i r e a s i e roarea de urmar ire inv a r i a b i l e l e e s i y

p l o t ( y . Time ( 1 : end ) , y . Data ( 1 : end ) ) %af i sam i e s i r e a s i s t e m u l u i

Diverse variante intermediare sunt posibile: putem prelua variabile din Matlab,din fisiere de tip *.mat, putem afisa raspunsul direct ın Simulink, sa ıl stocampentru prelucrare ulterioara; putem rula modelul din interfata Simulink saucu ajutorul functiei sim, etc.

P(s) C(s)r iesire

eroare

Figura A.2.: Diagrama Simulink pentru bucla de reactie unitara – interactiunecu Matlab.

Alte blocuri folosite ın mod uzual sunt:

• blocul Transport Delay din biblioteca Continuos introduce o ıntarziere;

• blocurile Compare To Constant si Logical Operator din bibliotecaLogic and Bit Operations;

• blocurile Mux si Demux ce permit concatenarea si extragerea de ele-mente se regasesc ın biblioteca Signal Routing;

• blocul To File din biblioteca Sinks permite salvarea unei variabileıntr=un fisier mat;

• blocurile Sine Wave, Constant, Random Number se afla ın biblio-teca Sources si permit introducerea de intrari de forme particulare.

122 Teoria sistemelor automate. Indrumar de laborator

A.2. Algoritmul Euclid

Algoritmul lui Euclid permite obtinerea catului si restului ımpartirii a douapolinoame date. Pseudo-codul este ilustrat ın Algoritm A.1 iar implementareaMatlab ın Sursa A.1.

Algorithm A.1: Algoritmul Euclid

Data: Polinoamele n,mResult: Polinoamele qk, rk

1 Initializari: Trebuie ca grad(n) ≥ grad(m). Daca e fals, interschimban si m.

2 while rk nu este o constanta nenula do

3 Imparte n la m pentru a obtine catul q1 si restul r1:

n = mq1 + r1 , grad(r1) < grad(m)

4 Imparte m la r1 pentru a obtine catul q2 si restul r2:

m = r1q2 + r2 , grad(r2) < grad(r1)

5 Imparte r1 la r2 pentru a obtine catul q3 si restul r3:

r1 = r2q3 + r3 , grad(r3) < grad(r2)

6 end

Sursa A.2 implementeaza ın Matlab un algoritm de factorizare coprima.

f unc t i on [ x , y ] = e u c l i d (n ,m)2

% Functia implementeaza a l go r i tmu l l u i Euc l id pentru polinoamecoprime n ,m.

4 % Date f i i n d n ,m, cu grad (n)>=grad (m) , f u n c t i a re turneaza x , y a . i .% nx+my = 1

6

syms lam8

[ q1 , r1 ] = quorem (n ,m, lam ) ;10 i f quorem ( r1 , lam )==0

x = 1/ r1 ;12 y = −q1/ r1 ;

r e turn14 e l s e

[ q2 , r2 ] = quorem (m, r1 , lam ) ;16 i f quorem ( r2 , lam )==0

x = −q2/ r2 ;18 y = (1+q1∗q2 ) / r2 ;

r e turn20 e l s e

Laboratorul A. Anexa – laborator 1 123

[ q3 , r3 ] = quorem ( r1 , r2 , lam ) ;22 x = (1+q2∗q3 ) / r3 ;

y = (−q3−q1∗(1+q2∗q3 ) ) / r3 ;24 end

end

Listingul A.1: Implementare a algoritmului lui Euclid

1 f unc t i on [N,M,X,Y] = coprim (P)

3 % Functia pr imeste ca parametru f c t i a de t f P s i r e turneaza of a c t o r i z a r e

% coprima P = N/M , NX + MY = 1 .5 %

% Exemplu in s p a t i u l de comanda :7 % syms s ;

% P = 1/( s−1)/( s−2) ;9 % [N,M,X,Y] = coprim (P)

11

syms s lam ;13 Pt = subs (P, s ,(1− lam ) /lam ) ;

[ n ,m]=numden( Pt ) ;15 [ x , y ] = e u c l i d (n ,m) ;

17 N = subs (n , lam , 1 / ( s+1) ) ;N = f a c t o r (N) ;

19

M = subs (m, lam , 1 / ( s+1) ) ;21 M = f a c t o r (M) ;

23 X = subs (x , lam , 1 / ( s+1) ) ;X = f a c t o r (X) ;

25

Y = subs (y , lam , 1 / ( s+1) ) ;27 Y = f a c t o r (Y) ;

Listingul A.2: Implementare factorizare coprima

124 Teoria sistemelor automate. Indrumar de laborator

A.3. Listing-uri pentru problemele rezolvate

1 c l e a r a l l ; c l o s e a l l ; c l c ;

3 l oad system ( ’ r1sim ’ ) ; sim ( ’ r1sim ’ ) % ru l eaza schema simul ink ,r e z u l t a t e l e sunt s a l v a t e in ’ e ’ s i ’ r ’

s t ep =5; % c o e f i c i e n t decimare5 f i g u r e

subplot ( 2 , 1 , 1 )7 g r id on ; hold on

p lo t ( y . Time ( 1 : s tep : end ) , y . Data ( 1 : s tep : end ) )9 subplot ( 2 , 1 , 2 )

g r id on ; hold on11 p lo t ( e . Time , e . Data )

Listingul A.3: Cod Matlab pentru Problema R1.1

1 c l e a r a l l ; c l o s e a l l ; c l c ;

3 l oad system ( ’ r2sim ’ ) ; sim ( ’ r2sim ’ ) % ru l eaza schema simul ink ,r e z u l t a t e l e sunt s a l v a t e in ’ e ’ s i ’ r ’

s t ep =5; % c o e f i c i e n t decimare5 f i g u r e

subplot ( 2 , 1 , 1 )7 g r id on ; hold on

p lo t ( y . Time ( 1 : s tep : end ) , y . Data ( 1 : s tep : end ) )9 subplot ( 2 , 1 , 2 )

g r id on ; hold on11 p lo t ( e . Time , e . Data )

Listingul A.4: Cod Matlab pentru Problema R1.2

1 c l c ; c l e a r a l l ; c l o s e a l lP=t f (1 , conv ( [ 1 2 ] , [ 1 3 ] ) )

3 Q=t f ( 6 , [ 1 1 ] )C=Q/(1−P∗Q)

5 s tep ( feedback ( s e r i e s (P,C) ,1 ) )g r id on

Listingul A.5: Cod Matlab pentru Problema R1.3

c l c ; c l e a r a l l2 syms s

P=1/(s−1) ;4 [N,M,X,Y]=coprim (P)

Listingul A.6: Cod Matlab pentru Problema R1.4

c l c ; c l e a r a l l ; c l o s e a l l2 t=l i n s p a c e (0 ,25 ,200) ;

4 P=t f ( 1 , [ 1 −1]) ; N=t f (−1 ,[1 1 ] ) ; M=t f (−[1 −1] , [1 1 ] ) ; X=−2; Y=−1;

Laboratorul A. Anexa – laborator 1 125

Q=t f ( 1 , [ 1 1 ] ) ; % pentru urmarirea r e f e r i n t e i t r eapta impunem Q(0)=1, cautam Q( s ) de forma a /( s+1)

6 C=(X+M∗Q) /(Y−N∗Q)ur=@( x ) (x>0) ;

8 f i g u r e ; l s im ( (P∗C) /(1+P∗C) , ur ( t ) , t ) ; g r i d on ; % af i sam raspunsu ll a r e f e r i n t a a l f u n c t i e i H yr

10 Q=t f ( [ 2 −2] , [1 2 1 ] ) ; % pentru urmarirea r e f e r i n t e i t r eaptaimpunem Q( j )=1+j , cautam Q( s ) de forma ( as+b) /( s+1)ˆ2

C=(X+M∗Q) /(Y−N∗Q)12 ud=@( x ) ( s i n ( x ) . ∗ ( x>10) ) ;

f i g u r e ; l s im (P/(1+P∗C) ,ud( t ) , t ) ; g r i d on ; % af i sam raspunsu l l ap e r t u r b a t i e a l f u n c t i e i H yd

14

Q=t f ( [ 5 0 1 ] , [ 1 3 3 1 ] ) ; % pentru urmarirea r e f e r i n t e i t r eaptaimpunem Q( j )=1+j , cautam Q( s ) de forma ( asˆ2+bs+c ) /( s+1)ˆ3

16 C=(X+M∗Q) /(Y−N∗Q)u=@( x ) ( s i n ( x ) . ∗ ( x>10) ) ;

18 yd=ls im (P/(1+P∗C) ,u( t ) , t ) % stocam raspunsu l l a p e r t u r b a t i e a lf u n c t i e i H yd

yr=ls im ( (P∗C) /(1+P∗C) , ur ( t ) , t ) % stocam raspunsu l l a p e r t u r b a t i ea l f u n c t i e i H yd

20 f i g u r e ; p l o t ( t , yr+yd ) ; g r i d on ; % af i sam raspunsu l combinat

Listingul A.7: Cod Matlab pentru Problema R1.4 partea 2

c l c ; c l e a r a l l ; c l o s e a l l2 t=l i n s p a c e (0 ,25 ,200) ;

s tep =1;4

P=t f ( 1 , [ 2 1 ] ) ;6 k a l l=l i n s p a c e (0 , 3 , 10 ) ;

8 f i g u r e ; hold on ; g r id on

10 l oad system ( ’ r5sim ’ ) ;f o r i =1: l ength ( k a l l )

12 k=k a l l ( i ) ;sim ( ’ r5sim ’ )

14 p lo t ( y . Time ( 1 : s tep : end ) , y . Data ( 1 : s tep : end ) )end

Listingul A.8: Cod Matlab pentru Problema R1.5

c l e a r a l l ; c l c ; c l o s e a l l2

syms s4 syms a b c d

6 % produs de termeni copr imiexpand ( ( c+d∗ s ) ∗( s ˆ2+1)+(a+b∗ s ) ∗( s−1) )

8 c o e f f s ( ( c+d∗ s ) ∗( s ˆ2+1)+(a+b∗ s ) ∗( s−1) , s )

10 %matr icea e l im inant a l po l inoamelor

126 Teoria sistemelor automate. Indrumar de laborator

M=[−1 0 1 0 ; . . .12 1 −1 0 1 ; . . .

0 1 1 0 ; . . .14 0 0 0 1 ] ’ ;

16 % s o l u t i e pentru c o e f i c i e n t i i compensatorulu is o l =[1 3 3 1 ]∗ inv (M)

18

% v e r i f i c a r e a s o l u t i e i20 P=t f ( [ 1 −1] , [1 0 1 ] ) ;

C=t f ( [ 0 2 ] , [ 1 3 ] ) ;22 [ num, den]= t fda ta (1+P∗C) ;

24 r oo t s (num{1})

Listingul A.9: Cod Matlab pentru Problema R1.6

B. Anexa – laborator 2

B.1. Robust Control Toolbox

Biblioteca Matlab Robust Control Toolbox este o colectie de functii siinstrumente utile pentru analiza si proiectarea sistemelor automate cu incer-titudini. Puteti construi sisteme LTI incerte care contin parametri incerti si/sau dinamici nemodelate. Exista o multitudine de instrumente pentru ana-liza robustetii stabilitatii si celei mai slabe performante. Luam ın continuarecateva exemple.

Sa consideram functia de transfer incerta

P (s) =a

s+ a, a = an ± 10% an,

unde valoarea nominala a parametrului variabil este an = 5. Cream un para-metru real incert a cu instructinea

a = ur ea l ( ’ a ’ , 5 , ’ Percentage ’ , 10)

Pentru a vizualiza proprietatile variabilei a, apelati get(a). Functia de transferse creeaza obisnuit, cu instructiunea:

1 P = t f ( a , [ 1 a ] )

De notat ca variabila P reprezinta un sistem incert. Valoarea nominalapoate fi gasita cu instructiunea tf(P.nominal). O alta precizare importantaeste ca majoritatea functiilor cunoscute merg pentru acest tip de variabila.Spre exemplu, apelati

1 bode (P,{1 e−1 1e2 }) ;f i g u r e ; s tep (P) ;

Vom crea ın cele ce urmeaza un sistem afectat de perturbatii multiplicative. Odescriere informala des folosita pentru diferentele dintre modelul unui sistem sisistemul real se face ın termenii largimii de banda. Spre exemplu, sistemulmodelat de P este bun pana la 9 rad/sec. Pentru frecvente mai mari, modelulpierde precizie, sa spunem erori relative de 5% pentru joasa frecventa, panala 1000% la ınalta frecventa. Obiectul incert ultidyn poate fi folosit pentru

128 Teoria sistemelor automate. Indrumar de laborator

a modela aceasta dinamica, ımpreuna cu functia makeweight (apelati helpnumefct pentru nelamuriri):

W = makeweight ( 0 . 0 5 , 9 , 1 0 ) ;2 Delta = u l t idyn ( ’ Delta ’ , [ 1 1 ] ) ;

Pt = P∗(1+W∗Delta )

Evident, amplitudinea variabilei Delta este marginita de 1. Observati carezultatul Pt este un sistem incert care depinde atat de a cat si de Delta.Vizualizati diagrama Bode pentru plaja de frecvente [0.1 ; 100] rad/sec, pentru20 de sample-uri aleatoare, apeland

1 f i g u r e ; bode ( usample (Pt , 2 0 ) , {1e−1,1 e2 })

B.2. Datele problemei R2.6 – fisieruldateInterp.mat

Valorile medii Mi, i = 1 : 61 ale amplitudinilor masurate sunt date in dB ınvectorul Matlab

1 m=Columns 1 through 7

3 0.00064145 0.00070268 0.00077756 0.00088921 0.00125790.0012112 0.0013239

Columns 8 through 145 0.0022087 0.0021623 0.0018958 0.0037936 0.0039541

0.0033603 0.0062512Columns 15 through 21

7 0.005165 0.0094253 0.0087357 0.015635 0.0184280.025589 0.031897

Columns 22 through 289 0.02701 0.06062 0.055324 0.09062 0.13157

0.17904 0.22234Columns 29 through 35

11 0 .22 0 .25145 0.40077 0.31317 0.505930.65516 0.58373

Columns 36 through 4213 0.79389 0.80561 0.82887 0.57309 1 .5491

0.88423 0.77866Columns 43 through 49

15 0.92633 0.87851 0.69377 0.61271 0.834770.96157 1 .6566

Columns 50 through 5617 0.88134 0.99899 0 .734 0.76294 1 .0408

1 .4717 0 .5896Columns 57 through 61

19 1 .2757 1 .0235 1 .2757 0.91669 0.88056

Laboratorul B. Anexa – laborator 2 129

Valorile medii φi, i = 1 : 121 ale fazelor masurate sunt date de vectorul Matlab

1 f=Columns 1 through 7

3 −3.0722 −3.0723 0.069192 0.068985 −3.073−3.0734 0.067784

Columns 8 through 145 0.06711 0.066197 −3.0769 −3.0785 −3.0804

0.059193 0.056436Columns 15 through 21

7 0.05322 −3.0925 0.045866 0.04224 −3.1045−3.1083 0.031164

Columns 22 through 289 0.02802 0.025849 −3.1205 −3.1234 −3.1256

0.018407 −3.1291Columns 29 through 35

11 0.016986 −3.1304 −3.1334 −3.1327 0.017310.019281 0.017322

Columns 36 through 4213 0.023268 −3.1388 −3.139 0.033218 0.035701

−3.1383 −3.1338Columns 43 through 49

15 −3.1391 −3.136 0.083673 0.096149 0.052095−3.1389 0.095554

Columns 50 through 5617 −3.1272 −3.1415 −3.0965 0.24746 0.28621

0.30916 0.30721Columns 57 through 61

19 0.39543 0 .4302 0.57367 −3.106 −3.0783

Cele 61 de pulsatii ın care masuratorile au fost efectuate compun vectorulMatlab interp,

1 in te rp ’ =Columns 1 through 7

3 0 .01 0 .01169 0.013664 0.015973 0.0186720.021826 0.025514

Columns 8 through 145 0.029825 0.034864 0.040754 0.047639 0.055688

0.065097 0.076095Columns 15 through 21

7 0.088951 0.10398 0.12155 0.14208 0.166090.19415 0.22695

Columns 22 through 289 0.26529 0.31012 0.36251 0.42376 0.49535

0.57904 0.67688Columns 29 through 35

11 0.79123 0.92491 1 .0812 1 .2638 1 .47741 .727 2 .0188

Columns 36 through 4213 2 .3598 2 .7585 3 .2246 3 .7694 4 .4062

5 .1507 6 .0209Columns 43 through 49

15 7 .0381 8 .2272 9 .6172 11 .242 13 .14115 .362 17 .957

130 Teoria sistemelor automate. Indrumar de laborator

Columns 50 through 5617 20 .991 24 .538 28 .334 28 .683 33 .529

39 .194 45 .816Columns 57 through 61

19 53 .557 62 .605 73 .182 85 .547 100

B.3. Listing-uri pentru problemele rezolvate

1 L=t f (3 , conv ( conv ( [ 1 1 ] , [ 1 1 ] ) , [ 1 1 ] ) ) ;margin (L) % pentru i l u s t r a r e a diagramei Bode impreuna cu marg in i l e

de ampl i tudine s i de faza3 f i g u r e

nyqui s t (L) % pentru i l u s t r a r e a l o c u l u i Nyquist

Listingul B.1: Cod Matlab pentru Problema R2.1

L=t f ( 0 . 3 8 ∗ [ 1 0 . 1 0 . 5 5 ] , [ conv ( [ 1 1 ] , [ 1 0 .06 0 . 5 ] ) 0 ] ) ;2 margin (L) % pentru i l u s t r a r e a diagramei Bode impreuna cu marg in i l e

de ampl i tudine s i de fazaf i g u r e

4 nyqui s t (L) % pentru i l u s t r a r e a l o c u l u i Nyquist

Listingul B.2: Cod Matlab pentru Problema R2.2

c l o s e a l l ; c l c ; c l e a r a l l2

kp =0.6; k i =0.5 ; kd=2; % v a l o r i PID4 Tf =0.1; % f i l t r u de zgomot

P=t f ( 1 , [ 1 3 3 1 ] ) ;6 C=t f ( [ kd kp k i ] , [ 0 . 5 ∗Tfˆ2 Tf 1 0 ] ) ;

Hyd=P/(1+P∗C) ;8 Hun=−C/(1+P∗C) ;

10 f i g u r esubplot ( 2 , 2 , 1 ) ; g r i d on ;

12 s tep (Hyd)g r id on ; y l a b e l ( ’ i e s i r e y ’ )

14

subplot ( 2 , 2 , 3 ) ; g r i d on ;16 bodemag (Hyd)

g r id on ; y l a b e l ( ’ |H {yd}( j \omega ) | ’ )18

subplot ( 2 , 2 , 2 ) ; g r i d on ;20 s tep (Hun)

g r id on ; y l a b e l ( ’ i n t r a r e u ’ )22

subplot ( 2 , 2 , 4 ) ; g r i d on ;24 bodemag (Hun)

g r id on ; y l a b e l ( ’ |H {un}( j \omega ) | ’ )

Listingul B.3: Cod Matlab pentru Problema R2.3

Laboratorul B. Anexa – laborator 2 131

1 c l e a r a l l ; c l o s e a l l ; c l c

3 % parametr i modelJ =0.0475;

5 m=1.5;r =0.25;

7 zeta =0.1 ;g=10;

9 l =0.05;

11 C=4500∗ t f ( [ 1 2 5 ] , [ 1 30 0 ] ) ;

13 %% punctul ( i )P=t f ( [ r ] , [ J ze ta m∗g∗ l ] )

15

%% punctul ( i i )17 S=1/(1+P∗C)

f i g u r e ; hold on ;19 bodemag (S)

g r id on ;21

K=125;23 T= [ 0 . 2 5 ] ;

WS=t f (K, [ T∗T 2∗T 1 ] ) ;25

f i g u r e ; hold on ;27 bodemag (WS∗S) ;

g r id on29

%% punctul ( i i i )31 Tn=(P∗C) /(1+P∗C) ;

Tmin=(0.8∗P∗C) /(1+0.8∗P∗C) ;33 Tmax=(1.2∗P∗C) /(1+1.2∗P∗C) ;

35 f i g u r e ; hold on ;bodemag (Tn, Tmin ,Tmax)

37 g r id on ;

39 WT=0.2;f i g u r e ; hold on ;

41 bodemag (WT∗Tn,WT∗Tmin ,WT∗Tmax) ;g r id on

43

%% punctul ( i v )45 f i g u r e ; hold on ;

bodemag (WS∗S ,WT∗Tn,WS∗S+WT∗Tn)47 g r id on ;

Listingul B.4: Cod Matlab pentru Problema R2.4

1 c l o s e a l l ; c l c ; c l e a r a l l

3 tau =0.1 ;

132 Teoria sistemelor automate. Indrumar de laborator

5 W2=t f ( [ 0 . 2 1 0 ] , [ 0 . 1 1 ] ) ;t f d e l a y=t f (1 , 1 , ’ ioDelay ’ , tau )−1;

7

f i g u r e9 bodemag ( t f d e l a y ,W2)

11 f i g u r enyqui s t (− t f d e l a y ,W2)

Listingul B.5: Cod Matlab pentru Problema R2.5

c l c ;2 c l f ;

c l e a r a l l ;4

s=t f ( ’ s ’ ) ;6 Pn=(s +1/2) ∗( s+2)∗( s +20) / ( ( s+1)ˆ2∗( s+5)∗( s +0.1) ∗( s +10) ) ;

8 [mp, fp , i n t e r p ]=bode (Pn,{1 e−2,1 e2 }) ;nu=length (mp) ;

10

dev =0.5;12 m= [ ] ; f = [ ] ;

norma=norm( i n t e r p ) ;14

md= [ ] ; fd = [ ] ;16 f o r i =1:nu

glp=i n t e r p ( i ) ∗ rand (10 ,1 ) ;18 md( : , i ) =[ mp( : , : , i )+dev∗ g lp ] ;

fd ( : , i ) =[ fp ( : , : , i )+dev∗ g lp ] ;20 end

22 f o r i =1:num( : , i ) =[mean(md( : , i ) ) ] ;

24 f ( : , i ) =[mean( fd ( : , i ) ) ] ;

26 end

28 k=7;data p1=f rd (md(k , : ) .∗ exp (1 j ∗ fd (k , : ) ∗ pi /180) , i n t e r p ) ;

30

data p=f rd (mp.∗ exp (1 j ∗ fp ∗ pi /180) , i n t e r p ) ;32 f o r i =1:nu

md( : , i )=md( : , i ) /m( i ) ;34 fd ( : , i )=fd ( : , i )−f ( i ) ;

end36

ddd=md.∗ exp (1 j ∗ fd ∗ pi /180)−ones (10 , nu) ;38

f o r i =1:nu40 ddd ( : , i )=s o r t (ddd ( : , i ) ) ;

m( i )=abs ( ddd (10 , i ) ) ;42 f ( i )=ang le ( ddd (10 , i ) ) ;

end44

Laboratorul B. Anexa – laborator 2 133

data=f rd (m.∗ exp (1 j ∗ f ∗ pi /180) , i n t e r p ) ;46

np=[3 4 5 ] ;48 nz=[1 2 3 ] ;

50 wb=.3;A=.2;M=15;WT=t f ( [ 1 wb/M] , [A wb ] )

52 wmin=10ˆ(−2) ;wmax=10ˆ3;Delta=u l t idyn ( ’ DeltaP ’ , [ 1 1 ] ) ;

54

%f o r j =1:356 P1=t f e s t ( data , np (1 ) , nz (1 ) ) ;

%P1=(2.239 e21∗ s + 1.079 e20 ) /( s ˆ3 + 2.668 e18∗ s ˆ2 + 2.469 e21∗ s +3.216 e21 ) ;

58 P1t=P1∗(1+ Delta ∗WT) ;P2=t f e s t ( data , np (2 ) , nz (2 ) ) ;

60 %P2=(3.192 e13∗ s ˆ2 + 6.146 e13∗ s + 1.238 e12 ) /( s ˆ4 + 5.058 e10∗ s ˆ3+ 3.356 e13∗ s ˆ2 + 1.302 e14∗ s + 5.743 e13 ) ;

P2t=P2∗(1+ Delta ∗WT) ;62 P3=t f e s t ( data , np (3 ) , nz (3 ) ) ;

%P3=(1256∗ s ˆ3 + 1.624 e04∗ s ˆ2 + 3.289 e06∗ s − 2 .47 e04 ) /( s ˆ5 +20.96∗ s ˆ4 + 5425∗ s ˆ3 + 6.929 e04∗ s ˆ2 + 7.011 e06∗ s + 3.868 e05 ) ;

64 P3t=P3∗(1+ Delta ∗WT) ;%end

66

opts = bodeopt ions ( ’ c s t p r e f s ’ ) ;68 opts . PhaseVi s ib l e = ’ o f f ’ ;

opts . FreqUnits = ’ rad / s ’ ;70 opts . T i t l e . S t r ing = ’ ’ ;

opts . XLabel . S t r ing = ’ P u l s a t i i ’ ;72 opts . T i t l e . FontSize = 10 ;

74 f i g u r e (1 )%l o g l o g ( abs ( data . r e sponse ( 1 , 1 , : ) ) , ’∗−blue ’ )

76 bodemag ( data , inte rp , ’ ∗blue ’ , opts )hold on

78 bodemag ( data p , inte rp , ’ xred ’ , opts )% bode cu d a t e l e s coa se din Pn( s)

bodemag ( data p1 , inte rp , ’−−green ’ , opts )% bode cu date s coase dinprima l i n i e a mat r i c e i cu a b a t e r i − poate f i i n l o c u i t cuo r i c a r e d i n t r e a b a t e r i

80 bodemag (WT, ’ black−o ’ ,{10ˆ(−2) , 1 0 ˆ ( 2 . 1 ) } , opts )%x l a b e l ( ’ P u l s a t i i ’ )

82 y l a b e l ( ’ Amplitudine ’ )g r id on

84 hold o f f

86 f i g u r e (2 )bodemag (Pn , ’ red ’ , P1t , ’−−green ’ , P2t , ’−. b lack ’ , P3t , ’−∗magenta ’ ,{wmin

,wmax} , opts )88 g r id on

%x l a b e l ( ’ P u l s a t i i ’ , opts )90 y l a b e l ( ’ Amplitudine ’ )

l egend ( ’Pn ’ , ’ P1t 1z3p ’ , ’ P2t 2z4p ’ , ’ P3t 3z5p ’ )92 hold o f f

134 Teoria sistemelor automate. Indrumar de laborator

94 r e turn

96 [ mag , phase ]=bode (P, i n t e r p ) ;%gr id on ;

98

m1=mag ( : , : , 1 ) ; m2=mag ( : , : , 2 ) ; m3=mag ( : , : , 3 ) ;100 f 1=phase ( : , : , 1 ) ; f 2=phase ( : , : , 2 ) ; f 3=phase ( : , : , 3 ) ;

102 b1=m1+0.5; a=0;r1 = ( b1−a ) .∗ rand (10 ,1 ) + a ;

104 b11=f1 +.2;s1 = ( b11−a ) .∗ rand (10 ,1 ) + a ;

106 mom1=mean( r1 , 1 ) ;f a z1=mean( s1 , 1 ) ;

108

b2=m2+0.5; a=0;110 r2 = ( b2−a ) .∗ rand (10 ,1 ) + a ;

b21=f2 +.2;112 s2 = ( b21−a ) .∗ rand (10 ,1 ) + a ;

mom2=mean( r2 , 1 ) ;114 f a z2=mean( s2 , 1 ) ;

116 b3=m3+0.5; a=0;r3 = ( b3−a ) .∗ rand (10 ,1 ) + a ;

118 b31=f3 +.2;s3 = ( b31−a ) .∗ rand (10 ,1 ) + a ;

120 mom3=mean( r3 , 1 ) ;f a z3=mean( s3 , 1 ) ;

122

S=diag ( i n t e r p ) ;124 L=ones (1 , 3 ) ;

126 G=place (S ’ , L’ , [−1 ,−5 , −10]) ’ ;

128 F=S−G∗L ;H=[mom1 mom2 mom3 ] ;

130

[ nPr , dPr]= s s 2 t f (F ,G,H, 0 ) ;132 Pr=t f ( nPr , dPr )

[ r ed ze ro ,G]= zero ( Pr )134 r e d p o l e=po le ( Pr )

[ mr , pr ]=bode (Pr , 0 . 0 1 : 1 0 0 ) ;136

y = [ ] ;138 f o r i =1:4

y=[y abs ( r1 ( i ) ∗exp ( j ∗ s1 ( i ) ) /(mom1∗exp ( j ∗ f a z1 ) )−1) ] ;140 end

142 z = [ ] ;f o r i =1:4

144 z=[z abs ( r2 ( i ) ∗exp ( j ∗ s2 ( i ) ) /(mom2∗exp ( j ∗ f a z2 ) )−1) ] ;end

146

x = [ ] ;

Laboratorul B. Anexa – laborator 2 135

148 f o r i =1:4x=[x abs ( r3 ( i ) ∗exp ( j ∗ s3 ( i ) ) /(mom3∗exp ( j ∗ f a z3 ) )−1) ] ;

150 end

152 WT=t f (60∗ [ 1 1 5 ] , [ 1 1 2 0 ] )[mw,pw]=bode (WT, 0 . 0 1 : 1 0 0 ) ;

154 [ mwi , pwi ]=bode (1/WT, 0 . 0 1 : 1 0 0 ) ;l o g l o g (2 0∗ [ z y x ] ) ;

156 hold on ;l o g l o g (mw( : , : ) , ’ red ’ )

158 l o g l o g (mr ( : , : ) , ’ ∗black ’ )l o g l o g (mp( : , : ) , ’ magenta ’ )

160 l o g l o g (mwi ( : , : ) , ’ green ’ )l egend ( ’ date ’ , ’WT’ , ’ i n t e r p o l a n t ’ , ’P ’ , ’ 1/WT’ )

162 g r id onhold o f f ;

Listingul B.6: Cod Matlab pentru Problema R2.6

1 c l o s e a l l ; c l c ; c l e a r a l l

3 k=2;P=t f ( 1 , [ 1 −1]) ;

5 C=k ;

7 nyqlog (P∗C)

Listingul B.7: Cod Matlab pentru Problema R2.7

1 c l o s e a l l ; c l c ; c l e a r a l l

3 W1a=t f (20 , [ 0 . 0 4 1 ] ) ;W1b=t f (20 , conv ( [ 0 . 0 4 1 ] , [ 0 . 0 4 1 ] ) ) ;

5

f i g u r e7 bodemag (W1a,W1b,1/W1a,1/W1b)

g r id on9 l egend ( ’W1a ’ , ’W1b ’ , ’ 1/W1a ’ , ’ 1/W1b ’ )

Listingul B.8: Cod Matlab pentru Problema R2.8

C. Anexa – laborator 3

C.1. Listing-uri pentru problemele rezolvate

1 c l o s e a l l ; c l c ; c l e a r a l l

3 L=t f (10 , conv ( [ 1 −1] , [ 1 2 ] ) ) ;S=1/(1+L) ;

5 [m, ˜ ,w]=bode (S ,{0 . 0 1 , 1 0} ) ; %obtinem magnitudinea s i domeniul def r e c v e n t a a s o c i a t a c e s t e i a

semi logy (w, reshape (m, 1 , numel (m) ) )7 g r id on

Listingul C.1: Cod Matlab pentru Problema R3.1

1 c l o s e a l l ; c l c ; c l e a r a l l

3 tau =1; a=3;

5 G=t f ( 1 , [ 1 1 ] ) ;G1=s e r i e s (G, t f (1 , ’ ioDelay ’ , tau ) ) ;

7 G2=s e r i e s ( t f ( [ 1 −a ] , [ 1 a ] ) , G) ;G3=s e r i e s ( t f ( [ 1 a ] , [ 1 −a ] ) , G) ;

9

f i g u r e11 bode (G, G2, G3)

g r id on ; l egend ( ’G’ , ’ G 2 ’ , ’ G 3 ’ )13

f i g u r e15 bode (G, G1)

g r id on ; l egend ( ’G’ , ’ G 1 ’ )

Listingul C.2: Cod Matlab pentru Problema R3.2

f unc t i on [P,C] = stab p inv (m,M, l )2

g = 10 ;4

num=[ l 0 −g ] ;6 den=[M∗ l 0 −(M+m) ∗g 0 0 ] ;

[A, b , c , d]= t f 2 s s (num, den ) ;8 P=ss (A, b , c , d ) ;

10 f = −p lace (A, b ,[−1 −2 −3 −4 ] ) ;h = place (A’ , c ’ , [−1 −2 −3 −4]) ;

12 h = −h ’ ;

Laboratorul C. Anexa – laborator 3 137

14 [Mnum, Mden]= s s 2 t f (A+b∗ f , b , f , 1 ) ;[Nnum, Nden]= s s 2 t f (A+b∗ f , b , c+d∗ f , d ) ;

16 [Xnum, Xden]= s s 2 t f (A+h∗c , h , f , 0 ) ;[Ynum, Yden]= s s 2 t f (A+h∗c ,−b−h∗d , f , 1 ) ;

18

20 Cnum=Xnum+Mnum;Cden=Ynum−Nnum;

22 C=t f (Cnum, Cden) ;

Listingul C.3: Rutina stab inv.m

%pendul i n v e r s − l i m i t a r i fundamentale in timp2 c l c ; c l e a r a l l ; c l o s e a l l

4 r e f=@( t ) ( t>=0) ; %r e f e r i n t a t r eaptat=l i n s p a c e (0 ,15 ,100) ;

6

M=9; m=1; g=10;8 l =[0 .5 0 .7 0 .9 1 .1 1 .2 2 ] ;

10 f i g u r e ; hold on ; g r id onf o r i =1: l ength ( l )

12 [ Hxu ,C] = stab p inv (m,M, l ( i ) ) ;y=ls im ( feedback ( s e r i e s (Hxu ,C) ,1 ) , r e f ( t ) , t ) ;

14 p lo t ( t , y )end

16

f i g u r e ; hold on ; g r id on18 f o r i =1: l ength ( l )

[ Hxu ,C] = stab p inv (m,M, l ( i ) ) ;20 y=ls im (1/(1+Hxu∗C) , r e f ( t ) , t ) ;

p l o t ( t , y )22 end

Listingul C.4: Cod Matlab pentru Problema R3.6, cazul (i)

%pendul i n v e r s − l i m i t a r i fundamentale in timp2 c l c ; c l e a r a l l ; c l o s e a l l

4 r e f=@( t ) ( t>=0) ; %r e f e r i n t a t r eaptat=l i n s p a c e (0 ,15 ,300) ;

6

M=9; l =10; g=10;8 m=[1 5 10 20 50 1 0 0 ] ;

10 f i g u r e ; hold on ; g r id onf o r i =1: l ength (m)

12 [ Hxu ,C] = stab p inv (m( i ) ,M, l ) ;y=ls im (1/(1+Hxu∗C) , r e f ( t ) , t ) ;

14 p lo t ( t , y )end

Listingul C.5: Cod Matlab pentru Problema R3.6, cazul (ii)

138 Teoria sistemelor automate. Indrumar de laborator

1 %pendul i n v e r s − l i m i t a r i fundamentale in f r e c v e n t ac l c ; c l e a r a l l ; c l o s e a l l

3

r e f=@( t ) ( t>=0) ; %r e f e r i n t a t r eapta5 w=[0.01 1 0 0 ] ;

7 M=9; l =10; g=10;m=[1 5 10 20 50 1 0 0 ] ;

9

f i g u r e ; hold on ; g r id on11 f o r i =1: l ength (m)

[ Hxu ,C] = stab p inv (m( i ) ,M, l ) ;13 bode (1/(1+Hxu∗C) ) ;

end15

f i g u r e ; hold on ; g r id on17 f o r i =1: l ength (m)

[ Hxu ,C] = stab p inv (m( i ) ,M, l ) ;19 bode ( (Hxu∗C) /(1+Hxu∗C) ) ;

end

Listingul C.6: Cod Matlab pentru Problema R3.6, cazul (iii)

D. Anexa – laborator 4

D.1. Listing-uri pentru problemele rezolvate

% s a t e l i t geo s inc ron loopshaping2 c l o s e a l l ; c l c ; c l e a r a l l

4 P=t f ( 0 . 0 1 , [ 1 10 .01 0 .1 0 ] ) ;Pd=t f (−0.01 ,[−10 0 0 ] ) ;

6 W1=t f ( poly ( [−0.03 −0.03]) ,27 e−3) ;W2=t f (12 e−5, poly ( [ 1 e−4 1e−04]) ) ;

8

%% c a l c u l magnitudini10 w=logspace (−5 ,1 ,200) ;

[ mag , ˜ ,w]=bode (P,w) ;12 magP=reshape (mag , l ength (w) ,1 ) ; %magnitudine proces in bucla

de s ch i s a

14 Cp=10;L=Cp∗P;

16 [ mag , phase ,˜ ]= bode (L ,w) ;magL=reshape (mag , l ength (w) ,1 ) ; %magnitudine proces+compensator

p r o po r t i o n a l18 phaseL=reshape ( phase , l ength (w) ,1 ) ; %faza proces+compensator

p r o po r t i o n a l

20 Cld=t f ( [ 1 0 . 0 1 9 ] , [ 1 0 . 1 9 ] ) ;L2=Cld∗Cp∗P;

22 [ mag , phase ,˜ ]= bode (L2 ,w) ;magL2=reshape (mag , l ength (w) ,1 ) ; %magnitudine proces+compensator

p r o po r t i o n a l+lead24 phaseL2=reshape ( phase , l ength (w) ,1 ) ; %faza proces+compensator

p r o po r t i o n a l+lead

26 Clg=t f ( [ 1 0 . 0 0 5 ] , [ 1 0 ] ) ;L3=Clg∗Cld∗Cp∗P;

28 [ mag , phase ,˜ ]= bode (L3 ,w) ;magL3=reshape (mag , l ength (w) ,1 ) ; %magnitudine proces+compensator

p r o po r t i o n a l+lead+lag30 phaseL3=reshape ( phase , l ength (w) ,1 ) ; %faza proces+compensator

p r o po r t i o n a l+lead+lag

32 T=L3/(1+L3) ; % f u n c t i a de t r a n s f e r in bucla i n c h i s aS=1/(1+L3) ; % f u n c t i a de s e n s i b i l i t a t e

34 mag=bode (T,w) ;magT=reshape (mag , l ength (w) ,1 ) ;

36 mag=bode (S ,w) ;

140 Teoria sistemelor automate. Indrumar de laborator

magS=reshape (mag , l ength (w) ,1 ) ;38

wa=1e−4;40 inda=w<=wa ; %reg iunea de joa sa f r e c v e n t a

wb=0.3;42 indb=w>=wb; % reg iunea de i n a l t a f r e c v e n t a

44 mag=bode (W1,w) ;magW1=reshape (mag , l ength (w) ,1 ) ; %magnitudine W1

46 mag=bode (W2,w) ;magW2=reshape (mag , l ength (w) ,1 ) ; %magnitudine W2

48

%% pasul 1 ( proces s i proces+compensator p r op o r t i o n a l )50 f i g u r e

l o g l o g (w,magP)52 hold on

l o g l o g (w, magL)54 l o g l o g (w( inda ) , abs(1+magW2( inda ) ) ./(1− abs (magW1( inda ) ) ) , ’ r ’ ) %

cons t range re de j oa sa f r e c v e n t al o g l o g (w( indb ) ,(1− abs (magW2( indb ) ) ) . / abs(1+magW1( indb ) ) , ’ r ’ ) %

cons t range re de i n a l t a f r e c v e n t a56

f i g u r e58 semi logx (w, phaseL )

60 %% pasul 2 ( proces s i proces+compensator p r op o r t i o n a l+lead )f i g u r e

62 l o g l o g (w, magL)hold on

64 l o g l o g (w, magL2)l o g l o g (w( inda ) , abs(1+magW2( inda ) ) ./(1− abs (magW1( inda ) ) ) , ’ r ’ ) %

cons t range re de j oa sa f r e c v e n t a66 l o g l o g (w( indb ) ,(1− abs (magW2( indb ) ) ) . / abs(1+magW1( indb ) ) , ’ r ’ ) %

cons t range re de i n a l t a f r e c v e n t a

68 f i g u r esemi logx (w, phaseL )

70 hold onsemi logx (w, phaseL2 )

72

%% pasul 3 ( proces s i proces+compensator p r op o r t i o n a l+lead+lag )74 f i g u r e

l o g l o g (w, magL2)76 hold on

l o g l o g (w, magL3)78 l o g l o g (w( inda ) , abs(1+magW2( inda ) ) ./(1− abs (magW1( inda ) ) ) , ’ r ’ ) %

cons t range re de j oa sa f r e c v e n t al o g l o g (w( indb ) ,(1− abs (magW2( indb ) ) ) . / abs(1+magW1( indb ) ) , ’ r ’ ) %

cons t range re de i n a l t a f r e c v e n t a80

f i g u r e82 semi logx (w, phaseL2 )

hold on84 semi logx (w, phaseL3 )

Laboratorul D. Anexa – laborator 4 141

86 %% pasul 3 ( v e r i f i c a r e )

88 f i g u r e ;l o g l o g (w, magS)

90 hold onl o g l o g (w,magT)

92 l o g l o g (w, abs (magT.∗magW1)+abs (magS .∗magW2) ) % c r i t e r i u deperformanta ( t r e b u i e <=1)

94 % raspuns l a t r eapta pentru s i s t emu l in bucla i n c h i s af i g u r e

96 t=l i n s p a c e (0 ,200 ,100) ;ur=@( t ) ( t>=0) ; % r e f e r i n t a t r eapta

98 yr=ls im (T, ur ( t ) , t ) ;p l o t ( t , yr , ’ r ’ )

100 hold on

102 Pf=t f ( 0 . 0 1 9 , [ 1 0 . 0 1 9 ] ) ;yr=ls im ( Pf∗T, ur ( t ) , t ) ;

104 p lo t ( t , yr )

Listingul D.1: Loopshaping satelit geostationar- cazul I

% s a t e l i t geo s inc ron loopshaping − model imbunatat i t2 c l o s e a l l ; c l c ; c l e a r a l l

4 P=t f ( 0 . 0 1 , [ 1 10 .01 0 .1 0 ] ) ∗ t f ( [ 1 2 1 ] , [ 1 0 .04 1 ] ) ;Pd=t f (−0.01 ,[−10 0 0 ] ) ;

6 W1=t f ( conv ( poly ( [−0.3 −0.3 ]) , poly ([−1 −1]) ) ,30∗ poly ([−10 −10]) ) ;W2=t f (12∗1 e−5, poly ( [ 1 e−4 1e−4]) ) ;

8 % W2=t f (12000) ;

10 %% c a l c u l magnitudiniw=logspace (−5 ,1 ,200) ;

12 [ mag , ˜ ,w]=bode (P,w) ;magP=reshape (mag , l ength (w) ,1 ) ; %magnitudine proces in bucla

de s ch i s a14

Cp=10;16 L=Cp∗P;

[ mag , phase ,˜ ]= bode (L ,w) ;18 magL=reshape (mag , l ength (w) ,1 ) ; %magnitudine proces+compensator

p r o po r t i o n a lphaseL=reshape ( phase , l ength (w) ,1 ) ; %faza proces+compensator

p r o po r t i o n a l20

Cn=t f ( [ 1 0 .0316 1 ] , [ 1 1 1 ] ) ;22 L2=Cn∗Cp∗P;

[ mag , phase ,˜ ]= bode (L2 ,w) ;24 magL2=reshape (mag , l ength (w) ,1 ) ; %magnitudine proces+compensator

p r o po r t i o n a l+notchphaseL2=reshape ( phase , l ength (w) ,1 ) ; %faza proces+compensator

p r o po r t i o n a l+notch26

Cr=t f ( 9 , [ 1 6 9 ] ) ;

142 Teoria sistemelor automate. Indrumar de laborator

28 L3=Cr∗Cn∗Cp∗P;[ mag , phase ,˜ ]= bode (L3 ,w) ;

30 magL3=reshape (mag , l ength (w) ,1 ) ; %magnitudine proces+compensatorp r o po r t i o n a l+notch

phaseL3=reshape ( phase , l ength (w) ,1 ) ; %faza proces+compensatorp r o po r t i o n a l+notch

32

Cld=t f ( [ 1 0 . 0 6 3 ] , [ 1 0 . 6 3 ] ) ;34 L4=Cld∗Cr∗Cn∗Cp∗P;

[ mag , phase ,˜ ]= bode (L4 ,w) ;36 magL4=reshape (mag , l ength (w) ,1 ) ; %magnitudine proces+compensator

p r o po r t i o n a l+notchphaseL4=reshape ( phase , l ength (w) ,1 ) ; %faza proces+compensator

p r o po r t i o n a l+notch38

T=L4/(1+L4) ; % f u n c t i a de t r a n s f e r in bucla i n c h i s a40 S=1/(1+L4) ; % f u n c t i a de s e n s i b i l i t a t e

mag=bode (T,w) ;42 magT=reshape (mag , l ength (w) ,1 ) ;

mag=bode (S ,w) ;44 magS=reshape (mag , l ength (w) ,1 ) ;

46 wa=1e−4;inda=w<wa ; %reg iunea de joa sa f r e c v e n t a

48 wb=3;indb=w>wb; % reg iunea de i n a l t a f r e c v e n t a

50

mag=bode (W1,w) ;52 magW1=reshape (mag , l ength (w) ,1 ) ; %magnitudine W1

mag=bode (W2,w) ;54 magW2=reshape (mag , l ength (w) ,1 ) ; %magnitudine W2

56 %% pasul 5 ( proces s i proces+compensator p r op o r t i o n a l )f i g u r e

58 l o g l o g (w,magP)hold on

60 l o g l o g (w, magL)l o g l o g (w( inda ) , abs(1+magW2( inda ) ) ./(1− abs (magW1( inda ) ) ) , ’ r ’ ) %

cons t range re de j oa sa f r e c v e n t a62 l o g l o g (w( indb ) ,(1− abs (magW2( indb ) ) ) . / abs(1+magW1( indb ) ) , ’ r ’ ) %

cons t range re de i n a l t a f r e c v e n t a

64 f i g u r esemi logx (w, phaseL )

66

%% pasul 6 ( proces s i proces+compensator p r op o r t i o n a l+notch )68 f i g u r e

l o g l o g (w, magL)70 hold on

l o g l o g (w, magL2)72 l o g l o g (w( inda ) , abs(1+magW2( inda ) ) ./(1− abs (magW1( inda ) ) ) , ’ r ’ ) %

cons t range re de j oa sa f r e c v e n t al o g l o g (w( indb ) ,(1− abs (magW2( indb ) ) ) . / abs(1+magW1( indb ) ) , ’ r ’ ) %

cons t range re de i n a l t a f r e c v e n t a74

Laboratorul D. Anexa – laborator 4 143

f i g u r e76 semi logx (w, phaseL )

hold on78 semi logx (w, phaseL2 )

80 %% pasul 7 ( proces s i proces+compensator p r op o r t i o n a l+notch+r o l l−o f f )

f i g u r e82 l o g l o g (w, magL2)

hold on84 l o g l o g (w, magL3)

l o g l o g (w( inda ) , abs(1+magW2( inda ) ) ./(1− abs (magW1( inda ) ) ) , ’ r ’ ) %cons t range re de j oa sa f r e c v e n t a

86 l o g l o g (w( indb ) ,(1− abs (magW2( indb ) ) ) . / abs(1+magW1( indb ) ) , ’ r ’ ) %cons t range re de i n a l t a f r e c v e n t a

88 f i g u r esemi logx (w, phaseL2 )

90 hold onsemi logx (w, phaseL3 )

92

%% pasul 8 ( proces s i proces+compensator p r op o r t i o n a l+notch+r o l l−o f f+lead )

94 f i g u r el o g l o g (w, magL3)

96 hold onl o g l o g (w, magL4)

98 l o g l o g (w( inda ) , abs(1+magW2( inda ) ) ./(1− abs (magW1( inda ) ) ) , ’ r ’ ) %cons t range re de j oa sa f r e c v e n t a

l o g l o g (w( indb ) ,(1− abs (magW2( indb ) ) ) . / abs(1+magW1( indb ) ) , ’ r ’ ) %cons t range re de i n a l t a f r e c v e n t a

100

f i g u r e102 semi logx (w, phaseL3 )

hold on104 semi logx (w, phaseL4 )

106

%% pasul 8 ( v e r i f i c a r e )108

f i g u r e ;110 l o g l o g (w, magS)

hold on112 l o g l o g (w,magT)

l o g l o g (w, abs (magT.∗magW1)+abs (magS .∗magW2) )114

% raspuns l a t r eapta pentru s i s t emu l in bucla i n c h i s a vs s i s t emu lde l a pasu l 3

116 f i g u r et=l i n s p a c e (0 ,200 ,100) ;

118 ur=@( t ) ( t>=0) ; % r e f e r i n t a t r eaptaud=@( t ) ( (1 e−5)∗ s i n ( (7 e−5)∗ t ) ) ; % pe r tu rba t i a s i n u s o i d a l a

120 yr=ls im (T, ur ( t ) , t ) ;yd=ls im (Pd/(1+L4) ,ud ( t ) , t ) ;

122 p lo t ( t , yr+yd , ’ r ’ )

144 Teoria sistemelor automate. Indrumar de laborator

hold on124

P=t f ( 0 . 0 1 , [ 1 10 .01 0 .1 0 ] ) ; Cp=10; Cld=t f ( [ 1 0 . 0 1 9 ] , [ 1 0 . 1 9 ] ) ; Clg=t f ( [ 1 0 . 0 0 5 ] , [ 1 0 ] ) ;

126 L3=Clg∗Cld∗Cp∗P;Told=L3/(1+L3) ;

128 yr=ls im ( Told , ur ( t ) , t ) ;yd=ls im (Pd/(1+L3) ,ud ( t ) , t ) ;

130 p lo t ( t , yr+yd )

Listingul D.2: Loopshaping satelit geostationar- cazul II

D.2. Listing-uri pentru problemele rezolvate

1 c l c ; c l o s e a l l ; c l e a r a l l

3 wc=10;L=t f (wc , [ 1 0 ] ) ;

5 S=1/(1+L) ;T=L/(1+L) ;

7

f i g u r e9 bodemag (L) ;

11 f i g u r ebodemag (S ,T) ;

Listingul D.3: Cod Matlab pentru Problema R4.3

c l e a r a l l ; c l o s e a l l ; c l c2

[B,A] = butte r (3 , 1 , ’ low ’ , ’ s ’ ) ;4 W1 = 10∗ t f (B,A) ;

W2 = t f ( [ . 1 0 ] , [ . 0 5 1 ] ) ;6 L = t f ( 2 0 , [ 2 1 ] ) ;

P = t f ( 1 , [ 1 0 . 0 1 ] ) ;8

f i g u r e ;10 bodemag (W1,W2) ;

g r id ; l egend ( ’W 1 ’ , ’W 2 ’ ) ;12

[ mag1 , ˜ , f 1 ] = bode (W1,{1 e−2,1 e2 }) ;14 [ mag2 , ˜ , f 2 ] = bode (W2,{1 e−2,1 e2 }) ;

[ mag3 , ˜ , f 3 ] = bode (L,{1 e−2,1 e2 }) ;16

mag1 = reshape (mag1 , l ength ( f 1 ) ,1 ) ;18 mag2 = reshape (mag2 , l ength ( f 2 ) ,1 ) ;

mag3 = reshape (mag3 , l ength ( f 3 ) ,1 ) ;20

f i g u r e ;22 l o g l o g ( f 1 ( 1 : end /2) ,mag1 ( 1 : end /2) ./(1−mag2 ( 1 : end /2) ) , ’ r−− ’ ) ; hold

on ;

Laboratorul D. Anexa – laborator 4 145

l o g l o g ( f 2 ( end / 1 . 3 : end ) ,(1−mag1( end / 1 . 3 : end ) ) . / mag2( end / 1 . 3 : end ) , ’ g−− ’ ) ;

24 l o g l o g ( f3 , mag3 , ’b− ’ ) ;t i t l e ( ’ Tehnica de loopshaping ’ ) ; g r i d

Listingul D.4: Cod Matlab pentru Problema R4.5

Note bibliografice

[1] Karl Johan Astrom and Richard M Murray. Feedback systems. In An in-troduction for Scientists and Engineers. Princeton Unvirsity Press, 2008.

[2] John C Doyle, Bruce A Francis, and Allen R Tannenbaum. Feedbackcontrol theory. Courier Corporation, 2013.

[3] Bruce Francis and George Zames. On h∞-optimal sensitivity theory forsiso feedback systems. IEEE Transactions on Automatic Control, 29(1):9–16, 1984.

[4] Bruce A Francis. A course in H [infinity] control theory. Berlin; NewYork: Springer-Verlag, 1987.

[5] Jan Marian Maciejowski. Multivariable feedback design. electronic sys-tems engineering series. Wokingham, England: Addison-Wesley, 6:85–90,1989.

[6] Duncan C McFarlane and Keith Glover. Robust controller design usingnormalized coprime factor plant descriptions, volume 138. Springer, 1990.

[7] Maria M Seron, Julio H Braslavsky, and Graham C Goodwin. Fundamen-tal limitations in filtering and control. Springer Science & Business Media,2012.

[8] Sigurd Skogestad and Ian Postlethwaite. Multivariable feedback control:analysis and design. Wiley, New Yok (2nd edition), 2007.

[9] M Vidyasagar. Control system synthesis: a coprime factorizationapproach. MIT Press, 9:1, 1985.

[10] D Youla, J Bongiorno, and Hamid Jabr. Modern wiener–hopf design ofoptimal controllers part i: The single-input-output case. IEEE Transac-tions on Automatic Control, 21(1):3–13, 1976.

[11] George Zames. Feedback and optimal sensitivity: Model reference trans-formations, multiplicative seminorms, and approximate inverses. IEEETransactions on automatic control, 26(2):301–320, 1981.

[12] Kemin Zhou and John Comstock Doyle. Essentials of robust control,volume 104. Prentice hall Upper Saddle River, NJ, 1998.

Note bibliografice 147

[13] Kemin Zhou, John Comstock Doyle, Keith Glover, et al. Robust andoptimal control, volume 40. Prentice hall New Jersey, 1996.