Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

29
Cap 1. Introducere Considerăm sistemul de reglare a temperaturii prezentat în figura de mai jos: Fig. 1.1 Sistemul procesului Mărimile date în proces sunt: Rm - reprezintă rezistenţa termică ce franează circulaţia căldurii din interiorul cuptorului către cavitatea de măsurare; Ra - reprezintă rezistenţa termică ce franează circulaţia căldurii pornind de la surasa de căldură până în interiorul cuptorului; Rf - reprezintă rezistenţa termică ce franează circulaţia căldurii din interior spre exterior; Cm - reprezintă capacitatea calorică a cavităţii de măsurare; Ca - reprezintă capacitatea calorică a interiorului cuptorului; Ce - reprezintă capacitatea calorică exterioară presupunându- se a fi infinită. θm, θa, θe - reprezintă temperaturile din interiorul şi exteriorul cuptorului şi din cavitatea de măsurare; Se urmăreşte: Reglarea temperaturi automată a unui cuptor electric, având montat şi un ventilator. - 1 -

Transcript of Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

Page 1: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

Cap 1. Introducere

Considerăm sistemul de reglare a temperaturii prezentat în figura de mai jos:

Fig. 1.1 Sistemul procesului

Mărimile date în proces sunt:• Rm - reprezintă rezistenţa termică ce franează circulaţia căldurii din interiorul cuptorului

către cavitatea de măsurare;• Ra - reprezintă rezistenţa termică ce franează circulaţia căldurii pornind de la surasa de

căldură până în interiorul cuptorului;• Rf - reprezintă rezistenţa termică ce franează circulaţia căldurii din interior spre exterior;• Cm - reprezintă capacitatea calorică a cavităţii de măsurare;• Ca - reprezintă capacitatea calorică a interiorului cuptorului;• Ce - reprezintă capacitatea calorică exterioară presupunându-se a fi infinită.• θm, θa, θe - reprezintă temperaturile din interiorul şi exteriorul cuptorului şi din cavitatea

de măsurare;

Se urmăreşte:

• Reglarea temperaturi automată a unui cuptor electric, având montat şi un ventilator.• Măsurarea temperaturii se face printr-un senzor şi un amplificator operaţional .• Căldura ce este produsă în incintă este alimentată de un amplificator de curent continuu.• Ventilatorul functionează în funcţie de datele trimise de senzorul de temperatură aflat în

incintă.

Datele problemei:

- 1 -

Page 2: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

Cap 2. Modelare

Modelul matematic al unui proces se defineşte ca fiind sistemul de ecuaţii şi inecuaţii apt să descrie în mod corect interdependenţele din variabilele procesului.

Un model matematic utilizează notaţii simbolice şi structuri matematice de tipul ecuaţiilor algebrice, ecuaţiilor diferenţiale etc. pentru a reprezenta un sistem. Pe scurt, un model matematic este un model care reprezintă un sistem prin relaţii matematice. Într-o definiţie mai dezvoltată, un model matematic este o reprezentare matematică abstractă (prin relaţii matematice) a unui obiect (o piesă, un produs, o maşină, o organizaţie etc.), a unui proces (proces de fabricaţie specific sau proces de afaceri) sau a unui concept, această reprezentare matematică fiind utilizată pentru analiză şi planificare. Modelele matematice se folosesc în ştiinţele naturii, în discipline inginereşti, în ştiinţe sociale etc.

Considerăm schema electrică a cuptorului :

Unde: iar .

Sistemul este descris de relaţiile:

Aplicăm transformata Laplace şi se obţine expresia lui θa în funcţie de celelalte variabile:

Temperatura masurată de traductorul de temperatură în incinta cuptorului este:

Iar procesul final este dat de sistemul :

- 2 -

CVKQ 1 mC VKV 2

Q

aR

aC

mRm

mCeC

e

Fig 2.1 Schema electrică a cuptorului

Page 3: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

