lucrare de laborator 5 reglarea standard …ac.upg-ploiesti.ro/cursuri/snr/l_aer5.pdf · de reglare...
TRANSCRIPT
LUCRARE DE LABORATOR
5
REGLAREA STANDARD BAZATA PE MODEL
ANALIZA SI PROIECTARE IN MEDIUL MATLAB
1. Obiectivele lucr rii
Lucrarea urm re te urm toarele obiective:
- cunoa terea principiului regl rii standard bazate pe model;
- cunoa terea performan elor regl rii standard bazate pe model;
- însu irea tehnicii de proiectare a algoritmilor de reglare standard baza i pe model.
2. Considera ii privind reglarea standard bazat pe model
La reglarea standard, bazat pe modelul procesului propriu-zis (considerat de tip
propor ional), regulatorul trebuie proiectat astfel încât, în cazul ideal, r spunsul indicial al
sistemului de reglare la referin treapt s coincid cu r spunsul indicial al procesului
normat (având factorul de propor ionalitate egal cu 1). O proprietate a regl rii standard bazate
pe model, cu importante consecin e practice, este urm toarea: La referin treapt unitar ,
semnalul de comand generat de regulator este, în cazul ideal, o func ie de tip treapt , având
valoarea egal cu inversul factorului de propor ionalitate al procesului.
Fig. 1. Scheme echivalente ale sistemului
de reglare standard bazat pe model
In cazul unui proces stabil i supraamortizat (caracterizat printr-un r spuns indicial f r
supradep ire) vom asocia procesului un model de ordinul doi i cu timp mort, cu func ia de
transfer
2)1(
)(sT
eKsH
M
sTM
M
m
. (1)
Un model de ordinul unu este prea simplist i nu eviden iaz iner ia în r spuns a procesului, iar
un model de ordinul trei sau mai mare este prea complicat i nu aduce avantaje semnificative.
Determinarea experimental a celor trei parametri ai modelului se face pe baza
r spunsului indicial al procesului, a a cum reiese din figura 2. Pentru constanta de timp a
modelului MT se recomand alegerea valorii 6/trT , unde trT este durata estimat a r spunsului
procesului la o intrare de tip treapt . Dac procesul este de faz neminim , adic se
caracterizeaz printr-un r spuns indicial care, la început, are semn contrar semnului final,
atunci timpul mort mT va îngloba i intervalul de timp în care r spunsul indicial are semnul
contrar.
Fig. 2. Determinarea experimental a modelului procesului
Modelului (1) îi corespunde modelul discret
21
12
)1(
)1()(
pz
zpKzH
mlM
M , (2)
unde2)(
2
11
1
MM
T
T
T
T
T
Tep M i
mm T
Tl (T - perioada de e antionare).
Regulatorul are func ia de transfer
12221
221
)1(21
21
)()1()(
mlMMM
Rzpzppz
zppz
K
K
zHH
KzH (3)
i ecua iile în domeniul timpului
)2()1(2 2
211
22
21 kkk
Mlkkkk
kkk
eppeeK
Kcpcppcc
yie
m
. (4)
Regulatorul are patru parametri principali: trei parametri de model (factorul de
propor ionalitate MK , timpul mort mT i durata regimului tranzitoriu trT ) i un parametru de
acordare (factorul de propor ionalitate K ). Prin m rirea sau reducere convenabil a factorului
de propor ionalitate K , semnalul de comand generat de regulator la modificarea referin ei sau
la ac iunea perturba iei asupra procesului devine mai puternic, respectiv mai slab.
Gradul de precizie al modelului procesului poate fi evaluat on-line (în timpul opera iei de
reglare) prin modificarea referin ei sub form de treapt , din regim sta ionar, în cazul 1K .
Dac modelul descrie perfect dinamica procesului real, atunci forma de varia ie a semnalului de
comand )(tc este de tip treapt , iar forma de varia ie a m rimii reglate )(ty este similar cu
cea a r spunsului indicial al procesului. In practic îns , modelul asociat procesului nu este
perfect (procesul fiind de regul neliniar, cu neliniarit i mai slabe sau mai puternice), iar
modul în care semnalul de comand )(tc se abate de la forma treapt poate fi utilizat pentru
corectarea parametrilor modelului.
Varianta standard a regl rii cu model intern este aplicabil la procesele stabile
supraamortizate i la procesele instabile care pot fi stabilizate prin reac ie negativ .
3. Func ie MATLAB pentru acordarea algoritmului standard bazat pe model
Modul de acordare a regulatorului standard bazat pe model poate fi analizat i însu it în
mod interactiv cu ajutorul func iei regmods(K,T,Kp,Tm,T1,T2,T3,T4,T5). Func ia are ca
argumente de intrare factorul de propor ionalitate al regulatorului K , perioada de e antionare
T i parametrii ce caracterizeaz dinamica procesului reglat - considerat liniar, de ordinul patru
i cu timp mort:
)12)(1)(1(
)1()(
422
321
5
sTsTsTsT
esTKsH
sTp
m
. (5)
In cazul 43 TT , r spunsul indicial al procesului con ine o component de tip oscilant.
Dac 5T este suficient de mare, atunci r spunsul indicial prezint supradep ire, iar dac 5T
este negativ, atunci r spunsul indicial are, la început, semn opus celui final.
Pentru a realiza o acordare a regulatorului de tip interactiv, func ia regmods apeleaz la
facilit ile modului DEBUG din mediul MATLAB. Astfel, în urma afi rii grafice a
r spunsului indicial al procesului, func ia solicit introducerea parametrilor adecva i ai
modelului de ordinul doi al procesului, adic a parametrilor de acordare ini iali.
function[]=regmods(K,T,Kp,Tm,T1,T2,T3,T4,T5)
% K - factorul de prop al regulatorului; T – perioada de esantionare
%
% Kp(T5*s+1)exp( Tm*s)
% PROCES: H(s) = ------------------------------------------------- ,
% (T1*s+1)(T2*s+1)(T3^2*s^2+2T4*s+1)
%
dbstop 23;
s1=tf(1,[T1 1]); s2=tf(1,[T2 1]); s3=tf([T5 1],[T3*T3 2*T4 1]);
t=0:T:Tm+3.6*(T1+T2+2*T4); t0=0:T/10:Tm+3.6*(T1+T2+2*T4);
p0=Kp*s1*s2*s3; p0.iodelay=Tm;
pd=c2d(p0,T);
y0=step(p0,t0);
hold off; plot(t0,y0,'r'); grid on;
TITLE('RASPUNSUL INDICIAL AL PROCESULUI')
disp(' ');
disp('Pe baza raspunsului indicial al procesului, introduceti linia de comanda:')
disp(' kp=**; tm=**; tp=**; dbcont')
disp(' kp-factorul de proportionalitate;')
disp(' tm-timpul mort (la procesele al caror raspuns indicial are la inceput semn opus,')
disp(' tm va ingloba si timpul in care raspunsul are semn opus);')
disp(' tp-timpul tranzitoriu (nu inglobeaza timpul mort);')
lm=round(tm/T);
T2m=tp/6; p=exp( T/T2m);
if(lm==0) p_mod=kp*(tf([0 (1 p)^2 0],[1 2*p p*p],T);
else p_mod=kp*tf([zeros(1,lm+1) (1 p)^2],[1 2*p p*p zeros(1,lm 1)],T);
end
ym=step(p_mod,t);
plot(t0,y0,'r',t,ym,'b. '); grid on; hold off;
XLABEL('RASPUNS PROCES - rosu; RASPUNS MODEL PROCES - albastru')
TITLE('RASPUNSURILE INDICIALE ALE PROCESULUI SI MODELULUI')
disp('Apasati tasta Enter pentru continuare')
pause
if(lm==0) reg=(K/kp)*tf([1 2*p p*p],[1 (1+p*p) p*p],T);
elseif(lm==1) reg=(K/kp)*tf([1 2*p p*p],[1 2*p 2*p 1],T);
else reg=(K/kp)*tf([1 2*p p*p zeros(1,lm 1)],[1 2*p p*p zeros(1,lm 2) (1 p)^2],T);
end
sra_e=1/(1+ reg*pd);
sra_c=reg*sra_e; c=step(sra_c,t); [ts,cs]=stairs(t,c);
sra_y=pd*sra_c; y=step(sra_y,t); % RASPUNS SRA LA REFERINTA TREAPTA
plot(t,y,'r',ts,cs,'b'); grid on; hold off;
TITLE('RASPUNSUL SISTEMULUI DE REGLARE LA REFERINTA TREAPTA')
XLABEL('MARIMEA REGLATA - rosu; COMANDA - albastru')
disp('Apasati tasta Enter pentru continuare')
pause
sra_y1=sra_e; y1=step(sra_y1,t); % RASPUNS SRA LA PERTURBATIE TREAPTA
sra_c1= reg*sra_e; c1=step(sra_c1,t); [ts,c1s]=stairs(t,c1);
plot(t,y1,'r',ts,c1s,'b'); grid on; hold off;
TITLE('RASPUNSUL SISTEMULUI DE REGLARE LA PERTURBATIE TREAPTA')
XLABEL('MARIMEA REGLATA - rosu; COMANDA - albastru')
In continuare vom ilustra modul de utilizare a func iei regmods, pe baza unui exemplu. S
consider m comanda
>> regmods(1,2,1.25,5,4,6,7,8,0)
La breakpoint, în fereastra grafic este afi at r spunsul indicial al procesului (curba 1 din figura
2), iar în fereastra de comenzi apare mesajul:
Pe baza raspunsului indicial al procesului, introduceti linia de comanda:
kp=**; tm=**; tp=**; dbcont
kp-factorul de proportionalitate al procesului;
tm-timpul mort (la procesele al caror raspuns indicial are la inceput semn opus,
tm va ingloba si timpul in care raspunsul are semn opus);
tp-timpul tranzitoriu al procesului (nu inglobeaza timpul mort);
Dac se introduce linia de comand
K>> kp=1.25; tm=10; tp=66; dbcont
atunci, la primul stop, în fereastra grafic vor fi reprezentate r spunsurile indiciale al procesului
i modelului (curbele 1 i 2 din figura 2), iar în fereastra de comenzi apare mesajul:
Ap sa i tasta Enter pentru continuare!
Dup ap sarea tastei Enter, va fi afi at fereastra grafic din figura 3, cu r spunsul sistemului
de reglare la modificarea treapt unitar a referin ei, iar în fereastra de comenzi apare mesajul:
Ap sa i, din nou, tasta Enter pentru continuare!
Dup ap sarea tastei Enter, va fi afi at fereastra grafic din figura 4, cu r spunsul sistemului
de reglare la modificarea treapt unitar a perturba iei.
Fig. 2. R spunsurile indiciale ale procesului (curba 1) i modelului procesului (curba 2)
Fig. 3. R spunsul indicial al sistemului de reglare la modificarea referin ei:
y - m rimea reglat , c - comanda
Fig. 4. R spunsul indicial al sistemului de reglare la modificarea perturba iei:
y - m rimea reglat , c - comanda
Pentru a pune în eviden robuste ea algoritmului în raport cu factorul de propor ionalitate
al modelului procesului, la breakpoint se vor introduce, pe rând (la dou execu ii distincte ale
func iei), liniile de comand :
K>> kp=1.5; tm=10; tp=66; dbcont
K>> kp=1.0; tm=10; tp=66; dbcont
Graficele ob inute, echivalente celor din figura 3, sunt prezentate în figura 5.
Pentru a pune în eviden robuste ea algoritmului în raport cu timpul mort al modelului
procesului, la breakpoint se vor introduce, pe rând (la dou execu ii distincte ale func iei),
liniile de comand :
K>> kp=1.25; tm=15; tp=66; dbcont
K>> kp=1.25; tm=5; tp=66; dbcont
Graficele ob inute, echivalente celor din figura 3, sunt prezentate în figura 6.
Pentru a pune în eviden robuste ea algoritmului în raport cu timpul tranzitoriu al
modelului procesului, la breakpoint se vor introduce, pe rând (la dou execu ii distincte ale
func iei), liniile de comand :
K>> kp=1.25; tm=10; tp=76; dbcont
K>> kp=1.25; tm=10; tp=56; dbcont
Graficele ob inute, echivalente celor din figura 3, sunt prezentate în figura 7.
a) b)
Fig. 5. R spunsul indicial al sistemului de reglare la modificarea referin ei:
a) pentru kp=1.5 (sau K=0,8); b) pentru kp=1.0 (sau K=1.25)
a) b)
Fig. 6. R spunsul indicial al sistemului de reglare la modificarea referin ei:
b) pentru tm=15; b) pentru tm=5
a) b)
Fig. 7. R spunsul indicial al sistemului de reglare la modificarea referin ei:
c) pentru tp=76; b) pentru tp=56
4. Con inutul si desf urarea lucr rii
Lucrarea con ine urm toarele puncte:
a) Analiza algoritmului standard bazat pe model pentru reglarea procesului cu func ia de
transfer
)11649)(16)(14(
8,0)(
2
4
ssss
esH
s
,
considerând, pe rând, perioada de e antionare 1T , 2T i 5T ;
b) Analiza algoritmului standard bazat pe model pentru reglarea procesului cu func ia de
transfer
)18)(16)(14(
)15(8,0)(
12
sss
essH
s
,
considerând perioada de e antionare 2T ;
c) Analiza algoritmului standard bazat pe model pentru reglarea procesului cu func ia de
transfer
)18)(16)(14(
)15(8,0)(
6
sss
essH
s
,
considerând perioada de e antionare 1T ;
d) Analiza algoritmului standard bazat pe model pentru reglarea procesului cu func ia de
transfer
4
10
)16(
2,1)(
s
esH
s
,
considerând perioada de e antionare 1T ;
e) Analiza algoritmului standard bazat pe model pentru reglarea procesului cu func ia de
transfer
)18)(16)(14(
)115(8,0)(
6
sss
essH
s
,
considerând perioada de e antionare 1T .
f) G si i un exemplu de proces de alt tip decât e) pentru care algoritmul de reglare
standard bazat pe model este ineficient.
In toate cazurile, analiza algoritmului standard bazat pe model se va efectua dup modelul
prezentat în paragraful anterior.
La reglarea procesului de la punctul c), timpul mort al modelului procesului trebuie s
includ i intervalul de timp în care r spunsul indicial al procesului are semn contrar semnului
final.
In cazul procesului de la punctul e), performan ele algoritmului de reglare sunt mult mai
slabe decât în celelalte cazuri. Care este explica ia acestui fapt ?
Analiza i exemplul g sit la punctul f) cu func ia regmods.