示例:如何创建 IPIDController 程序以控制供水水位

供水水位控制程序示例用于使正在向外供水的供水水箱保持有足够的水量。电磁阀控制进水量并按预设的速率加注水箱;外流的水也会按预设速率加以控制。
示例:如何创建 IPIDController 程序以控制供水水位
示例: 如何创建 IPIDController 程序以控制供水水位

程序示例信息

供水水位程序示例包括以下信息:
  • 在控制过程中发生的事件序列。
  • 设定点、过程值以及操作值在控制程序中的使用方式。
  • 用于展示 IPIDController 和其他指令块的功能块图示例。

设定点、过程值和操作值

下表定义了 SP、PV 和 MV 值在供水水位程序中的使用方式。
SP、PV 和 MV 值在供水水位程序中的使用方式
项目
描述
设定点 (SP)
用于定义目标供水水位的高度测量值。
过程值 (PV)
必须将 4-20mA 换算成与 SP 相同的单位,即高度测量值。
操作值 (MV)
必须转换为模拟值。因此可以将其输出到驱动器以控制泵。

供水水位系统

下图展示了供水水位系统中由供水水位程序控制的组件。图后的表格描述了在控制程序运行时发生的事件。
供水水位系统
供水水位系统

供水水位系统中的事件序列

下表标识了供水系统中的组件,并按顺序描述了供水水位程序运行时在系统中发生的事件。
供水系统组件和事件顺序
编号
项目
描述
callout1
控制器输出
将 MV 发送至 PowerFlex 驱动器 (0-10V)。
callout2
PowerFlex 驱动器
控制水泵 (0-50Hz)。
callout3
水泵
控制供水池中的水位。
callout4
输出传输设备
测量供水水位高度 (4-20mA),并将 PV 发送至控制器。
callout5
控制器输入
接收 PV(供水水位 4-20mA)。
callout6
PLC 程序
将 PV 转换为与 SP(高度测量值)相同的单位,确定 PV 和 SP 之间的差异,并根据 P、I 和 D 参数中定义的参数值调整 MV。

示例:供水水位控制功能块图

以下功能块图展示了用于控制供水水位的程序中预定义和用户定义的功能块。
供水水位控制功能块图
供水水位控制功能块图

在水位 FBD 中使用的功能块和 UDFB

此应用程序使用下表中所述的指令,采用 FBD 语言开发。
使用的指令
功能块
描述
IPIDController 功能块
提供 PID 过程控制。
PID_OutputRegulator UDFB
在安全范围内调节 IPIDCONTROLLER 输出,以确保不会损坏该过程中使用的硬件。
示例代码:
  • IF RMIN <= RIN <= RMAX, then ROUT = RIN,
  • IF RIN < RMIN, then ROUT = RMIN,
  • IF RIN > RMAX, then ROUT = RMAX
PID_Feedback UDFB
用作多路复用器。
示例代码:
  • IF "FB_RST" is FALSE, FB_OUT=FB_IN;
  • If "FB_RST" is TRUE, then FB_OUT=FB_PREVAL.
PID_PWM UDFB
提供 PWM 函数,用于将实型值转换为与时间相关的 ON/OFF 输出。
SIM_WATERLVL UDFB
模拟应用程序示例中的过程。
提供反馈
对本文档有问题或反馈吗? 请在这里提交您的反馈
Normal