
Диплом / Приложение5
.docПриложение №5
Листинг программы для расчета оптимальных параметров настройки ПИ-регулятора
tau=23.4;%величина запаздывания объекта
Tob=97.7;%постоянная времени объекта
Kob=6;%коэффициент передачи объекта
Wob=tf(Kob,[Tob 1],'td',tau);%передаточная функция объекта в LTI форме
nyquist(Wob);%АФЧХ объекта
disp('Press any key');pause;
bode(Wob)%АЧХ и ФЧХ объекта
disp('Press any key');pause;
%=-=-=-=-=Расчет ОПН ПИ-регулятора=-=-=-=-=-
m=0.477;%степень колебательности
w=[0:0.002:0.05];%Частота для расчета ОПН ПИ-регулятора
Wobm=Kob./(Tob*((1i-m)*w)+1).*exp(-tau*((1i-m)*w));%Расширенная передаточная функция объекта
[TDDDD ST]=size(w);%определения кол-ва расчетных точек
c1=0;%Обнуление переменных
C1=((-m.*imag(Wobm)-real(Wobm))./(abs(Wobm).*abs(Wobm)));%Вычисление Kp
C0=0;%Обнуление переменных
for jj=1:ST%=-=-=-=-Цикл для вычисления Кр/Ти
ia=imag(Wobm(jj));
if (imag(Wobm(jj))<=0)
C0(jj)=((-(m*m+1).*imag(Wobm(jj)).*w(jj))./(abs(Wobm(jj)).*abs(Wobm(jj))));
else
C0(jj)=((-(m*m+1).*imag(Wobm(jj)).*w(jj))./(abs(Wobm(jj)).*abs(Wobm(jj))));
end;
end;%=-=-=-=-=-=-=-конец цикла
plot(C1,C0,'g');grid on;%вывод результата расчета ОПН ПИ-рег.
[INN]=ginput;%Интерактивный ввод ОПН ПИ-регулятора с графика
C0=INN(1,2);
C1=INN(1,1);
KpPI=C1;
TuPI=KpPI/C0;
disp('Kp=');
disp(KpPI);%Вывод на экран введенных значений Кр
disp('Tu=');
disp(TuPI);%Вывод на экран введенных значений Ти
%=-=-=-=-=-=-Построение переходного процесса замкнутой системы автоматического...
%...регулирования температуры горячего дутья доменной печи
Wpi=tf(KpPI*[TuPI 1],[TuPI 0]);%пер. ф-я ПИ-рег в LTI форме
sys=append(Wpi,Wob);%агрегатированная модель без перекрестных связей
MATRIX=[2 1;1 -2];%матрица связей
inputs=[1];%матрица внешних входов
outputs=[2];%матрица внешних выходов
sysc=connect(sys,MATRIX,inputs,outputs);%ss-модель с учетом перекрестных связей между блоками
step(sysc);%Вывод на экран переходного процесса замкнутой системы
%==========Оценка качества пер. процесса========================
[y x]=step(sysc);
[si si2]=size(y);
[A1 c1]=max(y);
[A2 c2]=min(y(c1:1:si));
[A3 c3]=max(y(c1+c2:1:si));
sigma=(abs(A2-y(si))/(A1-y(si)))*100%перерегулирование
psi=((A1-y(si))-(A3-y(si)))/(A1-y(si))%степень затухания
FIdin=(A1-y(si))%макс. дин. ошибка
YY=y-y(si);
delta=0.05*y(si);
zz=abs(YY)-delta;
[zn zx]=min(abs(zz));
Treg=x(zx)%Время регулирования !!!!Премерно ---> уточнить с помощью ltiview