DMCplus控制计算由两部分组成:稳态优化和DMCplus实际动作计算。稳态优化可以是线性规划(LP)或二次规划(QP)。两种情况下斜坡变量与稳态变量的处理方式都稍有不同。
稳态优化确定了DMCplus控制器的稳态工作点。稳态优化的目标是,在所有稳态因变量的稳态误差都被消除的前提下(即所有斜坡因变量都处于“平衡”),寻找到经济上的最优稳态工作点。
最优稳态工作点由操作变量和稳态因变量的稳态目标共同指定。稳态因变量的稳态目标作为DMCplus控制器的设定值。
然而对于斜坡变量,稳态优化计算了在保证所有斜坡平衡的情况下操作变量的稳态目标值。(鉴于斜坡必须保持平衡,向DMCplus控制器装入一斜坡变量最多使用系统的一个自由度。)
假设模型是正确的,当操作变量达到其稳态目标时,斜坡变量将最终线性输出为一恒定值。斜坡线性输出实际值由DMCplus算法自身控制动作计算决定。
为了更好地解释这一点,请参见下图18,其表示一储罐的单输入/单输出系统(未控制的进料流量和控制的出料流量)。
图18:简单的储罐
在t=0时,液位恒定在50%;进料流量和出料流量相等并且斜坡是平衡的。在t=0时,斜坡设定值由50%变为55%,斜坡响应设定值改变由下图19所示。
图19:t=0时设定值变化斜坡响应
下图20显示了对应的出料流量动作。注意由于液位是平衡状态,出料流量正确的稳态值与t=0时刻的初始值是相同的。为了使斜坡变量增加到它的新设定点并保持水平输出,有必要减小出料流量使系统失去平衡,等到斜坡重新接近其设定点。然后把出料流量调整回来使得系统在新设定值重新达到平衡。
因此尽管稳态优化可以确定平衡斜坡适当的MV稳态值,实际上是动态规划决定了斜坡水平输出。
图20:t=0时设定值变化后出料流量动作
在早期DMCplus版本中,如果稳态优化无法寻找到斜坡平衡时MV目标的解决方案,DMCplus控制器将被关闭。通常情况下,斜坡失衡都是由于一个关键MV触碰到限制。解决问题的对策包括放宽MV限制或重新整定DMCplus控制器。
DMCplus提供了几个选项允许在指定时间间隔次数内斜坡失衡。详情请参考Ramp Types。
在给定的控制周期内斜坡变量的实际设定值是基于操作员输入限制给定的。斜坡变量的稳态目标只是预测向量(控制动作)的最后一个元素。
附原文:
The DMCplus control calculation consists of two parts: a Steady-State Optimization and the actual DMCplus Move calculation.The Steady-State Optimization canbe a Linear Program (LP) or Quadratic Program (QP). In both cases, ramps are dealt with somewhat differently than are steady-state variables.
The steady-state optimization determines the steady-state operating point for the DMCplus controller. The objective of the steady-state optimization is to find the economically optimal steady-state operating point, where all steady-state error is eliminated in the steady-state dependent variables; that is, where all ramp dependent variables are "balanced."
The optimal steady-state operating point is specified by steady-state targets for both the manipulated variables and steady-state dependent variables. The steady-state target for a steady-state dependent variable becomes the DMCplus controller setpoint for that variable.
However, for a ramp variable, the steady-state optimization calculates a consistent set of manipulated variable steady-state targets which ensure that the ramp is balanced. (Incorporating a ramp variable into the DMCplus controller uses up one degree of freedom in the system since the ramp must always balance.)
When the manipulated variables reach their steady-state targets, the ramp variable will eventually line out at a constant value, assuming the model is correct. The actual value at which the ramp lines out is determined by the control move calculation in the DMCplus algorithm itself.
To better explain this, see Figure 18 below, which shows a single input/single output system with a tank,an uncontrolled flow in, and a controlled flow out.
At time=0, the level is at steady state at 50%; the in-flow and out-flow are equal and the ramp is balanced. At time=0, the ramp setpoint is changed from 50% to 55% and the ramp responds to the setpoint change as shown in Figure 19.
In Figure 20 below, the movement in the out-flow is shown. Note that since the level is in balance, the correct steady-state value for the out-flow is the same as the initial value at time=0.In order to make the ramp rise to its new setpoint and line out, it is necessary to reduce the out-flow to put the system out of balance and wait until the ramp approaches its setpoint; then, put the out-flow back where it originally was to again balance the system at the new setpoint value.
So while the steady-state optimization can determine the proper manipulated variable steady-state value to balance the ramp, it is the dynamic move plan that determines where the ramp actually lines out.
In early versions of DMCplus, if the steady-state optimization was unable for any reason to find a solution of manipulated variable targets at which the ramp was balanced, then the DMCplus controller was turned off. Usually, a ramp imbalance results because a key manipulated variable has hit a limit. Solutions to this problem include relaxing the limits on the manipulated variables and retuning the DMCplus controller.
DMCplus provides several options to allow the ramp to be out of balance for a specified number of intervals. See Ramp Types for more information.
The actual setpoint for the ramp variable at a given control cycle is based on the operator-entered limits. The steady-state target for a ramp variable is simply the last element in the prediction vector (with control moves).
2015.10.1