Date post: | 15-Feb-2018 |
Category: |
Documents |
Upload: | andrea-ildiko |
View: | 247 times |
Download: | 0 times |
of 86
7/23/2019 Carte Lab 2008 PDF Book Format
1/86
MATLAB NMODELAREA, SIMULAREAI
CONTROLUL SISTEMELOR
GHID PRACTIC PENTRU STUDENI
Clin RUSUEnik SZKEMelinda RADIAN KREISER
7/23/2019 Carte Lab 2008 PDF Book Format
2/86
Cuprins
Refereni tiinifici:
Prof.dr.ing. Tiberiu COLOIUniversitatea Tehnicdin Cluj-Napoca
Prof.dr.ing. Petru DOBRAUniversitatea Tehnicdin Cluj-Napoca
Prof.dr.ing. Viorel TRIFAUniversitatea Tehnicdin Cluj-Napoca
7/23/2019 Carte Lab 2008 PDF Book Format
3/86
Cuprins iii
CUPRINS
Prefa 7
1. Introducere n MATLAB 111.1. Obiectivele lucrrii 111.2. Introducere 11
1.2.1. Mediul MATLAB 121.2.2. Variabile, expresii si comenzii 141.2.3. Funcii i operaii elementare 241.2.4. Trasarea graficelor 28
1.3. Matlab n controlul i analiza sistemelor 291.4. Verificare 33
2. Modelarea sistemelor liniare 352.1. Obiectivele lucrrii 352.2. Consideraii teoretice 35
2.2.1. Modelarea sistemelor 352.2.2. Transformri de reprezentare 402.2.3. Extragerea datelor din model 41
2.3. Verificare 42
3. Conectarea sistemelor liniare 433.1. Obiectivele lucrrii 433.2. Consideraii teoretice 43
3.2.1. Conectarea serie (n cascad) 433.2.2. Conectarea paralel 45
3.2.3. Conectarea n buclnchis 463.2.4. Reducerea diagramelor bloc 483.3. Modelarea sistemelor n Simulink 513.4. Verificare 54
7/23/2019 Carte Lab 2008 PDF Book Format
4/86
7/23/2019 Carte Lab 2008 PDF Book Format
5/86
Cuprins v
8. Proiectarea sistemelor de controlcu metoda locul rdcinilor 129
8.1. Obiectivele lucrrii 129
8.2. Introducere 1298.3 Proiectarea sistemelor de control 130
8.3.1 Proiectarea unui regulator de tip P 1318.3.2 Proiectarea unui regulator de tip PD 1388.3.3. Proiectarea unui compensator cu avans de faz 144
9. Proiectarea sistemelor compensate prin 149metodadiagramelor Bode
9.1. Obiectivele lucrrii 1499.2. Proiectarea sistemelor compensate 149
9.2.1 Compensarea de tip phase-lead 149
9.2.2 Compensarea de tip phase-lag 158
Proiect de curs 167
Bibliografie 169
168 Proiect de curs
26-28 Baritiu Electrical Engineering Building Technical University of Cluj Cluj-Napoca RomaniaTelephone: (0264) 401242 Lab: (0264) 401830 Fax: (0264) 592055
http://[email protected]
8. Proiectai un sistem de control cu reacie dupstare pe baza specificaiilordefinite la punctul 5i repetai pasii de la 2la 4;
9. Proiectai un sistem de control cu observer de stare pe baza specificaiilordefinite la punctul 5i repetai paii de la 2la 4;
10. Proiectati un sistem de control optimal i repetai paii de la 2 la 4;
11. Comparai rezultatele obtinute mai sus n cadrul pailor de la 6 la 9 iformulai o concluzie proprieasupra acestor rezultate;
12. Scrieti un raport n care sfie prezentate concluziile asupra sistemuluiconsiderat iniial precum i asupra sistemului de control rezultat n cadrulpunctelor 5, 6, 7, 8i 9. n raport vor fi incluse fiierele MATLAB rezultate
nsoite de reprezentrile grafice obinute.
Not:1. Se va uti l i za MATLAB i SI MULI NK pentr u r eal i zareaceri ntel or meni onat e.
2. Raport ul scri s t rebui e s f i e conci s i s coni nconcl uzi i bazat e pe r ezul t atel e obi nute.
7/23/2019 Carte Lab 2008 PDF Book Format
6/86
Proiect de curs
Teoria Sistemelor
1. Se va alege un sistem fizic SISO liniar al crui ordin s fie 3 sau maimare;
2. Determinai modelul acestui sistem exprimat prin funcie de transfer iprin ecuaii de stare;
3. Analizai stabilitatea absoluta acestui sistem prin identificarea polilor ia zerourilor, etc.;
4. Analizai rspunsul tranzitoriu i stabil al sistemului i discutai desprestabilitatea relativ a sistemului: polii dominani, rspunsul la treapta
unitar, analiza erorii stationare, etc. utiliznd reprezentarea grafic arspunsului, metoda locul rdcinilori rspunsul la frecventaetc.;
5. Pentru sistemul fizic considerat, alegei un set de parametrii care sdefineasc performanele rspunsului unui sistem de control pe bazafactorului de atenuare i a constantei de timp pentru polii dominani, precumi a erorii staionare impuse;
6. Proiectai un sistem de control cu regulator de tip Ppe baza specificaiilordefinite la punctul 5i repetai paii de la 2la 4;
7. Proiectai un sistem de control cu regulator de tip PD pe bazaspecificaiilor definite la punctul 5i repetai paii de la 2la 4;
Cuprins
7/23/2019 Carte Lab 2008 PDF Book Format
7/86
PREFA
De-a lungul timpului MATLAB i Simulink au devenit standardeeducaionale pentru mediile universitare, att n cadrul unor cursuri deiniiere ct mai cu seampentru cursurile avansate din diferitele domenii aleingineriei, matematicii sau tiinelor aplicate.
Prezenta lucrare reprezint un ghid practic de utilizare a mediuluiMATLAB n rezolvarea problemelor legate de modelarea, simularea siproiectarea sistemelor de control specifice domeniului Ingineriei Sistemelor.Cartea este destinatn primul rnd studenilor din anul II, de la Facultateade Inginerie Electricdar, la fel de utilpoate fi i studenilor altor faculti
de inginerie, precum i inginerilor care utilizeaz i dezvolt aplicaiiindustriale de control. Coninutul acestei cri se bazeaz pe cunotiineleteoretice dobndite n cadrul cursului de Teoria Sistemelor i reprezint ocontinuare fireasca acestui curs punnd accentul pe latura aplicativ. Prinmodul de prezentare, autorii au ncercat s se pun sub o form gradualaspectele legate de modelarea, simularea i proiectarea sistemelor decontrol.
Coninutul acestei lucrri este structurat pe 9 capitole care pot fisintetizate dupcum urmeaz:
Capitolul 1 face o prezentare generala mediului MATLAB i puneaccentul ntr-o primparte pe caracteristicile care definesc particularitilelimbajului de programare. Acest limbaj are trsturi comune cu limbajeletradiionale de programare - C i respectiv, Fortran. Sunt evideniate
166 Proiectarea sistemelor de control cu metodadiagramelor BODE
7/23/2019 Carte Lab 2008 PDF Book Format
8/86
Proiectarea sistemelor de control cu metodadiagramelor BODE 165
0 1 2 3 4 50
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
Time (sec)
Unit Ramp Input response
uncompensatedcompensateddesired
Figura 9.12 Rspunsul sistemului necompensat i respectiv compensat la
semnalul rampunitar
viii Prefa
avantajele pe care acest mediu de simulare numericle ofern rezolvareaproblemelor care pot fi puse sub o forma matematiccompact, precum ifacilitile de reprezentare graficdiversde care dispunee.
Capitolul 2 trateazaspecte legate de modelarea sistemelor liniare iinvariante (LTI) n Matlab. Sunt prezentate cteva moduri de reprezentareale sistemelor liniare precum i modalitile de conversie dintr-o form nalta a acestor forme de reprezentare. De asemenea sunt men ionare funciiledin Matlab prin intermediul crora se pot extrage date dintr-un astfel demodel.
Capitolul 3 prezint modurile de interconectare ale blocurilorfuncionale ce compun un sistem. Reducerea complexitii prindeterminarea unei funcii de transfer echivalente reprezint un aspect
important care este abordat n cadrul aceastui capitol. Pornind de la ideeareprezentrii sistemelor prin diagramele bloc se introduce modelarea nSimulink.
Capitolul 4 este dedicat n ntregime prezentri mediului grafic demodelare i simulare Simulink. Sunt prezentate elementele de baz dinSimulink care permit modelarea grafic a unui sistem. De asemenea, esteartat modul de salvare a modelului creat ntr-un fiier de tip mdl, precumi ncrcarea n zona de lucru a unui model deja existent. n faza urmtoare,sunt prezentate facilitile oferite de Simulink n simularea sistemelor nvederea analizei acestora.
Capitolul 5 abordeaz problema analizei rspunsului tranzitoriupentru sistemele liniare modelate prin funcii de transfer. Este analizatrspunsului sistemului de ordinul I, de ordinul II i ordinul II modificat cuun pol sau zerou cnd la intrare se aplicun semnal treapt. Pentru fiecaredin aceste cazuri sunt introdui parametrii care caracterizeaz faza derspuns tranzitoriu.
Capitolul 6 se ocupcu analiza rspunsului n regim stabilizat. Suntintroduse erorile care pot saparn aceastfazde rspuns a unui sistem,
atunci cnd la intrarea sistemului se aplicun semnal standard de test. Esteprezentat conceptul de sensibilitate al unui sistem. Sunt de asemeneaintroduse erorile stationare pentru sistemele modelate prin ecuatii de stare.
7/23/2019 Carte Lab 2008 PDF Book Format
9/86
7/23/2019 Carte Lab 2008 PDF Book Format
10/86
Proiectarea sistemelor de control cu metodadiagramelor BODE 163
10-1
100
101
102
-100
-50
0
50Bode Diagrams
Magnitude(dB)
uncompensated
compensated
10-1
100
101
102
-180
-160
-140
-120
-100
-80
Phase(deg)
Frequency (rad/sec)
uncompensatedcompensated
Figura 9.10 Diagramele Bode pentru sistemul necompensat i respectiv
compensat
Pentru a obine rspunsul sistemului la semnalul de tip treapt se vaconsidera urmtorul fiier de comenzii Matlab:
sys1c = t f ( gnumc, gdenc) ;sys2c = t f ( numc, denc) ;st ep( sys1c, sys2c); gr i d;l egend( ' uncompensat ed' , ' compensat ed' , - 1) ;
n figura 9.11 este prezentat rspunsul sistemului compensat i respectivnecompensat la semnalul treaptunitar.
uncompensat
compensate
x Prefa
7/23/2019 Carte Lab 2008 PDF Book Format
11/86
Introducere n MATLAB
Lucrarea nr. 1
1.1. Obiectivele lucrrii
- prezentarea mediului MATLAB, comenzi de baz- operaii elementare cu matrici i vectori- exemple de operaii i funcii uzuale n controlul sistemelor- operaii matematice, extragerea rdcinilor unui polinom- transformarea Laplace directa i invers
1.2. Introducere
MATLAB este un mediu de modelare i simulare interativ utilizatpentru calcule i analize tiinifice. nglobeazdiverse posibiliti de lucru,precum: analiza numeric, calculul matricial, procesarea semnalelor saureprezentarea grafic, ntr-un mediu uor de utilizat. Formulareaenunurilor i soluiile problemelor se exprim exact cum sunt scrisematematic, nefiind necesar o programare tradiional. Numele acestui
mediu provine de la matrix laboratory. n calcule complexe programul sebazeazpe operaiile cu matrici.
162 Proiectarea sistemelor de control cu metodadiagramelor BODE
Frequency (rad/sec)
Phase(deg);Magnitude(dB)
Bode Diagrams
0
5
10
15
20
10-3
10-2
10-1
100
-50
-40
-30
-20
-10
Figura 9.9 Diagrama Bode pentru sistemul compensat phase-lag
Acum pentru a vedea diferena dintre sistemul necompensat isistemul compensat vom considera urmtorul fiier de comenzii Matlab careconduce la rezultatul din figura 9.10
sys1 = t f ( K*gnum, gden) ;sys2 = t f ( numo, deno);
[ mag1, ph1, w] =bode( K*gnum, gden, l ogspace( - 1, 2, 500)) ;[ mag2, ph2, w] =bode( numo, deno, l ogspace( - 1, 2, 500)) ;
subpl ot( 211) ;semi l ogx(w, 20*l og10( mag1) , ' r ' , w, 20*l og10( mag2) , ' b' ) ;t i t l e( ' Bode Di agrams' ) ; yl abel ( ' Magni t ude ( dB) ' ) ;l egend( ' uncompensat ed' , ' compensat ed' , - 1) ;subpl ot ( 212) ; semi l ogx( w, ph1, ' r ' , w, ph2, ' b' ) ;
yl abel ( ' Phase ( deg) ' ) ; xl abel ( ' Frequency ( rad/ sec)' ) ;l egend( ' uncompensat ed' , ' compensat ed' , - 1) ;
7/23/2019 Carte Lab 2008 PDF Book Format
12/86
Proiectarea sistemelor de control cu metodadiagramelor BODE 161
cl ear al l ;wm = 0. 84; % gai n- crossover f r equencyal pha = 10; % phase- l ag compensator par amet er
T = 10/ wm; % phase- l ead compensat or t i me const ant
K = 10; % DC compensator gain
% Phase- l ead compensat or C( s)cnum = K*[T 1] ;
cden = [ T*al pha 1] ;
% Open- l oop sys G( s)gnum = [1];gden = [ 1 1 0] ;
% Uni t y- Gai n Feedback Loop H( s)hnum = [1];hden = [ 1] ;
% Open- l oop sys C( s) *G( s)numo = conv( cnum, gnum) ;deno = conv( cden, gden) ;
% Cl osed- l oop sys[ gnumc, gdenc] = f eedback( K*gnum, gden, hnum, hden, - 1) ;[ numc, denc] = f eedback(numo, deno, hnum, hden, - 1) ;
bode(cnum, cden) ;
Introducere n MATLAB12
1.2.1 Mediul MATLAB
Cnd lansai MATLAB-ul pe desktop apar mai multe ferestre care vorgestiona fiierele, variabilele i aplicaiile asociate acestui mediu deprogramare. Dacpornii prima datprogramul, atunci pe desktop trebuie sobinei o fereastridenticcu cea din figura 1.1, altfel fereastraLaunch Padpoate sconine alte intrri.
Figura 1.1 Mediul MATLAB
Fereastra de comenzi - Command Window
Aici putei sintroducei comenzi, de exemplu sspecificai valoarea
unei variabile sau srulai un fiier cu comenzi i/sau instructiuni MATLAB- script m-file. Prin urmare printr-un m-file se va ntelege un fier careexecut o serie de comenzi MATLAB sau poate s conin funcii careacceptargumente.
7/23/2019 Carte Lab 2008 PDF Book Format
13/86
Introducere n MATLAB 13
Prompterul mediului este >>, indicator dup care se pot introducevalori, expresii i scripturi m-file.
Fereastra comenzilor anterioare - Command History
Liniile introduse n Command Window se nregistreaz n fereastraCommand History. n Command History, putei s identificai funciaanterior folosit, se pot copia i executa liniile selectate.
Textul urmtor
%-- 11:18 AM 4/04/04 --%
indicora exactcnd a fost executatcomanda respectiv.
Fereastra cilor de cutare - Launch Pad
Fereastra furnizeaz calea de acces la biblioteci - tools, demo-uri idocumentaii. Biblioteca Simulink i Control System Toolbox sunt cel maides utilizate n acest curs.
Fereastra de lucru - Workspace
Fereastra de lucru conine setul de variabile (vectori sau matrici)memorate de MATLAB ntr-o sesiune de lucru. Putei sadunai o variabilutiliznd funcii, rulnd un m-file i ncrcnd workspace-ul salvat. Ca svedei informaiile despre fiecare variabil facei click pe Workspace saufolosii funcia whoi whos . Figura 1.2 aratfereastra Workspace.
160 Proiectarea sistemelor de control cu metodadiagramelor BODE
iii.) Se va determina ctigul corespunztor pentru sistemul necompensatcorespunztor frecvenei secrad84.0m . Din Figura 9.8, ctigul
sistemului necompensat pentru secrad84.0m este 20 dB. Pentru a
duce curba de ctig jos la 0 dB la m , va trebui ca compensatorul
phase-lag sfurnizeze dB20log20 or 1010 2020
.
iv.) Se vor calcula parametrii compensatorului phase-lag pe baza valorilorobinute n paii anteriori de la (i.) pna la (iii.). Funcia de transfer aunui compensator phase-lag este data de
111
Ts
TssC
(9.7)
sau
1
1
Tj
TjjC
cu 1 (9.8)
unde sec9.1110
m
T
. Aceasta asigurca frecvenaT
1 sfie
cu o decadsub noua frecvende trecere m . Astfel compensatorul
phase-lag proiectat este dat de
1119
19.11
s
ssC . (9.10)
Rezultate simulate pentru Compensatorul Phase-lag
Simulare n Matlab pentru compensatorul de fazntrziateste datde
7/23/2019 Carte Lab 2008 PDF Book Format
14/86
Proiectarea sistemelor de control cu metodadiagramelor BODE 159
Procedura de proiectare a compensatorului de fazntrziat
i.) Se va alege un factor de ctig constant K astfel nct eroarea
staionarspecificatsfie ndeplinit. Din cele prezentate anterior setie c K trebuie s fie mai mare sau egal cu 10, astfel c vomconsidera 10K .
ii.) Se va determina pe reprezentarea grafic, marginea de faz (PM) imarginea de ctig (GM) pentru sistemul necompensat n cazul unuifactor de ctig constant Kdeterminat la pasul (i.). Apoi se va estima
frecvena la care are loc o margine de faz PM de 50 . Vom notaaceast frecvena ca fiind noua frecvena de trecere m . Din figura
9.8, se vede c secrad84.0m .
Frequency (rad/sec)
Phase(
deg);Magnitude(dB)
Bode Diagrams
-20
0
20
40
60
Gm = Inf, Pm=17.964 deg. (at 3.0842 rad/sec)
10-1
100
-180
-160
-140
-120
-100
Figura 9.8. Diagrama Bode pentru sistemul necompensat sGK .
m
Introducere n MATLAB14
Figura 1.2. MATLAB Workspace
1.2.2 Variabile, Expresii i Comenzi n MATLAB
Dac ce ne-am familiarizat cu mediul MATLAB vom trece laexpresiile de baz recunoscute de MATLAB. n command window se
introduc direct comenzile, ca de exemplu atribuirea unei valori pentru ovariabilsau rularea unui m-filece contine aceleai comenzi.
Expresii i variabile
Expresiile introduse frnume de variabilsunt evaluate de MATLABi memorate ntr-o variabil afiat numitans (answer). Rezultatul uneiexpresii se pot atribuii unei variabile pe care o identific. Variabila estealctuit dintr-o liter urmat de orice numr, liter, cifr sau printr-unnume. MATLAB utilizeaznumai primele 31 de caractere din numele unei
variabile. MATLAB face diferenntre litermici mare (adicestecasesensitive). MATLAB afieazrezultatul cu 5 cifre significante (de obicei:format short). Comenzile de format sunt urmatoarele:
7/23/2019 Carte Lab 2008 PDF Book Format
15/86
Introducere n MATLAB 15
f ormat short ef ormat l ong,f ormat l ong e
Aceste comenzi vor afia numrul cu 5 cifre in format flotant, respective 15cifre n format ntreg i 15 cifre n format flotant.
Primul exemplu este o expresie fr nume de variabil cu rspunsmemorat automat n ans. Expresia a doua este o expresie matematic ceutilizeaz funcia cos . Funciile matematice vor fi explicate n cadrulseciunii Funcii Elementare.
>> 13
ans =
13>> cos( 3. 1416/ 3)
ans =0. 49999787927255
>>
n exemplul doi se vor afia expresii a cror valoare este memorate nvariabilele ai b.
>> a= 234. 56778
a =2. 3457e+002
>> b=3. 1416*( cos( 3. 1416/ 6) ) +2
b =4. 7207e+000
n rspunsul afiat, semnul % indic faptul c expresia tastat esteconvertit n comentariu, respectiv dacdupexpresia matematicse pune ;atunci se omite rspunsul. n exemplul urmtor se aratacest lucru. n prima
158 Proiectarea sistemelor de control cu metodadiagramelor BODE
0 1 2 3 4 50
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
Time (sec)
Unit Ramp Input response
uncompensatedcompensateddesired
Figura 9.7 Rspunsul sistemului necompensat i respectiv compensat la
semnalul rampunitar
9.2.2 Compensarea de tip phase-lag
Exemplul 2: Sse proiecteze un sistem de control cu compensator de faz
ntrziat pentru sistemul 1
1
sssG , astfel nct eroarea staionar n
starea stabil s fie mai mic decit 0.1 pentru un semnal treapt unitaraplicat la intrarea sistemului i supracreterea maximsfie mai micdect25%.
Specificarea erorii staionare
Aa cum a fost calculat anterior n relaiile (9.1), s-a obinut 10K .
Specificarea supracreterii din rspunsul tranzitiriu (%)
Pe baza calculelor din exemplul precedent, relaiile (9.2) avem c
45PM comp .
7/23/2019 Carte Lab 2008 PDF Book Format
16/86
Proiectarea sistemelor de control cu metodadiagramelor BODE 157
Time (sec.)
Amplitude
Step Response
0 2 4 6 8 10 12
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
uncompensatedcompensated
Figura 9.6 Rspunsul la treapta sistemului necompensat i compensat
n cazul n care se dorete sse vizualizeze i rspunsul la semnalul de tipramp unitar, atunci se va considera urmtoarea secven de comenziiMatlab care vor conduce la rezultatul din figura 9.7.
t =0: 0. 01: 5;
y = t ;[ y1, x1] =st ep( gnumc, conv(gdenc, [ 1 0] ) , t ) ;[ y2, x2] =st ep( numc, conv(denc, [ 1 0] ) , t ) ;[ y3, x3] =st ep( numc, denc, t ) ;[ y4, x4] =st ep( gnumc, gdenc, t ) ;pl ot ( t , y1, ' r ' , t , y2, ' b' , t , y, ' g' ) ; gr i d;xl abel ( ' Ti me (sec) ' ) ;t i t l e( ' Uni t Ramp I nput r esponse' ) ;l egend( ' uncompensated' , ' compensated' , ' desi r ed' , - 1) ;
Introducere n MATLAB16
expresie nu se afieazvaloarea lui a1dei este nc nworkspace, iarpelinia a doua a1este considerat un comentariu.
>> a1=3. 5445/ 64;>> % a1=3. 5445/ 64
>>
Utiliznd comanda f pr i nt f putei s manipulai direct formatulieirii. Aceastcomandafieazrezultatul n formatul dorit pe ecran sau nfiierul specificat. %8. 4f, indic faptul c la ieire avei un numr floatformat din 8 caractere din care 4 sunt zecimale. Dac lungimea numruluieste mai mic decat 8, (7 de exemplu) al 8-lea element este spaiul (blank).
Expresia din interiorul semului va fi afiat. \ nindictrecere pe o linienoua ieirii urmtoare. Expresia tastatdupvirgul,va fi evaluat.
MATLAB are o serie de variabile predefinite dup cum se arat ntabelul urmtor, Tabel1.1.
Tabel 1.1. Variabile i constante specialeans Ultimul rspunscomputer Tipul calculatoruluieps Numr real cu virgulmobili,j Unitate imaginarinf Infinitnan Nu e numrpi 3,141459265358.realmax Cel mai mare numr real n virgulmobilrealmin Cel mai mic numr real n virgulmobil
>> f pr i nt f ( ' Ar ea of a ci r cl e i s %8. 4f Squar emeters \ n' , 3. 1416*3 2)
Ar ea of a ci r cl e i s 28. 2744 Squar e meters
>>
7/23/2019 Carte Lab 2008 PDF Book Format
17/86
Introducere n MATLAB 17
MATLAB are o serie de comenzi speciale dupcum apar n Tabelul1.2.
Tabel 1.2. Comenzi specialeclc terge toate intrrile i ieirile din Command
Windowclear variable terge coninutul i variabila respectiv din
workspace.Dac toate variabilele sunt tereseatuci ntregul workspace este gol.
diary Determino copie despre toate comenzile deintrare i majoritatea comenzilor de ieireadugat n fiierul respectiv. Dac nu existnici un fiier menionat se utilizeaz fiieruldiary.
exit Ieire din MATLAB
help command Help pentru comanda respectivhome Analog clc.load Citete coninutul fiierului MAT salvat.save Salveaz workspace-ul ntr-un fiier binar
denumit fiier MAT cu extensia .matwho Afieazvariabilele din workspace.whose variable Afieaz numrul elementelor unei variabile.
Dacnu se indicvariabila, atunci se afieazvaloarea fiecrui element.
Caracter de tip String
Un ir de caractere cuprins ntre dou semne apostrof se numetecaracter de tip st r i ng sau vai abi l text . Aceste iruri se potcombina [ ir unu,ir doi] . Vezi exemplul urmtor:
>> c=' Transi l vani a'
c =Tr ansi l vani a
>> cs=[ c, ' , Cl uj ' ]
cs =
156 Proiectarea sistemelor de control cu metodadiagramelor BODEyl abel ( ' Phase (deg) ' ) ;xl abel ( ' Frequency ( r ad/ sec)' ) ;l egend( ' uncompensated' , ' compensated' , - 1) ;
Rezultatul simulrii conduce la obinerea figurii 9.5.
10-1
100
101
102
-100
-50
0
50Bode Diagrams
Magnitude(dB)
uncompensatedcompensated
10-1
100
101
102
-180
-160
-140
-120
-100
-80
Phase(deg)
Frequency (rad/sec)
uncompensatedcompensated
Figura 9.5. Diagrama Bode pentru sistemul necompensat i compensat
Pentru a obine rspunsul sistemului la semnalul de tip treaptse vaconsidera urmtorul fiier de comenzii Matlab:
f i gure;sys1c = t f ( gnumc, gdenc) ;sys2c = t f ( numc, denc);st ep( sys1c, sys2c); gr i d;l egend('uncompensated','compensated',-1);
Rezultatul este prezentat n figura 9.6.
compensated
uncompensat
7/23/2019 Carte Lab 2008 PDF Book Format
18/86
Proiectarea sistemelor de control cu metodadiagramelor BODE 155
Frequency (rad/sec)
Phase(deg);Magnitude(dB)
Bode Diagrams
20
25
30
10-1
100
101
102
10
20
30
Figura 9.4 Diagrama Bode pentru compensatorul cu avans de faz sC
Acum pentru a vedea diferena dintre sistemul necompensat isistemul compensat vom considera urmtorul fiier de comenziiMatlab:
sys1 = t f ( K*gnum, gden) ;sys2 = t f ( numo, deno) ;
[ mag1, ph1, w] =bode( K*gnum, gden, l ogspace( - 1, 2, 500) ) ;[ mag2, ph2, w] =bode( numo, deno, l ogspace( - 1, 2, 500) ) ;
subpl ot ( 211) ;semi l ogx(w, 20*l og10( mag1) , ' r ' , w, 20*l og10( mag2) , ' b' );t i t l e( ' Bode Di agr ams' ) ; yl abel ( ' Magni t ude ( dB) ' ) ;l egend( ' uncompensated' , ' compensated' , - 1) ;
subpl ot ( 212) ;semi l ogx( w, ph1, ' r ' , w, ph2, ' b' ) ;
Introducere n MATLAB18
Tr ansi l vani a, Cl uj
Definirea matricilor
Cea mai simlpmetodde a introduce o matrice este scrierea explicit,adicniruirea elementelor cuprinse n paranteze ptratice [ ]. Coloanelematricei se despart prin virgulsau spaiu, iar rndurile prin ;sau carriagereturn.
O matrice de o singurlinie se introduce n MATLAB n doufeluri:utiliznd spaiu sau virgul.
>> A=[ 4 32 31 5]
A =4 32 31 5
>> A=[ 4, 32, 31, 5]
A =4 32 31 5
O matrice de o singurcoloanse introduce n MATLAB n doufeluri: utiliznd ; sau carriage returns (n acest exemplu am folosit ;).
>> B=[ 3; 4; 5]
B =345
Combinnd instruciunile de creare a matricei coloancumatricea linie, se obine o matrice m x n..
Matrice
4321C se introduce n MATLAB utiliznd spaiu sau virgulcu
punct i virgulsau carriage return, dupcum urmeaz:
7/23/2019 Carte Lab 2008 PDF Book Format
19/86
Introducere n MATLAB 19
>> C=[ 1 2; 3 4]
C =
1 23 4
O linie sau o coloanntreagse adreseazprin utilizarea punctului ivirgul ; . De exemplu, pentru a ob ine prima linie din matricea C,se procedeazdupcum urmeaz. Numrul 1 aratceste vorba de primalinie sau coloan n funcie de poziia lui. Dac numrul se afl pe primapoziie atunci, la ieire avem ntreaga linie, iar dac se afl pe poziia adoua atunci, la ieire avem ntreaga coloan. n exemplul nostru, numrul 1
se afl pe prima poziie; deci la ieire avem prima linie. ncercai sinterschimbai coloana i numrul introdus pentru a vedea modificarea laieire.
>> f r ow = C( 1, : )
f r ow =
1 2
>>
Un element din matrice se poate accesa printr-o expresie ( i,j) , undei este linia i j este coloana elementului corespunztor. De exemplu,pentru a obine elementul de pe prima linie icoloana a doua din matriceaC, care este 2, se procedeazdupcum urmeaz.
>> f 12=C(1, 2)
f 12 =
2
>>
154 Proiectarea sistemelor de control cu metodadiagramelor BODE
1123.0
141.0
s
ssC (9.6)
Rezultate simulate pentru compensatorul Phase-lead
Simulrile n Matlab au la bazurmtoarele comenzii care se pot salva ntr-un fiier m-script.
cl ear al l ;
wm = 4. 5; % gai n- crossover f r equencyal pha = 0. 3; % phase- l ead compensat or
% par ameterT = 1/ wm/ sqr t ( al pha) ; % phase- l ead compensat or% t i me const ant
K = 10; % DC compensator gai n
% Phase- l ead compensat or C( s)cnum = K*[T 1] ;cden = [ T*al pha 1] ;
% Open- l oop sys G( s)gnum = [1];gden = [ 1 1 0] ;
% Uni t y- Gai n Feedback Loop H( s)hnum = [1];hden = [ 1] ;
% Open- l oop sys C( s) *G( s)numo = conv( cnum, gnum) ;deno = conv( cden, gden) ;
% Cl osed- l oop sys[ gnumc, gdenc] = f eedback( K*gnum, gden, hnum, hden, - 1) ;
[ numc, denc] = f eedback(numo, deno, hnum, hden, - 1) ;bode(cnum, cden) ;
Rezultatul simulrii compensatorului este prezentat n figura 9.4
7/23/2019 Carte Lab 2008 PDF Book Format
20/86
Proiectarea sistemelor de control cu metodadiagramelor BODE 153
Din figura 9.3, marginea de faz PM, a sistemului necompensat este20PM uncomp . Astfel, alegnd o margine de faz PM pentru
sistemul compensat egal cu 45PM comp , rezult c avem nevoie
de o valoare adiional de faz 25PMPM uncompcompm .
Acum c m a fost determinat, se poate determina parametrul al
compensatorului cu avans de faz, care se va alege 3.0 i care va
corespunde unei faze maxime de avans de 33 .iii.) Faza maximde avans m trebuie sfie adugatla valoarea noua
frecvenei de trecere m . Compensatorul cu avans de faz introduce
un factor de ctig a crui valoare este n jur de dB2.53.0log10
corespunztor unei frecvene noi m . Astfel, trebuie determinatfrecvena la care sistemul necompensat are o amplificare de
dB2.53.0log10 . Prin urmare, m ar trebui sfie egalcu aceastfrecvenastfel ca, aceasta sdevinnoua frecvende trecere 0-dBpentru sistemul compensat. Prin analiza Figurii 9.3, factorul de ctigal sistemului necompensat este egal cu 5.2dB la o frecven
secrad5.4 . Fie secrad5.4m .
iv.) Se vor calcula parametrii compensatorului cu avans de faz pe bazavalorilor obinute n paii (i.) pn la (iii.). Funcia de transfer a
compensatorului cu avans de fazeste datde
1
11
Ts
TssC
(9.4)
sau
1
1
Tj
TjjC
cu 1 (9.5)
unde
m
T1
.
Astfel, pentru 3.0 , sec41.0T . Aceasta conduce la urmtorulcompensator cu avans de faz:
Introducere n MATLAB20
Operaii de bazcu matrici i vectori
Matricile de aceeai dimensiune se pot aduna i scdea. Dacele suntde dimensiuni corespunztoare, atunci se poate executa operaia denmulire sau de mprire. Pentru nmulirea i mprirea element cuelement, MATLAB utilizeaz operatorul dot, sau punctul zecimal. nTabelul 1.3 sunt enumerate opera iile ce se pot executa elementcu element. Se dau dou matrici C i D. Pentru operaia denmulire se tasteaz
>>C*D,
iar pentru nmulire element cu element se ntroduce
>>C. *D,
>>C\ D
este echivalent cu C-1D, i
>>C/ D
este echivalent cu CD-1
.
Inversa matricei se noteazcu C-1
i se obine utiliznd comanda
>>i nv( C) .
n continuare se prezintcteva exemple.
>> C = [ 1 2; 3 4]C =
1 23 4
>> D = [ 5 6; 7 8]
7/23/2019 Carte Lab 2008 PDF Book Format
21/86
Introducere n MATLAB 21
D =
5 67 8
>> C*D
ans =
19 2243 50
>> C\ D
ans =
- 3. 0000 - 4. 00004. 0000 5. 0000
>> i nv( C) *D
ans =
- 3. 0000 - 4. 00004. 0000 5. 0000
>> C. *D
ans =
5 1221 32
Tabel 1.3. Operaii matematice+ Adunare- Scdere.* nmul ire element-cu-element./ n r ire element-cu-element.\ m r ire la stn a element-cu-element division.^ Ridicare la utere element-cu-element.' Trans usa unei matrici
152 Proiectarea sistemelor de control cu metodadiagramelor BODE
Procedurde proiectare a compensatorului cu avans de faz
i.) Se alege o constant de ctig K astfel nct eroarea staionar nstarea stabilcare a fost specificatsfie satisfcut. Din cele artateanterior, se cunoate c K trebuie s fie mai mare sau egal cu 10,astfel cvom considera 10K .
ii.) Se va determina pe reprezentarea grafic marginea de ctig (gainmargin GM) i marginea de faz (phase margin - PM)corespunztoare sistemului necompensat n cazul factorului de ctigconstant Kconsiderat la punctual anterior (i.) cu scopul de a determinavaloarea fazei de avans m care sasigure o margine de fazcare s
corespundsupracreterii specificate.
Frequency (rad/sec)
Phase(deg);Magnitude(dB)
Bode Diagrams
-20
0
20
40
60
Gm = Inf, Pm=17.964 deg. (at 3.0842 rad/sec)
10-1
100
-180
-160
-140
-120
-100
Figura 9.3 Diagramele Bode pentru sistemul necompensat - sGK
7/23/2019 Carte Lab 2008 PDF Book Format
22/86
Proiectarea sistemelor de control cu metodadiagramelor BODE 151
Astfel, relaia dintre marginea de faz- phase margin (PM), si factorul deatenuare - ( ) pentru cazul special al unei funcii de transfer n bucl
nchis n
n
sssG
2
2
este datde relaia urmtoare
22
1
241
2tanPM
(9.3)
ceea ce aratcmarginea de fazpentru un sistem compensat ar trebui sfie
mai mare de 45 pentru a obine o supracretere maximmai micde 25%i aa cum se prezintn Figura 9.2.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
10
20
30
40
50
60
70
80
Ph
aseMargin(PM)
damping ratio Figura 9.2 Marginea de faz(PM) vs. Factor de atenuare ( )
Introducere n MATLAB22
Un vector neste un vector linie sau o matrice coloana nnumere.
n MATLAB, elementele incluse n paranteze ptrate i separate de puncti virgulgenereaz un vector coloan. Transpusa unui vector linie esteun vector coloan i invers. Acesta se ob ine n MATLAB utilizndsimbolul (apostrof). Urm torul exemplu arat transpusa matricei D.
>> E = D'
E =
5 76 8
>>
Un vector se poate genera specificnd primul i ultimul element, respectivincrementul alocat pentru fiecare element. De exemplu, dac se propunecrearea unui vector linie avnd primul element 1 i ultimul element 9 cuun increment de 1, atunci sintaxa utilizat arat dup cumurmeaz. Incrementul implicit este 1 deci, dac nu se menioneazca i parametru explicit, valoarea sa va fi 1,. n urmtoarea comandMatlab
>>F = ( 1: 9) ,
se obine acelai rezultat ca i n cazul:
>> F = ( 1: 1: 9)
F =
1 2 3 4 5 6 7 8 9
>> F = ( 1: 9)
F =
1 2 3 4 5 6 7 8 9
7/23/2019 Carte Lab 2008 PDF Book Format
23/86
Introducere n MATLAB 23
n Matlab exostdefinite matrici speciale care sunt prezentate ntabelul urmtor, Tabel 1.4.
Table 1.4 Matrici elementare
e e Matricea unitatemesh ri d X i Y matrici entru desenare 3-Dones Matricea cu toate elementele 1zeros Matricea cu toate elementele 0rand Genereaznumere aleatoare cu distribuie
uniformr andn Genereaznumere aleatoare cu distribuie normal
Avnd o matrice datse poate ca din aceasta sse extraginformaii
utile n calcule. ncercai urmtoarele comenzi i determinai modul lor de
aciune. Vezi tabelul 1.5 pentru detali.
Table 1.5 Operaii elementare n matricidi sp Afieazmatriceai sempty Adevarat pentru o matrice vid
i sequal Adevarat pentru o matrice identici snumeri c Adevrat pentru o matrice numerici sspar se Adevrat pentru o matrice rarl engt h Lungimea unui vectorndi ms Numrul dimensiunii
numel Numrul elementelorsi z e Dimensiunea matricei
n Tabelul 1.6 i respective 1.7 sunt cuprinse cteva funcii utile ncrearea i manipularea matricelor. Studiai i vedei cum funcioneaz.
Table 1.6 Funcii pentru manipulare matricedi ag Creazsau extra e dia onalelef l i pl r Rotete matricea n jurul axei verticale
inverseaza ordinea coloanelorf l i pud Rotete matricea n jurul axei orizontale
(inverseaza ordinea liniilor)res ha e Schimbdimensiunea matriceirot90 Rote te matricea cu 90 de rade: (colon Index n matrice, rearanjare matrice
150 Proiectarea sistemelor de control cu metodadiagramelor BODE
Specificarea erorii din starea stabil
K
ss
KsssGK
ssV
1
1limlim
00 (9.1)
101.011
KKK
eV
ss
Specificarea supracreterii din rspunsul tranzitiriu (%)
Reamintim crelaia dintre supracreterea exprimatn (%) a rspunsului ifactorul de atenuare - , este data de
21
100%)Overshoot(
e (9.2)
n Figura 9.1 s-a reprezentat dependena graficdintre aceti 2 factori.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
0
10
20
30
40
50
60
70
80
90
100
%
Overshoot
damping ratio Figura 9.1 Supracreterea (%) vs. Factor de atenuare ( )
7/23/2019 Carte Lab 2008 PDF Book Format
24/86
Proiectarea sistemelor de controlprin metoda diagramelor BODE
Lucrarea nr. 9
9.1 Obiectivele lucrrii
- sisteme compensate cu avans de faz- sisteme compensate de fazntrziat
9.2 Proiectarea sistemelor compensate9.2.1 Compensarea de tip phase-lead
Exemplul 1: S se proiecteze un sistem de control cu compensator cu
avans de fazpentru sistemul 1
1
sssG , astfel nct eroarea n starea
stabilsfie mai micdect 0.1 pentru un semnal treaptunitaraplicat laintrarea sistemului, iar supracreterea maxim a rspunsului tranzitoriu s
fie mai micde 25%.
Introducere n MATLAB24
Table 1.7 Operaii n matricidet Determinantul matriceitrace Suma elementelor de e dia onali nv Inversa matricei
ei g Valoarea ro rie a unei matrici vectoruluiol Polinomul caracteristicex Ex onentl o m Lo aritms r t m Rdcin trat
1.2.3 Funcii i operaii elementare
Operaiile de bazprecum adunare, scdere, nmul ire, mprirese reprezintprin urmtoarele simboluri + , - , * , /. Pentru a ridica un
numr la putere, se insereaz simbolul ^ ntre numr i exponent. Spresupunem, cse dorete determinarea valorii 26, se tasteaz
>> 2^
Dupcum am artat mai devreme pentru matrici sau tablouri, operaiilede ridicare la putere, nmulire i mprire sunt diferite.
Cteva dintre funciile de bazcare opereazpe elemente sunt date nTabelul 1.8.
Tabel 1.8 Funcii elementare matematiceabs Valoare absolutsau modulacos Arc cosinusacosh Arc cosinus hi erbolican l e Ar umentas i n Arc sinusasi nh Arc sinus hi erbolicatan Arc tan entatanh Arctan ent hi erboliccon Con u atul unui numr com lexcos Cosinusex Ex onen ial bazecosh Cosinus hi erbolicf l oor Rotun ire s re infinitf i x Rotun ire s re zeroui ma Partea ima inarl o Lo aritm natural
7/23/2019 Carte Lab 2008 PDF Book Format
25/86
Introducere n MATLAB 25
l o 10 Lo aritm zecimalreal Partea realr em Restul m ririir ound Rotun ire ctre cel mai a ro iat ntre
si gn Func ia semnsi nh Sinus hi erbolics r t Rdcin tratt an Tan entt anh Tan ent hi erbolic
Operaii Logice
Operatorii relaionali compardoi scalari i produc 1 dac operaiaeste adevrat i respectiv 0 dac este fals. De exemplu, dac setasteaz
>> t = 17>55,
MATLAB rspunde cu t = 0. n cazul matricilor, operatorii relaionalicomparelementele corespunztori. De exemplu,
>> L = D > H = [ 1 3 5 7 9] ; >> I = [ 0 2 3 4 5] ; >> J = [ 2 2 6 3 4] ;>> l gcal 1 = H < I
l gcal 1 =
0 0 0 0 0
>> l gcal 2 = H>I
148 Proiectarea sistemelor de control cu metoda locul rdcinilor
7/23/2019 Carte Lab 2008 PDF Book Format
26/86
Proiectarea sistemelor de control cu metoda locul rdcinilor 147
023.8
)75.1(2588,64
s
s
Expresia obinutn urma procedurii grafice de proiectare se poate aproximacu
)8(
)75.1(64
s
s.
Pentru a obine rspunsul sistemului n bucl nchis la semnalultreapt, din meniul principal selectm Loop responses/Close-Loop Step.Vizualizarea parametrilor de rspuns n domeniul timp pentru sistem sepoate face dac pe graficul obinut vom face click-dreapta i vom selectaopiunea Characteristics dupcare alegem Rise Time i Peak Overshoot.Prin click-stngape linia albastrvom putea vizualiza parametrii de rspunsai sistemului n domeniul timp, aa cum se prezintn figura 8.15.
Figura 8.15. Rspunsul sistemului n buclnchiscu compensator cu avansde faz
Introducere n MATLAB26
l gcal 2 =
1 1 1 1 1
>> l gcal 3 = ( H>I ) &( H>=J )
l gcal 3 =
0 1 0 1 1
Crearea fiierelor MATLAB (m-file)
Fiierele care conin instruciuni MATLAB se numesc m-files. Unfiier de acest tip se realizeaz dac se deschide un editor de text i
aici se vor introduce funcii i comenzi recunoscute de MATLAB.
Existdoutipuri de fiiere m:
- Funcii care nu accept paramentrii de intrare sau carereturneaz parametrii de ieire. Acestea opereaz asupravariabilelor din workspace.
- Funcii care accept parametrii de intrare i returneaz valori deieire. Aceste variabile sunt locale funciilor.
Dac suntei un programator nceptor n MATLAB, atunci creaifiierul m-file direct n directorul curent. Pe msurce realizai mai multefiiere proprii o s avei nevoia s le organizai n alte directoare i nbiblioteci personalizate ce vor fii adugate n calea de cutare a MATLAB-lui. Dac MATLAB-ul ntlnete dou fiiere cu acela denumire, atunciexecutprimul fiier pe care l ntlnete n cale de cutare. Fiecare nume defiier se termincu .m Comenzile din fiier se executprin ntroducerea nfereastra de comenzi (Command Window) numele fiierului fr extensa.m.
Un m-file se creaz executnd click pe >FILE>NEW>M-FILE dupcare apare o fereastrunde se poate ntroduce comenzile dorite. Vezi figura1. 3.
7/23/2019 Carte Lab 2008 PDF Book Format
27/86
Introducere n MATLAB 27
Figura 1.3. Fereastra editorului din Matlab (m-file)
Definirea funciilor
Pentru a crea o funcie se introduce prima dat cuvntul cheief uncti ondup care urmeazdenumirea funciei i parametrii de ieire
respectiv de intrare, dupcum urmeaz:
f uncti on [output arguments] =function_name( input arguments)
Instruciuni de control a programului
MATLAB are posibilitatea de control a fluxului de operaii, exact can orice alt limbaj de programare. Structurile repetitive i decizionare puse ladispoziia utilizatorului sunt prezentate n Tabelul 1.9. Comenzile f or ,
whi l e, i i fsunt similare cu cele utilizate n alte limbaje. Fiecareciclu f or , whi l e, i i f se termin cu o comand end. Comandabreak se utilizeaz pentru a iei definitiv din ciclu. Comanda i f se
146 Proiectarea sistemelor de control cu metoda locul rdcinilor
Figura 8.14. Plasarea polilor pe baza condiiilor impuse
Salvarea compensatorului obinut se face prin selectarea opiuniiExport din meniul File. Aceast aciune va deschide SISO Tool Export.Acum vom selecta Compensator C din coloana Component. Pentru aschimba numele se face double-click n celula corespunztoareCompensatorului C i se schimbnumele punnd n cazul de faa PhLead.Dupaceasta se face click pe butonul Export to Workspace.
Acum n fereastra de comenzi a MATLAB-ului se introduce
>> PhLead
care va determina afiarea funciei de transfer a controlerului.
Zero/pole/gain:
7/23/2019 Carte Lab 2008 PDF Book Format
28/86
7/23/2019 Carte Lab 2008 PDF Book Format
29/86
Introducere n MATLAB 29
>> y=2*si n(x) ;>> pl ot ( x, y) ; t i t l e( ' Si nusoi dal wavef or m' ) ;
Semnalul de ieire aratca n figura 1.4.
Figura 1.4. y = 2sin(x).
1.3 MATLAB n controlul i analiza sistemelorFunciile prezentate sunt fundamentale i sunt utilizate n mod
frecvent n aplicaii de control.
Numere complexe
Numerele complexe sunt introduse in MATLAB utilzndu-sefunciile speciale i sau j . Operaiile matematice sunt similare cu celerealizate cu numere reale. Ca exemplu, s presupune operaiile de baz
ntre dounumere complexe.
Fiind dat: (25 j65) i (30 j80) (adunare i mprire)
144 Proiectarea sistemelor de control cu metoda locul rdcinilor
8.3.3. Proiectarea unui compensator cu avans de faz
Pentru sistemul din exemplul 1 s se proiecteze un compensator cuavans de faz
)(
)()(
0
00
ps
zsKsC
care s ndeplineasc urmtoarele
specificaii:
Polii dominani sprezinte un factor de atenuare 707,0 Polii dominani s asigure un timp de atingere a regimului stabil
2st sec.
Avem c:
24 st 5,0 sec.
25.0
11
n i 45)707,0(tan
1 .
Prin urmare va exista un pol de valoare 221 js
Graficul corespunztor Locului rdcinilor va reprezenta punctul depornire pentru procedura de proiectare. Pentru nceput vom selecta uncontroler nul i vom folosi cerinele date pentru a gsi locaia
corespunztoare polului controlerului, precum i factorul de ctigcorespunztor. n acest exemplu vom selecta zeroul ca fiind plasat pe axarealn punctul 1.75.
Pentru a determina modelul sistemului controlat i pentru a ncepeprocedura de proiectare a sistemului de control vom introduce urmtoarelecomenzii:
>> Gp = t f ( 1, [ 1 7 10 0] )
>> si sot ool
Ca rspuns, vom obine o fereastr iniial fr grafice,corespunztoare procedurii SISO Design Tool. Se va selecta opiuneaImport Model din meniul File. Acum se va deschide csua de dialog
7/23/2019 Carte Lab 2008 PDF Book Format
30/86
Proiectarea sistemelor de control cu metoda locul rdcinilor 143
10.0157 (s+2.397)
Astfel c, controlerul de tip PD are o expresie aproximativ (rezultat n
urma unei trunchieri) datde 2410)( ssC .
Acum din meniul principal vom selecta opiunea Loopresponses/Close-Loop Steppentru a obine rspunsul la treapta de semnal.Facem click-dreapta pe graficul de rspuns i selectm Characteristicsdup care Rise Time i respectiv Peak Overshoot. Dac poziionmmouse-ul pe linia albastra rspunsului i se face click-stnga, atunci se vorafia parametrii ce caracterizeazrspunsul n domeniul timp, aa cum esteartat n figura 8.13. de mai jos.
Figura 8.13. Rspunsul sistemului n buclnchiscu controler de tip PD
De asemenea, s notm c pe diagramele BODE, ale sistemului nbucldeschissunt afiate att marginea de ctig GM, ct i marginea de
faz PM pentru sistemul compensat.
Introducere n MATLAB30
>> ( 25+65j ) +( 30+80j ) %Adunare
ans =
5. 5000e+001 +1. 4500e+002i
>> ( 25+65j ) / ( 30+80j ) % mpri r e
ans =
0. 8151 - 0. 0068i
>>
Dintr-un numr complex se poate extrage faza, modulul, partea real i partea imaginar. De exemplu, dac se dorete s se obin faza imodului numrului complex (25 j65), prima datse convertete unghiuln grade prin nmulire cu / 180 (rspunsul n unghi este ntotdeauna nradiani).
>> abs( 25- 65i )
ans =
69. 6419
>> angl e(25- 65i ) *( 180/ pi )
ans =
- 68. 9625
>> r eal ( 25-65i )
ans
25
>> i mag( 25-65i )
7/23/2019 Carte Lab 2008 PDF Book Format
31/86
Introducere n MATLAB 31
ans
- 65
>>
Polinoame
Un polinom se reprezint ca un vector linie care conine coeficieniipolinomului ca elemente ale vectorului. De exemplu, polinomul
s3 32s2 32 se reprezintca
>>x = [ 1 32 0 32]
x =
1 32 0 32
>>
Primul element din vector este coeficientul termenului de grad cel maimare, iar ultimul coeficientul termenului de grad cel mai mic. 0 este inclus deorece
nu exit termen de grad unun polinoml. Polinomul se poate descompunesub formfactorizat a crui rdcini se obine cu funcia pol y() , dupcum urmeaz.
P s s 2s 4s 5, care poate fii
>> x = pol y( [ 0 2 4 5] )
x =
1 3 - 18 - 40 0Pentru polinomul caracteristic dat, rdcinile se obin cu comanda
roots() .
142 Proiectarea sistemelor de control cu metoda locul rdcinilor
Figura 8.12. Proiectarea controlerului pe baza specificaiilor impuse
Pentru a salva valorile obinute pentru compensatorul rezultat, se vaselecta opiunea Export din meniul File. Aceast aciune va deschidesesiunea SISO Tool Export. Acum se va selecta op iunea Compensator Cdin coloana Component. Pentru a schimba numele, vom face double-clickn celula corespunztoare pentru Compensatorul C i vom schimba numelepunnd PD. Facem click pe butonul corespunztor opiunii Export toWorkspace.
Dupaceste operaiuni vom introduce comanda:
>> PD
iar ca rspuns se va afia:
Zero/pole/gain:
7/23/2019 Carte Lab 2008 PDF Book Format
32/86
7/23/2019 Carte Lab 2008 PDF Book Format
33/86
Introducere n MATLAB 33
1.4 Verificare
1. Generai polinoamele urmtoare n Matlab.
962)( 2 sssN
192)( 23 ssssD
2. Fie)(
)(
sD
sNo expresie raional. Descompunei n fracii simple folosind
comenzile din Matlab.
3. Fie polinomul 932)( 4 sssP . Determinai rdcinile acestuiautiliznd comenzi Matlab.
4. Fiind dat intervalul de timp 0 t 10s , desenai rspunsulfunciei )cos(4)( tetf t cu o rezoluie de 0.1s.
5. Determinai produsul celor doupolinoame specificate la punctul 1.
6. Evaluai polinomul2
2
53
32)(
sss
ssF utiliznd funcia pol yval .
140 Proiectarea sistemelor de control cu metoda locul rdcinilor
Figura 8.10. Activarea funciei Gp din fereastra Import System Data
Se face acum click pe OK. n acest moment se vor afia graficelecorespunztoare pentruLocul rdcinilori respectivDiagramele BODEnregiunile de reprezentare graficcorespunztoare. Vezi figura 8.11.
Figura 8.11. Graficele pentru locul rdcinilori diagramele BODE
7/23/2019 Carte Lab 2008 PDF Book Format
34/86
Proiectarea sistemelor de control cu metoda locul rdcinilor 139
>> Gp = t f ( 1, [ 1 7 10 0] )>> si sot ool
Ca rspuns, vom obine urmtoarea fereastr iniial, ce nu conine nici o
reprezentare n zona graficpentruLocul rdciniloriDiagramele BODE,figura 8.9.
Figura 8.9. Fereastra iniialdin procedura SISO Design Tool
Vom ncepe prin a selecta Import Model din meniul File. Aceastaciune va deschide csua de dialog Import System Data. Acum vomselecta Gpprin click pe pentru ca n cmpul Gsse transfere valoareacorespunztoare funciei Gp. Acest lucru este prezentat n figura 8.10.
Introducere n MATLAB34
7/23/2019 Carte Lab 2008 PDF Book Format
35/86
Modelarea sistemelor liniare
Lucrarea nr. 2
2.1 Obiectivele lucrrii
- reprezentarea sistemelor n MATLAB- transformri ale reprezentrilor- proprieti ale sistemelor liniare- extragerea datelor dintr-un sistem
2.2 Consideraii teoretice
2.2.1 Modelarea sistemelor
Modelarea prin funcii de transfer
Din punct de vedere matematic un sistem liniar i invariant (LTI) sepoate reprezenta n Matlab sub mai multe moduri. Pentru a simplificalucrurile vom considera cazul sistemelor cu o intrare i o ieire (SISO).Modelul cel mai utilizat n analiza unui sistem LTI este funcia de transfer.
Aceasta se definete ca raport a dou polinoame de un anumit grad n s,unde sreprezintvariabila complexdin transformata Laplace.
138 Proiectarea sistemelor de control cu metoda locul rdcinilor
Figura 8.8. Rspunsul la semnalul treapt
8.3.2 Proiectarea unui regulator de tip PD
Pentru sistemul din exemplul anterior se cere s se proiecteze unregulator C(s) care ssatisfacurmtoarele cerine:
Poli dominani scorespundunui factor de atenuare 707,0
Timpul de atingere a regimului stabilizat sa fie 2st sec.
4st , i 5,0 sec.
25,0
11
n , i 45)707,0(tan
1
Prin urmare 221 js
Pentru a determina modelul sistemului ce trebuie controlat i pentru a
porni procedura de proiectare a acestui sistem SISO, vom introduceurmtoarele comenzi MATLAB
7/23/2019 Carte Lab 2008 PDF Book Format
36/86
Proiectarea sistemelor de control cu metoda locul rdcinilor 137
Figura 8.7. Alegerea polilor pentru un factor 6,0
Factorul de ctig determinat este 89,80K . De asemenea, unul din
polii compleci precum i frecvena natural n sunt afiai n partea de josa reprezentrii grafice i n cazul de fa au urmtoarele valori,
02,1766,01 js i respectiv 28,1n rad/s. n plus, marginea de ctig
(GM) i marginea de faz (PM) sunt de asemenea indicate pe diagrameleBode i au valorile GM=17,9 dB, si PM=58,6.
Acum, din meniul principal al procedurii de proiectare se va selectaLoop responses/Close-Loop Step pentru a obine rspunsul la semnalultreapt. Se va face click dreapta pe graficul obinut i se va selecta opiuneaCharacteristics, iar mai apoi Rise Time i Peak Overshoot. Dac pe
graficul de rspuns trasat cu linie albastrse face click stnga, se vor afiaparametrii ce caracterizeaz rspunsul n domeniul timp pentru sistemulanalizat, figura 8.8.
Modelarea sistemelor liniare36
Astfel cputem scrie:
)(
)()(
sD
sNsG
(2.1)
undeN(s) este polinomul de la numrtorul funciei de transfer de forma:
011
1 ...)( bsbsbsbsNm
m
m
m
(2.2)
iarD(s) este polinomul de la numitorul funciei de transfer de form:
011
1 ...)( asasasasDn
n
n
n
.(2.3)
n MATLAB, funcia sys=t f ( num, den) este utilizat pentru agenera o reprezentare prin funcie de transfer pentru un sistem. Variabilelenumi den sunt folosite pentru desemnarrea numrtorului, respectivnumitorului funciei de transfer. S considerm funcia de transfer G(s),unde:
12
3)(
3
ss
ssG . (2.4)
Pentru a reprezenta aceastfuncie de transfer vom scrie:
>> num = [ 1 3]
num =
1 3
>> den = [ 1 0 2 1]
den =
1 0 - 2 1>> sys =t f ( num, den)
M d l i l li i 37136 P i i l d l d l l d i il
7/23/2019 Carte Lab 2008 PDF Book Format
37/86
Modelarea sistemelor liniare 37
Tr ansf er f unct i on:s + 3
- - - - - - - - - - - - - - - -s 3 - 2 s + 1
>>
Modelarea prin ecuaii de stare
Un alt mod de reprezentare utilizat n analiza i modelarea unui sistemLTI este dat de ecuaiile de stare, cu urmtoarea formgeneral:
DuCxy
BuAxx
dt
d
(2.5)
unde A, B, C, i Dsunt matrici, reprezentnd intrarea, ieirea i tranziiiledintre intrare i ieirea sistemului. Sconsiderm sistemul:
xy
uxxdt
d
505.1
083.2
0
71.10
10
(2.6)
Pentru a genera o reprezentare prin ecuaii de stare se utilizeazfunciasys=ss( A, B, C, D) , dupcum urmeaz:
>> A = [ 0 1; 0 1. 71]
A =
0 1. 00000 - 1. 7100
>> B = [ 0; 2. 083]
B =
136 Proiectarea sistemelor de control cu metoda locul rdcinilor
Figura 8.6. Determinarea marginii de stabilitate
(b) Pentru a determina ctigul n cazul unui factorul de atenuare 6,0 ,se vor deplasa polii compleci pnce factorul de atenuare afiat n modcontinuu n partea de jos a zonei de reprezentare grafic ajunge cavaloare n vecintatea lui 0.6. Acum se activeazopiunea de Zoom i sevor deplasa polii pn ce valoarea factorului va fi exact de 0.6.Rezultatul obinut va fi cel din figura de mai jos, figura 8.7.
Proiectarea sistemelor de control cu metoda locul rdcinilor 135Modelarea sistemelor liniare38
7/23/2019 Carte Lab 2008 PDF Book Format
38/86
Proiectarea sistemelor de control cu metoda locul rdcinilor 135
Dacse dorete modificarea factorului de ctig al compensatorului seva modifica valoarea din cmpul aferent lui )(sC . De asemenea, factorul dectig se mai poate modifica n mod grafic prin deplasarea polilor(ptrelele roii de pe graficul RL), de-a lungul graficului ntr-o altlocaie
dorit. Pentru modificarea prin aceastoperaie, se sugereazca mai nti sse selecteze din meniu opiunea Zoom XY prin click-dreapta pe mouse.Apoi se selecteazregiunea doritdin graficul locul rdcinilor, dup carese face operaiune de deplasare (hold and place) a ptrelelor.
Ca o alternativ, aceast operaie se poate face i prin utilizareaopiunii Zoom icons de pe meniul toolbar, vezi figura 8.5. Prin click peMouse Zoom icon (Zoom n XY), i apoi click pe locaia doritdin loculrdcinilor care se dorete mrit. Se nchide opiunea Mouse Zoom, dupcare se deplaseazpolii sistemului n buclnchisn locaia dorit.
Figura 8.5. Simbolurile grafice ale Toolbar pentru Zoom
(a) Pentru a gsi valoarea marginii de stabilitate se vor deplasa poliisistemului de-a lungul locului pn la intersecia cu axa. Se activeazopiunea Mouse Zoom dup care se ncadreaz (delimiteaz) regiuneapolilor i la eliberarea mouse-ului se realizeazzoom-ul zonei selectate.Se deplaseazpolii n poziia exactde intersecie a locului cu axa dincare rezultmarginea de stabilitate. Se dezactiveazZoom-ul i rezultrezultatul din figura 8.6.
Modelarea sistemelor liniare38
0
2. 0830
>> C = [ 1. 05 5]C =
1. 0500 - 5. 0000
>> D = 0
D =
0
>> sys=ss( A, B, C, D)
a =x1 x2
x1 0 1x2 0 - 1. 71
b =u1
x1 0
x2 2. 083
c =x1 x2
y1 1. 05 - 5
d =u1
y1 0
Cont i nuous- t i me model .
>>
Modelarea sistemelor liniare 39134 Proiectarea sistemelor de control cu metoda locul rdcinilor
7/23/2019 Carte Lab 2008 PDF Book Format
39/86
Modelarea sistemelor liniare 39
Modelarea Poli-Zerouri i Factor de amplificare
Uneori este necesar crearea unui model pentru un sistem liniar dat
prin specificarea zerourilor, polurilor i a factorului de amplificare. Funciasys=zpk( z, p, k) , este utilizatpentru a genera un model de acest tip. Sconsiderm un sistem liniar cu urmtoarele caracteristici:
Poli = 0, -2, -3, -4Zerouri = -1, -2Factorul de amplificare = 2
Reprezentarea matematiceste de forma:
)4)(3)(2(
)2)(1(2))...()((
))...()(()(
21
21
ssss
ss
pspsps
zszszsksG
n
m .
n MATLAB vom avea:
>> z = [ - 1 2]
z =-1 -2
>> p = [ 0 2 3 4]
p =0 - 2 - 3 - 4
>> k=2
k =2
>> sys=zpk( z, p, k)
Zer o/ pol e/ gai n:
134 Proiectarea sistemelor de control cu metoda locul rdcinilor
Figura 8.3. Fereastra cu graficele RL i Diagramele BODE
n procedura de proiectare, prin apsarea butonului din dreapta almouse-ului se apeleaz meniurile specifice regiunilor de reprezentaregrafic. Acestea prezintmai multe opiuni aa cum se pot vedea n figura8.4.
Click dreapta pentru locul radacinilor Click dreapta pentru diagramele BodeFigura 8.4. Meniuri specifice pentru graficele RL si diagramele BODE
Proiectarea sistemelor de control cu metoda locul rdcinilor 133Modelarea sistemelor liniare40
7/23/2019 Carte Lab 2008 PDF Book Format
40/86
Proiectarea sistemelor de control cu metoda locul r dcinilor 133
Figura 8.2. Fereastra de introducere a datelor
Butonul Other basculeaz de asemenea ntre dou configuraiiposibile. Facem click OK. Dup aceste aciuni se vor afia n zona dereprezentare graficLocul rdcinilor (RL) si Diagramele BODE (DB)corespunztoare sistemului n bucldeschis, figura 8.3. Ptrelele roi depe RL reprezint polii sistemului n bucl nchis pentru o valoare afactorului de ctig 1 (implicit valoarea este C(s) = 1). De asemenea, pediagramele BODE apar reprezentate marginea de ctig (GM) si margineade faz(FM) ce corespund unui factor de ctig implicit 1 (C(s) = 1).
Modelarea sistemelor liniare
2( s+1) ( s+2)- - - - - - - - - - - - - - - - - - -s( s+2) ( s+3)( s+4)
>>
2.2.2 Transformri de reprezentare
MATLAB are funcii care pot realiza conversii ale acestor moduri dereprezentare dintr-o form n alta. Aceste transformri sunt utile nrezolvarea unor probleme de control i sunt enumerate mai jos:
Conversia Funie de transfer - Spaiul strilor
Un sistem liniar exprimat sub forma funciei de transfer se poatetransforma ntr-o reprezentare prin ecuaii de stare utiliznd funcia t f2ssn urmtoarea linie de comand:
[ A, B, C, D] = t f 2ss( num, den) ,
unde numi deneste numrtorul i respectiv numitorul de tip polinomial afunciei de transfer.
Conversia Ecuaii de stare - Funcie de transfer
Un sistem liniar scris sub forma ecuaiei de stare se poate converti nreprezentare funcie de transfer dacse apeleazfuncia ss2tf din linia decomand:
[ num, den]=ss2t f ( A, B, C, D) .
Conversia Funie de transfer - Zerou-Pol-Factor de amplificare
Un sistem liniar modelat prin funcie de transfer se poate transforma nreprezentare prin zerou-pol-factor de amplificare utiliznd funcia t f 2zpapelat n linia de comand
Modelarea sistemelor liniare 41132 Proiectarea sistemelor de control cu metoda locul rdcinilor
7/23/2019 Carte Lab 2008 PDF Book Format
41/86
[ z, p, k]=t f 2zp( num, den) .
Conversia Zerou-Pol-Factor de amplificare - Funie de transfer
Transformarea unui model din reprezentarea zerou-pol-factor deamplificare n reprezentare funcie de transfer se realizeaz prin apelulfunciei zp2t fn comanda:
[ num, den] =zp2t f ( z, p, k) .
Conversia Zerou-Pol-Factor de amplificare - Ecuaii de stare
Reprezentarea zerou-pol-factor de amplificare se poate transforma nreprezentarea prin ecuaii de stare utiliznd funcia zp2ss
[ A, B, C, D] =zp2ss( z, p, k).
Conversia Ecuaii de stare - Zerou-Pol-Factor de amplificare
Conversia modelului din reprezentarea prin ecuaii de stare nreprezentare prin zerou-pol-factor de amplificare se poate face prin apelulfunciei ss2zp
[ z, p, k]=ss2zp( A, B, C, D) .
2.2.3 Extragerea datelor din model
Rezolvarea unui sistem liniar este uurat de folosirea mediuluiMATLAB.
Extragerea datelor din reprezentarea Funie de transfer
Polinoamele numrtorului i numitorul unui sistem exprimat prinvariabila sys reprezint informaii n cazul funciei de transfer. Acestepolinoame se pot obine prin utilizarea funciei t fdatadin Matlab.
[ num, den]=t f data( sys) .
Figura 8.1. Fereastrgraficiniial
Procedura de proiectare presupune n mod implicit c, compensatoruleste pe calea direct a sistemului de control. Butonul grafic FS se poateutiliza pentru a schimba aceastconfiguraie, punnd compensatorul fie pecalea invers (feedback) fie pe calea direct. Prin apsare succesiv vabascula ntre aceste douconfiguraii.
Acum vom selecta opiunea Import Model din meniul File. Aceast
aciune va deschide fereastra de dialog Import System Data, prezentatnfigura 8.2. Configuraiile sistemului de control apar n Model Listbox.Astfel c, blocurile sunt desemnate dupa cum urmeaza: F - blocpreamplificator, G - modelul sistemului controlat, H - modelul senzorului,K - modelul compensatorului, a crui valoare iniialeste 1.
Se va selecta Gpprin click pe simbolul graphic pentru a introduceacesta vasloare n cmpul G.
Proiectarea sistemelor de control cu metoda locul rdcinilor 131Modelarea sistemelor liniare42
7/23/2019 Carte Lab 2008 PDF Book Format
42/86
8.3.1 Proiectarea unui regulator de tip P
Sconsiderm c )(sGc
din figura de mai sus este un regulator de tip
proporional K.Utiliznd procedura de proiectare sisotool, se cere s seproiecteze un sistem de control care s ndeplineasc urmtoarelecaracteristici:
(a) Domeniul lui Kpentru ca stabilitatea sistemului sfie garantat.(b) Valoarea polilor compleci dominani scorespundunui factorde atenuare 6,0 .
Pentru aceste valori obinute se vor indica: marginea de ctig(gainmargin - GM) i marginea de faz(phase margin - PM). De asemenea se vadetermina rspunsul la semnalul treapt precum i parametrii cecaracterizeazrspunsul n domeniul timp.
Pentru a determina modelul sistemului de control i pentru a ncepeprocedura de proiectare, vom introduce urmtoarele comenzi MATLAB:
>>Gp = t f ( 1, [ 1 7 10 0])>> si sot ool
n rspuns, se va deschide fereastrgraficiniialprezentatn figura 8.1.
Extragerea datelor din reprezentarea Ecuaii de stare
Matricea de sistem A, matricea intrrilor B, matricea ieirilor C imatricea de tranziie D a unui sistem dat sys reprezintinformaii care se
pot extrage din reprezentarea prin ecuaii de stare. Acestea se obin prinapelul funciei ssdat adin Matlab.
[ A, B, C, D] =ssdata( sys) .
Extragerea datelor din reprezentarea Zerou-Pol-Factor
Zeroul, pol i factorul de amplificare a unui sistem considerat exprimatprin variabila sys reprezintinformaii care pot fi extrase din acest model.Aceste informatii se obin prin apelul funciei zpkdin Matlab.
[ z, p, k]=zpkdat a(sys) .
2.3. Verificare
1. Obinei reprezentarea sub forma funciei de transfer, a ecuaiilor destare i a modelului zerou-pol-factor de amplificare pentru sistemele a carorcomportamente sunt descrise prin ecuaiile difereniale urmtoare:
)()()(3)(2)(52
2
txtxdt
dtyty
dt
dty
dt
d ; xyy '''''2 .
2. Avnd date urmtoarele sisteme, extragei toate informaiileposibile.
32
1)(
2
ss
ssG ;
232
)2)(1()(
23
sss
sssG ;
1
10
3
25)(
sssG .
3. Obinei soluiile n domeniul timp pentru sistemele SISO prezentate mai
sus.
130 Proiectarea sistemelor de control cu metoda locul rdcinilor
7/23/2019 Carte Lab 2008 PDF Book Format
43/86
Conectarea sistemelor liniare
Lucrarea nr. 3
3.1 Obiectivele lucrrii
- interconectarea sistemelor n Matlab- reprezentarea modelelor prin diagrame bloc- utilizarea SIMULINK n modelarea sistemelor
3.2 Consideraii teoreticePentru a descrie diferite pri componente ale unui sistem liniar
invariant (LTI) vom utiliza reprezentrile prin diagrame bloc. Fiecare blocdin sistem se reprezint printr-o funcie de transfer, care indic o relaiedintre intrri i ieiri.
3.2.1 Conectarea serie (n cascad)
Blocurile unui sistem LTI se pot interconecta n multe feluri. Dacomulime de blocuri sunt conectate n serie, ele se pot combina ntr-un singur
bloc a crui funcie de transfer este produsul funiilor de transferindividuale. Conectarea acestor blocuri se numete conectare n cascad.
Funcia rltool dacse apeleazva deschide o fereastrgraficn carese va putea reprezenta numai graficulLocul rdcinilor.
Aceste douproceduri cu interfaa graficpermit proiectarea n modinteractiv a compensatoarelor pe baza reprezentrii grafice a Locului
rdcinilor, Diagramelor BODE i Nichols, n cazul unui sistem n bucldeschis. Astfel c, pentru a deschide o sesiune de lucru, se va introduceurmtoarea comandn fereastra de comenzi a MATLAB-ului:
>> si sot ool
Apelul funciei sisotoolse poate face cu sau frargumente, dupcumurmeaz. De exemplu:
sisotool(Gp), sau sisotool(Gp, Gc).
unde prin Gp se reprezint modelul (funcia de transfer) pentru sistemulcontrolat, iar Gc se reprezint modelul (funcia de transfer) pentrucompensator.
De asemenea, este permisimportarea modelului n cadrul proceduriide proiectare prin metoda Locul rdcinilor, astfel c aceasta se poatencrca:
din spaiul de lucru al MATLAB (MATLAB workspace); dintr-un fiier de tip MAT ( mat-file); dintr-o diagramSIMULINK (mdl-file).
n mod similar, funcia rltool vadeschide o sesiune de proiectare pentru un
sistem de tipul SISO liniar n care se va putea vizualiza numai graficulLocul rdcinilor.
n continuare se va exemplifica modul de proiectare pe bazacaracteristicilor metodeiLocul rdcinilor.
8.3 Proiectarea sistemelor de control
n sistemul de control care se prezint n figura urmtoare, seconsider c )(sGc este un regulator, iar )(sGp este sistemul controlat a
crui funcie de transfer este)5)(2(
1)(
ssssG
p .
Conectarea sistemelor liniare44
7/23/2019 Carte Lab 2008 PDF Book Format
44/86
Proiectarea sistemelor de controlcu metoda locul rdcinilor
Lucrarea nr. 8
8.1 Obiectivele lucrrii
- Prezentarea funciilor sisotoolsi rltool- Proiectarea unui sistem cu regulator de tip P- Proiectarea unui sistem cu regulator de tip PD- Proiectarea unui sistem cu compensator cu avans de faz
8.2 Introducere
Biblioteca Control Systems din MATLAB conine dou funciisisotool i rltool utile n proiectarea sistemelor de control. Acestea sebazeaz pe metoda graficLocul rdcinilor i reprezint de fapt douproceduri de analizi proiectare interactiva sistemelor liniare de controlcu o intrare i o ieire (SISO).
Atunci cnd este apelat, funcia sisotooldeschide o fereastrgraficn care se vor reprezenta ulterior graficele pentru Locul rdcinilor irespectiv,Diagramele BODE.
Figura 3.1 reprezint conectarea n cascad a sistemelor, iar ecuaia (3.1)reprezintfuncia de transfer echivalent ntregului sistem.
Figura 3.1 Conectare serie (n cascad)
N
k
k
N
sGsG
sGsGsGsG
1
11
)()(
)()()()(
(3.1)
Fiecare element al sistem liniar se poate modela prin funcie detransfer, prin ecuaii de stare, sau prin zerou-pol-factor de amplificare. nMATLAB, fiecare element se va reprezinta prin sys1, sys2, ,sysn, funcia de transfer echivalent sys se va obine prin nmulire sauprin folosirea funciei seri esdin MATLAB.
>> sys = sys1 * sys2 * * sysn
sau
>> sys = ser i es( sys1, sys2)
Funcia seri espoate fi aplicatodatdoar pentru douelemente.Ca exemplu, sconsiderm doufuncii de transfer date de relaiile (3.2) irespectiv (3.3).
1210
12)(
231
sss
ssG (3.2)
)3)(3(
2)(
2
ss
ssG (3.3)
Pentru a determina funcia de transfer, se procedeazastfel:
Conectarea sistemelor liniare 45Metoda locul rdcinilor128
7/23/2019 Carte Lab 2008 PDF Book Format
45/86
>> sys1 = t f ( [ 2 1] , [ 1 10 2 1] ) ;>> sys2 = zpk([ 2] , [ - 3 3] , [ 1] ) ;>> sys = ser i es( sys1, sys2)
Zer o/ pol e/ gai n:
(s -2 )- - - - - - - - - - -( s+3) ( s- 3)
>>
3.2.2 Conectarea paralelDac dou blocuri sunt conectate n paralel, atunci acestea se pot
reduce la un singur bloc a crui funcie de transfer echivalent este sumafunciilor de transfer individual. Figura 3.2 reprezintconectarea n paralel asistemelor. Ecuaia (3.4) reprezintfuncia de transfer echivalent ntreguluisistem.
Figura 3.2. Conectarea n paralel a sistemelor
Metoda locul rdcinilor 127Conectarea sistemelor liniare46
7/23/2019 Carte Lab 2008 PDF Book Format
46/86
Condiia de proiectare care trebuie satisfcuteste datde timpul deatingere a regimului stabil, adic 10sst s. Se cere:
1. Locul rdcinilor pentru fiecare regulator i determinarea valoariiparametrului Kastfel ca, condiia impussfie ndeplinit.
2. Reprezentarea grafic n cadrul aceleiai figuri a rspunsului lasemnalul treaptuniate pentru fiecare regulator, pentru sistemul nbuclnchis.
3. Compararea rezultatelor obinute pentru fiecare din cele trei cazurii interpretarea din punctul de vedere a rspunsului tranzitoriu i aregimului stabilizat.
N
k
k
N
sGsG
sGsGsGsG
1
11
)()(
)()()()(
(3.4)
n MATLAB, fiecare element se reprezintprin sys1, sys2, ,sysn, funcia de transfer echivalent sys se obine prin adunare sau prinfolosirea funciei paral l el din MATLAB.
>> sys = sys1 + sys2 + + sysn
sau
>> sys = paral l el ( sys1, sys2)
Funcia paral l el poate fi aplicatdeodatdoar la douelemente.Ca exemplu, sconsiderm ncodatfunciile de transfer date de relaiile(3.2) i (3.3). Pentru a determina funcia de transfer, se procedeazastfel:
>> sys1 = t f ( [ 2 1] , [ 1 10 2 1] ) ;>> sys2 = zpk([ 2] , [ - 3 3] , [ 1] ) ;>> sys = paral l el ( sys1, sys2)
Zer o/ pol e/ gai n:
( s+11. 71) ( s- 2. 323) ( s 2+0. 6175s+0. 4044)- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -( s+10. 21) ( s+3)( s- 3) ( s 2- 0. 2056s+0. 09799)
>>
3.2.3 Conectare n buclnchis
Dac dou blocuri sunt conectate astfel nct semnalul de ieire a
sistemului format de cele doublocuri va fi aplicat la intrarea sistemului,atunci conectarea lor se numete conectarenbuclnchis(Close-loop saufeedback). Figura 3.3 reprezint conectarea n bucl nchis a celor dou
Conectarea sistemelor liniare 47Metoda locul rdcinilor126
7/23/2019 Carte Lab 2008 PDF Book Format
47/86
blocuri ce compun sistemul, iar relaia (3.5) reprezint funcia de transferechivalenta ntregului sistem.
Figura 3.3. Doublocuri n conexiune de tip buclnchis
)()(1
)()(
21
1
sGsG
sGsG
(3.5)
Pentru a reduce acest sistem la o singur funcie de transfer, seutilizeazfuncia f eedback din MATLAB.
>> sys = f eedback( sys1, sys2, +1)
n cazul unei reaciipozitive sau
>> sys = f eedback( sys1, sys2, - 1)
n cazul unei reaciinegative.
S considerm blocul a crui funcie de transfer este dat de relaia(3.2) ca fiind elementul de pe calea directi respectiv blocul a crui funciede transfer este datde relaia (3.3) ca fiind elementul de pe calea invers(reacie). Aplicnd o reacie negativ sistemului format din cele doublocuri vom avem:
>> sys1 = t f ( [ 2 1] , [ 1 10 2 1] ) ;>> sys2 = zpk([ 2] , [ - 3 3] , [ 1] ) ;>> sys = f eedback( sys1, sys2, - 1)
Zer o/ pol e/ gai n:
2. Un sistem cu reacie negativ unitar are funcia de transfer n bucl
deschisdatde expresia
2322
)(2
2
sss
ssKsKG .
Folosind MATLAB reprezentai locul rdcinilori artai cu ajutorulfunciei r l ocf i nd cvaloarea maxim a parametrului K pentru casistemul sfie stabil este K = 0.79.
3. Se considersistemul cu reacie prezentat n figura 7.1 unde funcia detransfer )(sG este
2
1)(
s
ssG
.
Pentru ce valoare a parametrului K,factorul de atenuare este egal cu
2 ?
4. Se considersistemul de control cu reacie din figura de mai jos.
Avem trei posibile regulatoare pentru sistem considerat anterior:
(a) KsG )( (regulator proportional)
(b)s
KsG )( (regulator integral)
(c)2
)(s
KsG (regulator proportional, dublu integral)
E(s)R(s)
Figura 7.8. Sistem de control n buclnchiscu regulator )(sC
)(sC
Y(s)
+-
)(sG
B(s)
Metoda locul rdcinilor 125Conectarea sistemelor liniare48
7/23/2019 Carte Lab 2008 PDF Book Format
48/86
K
s
s
KS
P
F
F
PS
s
K
s
K
(7.9)
n care s este locaia curenta polului, iar K este valoarea curenta
ctigului. Folosind relaia (7.9) i convertind derivatele partiale laincremente finite, variaile actuale ale polilor n bucl nchis se potaproxima prin:
K
K
s
sS
s
K
(7.10)
undes
s
reprezintmodificarea fracionardatoratlocaiei polului - s, iar
K
Keste modificarea fracionardatoratctigului - K. Sensibilitatea este
un numr complex care se poate exprima sub forma
rjSsK , (7.11)
unde mrimea i orientarea lui sKS furnizeaz o msur a sensibilitii nraport cu rdcina.
7.3. Verificare
1. Folosind funcia r l ocus s se obin locul rdcinilor pentruurmatoarele funcii de transfer corespunztoare unor sisteme decontrol cu structur identic cu cea prezentat n figura 7.1, dacparametrul Kvariaza ntre: K0 .
(a)12
5)(
23
ssssG ; (b)
125
13)(
23
2
sss
sssG ;
(c)52312
1)(
26
23
sss
ssssG .
2( s- 3) ( s+3) ( s+0. 5)- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -( s+10. 23)( s+2. 94) ( s- 2. 99) ( s 2- 0. 1795s+0. 1223)
3.2.4 Reducerea diagramelor bloc
Reduce un sistem prin folosirea funciilor seri es, par al l el if eedbackpoate fi destul de complicat, de aceea se utilizeazcomenzilebl kbui l di connect . Prima datse numrfunciile de transfer pe carele conine sistemul. Prin nbl ock se definete numrul total de blocuri alsistemului, iar bl dbl ocksconvertete fiecare bloc la o reprezentare prinecuaii de stare, considerndu-le independente (ne conectate). ComandaMatlab
[ A, B, C, D] = connect( a, b, c, d, q, i u, i y)
reconecteazblocurile corespunztor matricei qcare specific numrul deinterconectri. Primul element de pe fiecare linie din matricea qreprezintnumrul blocului. Restul elementelor indic numrul intrrilor care suntnsumate la blocul respectiv. Dac intrarea n sumator este negativ,numrul blocului va fi introdus cu semn negativ. i ui i ysunt vectori de tiplinie, indicnd blocurile de intrare i de ieire. n final, pentru a obinefuncia de transfer echivalent a ntregului sistem, se utilizeazfuncia ss2tf
din MATLAB care face reconversia din forma ecuaiilor de stare nreprezentarea funcie de transfer.Pentru a exemplifica procedura descris mai sus vom considera
sistemul a crui diagrambloc este prezentatn figura 3.4.
Figura 3.4. Exemplu de diagrambloc.
Conectarea sistemelor liniare 49
A f l id i i i
Metoda locul rdcinilor124
7/23/2019 Carte Lab 2008 PDF Book Format
49/86
Astfel se pot pune n eviden urmtori pai necesari pentru adetermina funcia de transfer echivalent.
Pasul 1
Numerotai fiecare bloc din schemprezentatn figura 3.4 ncepndcu 1. Vezi figura i modul n care s-a fcut numerotarea.
Pasul 2ntroducei pentru fiecare bloc numrtorul i numitorul sub form
polinomial. Numrtorul i numitorul blocului ise definete ca nirespectiv
di. Pentru diagrama bloc din figura precedent numrtorul i numitorularatdupcum urmeaz:
>> n1=1; d1=1;>> n2=0. 5; d2=1;
>> n3=4; d3=[ 1 4] ;>> n4=1; d4=[ 1 2] ;>> n5=1; d5=[ 1 3] ;>> n6=2; d6=1;>> n7=5; d7=1;>> n8=1; d8=1;
Not: Gradul numrtorului trebuie sfie mai mic dect a numitorului,altfel n fiierul script bl kbui l d va exista o eroare.
Pasul 3
Specificai numrul total de blocuri. Folosii pentru aceasta variabilanbl ocks. ntroducei fiierul script bl kbui l d pentru a construiimodelul descris prin ecuaii de stare.
>> nbl ocks = 8;>> bl kbui l d;
Pasul 4Scriei o matrice care s indic configuraia diagramei bloc. Pentru
Figura 3.4, matricea aratastfel:
7.2.4 MATLAB SISO Design Tool
Componenta SISO Design Tool a bibliotecii Control System din
Matlab este o funcie performantce utilizeazmetoda lucul rdcinilornanaliza i proiectarea sistemelor de control. Aceast component permitevizualizarea ntr-o fereastrgrafica locului rdcinilor, precum i a polilorpentru un sistem dat. Acetia pot fi ajustai prin folosirea pointerului de lamouse aa cum este prezentat n figura 7.7.
Figura 7.7. Fereastra grafica componentei SISO Design Tool.
7.2.5 Sensibilitatea fade locul rdcinilor
Rdcinile ecuaiei caracteristice ale unui sistem dat determinrspunsul tranzitoriu pentru sistemul n bucl nchis. Efectul datorat
variaiei parametrului reprezinto metodutilde msurare a sensibilitiin raport cu rdcinile. Astfel cvom defini sensibilitatea prin relaia:
Metoda locul rdcinilor 123
t l l tt f t l d ti t i f t t l
Conectarea sistemelor liniare50
7/23/2019 Carte Lab 2008 PDF Book Format
50/86
se poate calcula att factorul de amortizare - , ct i frecventa natural -
n . Astfel cse obine:
0876,16n 1546,42 n
5179,0
0109,4
n
Pentru un factor de amortizare cuprins intre 10 , se consider cavem un sistem cu rspuns subatenuat, cu un timp de stabilizare
93,14
n
sst
secunde. Rezultatul obinut este prezentat n figura 7.6.
Figura 7.6. Rspunsul sistemului la treapta de semnal (timp de stabilizare93,1st s)
>> q = [ 1 0 0 0 0>> 2 1 6 7 8>> 3 2 0 0 0>> 4 3 0 0 0>> 5 4 0 0 0>> 6 3 0 0 0>> 7 4 0 0 0>> 8 5 0 0 0]
q =1 0 0 0 02 1 - 6 - 7 - 83 2 0 0 04 3 0 0 05 4 0 0 06 3 0 0 07 4 0 0 08 5 0 0 0>>
Pasul 5Specificai intrrile i ieirile sistemului. Pentru figura 3.4, intrarea
este conectatla primul bloc, iar ieirea este conectatde blocul numrul 5.
>> i u = [ 1] ;
>> i y = [ 5] ; Pasul 6ntroducei declaraia urmtoare:
>> [ A, B, C, D] =connect( a, b, c, d, q, i u, i y);
Pasul 7Creazecuaiile de stare.
>> sys = ss( A, B, C, D) ;
Pasul 8Folosii funcia t f din MATLAB pentru a realiza conversia din
reprezentarea prin ecuaii de stare n reprezentare prin funcie de transfer.
Conectarea sistemelor liniare 51Metoda locul rdcinilor122
- 0. 84540
7/23/2019 Carte Lab 2008 PDF Book Format
51/86
>> sys = t f ( sys)
Tr ansf er f unct i on:
2- - - - - - - - - - - - - - - - - - - - - - - -s 3 + 13 s 2 + 56 s + 80
>>
3.3 Modelarea sistemelor n SIMULINK
SIMULINK este o componenta a mediului MATLAB care prezintointerfagraficcu utilizatorul, ceea ce permite reprezentarea mai uoarasistemelor, conectarea acestora i studierea rezultatelor. Pentru a rulaSIMULINK-ul, este necesar ca prima dat spornim MATLAB-ul. Odatce programul MATLAB ruleaz, se tasteazcomanda si mul i nk. Va apareo fereastr cu denumirea Si mul i nk Li br ary Br owser identic cucea din figura 3.5.
0
k =[ ]
>>
Descompunerea n fracii simple este datn relaia (7.6):
ss
js
j
js
jsY
3
8454.0
4033.0
4311.30773.2
1461.12983.1
4311.30773.2
1461.12983.1)(
(7.6)
Aa cum se poate vedea din relaia anterioar(7.6), efectul datoratpolului 0.8454-s este foarte mic n comparaie cu ceilali doi poli. Astfelc, dacl neglijm putem face urmtoarea aproximare:
sjs
j
js
jsY
3
4311.30773.2
1461.12983.1
4311.30773.2
1461.12983.1)(
(7.7)
Pe baza relaiei (7.7) se poate determina factorul de amortizare - ,
frecvena natural - n i timpul de stabilizare - sst .
>> pol y( [ - 2. 0773-3. 4311i 2. 0773+3. 4311i ] )
ans =1. 0000 4. 1546 16. 0876
>>
Pentru sistemul de ordinul doi scris sub forma standard consacrat
nn
n
sssT
2)( 2
2
, (7.8)
Metoda locul rdcinilor 121Conectarea sistemelor liniare52
7/23/2019 Carte Lab 2008 PDF Book Format
52/86
7.2.3 Rspunsul sistemelor
Din examinarea figurii 7.5 se poate vedea c exist 3 polii pentru
funcia de transfer a sistemului n buclnchis:
polii:
8454.0
4306,30636,2
4306,30636,2
j
j
s
Acetia corespund unui factor de amplificare (parametru) K =13.6002.
Obinerea rspunsului la semnalul treapt pentru sistemul considerat
presupune folosirea funciei de transfer )(sT din relatia (7.4), astfel cieirea este:
ssss
sssY
1
)1(6002,13)3)(2(
)3)(1(6002,13)(
. (7.5)
Prin descompunerea n fracii simple a lui )(sY i apelarea funcieir esi duedin Matlab vom obine ca rezultat expresia lui )(ty .
>> K = 13. 6002;>> num = K*pol y( [ - 1 -3] ) ;>> den = [ 1 5 6+K K 0] ; % wi t h R( s) i ncl uded>> [ r , p, k] =r esi due(num, den)
r =- 1. 2983 - 1. 1461i- 1. 2983 + 1. 1461i- 0. 40333. 0000
p =- 2. 0773 + 3. 4311i
- 2. 0773 - 3. 4311i
Figura 3.5. Fereastra Simulink Library Browser
S ncercm acum s construim un sistem care s arate ca cel dinfigura 3.6. Pentru aceasta, din fereastra SIMULINK se face click peFI LE>NEW>MODEL . Prin acesta aciune se creaz noua fereastr viddenumit unt i t l ed Care va conine sistemul nostru. Acum se face
dublu-click pe simbului grafic Cont i nuous i se trage cu mouse-ulbloculTr ansf er Fcn n fereastra unt i t l ed. Se selecteazsimbolulMat h i se pune blocul Gai n n fereastra unt i t l ed. Repetm acest
Conectarea sistemelor liniare 53
procedeu pentru a plasa blocul I nt egr at or din Cont i nuous. Din
Metoda locul rdcinilor120
>> r l ocf i nd( p, q)
7/23/2019 Carte Lab 2008 PDF Book Format
53/86
p ocedeu pe t u a p asa b ocu eg a o d Co uous.biblioteca Sources , se scoate blocul Step, iar din biblioteca Si nk, se iablocul Scope i se plaseaz n fereastra unt i t l ed. Vom continua splasam i restul blocurilor care apar n figura 3.6. Pentru a modifica
proprietile blocurilor se va face dublu click pe fiecare element.
Figura 3.6. Fereastra aplicaiei unt i t l ed
>> r l ocf i nd( p, q)
Sel ect a poi nt i n t he graphi cs wi ndow
sel ect ed_poi nt =
- 2. 0636 + 3. 4306i
ans = 13. 6002
>>
Dupmarcarea facutpe grafic vor apare polii selectai aa cum indicfigura 7.5.
Figura 7.5. Polii marcai dupalegere
Metoda locul rdcinilor 119Conectarea sistemelor liniare54
7/23/2019 Carte Lab 2008 PDF Book Format
54/86
Aceasta funcie se poate apela numai dup ce am obinut figura cureprezentarea grafica locului rdcinilorcu funcia rl ocus.
Execuia funcieir l ocf i nd
va conduce la apatiia unui cursor nformde cruce n figura grafic. Acest cursor poate fi deplasat de-a lungullocului rdcinilor, iar prin click pe un anume punct al figurii funciar l ocf i ndva furniza valoarea corespunzatoare pentru parametrul K, aacum se prezintn figura 7.4.
Figura 7. 4. Cursorul cruce apare dupapelul funciei r l ocf i nd
3.4 Verificare
1. Determinai funcia de transfer echivalent pentru urmtoarele
sisteme conectate n serie folosind Matlab
3
2)(1
ssG ;
75
52)(
22
ss
ssG ;
)5)(5)(2
2)(3
jsjss
ssG
2. Pentru sistemele de la punctul 1 sdeterminai funcia de transferechivalent n cazul conectrii lor n paralel.
3. Considernd figura 3.7 de mai jos i utiliznd funciile de transferde la punctul 1 i 2, determinai funcia de transfer echivalent a ntreguluisistem.
3
12)(
24
s
ssG ;
22
4)(
25
ss
ssG ;
321
1
632
)(
sss
ssG
4. Determinai rspunsul la semnalul treaptpentru funcia de transferechivalentcu ajutorul funciei step(sys) .
5. Reprezentai pe osciloscop rspunsul la semnal treapt pentrudiagrama bloc din figura 3.7 care se va implementa n SIMULINK.
Salvai fiierul.
Figura 3.7. Exemplu de diagrambloc.
Metoda locul rdcinilor118
7.2.2 Locul rdcinilor n Matlab
7/23/2019 Carte Lab 2008 PDF Book Format
55/86
Introducere n Simulink
Lucrarea nr. 4
4.1 Obiectivele lucrrii
- prezentare general- crearea fiierelor de tip model (mdl)- elemente de baz(blocuri i linii)- exemplu de simulare- modelarea sistemelor
4.2 Introducere
Simulink este o componentgraficinteractiva mediului MATLAB,fiind utilizat n modelarea, simularea i analiza sistemelor. n Simulink, unsistem se reprezint prin diagrame bloc. Exist mai multe biblioteci deblocuri utile care corespund funciilor de transfer, sumatorelor,dispozitivelor virtuale de intrare i ieire sau de alta natur. Simulink esteintegrat n MATLAB de aceea, transferul datelor ntre aceste componente serealizeaz foarte uor. n aceast prezentare vom utiliza mediul graficSimulink n modelarea sistemelor, implementarea i simularea sistemelor decontrol.
7.2.2 Locul rdcinilor n Matlab
Pentru a obine reprezentarea graficdin figura 7.3 s-a utilizat mediulMatlab. Graficul are la baza funcia de transfer )(sT a sistemului din figura
7.2, a crei expresie este datde relaia (7.3). Primul pas n obinerea loculuirdcinilor este de a ne asigura cexistvalori pentru care ecuaia (7.2) estesatisfcut. Pentru exemplul considerat, ecuaia caracteristicpoate fi scrisastfel:
0)3)(2(
11
sss
sK . (7.4)
Aceastforma este necesarpentru a putea apela functia rl ocusdinMatlab. Pentru obinerea locului rdcinilorpentru funcia de transfer din
relaia (7.4) se vor scrie urmatoarele linii de comand:
>> p = [ 1 1] ;>> q = [ 1 5 6 0] ;>> r l ocus( p, q)
>>Aceste linii pot fi salvate ntr-un fisier m-script i vor produce graficul
prezentat n figura 7.3. O alternativa funciei r l ocusdin Matlabpentruobinerea locului rdcinilor este utilizarea liniei de comand
[ r , K]=rl ocus(p, q) ,
care va returna sub forma unei matrice r, valorile rdcinilor din planulcomplex spentru factorul de amplificare K.
Se poate vedea c n figura 7.3 pentru valori cresctoare aleparametrului Kexistdouramuri ale locului rdcinilorcare se departeazde axa real. Aceasta nseamncpentru valori mari ale parametrului Knecuaia caracteristicvom avea dou rdcini complex conjugate. Pentru agsi valoarea parametrului K care s corespund pentru o pereche derdcini complexe se va folosi funcia r l ocf i nddin Matlab, apelatsubforma
&g