基于西门子PLC的温度PID控制
摘要:本文主要介绍了如何使用Siemens PLC 编成软件Step 7-5x中的FB41、FB43功能块实现PID控制,并举例说明它们在温度控制中的应用。
关键词:PID控制器,STEP7,温度控制,PLC
Abstract:The paper mainly introduces how to use FB41 and FB43 which are function blocks in the Siemens PLC programming software to make PID controller,and one example is used to explain it be used in temperature control 。
Keywords:PID Controller,STEP 7,temperature control,PLC
0、引言
PID控制器问世至今已有近70年历史,控制理论的发展经历了古典控制理论、现代控制理论和智能控制理论三个阶段,但在工业控制系统中,绝大多数还是使用PID控制器,因为它结构简单、稳定性好、工作可靠、调整方便。
现今,PID控制及其控制器或智能PID 控制器的产品已经很多,他们在工程实际中得到了广泛的应用。
西门子公司S7-200、S7-300/400系列PLC都具有PID控制功能,但有很多工程技术人员对怎样使用它们不太了解,有的工程技术甚至自己编写PID控制器而不使用现有的PID控制器。
本文主要介绍Step 7-5x中的FB41、FB43功能块,并举例说明它们在温度控制中的应用。
1、PID控制的原理和特点
PID控制即比例、积分、微分控制,当被控对象的结构和参数不能被完全掌握,或得不到精确的数学模型时,应用PID控制技术最为方便。
即当我们不完全了解一个系统的被控对象,或不能通过有效的测量手段来获得系统参数时,最适合用PID控制技术。
PID控制器就是根据设定值与实际值的误差,利用比例、积分、微分计算出控制量进行控制的,同时,根据实际情况还可以有PI和PD控制器。
1.1比例(P)控制
比例控制是一种最简单的控制方式,其控制器的输出与输入误差信号成比例关系。
系统一旦出现偏差,比例调节立即作用以减少偏差,但当仅有比例控制时系统输出存在稳态误差。
1.2积分(I)控制
积分控制的作用是使系统消除稳态误差,提高无差度。
积分项对误差取决于时间的积分,随着时间的增加,积分项会增大。
这样,即便误差很小,积分项也会随着时间的增加而加大,它推动控制器的输出增大使稳态误差进一步减小,直到等于零。
因此,比例积分(PI)控制器,
可以使系统在进入稳态后无稳态误差。
1.3微分(D)控制
在微分控制中,控制器的输出与输入误差信号的微分(即误差的变化率)成正比关系,具有预见性,能预见偏差变化的趋势,可以产生超前的控制作用。
由于自动控制系统存在有较大的惯性环节或有滞后环节,系统在克服误差的调节过程中可能会出现振荡甚至失稳。
所以在控制器中引入“微分”项,可以改善系统的动态性能。
2、功能块的介绍
FB41“CONT-C”(Continuous Control)功能块用于控制具有连续输入输出变量的技术过程,可以根据不同的控制要求设置参数以使控制器满足控制要求。
它可以作为一个给定值的PID控制器,同时,在多环路控制中它可以作为一个串级、混合或比例控制器。
FB41控制器的算法是基于具有模拟信号的采样PID控制器,它可以和FB43构成两级或三级的步进控制器。
FB43“PULSEGEN”(Pulse Generation)功能块用于构成PID控制器的两级或三级脉冲输出,通常它和FB41功能块相连。
如图1:
Fig1:the connection of FB41 and FB43
FB43根据输入变量(INV)的值调节在恒定的周期内脉冲持续时间的长短,恒定的周期即指输入变量的更新时间大小,它必须在参数PER_TM设定。
在每一周期内脉冲持续时间的大小正比于输入变量。
如图2:
Fig2:Pulse Duration Modulation
参数PER_TM的值与FB43功能块的执行时间是不同的,PER_TM是由许多个FB43执行时间组成。
在一个PER_TM周期中FB43被调用的次数是判断脉冲调制精度的标准。
可以在一个一个PER_TM周期中增加调用FB43的次数,以提高精确度。
根据FB43的参数设置的不同,可以形成三级输出、双极或单极的两级输出。
下表的参数设置显示了怎样组合形成需要的模式。
在三级控制模式时,控制信号采用三种状态,功能块输出量QPOS_P和QNEG_P控制执行器的工作状态。
例如,在温度控制中,当QPOS_P为TRUE时加热,QNEG_P为TRUE 时冷却,QPOS_P、QNEG_P都为FALSE时处于关断状态。
利用比例因子(RATIOFAC),可以改变正负脉冲持续时间的比例的大小。
当比例因子小于1时,正脉冲持续时间=(INV/100)*PER_TM,负脉冲持续时间=(INV/100)*PER_TM* RA TIOFAC;比例因子大于1时,正脉冲持续时间=(INV/100)*(PER_TM/ RA TIOFAC),负脉冲持续时间=(INV/100)*PER_TM。
在两级控制模式时,只有正脉冲输出(QPOS_P)与执行器的开关相连。
在手动模式下,QPOS_P、QNEG_P的输出值与INV输入值无关,只于POS_P_ON、NEG_P_ON有关。
3、应用实例
把FB41的MAN_ON 设为FALSE,D_SEL、COM_RST设为TRUE,Cycle设为3s,GAIN为比例系数,TI为积分系数,TD为微分系数,其余为默认值;把FB43的PER_TM 设为3s,P_B_TM设为200ms,RA TIOFAC设为冷热比例系数,STEP3_ON、SYN_ON、COM_RST为TRUE,Cycle为100ms,其余为默认值。
利用FB41和FB43功能块形成的PID 控制器可以很好的控制温度,此PID控制器已在交联生产线的挤出机温度控制中使用,使温度控制达到了生产的要求。
对于控制器中的比例系数,积分系数,微分系数采取在线调整。
4、结束语
利用功能块FB41和FB43可以实现很好的PID控制,从而省去自己动手编写PID控制
器的麻烦,缩短了控制系统的开发周期,此PID控制器还可以在其他的控制系统中使用。
在不需要微分的控制系统中,可以使用FB42(“CONT_S”)功能块作为PI控制器。
参考文献:
1 陶永华.新型PID控制及其应用.北京:机械工业出版社,2002
2 SIEMENS .Standard Software for S7-300 and S7-400 PID Control User Manual。