1、mp,tf=max(y); %返回峰值及峰值时间cs=length(t); %获得稳态时间yss=y(cs); %获得稳态值sigma=100*(mp-yss)/yss; % 计算超调量tp=t(tf); %计算峰值时间%计算调节时间i=cs+1;n=0;while n=0, i=i-1;if i=1 n=1;elseif y(i)1.05*yss %判断响应值是否大于稳态值 %的1.05倍n=1;endt1=t(i);j=cs+1; j=j-1; if j=1 elseif y(i)0.95*yss %判断响应值是否小于稳态值的0.95倍 endt2=t(j); If t2t2, ts=t1
2、; elseif t2tp, if t20.8 %如果 u(k)=0.45; elseif abs(x(1)0.40 u(k)=0.40;0.20 u(k)=0.12;0.01 u(k)=0.10; if (x(1)*x(2)0)|(x(2)=0) % The rule 2=M2 u(k)=u_1+k1*kp*x(1); u(k)=u_1+0.4*kp*x(1); if(x(1)*x(2)0)|(x(1)=0) u(k)=u(k); if (x(1)*x(2)0)&(x(2)*x2_10)M2 u(k)=u_1+k1*kp*error_1; u(k)=u_1+k2*kp*error_1; if
3、 abs(x(1)=10 % Restricting the output of controller u(k)=10; if u(k)=-10 u(k)=-10; % Linear modelyout(k)=-den(2)*y_1-den(3)*y_2-den(4)*y_3+num(1)*u(k)+num(2)*u_1+num(3)*u_2+num(4)*u_3; error(k)=rin(k)-yout(k); % -return of PID paramters- 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)=er
4、ror(k); % calculating P x2_1=x(2); x(2)=(error(k)-error_1)/ts;% calculating D x(3)=x(3)+error(k)*ts; % calculating I error_1=error(k); %绘制图1plot(time,rin,b,time,yout,r %输出蓝色曲线稳态值 红色为响应曲线xlabel(time(s) %x轴为时间轴ylabel(rin,yout %y轴为响应值figure(2); %绘制图2plot(time,rin-yout, %输出稳态误差红色曲线error %y轴为稳态误差参数调节过程及实
5、验结果:Kp=0.8 ki=0 kd=0专家PID控制阶跃响应曲线图:误差响应曲线图:Kp=0.3 ki=0 kd=0Kp=0.1 ki=0 kd=0Kp=0.1 ki=0.04 kd=0Kp=0.1 ki=0.04 kd=0.9Kp=0.1 ki=0.04 kd=0.5Kp=0.1 ki=0.02 kd=0.014. 实验结论:比例系数 :作用在于加快系统的响应速度,提高系统调节精度。当系统一旦出现了偏差,比例调节立即产生调节作用以减少误差。 越大,系统响应越快,但将产生超调和振荡甚至导致系统不稳定,因此 的值不能取得过大;但如果 取值过小,过小会降低调节精度,是系统响应速度缓慢,从而延长调节时间,使系统静、动态特性变坏。积分系数 :作用在于消除系统的稳态误差,提高无差度。 越大积分速度越快,系统静差消除越快,但 过大在响应过程初期会产生积分饱和现象,从而引起响应过程出现较大超调,使动态性能变差; 过小则会使积分作用变弱,使系统的静差难以消除,过渡时间加长,不能尽快达到稳定状态,影响系统的调节精度和动态特性。微分系数 :作用在于改善系统的动态特性,反映系统偏差信号的变化率并预见偏差变化的趋势,能产生超前的控制作用,使系统的超调降低,增加系统稳定性。但 不能过大,过大则会使响应过程提前制动和延长系统调节时间,而且还会使系统的抗干扰性变差。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1