Din relaţiile de mai sus rezultă procesul descris de următoarea schemă funcţională:

Aplicând datele problemei sistemul procesului devine:

Funcţia de transfer va arăta de forma:

Iar reprezentarea structurală a procesului:

Programul în Matlab pentru realizarea funcţiei de transfer şi răspunsul sistemului la o intrare de tip treaptă este următorul:

k1=150; k2=0.2;ra=0.02; rm=3.5; rf=0.15;ca=4000; cm=20;tetam=rm*cm; tetafm=rf*cm; tetafa=rf*ca;b0=k1*k2*rf/(rf*rm*cm*ca);a0=1/(rf*rm*cm*ca);a1=1/(rm*cm);

- 3 -

Fig. 2.2 Schema functională a procesului

se

fR

1

1K+

+ sT1

sa sT2

sm2K

sVm

Page 4: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

a=[0 1; -a0 -a1]; b=[0; b0]; c=[1 0]; d=0;[num,den]=ss2tf(a,b,c,d,1);sys=tf(num,den);figure(1)printsys(num,den);step(sys)title('Functia de transfer');grid;

Fig. 2.3 Graficul fincţiei de transfer

Schema funcţională din Fig. 2.2 reprezentată în Simulink este de forma:

Fig. 2.4 Schema functionala a procesului în simulink

Iar răspunsul acesteia este:

___ răspunsul la treaptă unitară___ răspunsul după Tf1___ răspunsul după Tf2___ răspunsul final

- 4 -

Page 5: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

Fig. 2.5 Raspunsul la treapta al schemei funcţionale

Cap 3. Determinarea caracteristicilor de frecvenţă Bode

Caracteristicile Bode reprezintă o metoda aproximativă de trasare rapidă a caracteristicilor de frecvenţă ( a dependenţelor modulului şi fazei de frecvenţa semnalului prelucrat).

Metoda se bazează pe folosirea funcţiei logaritmice, iar modulul şi faza se reprezintă în funcţie de logaritmul frecvenţei.

• Marginea de amplitudine Ma – reprezintă inversa amplitudinii când faza atinge -180°.• Marginea de fază Mφ – reprezintă diferenţa dintre faza sistemului când amplitudinea

devine unitară şi -180 °.

Programul în matlab pentru trasarea caracteristicilor Bode:

k1=150; k2=0.2;ra=0.02; rm=3.5; rf=0.15;ca=4000; cm=20;tetam=rm*cm; tetafm=rf*cm; tetafa=rf*ca;b0=k1*k2*rf/(rf*rm*cm*ca);a0=1/(rf*rm*cm*ca);a1=1/(rm*cm);a=[0 1; -a0 -a1]; b=[0; b0]; c=[1 0]; d=0;%determinarea numitorului si numaratorului functiei de transfer[num,den]=ss2tf(a,b,c,d);%crearea vectorului de frecventaw=logspace(-1,2,100);%obtinerea amplitudinii si fazei pentru iesire%trasarea caracteristicilor bodefigure(1)bode(num,den,w);grid;

- 5 -

Page 6: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

Fig. 3.1 Caracteristicile Bode

Deoarece se generează un vector de 100 de puncte, pe o scară logaritmică de la 10ֿ¹ până la 10², nu putem observa marginea de fază şi marginea de amplitudine, aşa că vom schimba scara logaritmică, şi vom scrie w=logspace(-5,10,100) în loc de w=logspace(-1,2,100) pentru a putea observa mai bine marginile.

Fig. 3.2 Caracteristicile bode pe o scara logaritmică mai mare

In continuare vom determina marginile de câştig şi de fază. In acest scop am adăugat la programul Matlab anterior următoarea secvenţa de program:

[mag,phase]=bode(num,den,w); %calculează răspunsul în frecvenţă [Gm,Pm,Wcg,Wcp] = margin(mag,phase,w) % calculează Ma şi Mf şi pulsaţiile lor

- 6 -

Page 7: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

Si am obţinut răspunsurile:

Gm = 4.1155e+015 – marginea de amplitudine (câştig)Pm = 74.7073 – marginea de fazăWcg = 6.6404e+005 – pulsaţia corespunzatoare marginii de câstigWcp = 0.0072 – pulsaţia corespunzatoare marginii de fază

Cap 4. Proiectarea sistemului automat cu ajutorul locului rădăcinilor

Metoda locului rădăcinilor este una dintre cele mai răspândite metode de analiză şi sinteză a sistemelor de reglare automată liniare fără timp mort. Aceasta oferă un procedeu simplu de stabilire a rezultatului modificării unui anumit parametru, al sistemelor de reglare automată liniare, asupra spectrului polinomului sau caracteristic, conducând la câte un loc geometric pentru imaginea fiecarei componente a spectrului, adică la câte un loc geometric pentru fiecare rădăcină. Ansamblul acestora se numeşte locul rădăcinilor (LR).

Locul rădacinilor unei funcţii de transfer în circuit deschis este un plot al locaţiilor tuturor polilor posibili în circuit închis , cu elementul proporţional K şi feedback unitar.

Pentru ca sistemul să fie stabil , polii trebuie să fie mereu situaţi în semiplanul stâng.Pentru a determina locul rădăcinilor , folosim comanda rlocus din Matlab.

k1=150; k2=0.2;ra=0.02; rm=3.5; rf=0.15;ca=4000; cm=20;tetam=rm*cm; tetafm=rf*cm;tetafa=rf*ca;b0=k1*k2*rf/(rf*rm*cm*ca);a0=1/(rf*rm*cm*ca);a1=1/(rm*cm);a=[0 1; -a0 -a1]; b=[0; b0]; c=[1 0]; d=0;[num,den]=ss2tf(a,b,c,d,1);sys=tf(num,den);figure(1)rlocus(sys);

Fig. 4.1 Polii obţinuţi în buclă închisă fără regulator

- 7 -

Page 8: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

Cap 5. Proiectarea în spaţiul stărilor a unui LQR(Linear-quadratic regulator)

Termenul LQ este o prescurtare pentru regulatorul liniar optimal, cu indice de performanţă pătratic. Regulatorul LQ este cel mai important rezultat al controlului modern în abordare de stare.

La LQR performanţa este estimată cu un indicator de performanţă scalar de forma:

Unde R si Q sunt matrici simetrice pozitiv semidefinite sau pozitiv definite. Q>=0 si R>0.

În Matlab:K=lqr(A,B,Q,R) - rezolvă problema regulatorului LQ liniar în timp continuu; Calculăm matricea K a amplificărilor optimale de pe reacţie de la stare astfel încat legea de

control de la stare să minimizeze J care este afectat ecuatiei cu constrangeri . Trebuie să se determine K=[k1 k2 k3 k4] astfel incat IP-ul sa fie minim. In acest caz q11 e

suficient de mare comparativ cu q22, q33 si R aleşi .

Construirea controleruluiMatricile sistemului sunt:

Sistemul poate fi reprezentat astfel :

Fig. 5.1 Alta reprezentare a sistemului

Se doreşte construirea unui controler astfel încat la setarea unei referinţe de temperatură, cuptorul să ajungă şi să menţină acea temperatură.Primul pas către acest scop al construirii unui controler este determinarea polilor în buclă deschisă ai sistemului.Pentru determinarea polilor se foloseşte comanda eig din Matlab poli=eig(a) de unde obţinem polii:

- 8 -

Page 9: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

Observăm că ambii poli sunt în semiplanul stâng – deci sistemul este stabil.

Pasul urmator este presupunerea că se pot măsura stările şi gasirea vectorului K ce determină legea de control.

Luăm cazul folosit la locul rădăcinilor, cel în care R=0.01 iar

Elementul din poziţia (1,1) este folosit pentru a măsura temperatura.Pentru a determina controlerul , creăm în Matlab urmatorul program:

