当前位置:首页 > 《火电厂热工自动控制技术及应用》课程设计
统超调量减小,稳定性增加,但是Td不能过大,实际系统无法达到要求(上诉设计是理想的微分模型,所以如果实际的微分模型在Td过大时会使超调量增加,调节时间变长),若Td过小,同样超调量也增加,调节时间也较长。
四、Ziegler—Nichols整定方法。
在实际的过程控制系统中,如果数据时通过阶跃响应来获得的,
K-?s e 来近似表示,且多数控制系统可以由公式G(s)=TS?1我们可以由(表一)中给出的经验公式来设计PID控制器,如果数据是通过频域响应获得的,先画出其对应的Nyquist曲线,可以得到系统的剪切频率Wc和极限增益KC,同样,可以有(表一)给出的经验公式获得PID控制器的参数。 控制器类型 P PI PID 由阶跃响应整定 Kp Ti ? 由频率响应整定 Td 0 0 ?/2 Kp 0.5KP 0.45KP 0.6KP Ti ? Td 0 0 0.125P T/K*? 0.9T/K*? 1.2T/K*? 3*? 2*? 0.833P 0.5P (表一)
(1) 设想对被控对象(开环系统)施加一个阶跃信号,通过实验方法,测出其相应信号,如下图所示,则输出信号可由图中的形状近似确定参数K(静态放大系数),?(l)(滞后时间),和Tm(时间
常数),获得上述参数后就可以根据表一得出控制器的参数。
e(t)Y(∞)1Y0ι图6.7图中L表示?Tm图6.8 ,Tm表示T 。
1-?s e举例:某个控制系统的对象参数为:G(s)=15s?1 ,
求取其P、PI、PID 控制的响应曲线。 Matlab程序如下: K=1; T=15; tao=5; num0=1; den0=[15 1];
[num1,den1]=pade(tao,3); %生成纯延迟环节的3阶近似传递函数模型 num=conv(num0,num1); den=conv(den0,den1);
G=tf(num,den); %生成开环传递函数 s=tf('s'); %定义拉普拉斯变量因子 %P控制其设计 PKp=T/(K*tao); GK1=PKp*G;
sys1=feedback(GK1,1,-1);
step(sys1,'k') %求p控制作用下系统单位阶跃响应,线形为黑色连线 gtext('P') pause hold on %PI控制器设计 PIKp=0.9*T/(K*tao); PITi=3*tao;
Gc2=PIKp*(1+1/(PITi*s)); GK2=Gc2*G;
sys2=feedback(GK2,1,-1);
step(sys2,'b--') %求PI控制作用下系统单位阶跃响应,形为蓝色虚线 gtext('PI') pause hold on
%PID控制器设计 PIDKp=1.2*T/(K*tao); PIDTi=2*tao; PIDTd=0.5*tao;
Gc3=PIKp*(1+1/(PITi*s)+PIDTd*s); GK3=Gc3*G;
sys3=feedback(GK3,1,-1);
step(sys3,'r-') %求PID控制作用下系统单位阶跃响应,线形为红色实线 title('P , PI , PID控制单位阶跃响应') xlabel('时间')
ylabel('幅值'),grid,gtext('PID')
得到如下图形:
结论:通过图形,我们可以清楚的看出,采用PID控制可以快速、准确、稳定的对输入的阶跃信号进行控制。所以通过Ziegler—Nichols整定方法我们可以得到较好的控制曲线,符合课设要求。 五、通过matlab中的simulink来进行系统的参数整定。
利用simulink进行参数整定更加的有效,而且方便快速。 首先进行PID控制器的设计。
(1)通过模块的拖拽构成典型的PID控制器。如下所示
共分享92篇相关文档