《数字PID控制器设计制作》由会员分享,可在线阅读,更多相关《数字PID控制器设计制作(14页珍藏版)》请在金锄头文库上搜索。
1、数字PID控制器设计设计任务:设单位反馈系统的开环传递函数为:设计数字PID控制器,使系统的稳态误差不大于0.1,超调量不大于20%,调节时间不大于0.5s。采用增量算法实现该PID控制器。具体要求:1.采用Matlab完成控制系统的建立、分析和模拟仿真,给出仿真结果。2.设计报告内容包含数字PID控制器的设计步骤、Matlab仿真的性能曲线、采样周期T的选择、数字控制器脉冲传递函数和差分方程形式。3.设计工作小结和心得体会。4.列出所查阅的参考资料。数字PID控制器设计报告一、设计目的1 了解数字PID控制算法的实现; 2 掌握PID控制器参数对控制系统性能的影响; 3 能够运用MATLAB
2、/Simulink 软件对控制系统进行正确建模并对模块进行正确的参数设置; 4 加深对理论知识的理解和掌握; 5 掌握计算机控制系统分析与设计方法。二、设计要求1采用增量算法实现该PID控制器。2熟练掌握PID设计方法及MATLAB设计仿真。三、设计任务设单位反馈系统的开环传递函数为:设计数字PID控制器,使系统的稳态误差不大于0.1,超调量不大于20%,调节时间不大于0.5s。采用增量算法实现该PID控制器。四、设计原理1.数字PID原理结构框图 2. 增量式PID控制算法=u(k-1)+Kpe(k)-e(k-1)+Kie(k)+Kde(k)-2e(k-1)+e(k-2)=u(k-1)+(K
3、p+Ki+Kd)e(k)-(Kp+2Kd)e(k-1)+Kde(k-2)所以u(k)=u(k)-u(k-1) =Kpe(k)-e(k-1)+Kie(k)+Kde(k)-2e(k-1)+e(k-2) =(Kp+Ki+Kd)e(k)-(Kp+2Kd)e(k-1)+Kde(k-2)整理: u(k)= Ae(k)-Be(k-1)+Ce(k-2)A= Kp+Ki+Kd B=-(Kp+2Kd ) C=Kd五、Matlab仿真选择数字PID参数 (扩充临界比例度法/扩充响应曲线法 具体整定步骤) 利用扩充临界比例带法选择数字PID参数,扩充临界比例带法是以模拟PID调节器中使用的临界比例带法为基础的一种数字
4、PID参数的整定方法。其整定步骤如下:;1) 选择合适的采样周期T;2) 在纯比例的作用下,给定输入阶跃变化时,逐渐加大比例作用Kp(即减小比例带),直至系统出现等幅震荡,记录比例增益Kc,及振荡周期Tc 。Kc成 为临界振荡比例增益(对应的临界比例带),Tc成为临界振荡周期。=1/150S3+6/25S2+37/30S+1在MATLAB下输入如下程序:num=1;den=1/150,6/25,37/30,1;sys=tf(num,den);p=20:2:45;for i=1:length(p)Gc=feedback(p(i)*sys,1);step(Gc)hold onend;gridtit
5、le(Kp变化时系统的阶跃响应曲线)axis(0,3,0,2.3)仿真阶跃响应如下图:调整参数:p=35:2:45程序如下:num=1;den=1/150,6/25,37/30,1;sys=tf(num,den);p=35:2:45;for i=1:length(p)Gc=feedback(p(i)*sys,1);step(Gc)hold onend;gridtitle(Kp变化时系统的阶跃响应曲线)axis(0,3,0,2.3)仿真阶跃响应如下图:由图像可知:当Kp在4045之间时,系统会出现等幅振荡。为进一步得到准确的Kp,调整程序参数p=40:1:45,程序如下:num=1;den=1/
6、150,6/25,37/30,1;sys=tf(num,den);p=40:1:45;for i=1:length(p)Gc=feedback(p(i)*sys,1);step(Gc)hold onend;gridtitle(Kp变化时系统的阶跃响应曲线)axis(0,3,0,2.3)仿真阶跃响应如下图:由图像进一步精确得Kc约为43时,系统出现等幅震荡,震荡周期Tc约为0.5s。扩充临界比例带法选择数字PID参数的计算公式如下表所示:3) 选择控制度。控制度的定义为数字调节器和模拟调节所对应的过度过程的误差平方积分之比,即控制度=式中,为数字调节器的控制误差;e为模拟调节器的控制误差.当控制
7、度为1.05时,数字调节器鱼模拟调节器的控制效果相当;当控制度为2时,数字调节器比模拟调节器的控制效果差一倍;在此选控制度为1.05。按选择的控制度指标及Tc,Kc实验测得值,由查表选择相应的计算公式计算采样周期:T=0.007,Kp=27,Ti=0.245,Td=0.07; =0.77,=270, Ki=0.23Tc=0.5则T=Tc*0.014=0.5*0.014=0.007; Kp=Kc*0.63=43*0.63=27.09; Ti=Tc*0.49=0.5*0.49=0.245; Td=Tc*0.14=0.5*0.14=0.07; Kp=27.09; Ki=Kp*T/Ti=27.09*0
8、.007/0.245=0.774; Kd=Kp*Td/T=27.09*0.07/0.007=270.09;六、Matlab/Simulink 控制系统建模1.控制器U(Z)=(Kp+Ki+Kd)E(Z)-(Kp+2Kd)/Z*E(Z)+Kd/Z2*E(Z)则D(Z)=U(Z)/E(Z)=(Kp+Ki+Kd)-(Kp+2Kd)/Z+Kd/Z2 =(Kp+Ki+Kd)Z2-(Kp+2Kd)Z+Kd/Z22.仿真模型图将 Kp=27.09; Ki=Kp*T/Ti=27.09*0.007/0.245=0.774; Kd=Kp*Td/T=27.09*0.07/0.007=270.09带入,得: Kp+K
9、i+Kd=27.09+0.774+270.09=297.95 Kp+2Kd=27.09+2*270.09=567.27 Kd=270.09即D(Z)=297.95*Z2-567.27*Z+270.09/Z2G0(S)=43/0.00667S3+0.24S2+1.2333S+13.输出阶跃响应曲线 Scope中得到阶跃响应曲线如下所示:4、 试凑法微调参数由阶跃响应图像可得:Y()=0.96,则稳态误差Ess=1-0.96=0.04超调量 =(1.1-0.96)/0.96*100%=14.6%调整时间Ts=0.27s系统有少量的稳态误差,则适当增大KI参数,使得KI参数由0.774变为1.774
10、; Scope中得到阶跃响应曲线如下所示:由图像可知:此时稳态误差Ess减为1-0.98=0.02,超调量=(1.1-1)/1*100%=10%,调整时间减少为Ts=0.15s,但该曲线不够平滑,调整:Kp=36.08,Ki=2.770,Kd=270.08,降低传递函数的K值为36Scope中得到阶跃响应曲线如下所示: 此时稳态误差几乎为0,调整时间Ts为0.3s,超调量为(1.05-1)/1*100%=5%,基本符合要求5. 最终PID参数及输出响应曲线当Kp=36.08 Ki=2.770 Kd=270.08时最终输出阶跃响应曲线为: 七、 设计心得体会通过这次设计,重新认识了计算机控制系统
11、的数字PID控制,基本掌握了数字PID控制的基本规律,也认识到计算机控制系统的复杂性,检验了我所学的知识,体会了控制系统三大指标“稳,准,快”的意义. 加深了我对自动控制系统的了解,同时也对比例、积分、微分控制有了更进一步的认识。 比例系数的加大,将使系统的响应速度加快,在系统稳定的前提下,加大比例系数可以减少稳态误差。但不能消除稳态误差。积分控制通常影响系统的稳定性,有助于消除稳态误差,提高系统的控制精度。而微分作用的增加则可以改善系统的动态特性,但也可能降低系统的抗干扰能力。比例+积分控制器可以使系统进入稳态后无稳态误差。而比例+微分控制器能改善系统在调节过程中的动态特性。 这次设计过程让我们把理论知识付诸于实践,这对以后的学习带来了更大的 帮助! 八、 参考文献1陈怀琛.MATLAB及在电子信息课程中的应用.北京:电子工业出版社,2009 2赵广元.MATLAB与控制系统仿真实践.北京:北京航空航天大学出版社,2009