x=100; q=[x 0;0 1]; r = 0.01; k=lqr(a,b,q,r); Ak = [(a-b*k)]; Bk = [b]; Ck = [c]; Dk = [d]; T=0:0.01:400; U=0.2*ones(size(T)); [x]=lsim(Ak,Bk,Ck,Dk,U,T); plot(T,x) legend('Temperatura')

Se obţine vectorul şi răspunsul sistemului la treaptă folosind controlerul LQR:

Fig. 5.2 Răspunsul sistemului la treaptă folosind controlerul LQR

Se observă ca procesul are un timp de stabilizare sub 150 secunde, acceptabil pentru un proces lent.

Pentru proiectarea unui regulator liniar optimal pentru un indice de performanţă pătratică vom utiliza următorul program Matlab:

- 9 -

Page 10: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

k1=500; k2=0.5;ra=0.09; rm=8; rf=0.1;ca=8000; cm=90;tetam=rm*cm; tetafm=rf*cm; tetafa=rf*ca;b0=k1*k2*rf/(rf*rm*cm*ca);a0=1/(rf*rm*cm*ca);a1=1/(rm*cm);a=[0 1; -a0 -a1]; b=[0; b0]; c=[1 0]; d=0;%determinarea numitorului si numaratorului functiei de transfer[num,den]=ss2tf(a,b,c,d);q=[100 0;0 1]; r=[0.01];k=lqr(a,b,q,r);k1=k(1); k2=k(2);aa=a-b*k; bb=b*k1; cc=c; dd=d;t=0:0.01:7;%Obtinerea raspunsului sistemului automatizat LQR[y,x,t]=step(aa,bb,cc,dd,1,t);subplot(2,1,1)plot(t,y);grid;title('Raspunsul indicial al sist automatizat optimal LQR');xlabel('t sec');ylabel('iesirea y');%Obtinerea curbelor x1, x2 functie de timpsubplot(2,1,2)plot(t,x);grid;title('Curbele x1, x2 functie de timp');xlabel('t sec');ylabel('x1, x2');text(2.6,1.5,'x1');text(3,1,'x2');

- 10 -

Page 11: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

Fig. 5.3 Raspunsul indiceal al sistemului optimal LQR şi curbele x1 si x2 faţă de timp

Matlab poate afişa, având doar funcţia de transfer a sistemului, caracteristicile Bode şi locul rădăcinilor utilizând sisotool.

Fig. 5.4 Caracteristicile Bode şi locul rădăcinilor utilizând sisotool

- 11 -

Page 12: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

Cap 6. Proiectarea sistemului automat utilizand controlere PID

Un controller PID încearcă să corecteze eroarea dintre o variabilă de proces masurată şi un punct dorit (valoare dorită-setpoint) prin calcularea şi generarea la ieşire a unei acţiuni corective care poate ajusta procesul corespunzător

Algoritmul PID implică 3 parametri separaţi: Valorile Proporţională , Integratoare, Derivativă. - Valoarea Proporţională – determină răspunsul la eroarea curentă.- Cea Integratoare – determină răspunsul bazat pe suma erorilor recente .- Componenta Derivatoare – determină răspunsul bazat pe rata cu care eroarea s-a schimbat în timp.

Suma acestor 3 acţiuni, este folosită pentru a ajusta procesul, printr-un element de acţionare: poziţia unei valve, sau alimentarea unui element de încălzire (ex: cuptor).

Prin ajustarea acestor 3 constante în algoritmul de control PID, controllerul poate furniza o reglare precisă, în cadrul unor limite stabilite.

Funcţia de transfer a algoritmului PID are forma:

Unde: Kp= componenta proportională Ki= componenta integratoare Kd= componenta derivatoare

Schema generală de implementare a acestui controler este:

Fig. 6.1 Schema generală de implementare a controlerului PID

