如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
floatKp;//PID调节的比例常数floatTi;//PID调节的积分常数floatT;//采样周期floatTd;//PID调节的微分时间常数floata0;floata1;floata2;floatek;//偏差e[k]floatek1;//偏差e[k-1]floatek2;//偏差e[k-2]floatuk;//u[k]intuk1;//对uk四舍五入求整intadjust;//最终输出的调整量//变量初始化,根据实际情况初始化Kp=;Ti=;T=;Td=;a0=Kp*(1+T/Ti+Td/T);a1=-Kp*(1+2*Td/T);a2=Kp*Td/T;//Ki=KpT/Ti=0.8,微分系数Kd=KpTd/T=0.8,Td=0.0002,根据实验调得的结果确定这些参数ek=0;ek1=0;ek2=0;uk=0;uk1=0;adjust=0;intpid(floatek){if(gabs(ek)<ee)//ee为误差的阀值,小于这个数值的时候,不做PID调整,避免误差较小时频繁调节引起震荡。ee的值可自己设{adjust=0;}else{uk=a0*ek+a1*ek1+a2*ek2;ek2=ek1;ek1=ek;uk1=(int)uk;if(uk>0){if(uk-uk1>=0.5){uk1=uk1+1;}}if(uk<0){if(uk1-uk>=0.5){uk1=uk1-1;}}adjust=uk1;}returnadjust;}floatgabs(floatek){if(ek<0){ek=0-ek;}returnek;}今天在实验室做了数字PID控制,回来之后用simulink进行了仿真,发现仿真效果比试验效果好得多。传递函数为:G(s)=1/((0.6s+1)(1.5s+1)PID控制:在Simulink里建立模型:HYPERLINK"http://photo.blog.sina.com.cn/showpic.html"\l"blogid=6a04c83201018gu9&url=http://s6.sinaimg.cn/orignal/6a04c832gcfa08f25e695"\t"http://blog.sina.com.cn/s/_blank"调整Kp,Ki,Kd,在上面可以看到,Kp=18,Ki=4,Kd=1。Kp:越大,则系统越灵敏Ki:对系统稳定性影响,越大,震荡次数越多Kd:调整超调量,越大,超调量越小其结果如下:HYPERLINK"http://photo.blog.sina.com.cn/showpic.html"\l"blogid=6a04c83201018gu9&url=http://s7.sinaimg.cn/orignal/6a04c832gcfa0928b6a76"\t"http://blog.sina.com.cn/s/_blank"积分分离PID控制:在simulink中搭建系统模型如下:HYPERLINK"http://photo.blog.sina.com.cn/showpic.html"\l"blogid=6a04c83201018gu9&url=http://s6.sinaimg.cn/orignal/6a04c832gcfa0986b1995"\t"http://blog.sina.com.cn/s/_blank"阈值(Switch)设置为0.5结果:HYPERLINK"http://photo.blog.sina.com.cn/showpic.html"\l"blogid=6a04c83201018gu9&url=http://s3.sinaimg.cn/orignal/6a04c832gcfa099d53a52"\t"http://blog.sina.com.cn/s/_blank"积分控制端输出如下:HYPERLINK"http://photo.blog.sina.com.cn/showpic.html"\l"blogid=6a04c83201018gu9&url=http://s16.sinaimg.cn/orignal/6a04c832gcfa09af431af"\t"http://blog.sina.com.cn/s/_blank"