|
SISTEM DE REGLARE AUTOMATA A UNUI SISTEM DE ORDINUL I
Sistem de reglare automata a unui sistem de ordinul I cu ajutorul unui bloc PI cu variabile introduse de la consola.
r u(t) y
_
unde :
cu Ti=constanta de integrare
kr=factor de acord al regulatorului
Hf(s)=functia de transfer a procesului
Hr(s)=functia de transfer a regulatorului.
Program MATLAB:
Kr=input('Kr=');
Ti=input('Ti=');
Kf=input('Kf=');
Tf=input('Tf=');
np=[Kr*Ti Kr];
dp=[Ti 0];
ni=[Kf];
di=[Tf 1];
[nd,dd]=series(np,dp,ni,di);
[nc,dc]=cloop(nd,dd,-1);
t=0:50;
y=step(nc,dc,t);
plot(t,y);
title('Sistem de reglare automata');
xlabel('Timp');
ylabel('Iesire');
Obs. :Variabilele "[nd dd]" reprezinta numaratorul, respectiv numitorul functiei de transfer.
Graficul sistemului este reprezentat pentru valorile:
kr=2;
Ti=10;
kf=5;
Tf=5.
Aceeasi problema ca mai sus , cu exceptia faptului ca se vor reprezenta pe acelasi grafic 4 variabile ce sunt definite in vectorul "krv=[1 2 5 7]",kr ,Ti ,kf ,Tf sunt aceleasi ca la problema anterioara.
Sistem de reglare automata - preluare date de la tastatura.
Program MATLAB:
Kr=input('Kr=');
Ti=input('Ti=');
Kf=input('Kf=');
Tf=input('Tf=');
culoare=['c' 'm' 'r' 'g'];
ni=[Kf];
di=[Tf 1];
t=0:20;
krv=[1 2 5 7];
for i=1:4;
np=[krv(i)*Ti 1];
dp=[Ti 0];
[nd dd]=series(np,dp,ni,di);
[nc dc]=cloop(nd,dd,-1);
y=step(nc,dc,t);
plot(t,y,culoare(i));
title('Sistem de reglare automata');
xlabel('Timp');
ylabel('Iesire');
hold on;
end;
Pentru problema nr. 2 sa se gaseasca raspunsul la perturbatie.
Program MATLAB:
Kr=input('Kr=');
Ti=input('Ti=');
Kf=input('Kf=');
Tf=input('Tf=');
culoare=['c' 'm' 'r' 'g'];
ni=[Kf];
di=[Tf 1];
t=0:20;
krv=[1 2 5 7];
for i=1:4;
np=[krv(i)*Ti 1];
dp=[Ti 0];
[nd,dd]=series(np,dp,ni,di);
[nc,dc]=cloop(nd,dd,-1);
y=step(nc,dc,t);
plot(t,y,culoare(i));
title('Sistem de reglare automata si raspunsul la perturbatie(alb)');
xlabel('Timp');
ylabel('Iesire');
hold on;
ncv=[Ti*Tf 0];
dcv=[Ti*Tf Ti*(1+Kr) Kr*Kf];
yv=step(ncv,dcv,t);
plot(t,yv,'b');
end;