PID控制器设计40249(10页).doc
-题目:应用不同的算法给下面各个模型设计PID控制器,并比较各个控制器下闭环系统的性能Ga(s)=1/(s + 1)3Gb(s)=1/(s + 1)5Gc(s)=(-1.5 + 1)/(s + 1)3试分别利用整定公式和PID控制器设计程序设计控制器,并比较控制器的控制效果。如果采用离散PID控制器,试比较一般离散PID控制器与增量式PID控制器下的控制效果。解:Ga(s)=1/(s + 1)3工程设计法数学模型如下图1>比例单独作用 G = tf(1,1 3 3 1);Kp = 1:1:5;for i = 1:length(Kp) Gc = feedback(Kp(i)*G,1); step(Gc); hold on end>> gtext('1 Kp = 1'),>> gtext('2 Kp = 2'),>> gtext('3 Kp = 3'),>> gtext('4 Kp = 4'),>> gtext('5 Kp = 5'), 2>积分单独作用G = tf(1,1 3 3 1);Kp = 1; >> Ti = 1 :1:5; for i = 1:length(Ti) Gc = tf(Kp*Ti(i) 1,Ti(i) 0); Gcc = feedback(G*Gc,1); step(Gcc); hold on end>> gtext('1 Ti = 1'),>> gtext('2 Ti = 2'),>> gtext('3 Ti = 3'),>> gtext('4 Ti = 4'),>> gtext('5 Ti = 5'), 3>微分单独作用G = tf(1,1 3 3 1);Kp = 1;Ti = 1;Td = 1:1:5; for i = 1:length(Td) Gc = tf(Kp*Ti*Td(i) Ti 1,Ti 0); Gcc = feedback(G*Gc,1); step(Gcc); hold on endgtext('1 Td = 1'),>> gtext('2 Td = 2'),>> gtext('3 Td = 3'),>> gtext('4 Td = 4'),>> gtext('5 Td = 5'),PID共同作用下,经SIMULINK仿真取Kp=2,Ti=0.8,Td=1,单位阶跃响应曲线如下Gb(s)=1/(s + 1)5过程系统一阶模型近似s = tf('s');G = 1/(s + 1)3;K1,L1,T1,G1 = getfolpd(1,G); K3,L3,T3,G3 = getfolpd(3,G);%>> step(G) %受控对象蓝线>> holdCurrent plot held>> step(G1)%由响应曲线识别一阶模型绿线>> step(G3)%基于传递函数的辨识方法红线Ziegle-Nichols经验整定公式s = tf('s');>> G = 1/(s + 1)3;>> Kc,b,wc,d = margin(G);>> Tc = 2*pi/wc;>> Kp = 0.4*Kc;>> Ti = 0.8*Tc;>> Kp,Ti;>> G1 = Kp*(1 + tf(1,Ti,0);%PI>> Kp = 0.6*Kc;>> Ti = 0.5*Tc;Gb(s)=1/(s + 1)5过程系统一阶模型近似Ziegle-Nichols经验整定公式Gc(s)=(-1.5 + 1)/(s + 1)3过程系统一阶模型近似Ziegle-Nichols经验整定公式第 10 页-