PID回路控制的原理与调试

发布时间:2012-1-1 11:21    发布者:1770309616
关键词: CPU222 , GForce-200 , PID回路控制 , PLC
1. 引言
  在本章中将重点介绍如何使用GForce-200 PLC CPU222进行PID回路控制。
2. PID控制概述
  GForce-200系列PLC能够进行PID控制,其CPU最多可支持8个PID控制回路。PID是闭环控制系统中比例-积分-微分控制算法,它可以看作是这三项之和,根据设定值与被控对象实际值的差值,按PID方式计算出控制输出量,使反馈跟随设定值变化,因此PID控制是负反馈闭环控制。其中比例项是增益(Kc)与偏差的乘积,积分项与偏差的和成正比,而微分项与偏差的变化成正比。
  PID控制功能是通过PID指令功能块实现的。在S7-200中,PID回路指令运用回路表中的输入信息和组态信息,进行PID运算,交换数据,编程极其简便,该指令影响特殊存储器标志位SM1.1 (溢出)。只有在逻辑堆栈栈顶值为1时,才能进行PID运算。本指令有两个操作数:TBL和LOOP(如下图所示)。其中TBL 是回路表的起始地址,操作数限用VB区,数据类型是BYTE型;LOOP 是回路号可以是 0 到 7 的整数,因此在程序中最多可以用 8 条PID 指令。如果有两个或两个以上的 PID 指令用了同一个回路号,即使这些指令的回路表不同,那么这些 PID 运算之间也会产生不可预料的结果。在直接使用PID 指令功能块之前,必须把增益(Kc)、采样时间(Ts)、积分时间(Ti)、微分时间(Td)等等这些实数全部转换成0.0-1.0之间的实数,以便PID 指令功能块接受,也就是说把外界实际物理量转换成PID 指令可以接收的数据,即输入/输出的转换与标准化处理。
3. PID控制编程调试
  在本套系统中,为了生产需求,锅炉内蒸汽压力应维持在0.85-1.0MPa之间,压力的大小由压力变送器检测,变送器压力量程0-2.5MPa,输出DC4-20mA。因此在0.85MPa时,相应的电流输出是9.44Ma,同样1.0MPa时输出为10.4mA,其标准化刻度值如下图所示。
   11081016445512.jpg

  过程变量值是压力变送器检测的单极性模拟量,回路输出值也是一个单极性模拟量用来控制鼓风机的速度。这两个模拟量的范围是 0.0 -1.0 ,分辨率为1/32000 (标准化)。可以初步确定Kc=0.06,Ts=0.2,Ti=10.0,在这里不用微分作用,程序编辑如下图。
   11081016452220.jpg

   11081016454173.jpg

  程序上采用了主程序,子程序,中断程序的结构模式,程序清晰,明了,大大缩短了周期扫描时间。
4. 调试程序
  选择PID的参数,以及相互间的配合,可以影响PID控制的稳定性。如采样时间过短对外部信号的变化有可能检测不到,而过长的采样时间显然不能满足控制精度的要求。又如过大的增益又会造成控制的震荡。在调试程序时要注意这些参数的设置,慢慢调试以至达到稳定的PID控制。
5. 结束语
  PID控制在闭环控制中有着重要的作用,这里仅以控制鼓风机的速度来保持锅炉内蒸汽压力的恒定,介绍PID控制。同样锅炉内负压的维持,也是类似与此,这里不在详细介绍。
   11081016460804.jpg
本文地址:https://www.eechina.com/thread-84877-1-1.html     【打印本页】

本站部分文章为转载或网友发布,目的在于传递和分享信息,并不代表本网赞同其观点和对其真实性负责;文章版权归原作者及原出处所有,如涉及作品内容、版权和其它问题,我们将根据著作权人的要求,第一时间更正或删除。
您需要登录后才可以发表评论 登录 | 立即注册

厂商推荐

相关视频

关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备16069177号 | 京公网安备11010502021702
快速回复 返回顶部 返回列表