PID功能用于对闭环过程进行控制。PID控制适用于温度,压力,流量等物理量,是工业现场中应用最为广泛的一种控制方式,其原理是,对被控对象设定一个给定值,然后将实际值测量出来,并与给定值比较,将其差值送入PID控制器,PID控制器按照一定的运算规律,计算出结果,即为输出值,送到执行器进行调节,其中的P,I,D指的是比例,积分,微分,是一种闭环控制算法。通过这些参数,可以使被控对象追随给定值变化并使系统达到稳定,自动消除各种干扰对控制过程的影响。
S7-1200 CPU提供了PID控制器回路数量受到CPU的工作内存及支持DB块数量限制。严格上说并没有限制具体数量,但实际应用推荐客户不要超过16路PID回路。可同时进行回路控制,用户可手动调试参数,也可使用自整定功能,提供了两种自整定方式由PID控制器自动调试参数。另外STEP7 Basic还提供了调试面板,用户可以直观的了解控制器及被控对象的状态。
PID控制器功能主要依靠三部分实现,循环中断块,PID指令块,工艺对象背景数据块。用户在调用PID指令块时需要定义其背景数据块,而此背景数据块需要在工艺对象中添加,称为工艺对象背景数据块。PID指令块与其相对应的的工艺对象背景数据块组合使用,形成完整的PID控制器。PID控制器结构如图1。
图1 PID控制器结构
循环中断块可按一定周期产生中断,执行其中的程序。PID指令块定义了控制器的控制算法,随着循环中断块产生中断而周期性执行,其背景数据块用于定义输入输出参数,调试参数以及监控参数。此背景数据块并非普通数据块,需要在目录树视图的工艺对象中才能找到并定义。
自软件 TIA Protal V13 起,固件为 4.0 或更高版本的 S7-1200,可以使用 PID_Compact V2.2 指令。
S7-1200 在 V4.0 以上,TIA V13 SP1 以上,使用 S7-PLCSIM V13 SP1 可以仿真 PLC 程序,但不支持工艺功能(高速计数器、运动控制、PID 调节)的仿真。
CPU |
FW |
PID_Compact |
S7-1200 |
≥ V4.x |
V2.2 |
S7-1200 |
≥ V3.x |
V1.2 |
S7-1200 |
≥ V2.x |
V1.2 |
S7-1200 |
≥ V1.x |
V1.0 |
CPU |
典型 CPU 处理时间 (PID_Compact V2.x) |
CPU 1211C ≥ V4.0 |
300 µs |
CPU 1215C ≥ V4.0 |
300 µs |
CPU 1217C ≥ V4.0 |
300 µs |
分类 |
PID_Compact V2.x 背景数据块的存储器要求 |
装载存储器要求 |
约 12000 个字节 |
总工作存储器要求 |
788 个字节 |
保持性工作存储器要求 |
44 个字节 |
在 TIA Protal 软件中使用 PID 功能,有两种方式选择 PID 的指令版本。
方式一、通过在工艺对象中添加新对象,在弹出的“新增对象”对话框中,左侧竖列选择 “PID” 后,看对话框中间部分对于 “Compact PID” 版本的选择,如图 2 和图 3 所示:
图2、工艺对象-添加新对象
图3、选择 Compact PID 指令文件夹版本
方式二、当程序处于编程界面时,右侧指令栏中在工艺 > PID 控制 > Compact PID 指令 > 版本选择,如图4 和图 5所示:
图4、指令栏 > 工艺 > Compact PID
图5、Compact PID 不同版本选择
Compact PID文件夹 V5.0 和 V4.0 的区别是 PID_Temp 指令,其中 PID_Compact 指令均为 V2.2. 编写 PID 功能时,可以使用上述方法进行 PID 指令的版本选择。
在硬件版本一定的情况下,建议使用对应固件中最新版本的指令。PID Compact 指令不同版本所对应新特性,如下表所示:
PID_Compact 版本 |
不同版本指令的新特性 |
V2.2 |
全面改进对错误的响应 |
V1.2 |
CPU 启动时的手动模式 |
V1.1 |
CPU 启动时的手动模式 |