Nu toate procesele au nevoie de toate componentele Regulatorului PID. De obicei pentru procesele :

– Lente - se foloseşte un regulator PI – Rapide - se foloseşte un regulator de tip PD

Procesul ales ca subiect al acestei lucrari este un cuptor ,prin natura componentelor de incalzire este un proces lent.

Sistemele de reglare automată a temperaturii sunt printre cele mai utilizate atât în economie cât şi în aplicaţii casnice. Din punct de vedere al destinaţie sistemele de reglare automată a temperaturii pot fi sisteme pentru instalaţii frigorifice sau sisteme pentru instalaţii de încălzire.

În multe situaţii, schemele pentru măsurarea temperaturii sunt incluse în bucle de reglare a temperaturii pentru incinte termostate. Dacă încălzirea se face electric, nu este indicat ca alimentarea schemei de măsurare să se facă de la aceeaşi sursă de putere ca şi rezistorul de

- 12 -

Page 13: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

încălzire, deoarece pot apare cuplaje parazite importante, care măresc histerezisul temperaturii reglate. În acest caz este indicat ca alimentarea pentru încălzire să se realizeze în curent alterenativ, iar alimentarea schemei de măsurare în curent continuu.

În instalaţiile termice la care timpul mort este mare, este necesară utilizarea sistemelor de reglare cu regulator PID sau PI. În unele situaţii, când timpul mort este foarte mare (Tm > T), se impune utilizarea unor regulatoare speciale (cu acţiune prin impulsuri).

Regulatoarele folosite la reglarea temperaturii sunt de tip PI şi PID. La regulatoarele PI se anulează eroarea staţionară la intrare treaptă, însă apare un suprareglaj mai mare decât la regulatorul P, şi la o valoare mare a timpului tranzitoriu tr.

Pentru proiectarea regulatorului realizăm urmatoarea schemă de reglare în buclă închisă:

Fig. 6.2 Schema de reglare în buclă închisă

unde: - este funcţia de transfer pentru regulatorul clasic;

- este funcţia de transfer a părţii fixate.

Funcţia de transfer în buclă închisă este:

(1)

In general funcţia de transfer în buclă închisă de ordinul II este de forma:

(2)

Deoarece funcţia de transfer a părţii fixate are forma (3) atunci din relaţiile (2) şi

(3) obţinem:

(4)

Tipic alocarea celor 3 poli doriţi se face astfel: se aleg 2 poli principali care vor influenţa în cea mai mare masură răspunsul sistemului rezultant şi un al treilea pol secundar a cărui contribuţie sa fie aproape neglijabilă. In acest caz comportamentul sistemului rezultant de ordinul III va fi foarte asemanator cu cel al unui sistem de ordinul II. Prin urmare polii principali se pot alege prin impunerea factorului de amortizare şi a pulsaţiei naturale dorite (omega). In ceea ce priveşte cel de-al treilea pol , pentru ca influenţa lui să fie cât mai mică, se va plasa pe axa reală negativă la o distanţă mult mai mare faţă de origine , comparativ cu polii principali: s3=-α·ω.In concluzie numitorul dorit pentru (4) este:

- 13 -

+

- sH R sH F

Page 14: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

(5)Si prin egalarea celor 2 polinomi se obţine un sistem de 3 ecuaţii cu soluţia:

(6)

Nota: Coeficienţii KP, KI, KD trebuie sa fie mai mari sau egali cu 0. Dacă în urma procesului de acordare KP sau KD rezultă negativi, trebuie impusă o bandă de trecere dorită ω mai mare.

Proiectarea în Matlab:

k1=150; k2=0.2;ra=0.02; rm=3.5; rf=0.15;ca=4000; cm=20;ce=inf;num=[k1*k2*rf]den=[rf*rm*cm*ca rm*cm+rf*cm+rf*ca 1]vm=tf(num,den)Kp=20;Ki=0.04;Kd=400;contr=tf([Kd Kp Ki],[1 0])sys_cl=feedback(contr*vm,1)figure;step(sys_cl);grid;figure;dist_cl=feedback(vm,contr)step(dist_cl); grid;

