Ki:红色ki =0.01,蓝色ki =0.02,品红ki =0.05
clear all; close all; ts=0.1;
sys=tf([5],[8,1],'inputdelay',10); dsys=c2d(sys,ts,'zoh'); [num,den]=tfdata(dsys,'v');
u_1=0;u_2=0;u_3=0;u_4=0;u_5=0; y_1=0;y_2=0;y_3=0; error_1=0;error_2=0; x=[0,0,0]; for k=1:1:200
time(k)=k*ts;
yout(k)=-den(2)*y_1+num(2)*u_5; rin(k)=1;
error(k)=rin(k)-yout(k); kp=2; ki=0.02; kd=1;
du(k)=kp*x(1)+kd*x(2)+ki*x(3); u(k)=u_1+du(k);
u_5=u_4;u_4=u_3;u_3=u_2;u_2=u_1;u_1=u(k); y_3=y_2;y_2=y_1;y_1=yout(k);
x(1)= error(k)-error_1;
x(2)= error(k)-2*error_1+error_2; x(3)= error(k); error_2=error_1; error_1=error(k);
end hold on hold on
plot(time,rin,'g',time,yout,'r','linewidth',2) xlabel('time(s)') ylabel('rin,yout')
ts=0.1;
sys=tf([5],[8,1],'inputdelay',10); dsys=c2d(sys,ts,'zoh'); [num,den]=tfdata(dsys,'v');
u_1=0;u_2=0;u_3=0;u_4=0;u_5=0; y_1=0;y_2=0;y_3=0; error_1=0;error_2=0; x=[0,0,0]; for k=1:1:200
time(k)=k*ts;
yout(k)=-den(2)*y_1+num(2)*u_5; rin(k)=1;
error(k)=rin(k)-yout(k); kp=2; ki=0.02; kd=2;
du(k)=kp*x(1)+kd*x(2)+ki*x(3); u(k)=u_1+du(k);
u_5=u_4;u_4=u_3;u_3=u_2;u_2=u_1;u_1=u(k); y_3=y_2;y_2=y_1;y_1=yout(k); x(1)= error(k)-error_1;
x(2)= error(k)-2*error_1+error_2; x(3)= error(k); error_2=error_1; error_1=error(k); end hold on
plot(time,yout,'b','linewidth',2) xlabel('time(s)') ylabel('rin,yout')
ts=0.1;
sys=tf([5],[8,1],'inputdelay',10); dsys=c2d(sys,ts,'zoh'); [num,den]=tfdata(dsys,'v');
u_1=0;u_2=0;u_3=0;u_4=0;u_5=0; y_1=0;y_2=0;y_3=0; error_1=0;error_2=0; x=[0,0,0]; for k=1:1:200
time(k)=k*ts;
yout(k)=-den(2)*y_1+num(2)*u_5; rin(k)=1;
error(k)=rin(k)-yout(k); kp=2; ki=0.02; kd=3;
du(k)=kp*x(1)+kd*x(2)+ki*x(3); u(k)=u_1+du(k);
u_5=u_4;u_4=u_3;u_3=u_2;u_2=u_1;u_1=u(k); y_3=y_2;y_2=y_1;y_1=yout(k); x(1)= error(k)-error_1;
x(2)= error(k)-2*error_1+error_2; x(3)= error(k); error_2=error_1; error_1=error(k); end hold on
plot(time,yout,'m','linewidth',2) xlabel('time(s)') ylabel('rin,yout')
图像:kp=2,ki=0.1
Kp:红色kp =1,蓝色kp =2,品红kp =3
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库温度控制传递函数 - 增量式PID系数 - MATLAB仿真(2)在线全文阅读。
相关推荐: