如何用一个输出控制两个过程变量

一个系统如何用一个输出控制多个过程变量?系统可以同时限制这两个值。运算符为两者输入设定值,两者都作为限制。

通过克里斯·哈迪,克罗斯公司集成系统集团 2014年11月4日

一个系统如何用一个输出(OP)来控制多个过程变量(pv)?

系统可以同时限制这两个值。例如,变速泵的速度可以自动调节,以保持其排泄管道中的流量和压力都在或低于各自的限制。运算符为两者输入设定值;它们都是限制。如果他或她进入50psig和150psig,下游阀门只打开到40gpm,压力回路将控制压力到150psig,流量将下降到40gpm。但是,如果下游阀门打开到60gpm,流动回路将接管,将流量限制在50gpm,压力将降至150psig以下。

动态输出限制

如果您只是将两个输出中的最小值发送到速度参考,并让两个PID输出都限制在0%-100%,那么不受控制的环路的输出将上升到100%,并且当需要交换哪个环路主动限制泵速时,较高的输出将需要很长时间才能从100%下降到满足另一个输出,从而导致严重的超调。

为了解决这个问题,不应该让较高的产出高于较低的产出。但是,必须允许较高的输出高于较低的输出,因为不受控制的环路的比例作用将作用于信号噪声,在不需要下降时将速度降低。

这两个问题都可以通过将PID的输出上限设置为比发送给进程的较低输出高几个百分点(2%是一个很好的起点,但可能需要1%或5%)来避免。

与其他方法的比较

还有其他方法可以实现这种控制。一种方法是让一个PID循环跟踪另一个,直到它应该接管。当你想让运算符决定哪个循环应该被控制,何时切换到另一个循环时,这是有意义的。但当你想一直自动限制所有过程变量时,上面的方案更优越,因为:

  • 逻辑更简单,而且本质上没有颠簸。不需要切换,也不需要决定什么时候有一个OP或设定值(SP)轨道。事实上,布尔逻辑根本不存在。所有PID回路一直处于活动状态。
  • 当一个回路跟踪另一个回路时,系统在切换时往往会过载。在上面的例子中,如果压力回路跟踪流量回路,当压力超过其极限时,您将切换。然后,你将失去使用比例动作限制超调的能力。相比之下,在本文提出的系统中,如果压力开始快速上升,压力回路的输出将下降,并在压力达到极限之前控制,从而最大限度地减少超调。

输出回接

处理PID块输出回接的最简单方法是不使用该特性。如果你有一个需要使用它的系统,我建议:

  • 从输出命令(速度参考或阀门位置命令)中减去输出反馈(例如:VFD实际速度或阀门位置反馈),以计算op - fb差值。
  • 对于每个PID循环,将公共OP-FB-Differential添加到该循环的输出,并将结果发送到该循环的回接。这将导致PID循环,实际上是在控制接收准确的输出反馈作为它的回接。另一个循环将有一个略高于真实反馈的回接;这将防止它在动态OP限制偏移引起的差异时“心烦意乱”。

变化

这种通用方案可用于许多应用程序,并有其他变体。例如,您可以使用它来设置下限而不是上限,方法是取两个输出中较大的一个,然后为下限减去几个百分点。

你可以同时限制三个或更多的pv;唯一的要求是输出必须全部限制在同一方向上。对于上面的例子,您可以为吸入压力添加另一个PID,并取所有三个PID回路的最小输出。流量和排放压力PID回路是反向作用的,吸入压力PID回路是直接作用的,所以流量和排放压力有上限,吸入压力有下限。这三种方法都可以减缓泵的速度,以避免超过极限。

最后,您可以允许操作人员设置固定的输出最大值和/或最小值,因此操作人员可以将其调整为90%,而不是硬性的100%最大泵速,这将成为系统的另一个限制。

总结

通过从PID循环中为每个过程变量取最小或最大输出,可以自动调整单个输出,从而控制多个过程变量。所有循环的输出必须动态地限制在发送到输出的值附近,而不是精确地限制超调和棘轮使所有过程变量低于它们的限制。

克里斯·哈迪是乔治亚理工学院的电气工程师跨公司集成系统集团自1994年以来,Chris拥有锅炉、替代能源、水/废水、化工、制药、安全、纺织和汽车的过程控制经验。Chris还编写控制器/HMIs程序,并编写用于通信、数据收集、显示、趋势和报告的自定义Windows应用程序。

-由CFE Media数字项目经理Anisa Samarxhiu编辑asamarxhiu@cfemedia.com

跨公司集成系统集团是一个2015年3月5日成员