Fig. 6.3 Răspunsul regulatorului

- 14 -

Page 15: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

Cap 7. Proiectarea unui controler discret

Fie (1)

Ecuaţia de comandă, care corespunde funcţiei de transfer în domeniul timp. În acest caz procedeul de discretizare utilizează metodele numerice uzuale pentru evaluarea componentelor integrale şi derivative:

(2)

Dacă utilizăm metoda de extrapolare de ordin 0 avem:

(3)

Astfel, legea de comandă numerică pentru regulatorul PID este:

(4)

Este posibilă utilizarea altor metode numerice pentru evaluarea componenetelor I şi D, ca de exemplu:

(5)

Pentru metoda de extrapolare de ordin 1, şi

(6)

În acest caz, legea de comandă numerică pentru regulatorul PID este:

(7)

Ecuaţia (4) pentru momentul i-1 este:

(8)

Făcând diferenţa relaţiilor (4) şi (8) se obţine:

(9)

unde (10)Ecuaţia (9) este forma incrementală a legii de comandă a regulatorului PID. Dacă înlocuim şi

cu relaţia (10) avem:

(11)

şi (12)

unde (13)

Funcţia de transfer în cazul relaţiei (12) este:

- 15 -

Page 16: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

(14)

În cazul relaţiei (7) funcţia de transfer este de forma:

(15)

În structura paralelă a regulatorului, funcţia de transfer a componenatei I numerice este:

(16)

şi daca utilizăm expresia funcţiei de transfer a integratorului numeric, unde:

(17)

atunci folosim metoda Tustin de discretizare. Cu această metodă, funcţia de transfer a componenetei derivative la limita cauyala este:

(18)

Unde (19) cu (20)

Primul pas în proiectarea unui regulator discret este de a converti funcţia de transfer a sistemului din continuu în discret. Acest lucru se poate face apelând comanda c2dm cu urmatoarea sintaxa:

[Ad,Bd,Cd,Dd] = C2DM(A,B,C,D,Ts,'method')unde Ts este perioada de eşantionare iar method descrie ce tip de metodă va fi folosită pentru discretizare(zoh,foh,Tustin,etc). Alegem o perioada de eşantionare de 0.12 sec.

Programul matlab ce realizează dicretizarea este urmatorul:

k1=150; k2=0.2;ra=0.02; rm=3.5; rf=0.15;ca=4000; cm=20;ce=inf;num=[k1*k2*rf];den=[rf*rm*cm*ca rm*cm+rf*cm+rf*ca 1];vm=tf(num,den);Ts=531/(0.46*2)*1/10;cuptor_d=c2d(vm,Ts,'zoh'); [y,t] = step(cuptor_d,3000);stairs(t,y);ylabel('grade(C)');xlabel('time(sec)');

După rulare obţinem: Transfer function: 0.1333 z + 0.09805

- 16 -

Page 17: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

----------------------z^2 - 1.345 z + 0.3966

Si răspunsul sistemului discret în buclă deschisă:

Fig. 7.1 Răspunsul sistemului discret în buclă deschisă

Controler PID discret

Funcţia de transfer continuă a unui controler PID este urmatoarea

. Pentru a o discretiza considerăm transformarea biliniara :

.

Funcţia de transfer discretă devine: .

Aducând la acelaşi numitor obţinem:

.

Se vor folosi constantele PID-ului.Kp=20;Ki=0.04;Kd=400;

num_pidz = [Kp+(Ki*Ts*0.5)+((2*Kd)/Ts) (Ki*Ts)-(4*(Kd/Ts)) - Kp+(Ki*Ts*0.5)+((2*Kd)/Ts)];den_pidz = [1 0 -1];

contr_z=tf(num_pidz,den_pidz,Ts);cl_z=feedback(contr_z*cuptor_d,1);

