车延东
(鞍山技师学院电气工程系,辽宁鞍山,114000)
浅谈西门子S7-300/400模拟量闭环PID控制应用技巧
车延东
(鞍山技师学院电气工程系,辽宁鞍山,114000)
本文分析PID控制器的不同变形形式,以及西门子S7-300 /400PLC模拟量闭环控制功能和使用系统功能块实现闭环控制方法。
PID控制器;S7-300/400;模拟量;闭环控制
S7-300/400系列属于模块式PLC,主要由CPU模块、信号模块、功能模块、接口模块、通信模块、电源模块和编程设备组成,各种模块相互独立,分别安装在机架上。S7-300/400的FM355、FM455是通用的智能化闭环控制模块,还有系统功能块SFB41~SFB43,改变输入参数,自动生成程序,能够满足用户不同PID形式控制需求。
1.1 不需要被控对象的数学模型
自动控制系统中的分析和设计方法主要是建立在被控对象的线性定常数数学模型的基础,忽略实际系统非线性和时变性,与实际系统有较大差距。对于许多工业控制对象,根本就无法建立较为准确的数学模型。系统使用PID控制可以得到比较满意效果。
1.2 结构简单
PID控制器的结构典型,各参数有明确的物理意义,参数调整方便,容易实现多回路控制、串级控制等复杂的控制。
1.3 较强灵活性和适用性
根据被控对象具体情况,可以采用PID控制器的多种变种和改进控制方式,例如PI、PD、带死区PID、被控量微分PID、积分分离PID和变速积分PID等,但比例控制必不可少。随着智能控制技术发展,PID控制和神经网络控制等现代控制方式结合,可以实现PID控制器的参数自整定,使PID控制器具有持久的生命力。S7-300PID功能块带参数自整定功能,使用非常方便。
2.1 PID控制器在连续控制系统中的表达式
模拟量PID控制器的输出表达式为:
式中mv(t)是控制器的输出信号,ev(t)是控制器的输入量(误差信号)ev(t)=sp(t)-pv(t),sp(t)为设定值,pv(t)为反馈值,Kp、T1和TD是比例系数、积分时间常数和微分时间常数,M是积分部分的初始值。如果取其中一项或两项,可以组成P、PI或PD调节器。需要较好的动态品质和较高稳定精度时,可以选用PI控制方式,控制对象惯性滞后较大时,应选用PID控制方式。
2.2 积分部分的近似计算
一般用矩形积分近似精确积,各矩形部分的总面积为
2.3 微分部分的近似计算
将积分和微分的近似表达式代入,第n次采样时控制器的输出为
n
式中KI=KPTs/TI、KD=KPTD/TS分别是积分系数和微分系数。
2.4 不完全微分PID
微分引入,可以改善系统动态性能,但也容易引入高频干扰,为此在微分部分增加一阶惯性滤波,以平缓输出值剧烈变化。式中fT为滤波时间常数,在SFB41中,fT对应于微分操作的延迟时间TM-LAG。
2.5 死区特性在PID控制中的应用
图1 控制系统图
在控制系统中,执行机构如果频繁动作,会导致小幅震荡,造成严重机械磨损。从控制要求来说,很多系统允许被控量在一定范围内存在误差。当死区非线性环节的输入量的绝对值小于设定值B时, PID输出不变,其不起调节作用,系统相当于开环状态。当误差绝对值超过设定值时,开始正常PID控制。
3.1 S7300/400实现闭环控制的方法
S7-300/400为用户提供功能强大、使用简单方便的模拟量闭环控制功能。
(1)闭环控制模块。S7-300的FM355和S7-400的FM455闭环控制模块是智能化的4路和16路通用闭环控制模块,可以用于化工和过程控制,模块上带有A/D转换器和D/A转换器。
(2)闭环控制用的系统功能块。S7-300/400也可以用PID控制功能块来实现PID控制。系统功能块SFB41~SFB43用于CPU 31XC的闭环控制。SFB41“CONT-C”用于连续控制,SFB42“CONT-S”用于步进控制,SFB43“PULSEGEN”用于脉冲宽度调节。
(3)闭环控制软件包。安装标准PID控制软件包后,文件夹“LibrariesStandard LibraryPID Controller”中的FB41~FB43用于PID控制,FB58和FB59用于PID温度控制。FB41~FB43与SFB41~SFB43兼容。PID自整定(PID Self Tuner)软件包可以提供控制优化支持。
3.2 使用系统功能块实现闭环控制
SFB41~SFB43可以在程序编辑器左边的指令树中的“LibraryStandard LibrarySystem Function Blocks”(标准库系统功能块)文件夹中找到。SFB41~SFB43内有可组态的大量单元,除了创建PID控制器以外,还可以处理设定值、过程反馈值,以及对控制器的输出值进行后处理。定期计算所需的数据保存在指定的背景数据块中,允许多次调用SFB。SFB“PULSEGEN”与SFB“CONT-C”组合使用,可以组成脉冲输出的控制器,例如可以用于加热和冷却装置。
PID控制器的处理速度与CPU性能有关,必须在控制器数量和控制器的计算频率(采样周期)之间折中处理。计算频率越高,单位时间的计算量越大,能使用的控制器的数量就越少。PID控制器可以控制较慢的系统,例如温度和物料的料位等,也可以控制较快系统,例如流量和速度等。
3.3 PID控制的程序结构
应在启动时执行的组织块OB 100中和定时循环中断OB中调用SFB41~SFB43。执行BO35时间间隔在CPU属性设置对话框循环中断选项卡中设置。调用系统功能块应指定相应的背景数据块,例如CALL SFB41,DB30。系统功能块的参数保存在背景数据块中,可以通过数据块编号、偏移地址或符号地址来访问背景数据块。
[1] 刘美俊.西门子S7系列PLC的应用与维护[M].北京:机械工业出版社2009.
[2] 廖常初.S7-300/400PLC应用技术[M].北京:机械工业出版社2007.
Application skills of SIEMENS S7-300/400 analog closed-loop PID control
Che Yandong
(Department of electrical engineering, Anshan technician college, Anshan Liaoning, 114000)
This paper analyzes the different forms of deformation of the PID controller, and the SIEMENS S7-300 /400PLC analog closed-loop control functions and the use of the system function blocks to achieve closed-loop control method.
PID controller; S7-300/400; analog quantity; closed loop control