- 17 -

Page 18: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

[y,t] = step(cl_z,3000);stairs(t,y)ylabel('grade(C)');xlabel('time(sec)')

Raspunsul sistemului devine :

Fig. 7.2 Răspunsul sistemului după aplicarea controlerului discrert PID

După cum se poate observa din figura, sistemul în buclă inchisa este instabil. În acest caz este bine de determinat locul rădăcinilor.

rlocus(contr_z*cuptor_d)

- 18 -

Page 19: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

Fig. 7.3 Locul rădăcinilor

Din figură se observă că sistemul este instabil deoarece are un pol înafara cercului unitate. Acest pol este al regulatorului PID si pentru a imbunataţi stabilitatea sistemului trebuie sa proiectăm altfel regulatorul. Vom anula zeroul sistemului prin înlocuirea polului -1 cu valoarea zeroului. Pentru a afla valoarea zeroului utilizam zero(cuptor_d) si obtinem : -0.7355

Programul Matlab este:

den_z=poly([1 --0.7355]);contr_z=tf(num_pidz,den_z,Ts); K=0.1;sys_cl = feedback(K*contr_z*cuptor_d,1);step(sys_cl)

Fig. 7.4 Răspunsul în buclă închisă

Se observa ca toate performantele impuse au fost satisfacute.

Cap 8. Proiectarea unui controler fuzzy

Pentru a realiza acest controller utilizăm editorul fuzzy din Matlab, care poate fi accesat cu comanda fuzzy din linia de comandă a programului principal. Cu ajutorul acestui editor implementăm un sistem cu 2 intrări (eroarea şi derivata erorii) şi o singura ieşire, fiind comanda în tensiune dată rezistenţei cuptorului.

Fereastra principală a editorului fuzzy, având deja modificările menţionate mai sus arată astfel:

- 19 -

Page 20: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

Fig. 8.1 Fereastra principală a editorului fuzzy

Prima intrare, eroare regulatorului, denumită eroare va avea urmatoarele funcţii de apartenenţă cu intervalul erorii între -100 si 100. Am folosit gaussmf deoarece contribuie la furnizarea unei comenzi mai netede decat in cazul functiilor de apartenenţă triunghiulare – trimf.NB – Negative Big (Negativ Mare)Z – ZeroPB –Positive Big (Pozitiv Mare)

Fig. 8.2 Definirea intrării eroare

- 20 -

Page 21: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

În urmatoarea imagine se defneşte a doua intrare, derivata erorii numită de noi in imagine „der-erorii” cu intervalul derivatei erorii intre [-10 10]

Fig.8.3 Definirea intratrii derivata erorii

Pentru definirea ieşirii sistemului, se folosesc 5 funcţii de apartenenţă în loc de 3 ca la definirea intrarillor. Ieşirea sistemului o definim pe intervalul [-50 50].Cele două funcţii de apartenenţă noi sunt: NM – Negative Medium,

PM – Positive Medium

Fig. 8.4 Definirea iesirii sistemului

- 21 -

Page 22: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

După îndeplinirea acestor etape preliminarii, am trecut la crearea setului de reguli care va fi folosit în controlarea procesului dorit. Metoda de interfaţa este MAX-MIN.Baza de reguli este formată din 9 reguli:

Fig. 8.5 Baza de regului a regulatorului fuzzy

După definirea controlerului fuzzy ne rămane de implementat o schemă în Simulink care să folosească noul fisier .fis creat .

Pentru acest proces a rezultat schema de mai jos.

Fig. 8.6 Schema procesului

După rularea schemei simulink, am obţinut urmatorul grafic.

- 22 -

Page 23: Considerăm un sistem automat de reglare a temperaturii prezentat in figura de mai jos

Fig. 8.7 Răspunsul schemei simulink, reglarea procesului cu regulatorul fuzzy

După cum putem observa controlerul fuzzy reglează destul de bine procesul.

- 23 -