属性创建控制器对象时,默认情况下货币政策委员会
命令,不存在约束。若要包含约束,请设置适当的控制器属性。下表总结了用于定义大多数MPC约束的控制器属性。(MV =被操纵变量;OV =设备输出变量;MV增量=u(k) - - -u(k- 1)。
约束 | 控制器的财产 | 约束软化 |
---|---|---|
上下界我th MV | MV (i)。分钟>负 |
MV (i)。MinECR > 0 |
上限我th MV | MV (i)。马克斯<正 |
MV (i)。MaxECR > 0 |
上下界我th机汇 | 机汇(我)。分钟>负 |
机汇(我)。MinECR > 0 |
上限我th机汇 | 机汇(我)。马克斯<正 |
机汇(我)。MaxECR > 0 |
上下界我th MV增量 | MV (i)。杀鼠灵>负 |
MV (i)。RateMinECR > 0 |
上限我th MV增量 | MV (i)。RateMax <正 |
MV (i)。RateMaxECR > 0 |
属性来设置控制器约束属性MPC设计师应用程序,调优选项卡上,单击约束.在“约束”对话框中,指定约束值。
看到约束对于描述相应约束条件的方程。
MV界限:
包括已知的物理限制的工厂MV作为硬MV界限。
当对变化率有一个已知的物理限制时,或者您的应用程序要求您防止由于其他原因而出现较大的增量时,请包含MV增量边界。
不要在同一MV上同时包含硬MV边界和硬MV增量边界,因为它们可能会冲突。如果两种类型的边界都是重要的,软化其中一种。
OV界限:
不要包括机汇边界,除非它们对你的申请至关重要。作为设置OV边界的一种替代方法,您可以定义OV引用并设置其代价函数权值以保持OV接近其设置点。
所有OV约束都应该软化。
考虑让OV在某些预测层步骤中不受约束。看到用MPC设计器设置时变权值和约束.
考虑一个时变的OV约束,它在视界的早期很容易满足,逐渐变细到一个更严格的约束。看到用MPC设计器设置时变权值和约束.
不包括OV不可能满足的约束条件。即使是软的,这样的约束也会导致意外的控制器行为。例如,考虑一个具有五个延迟采样周期的SISO工厂。在预测层第6步之前的OV约束一般是不可能满足的。你可以使用审查
命令来检查这种不可能的约束,并使用一个时变的OV边界来代替。看到用MPC设计器设置时变权值和约束.
硬约束是二次规划(QP)解必须满足的约束。如果在给定的控制区间上数学上不可能满足硬约束,k, QP是不可行.在本例中,控制器返回一个错误状态,并将操纵变量(mv)设置为u(k) =u(k-1),即不变。如果导致不可行的条件得不到解决,不可行就会无限期地继续下去,导致失控。
在实际应用中,干扰和预测误差是不可避免的。因此,即使控制器预测相反,也可能发生约束违反。一个可行的QP解并不能保证当工厂使用最优MV时所有的硬约束都能得到满足。
如果你的应用程序中唯一的约束是MV的边界,那么MV边界可以是硬约束,因为它们是默认的。MV界限本身并不能导致不可行性。当唯一的约束是MV增量时,情况也是如此。
然而,带有硬MV增量约束的硬MV界会导致不可行。例如,在手动控制下的故障或操作可能会导致工厂中使用的实际MV在间隔期间超过指定的界限k1。如果控制器在间隔时间内处于自动状态k,它必须将MV返回到硬边界内的一个值。如果MV超出界限太多,硬增量约束会使下一区间内的界限违反无法纠正。
如果被控对象受到干扰,并且存在硬输出约束或硬混合输入输出约束,那么QP不可行性是一种明显的可能性。
所有模型预测控制工具箱™约束(松弛变量非负性除外)都可以软.当一个约束是软的,控制器可以认为一个MV最优,即使它预测了一个违反该约束。如果所有的工厂输出、MV增量和自定义约束都是软的(因为它们是默认的),QP不可行性就不会发生。但可能导致控制器性能不达标。
要软化约束,将相应的等效松弛(ECR)值设置为正值(零表示硬约束)。ECR值越大,控制器越有可能认为为了满足您的其他性能目标而违反约束是最优的。模型预测控制工具箱软件提供默认的ECR值,但对于成本功能权重,您可能需要调整ECR值,以实现可接受的性能。
为了理解约束软化是如何工作的,假设您的成本函数使用 ,给予MV和MV在代价函数中的增量权值为零。只有输出参考跟踪和约束违背项是非零的。在本例中,代价函数为:
假设你也指定了硬MV的界限 和 .然后这些约束简化为:
因此,松弛变量,εk,不再出现在上述方程中。您还指定了植物输出的软约束 和 .
现在,假设一个扰动将一个对象的输出推到其指定的上界之上,但是带有硬输出约束的QP是可行的,也就是说,在QP解中可以避免所有的约束违反。QP涉及到输出参考跟踪和约束违背之间的权衡。松弛变量,εk,必须是非负的。它在成本函数中的出现阻碍了(而不是阻止)最优εk> 0。一个更大的ρε然而,体重增加了最优的可能性εk将是小的或零。
如果最优εk> 0,至少有一个边界不等式是活跃的(在相等时)。相对较大 使它更容易满足约束与小εk.在这种情况下,
可以更大,而不超过
请注意, 不设置约束违背的上限。相反,它是一个调整因素,决定软约束是容易还是难以满足。
使用无因次变量简化了约束优化。为每个工厂的输入和输出变量定义适当的尺度因子。看到指定规模因素.
要指示可容忍违规的相对大小,请使用与每个约束相关的ECR参数。大致指导方针如下:
0 -不允许违反(硬约束)
0.05 -允许很小的犯规(几乎很难)
0.2 -允许小犯规(相当困难)
1 -平均柔软度
5 -允许超过平均的违规(相当软)
允许大犯规(非常软)
使用控制器的整体约束软化参数(控制器对象属性:权重。ECR
)来惩罚相对于其他成本函数项的可容忍的软约束违反。设置权重。ECR
属性,使相应的惩罚比其他三个成本函数项的典型总和大1-2个数量级。如果在模拟测试中约束违背看起来太大,请尝试增加权重。ECR
乘以2-5。
然而,要注意的是,一个过大的权重。ECR
扭曲MV优化,导致在违反约束时MV调整不当。为了检查这一点,在模拟期间显示成本函数值。如果当发生约束违反时,其幅度增加超过2个数量级,则考虑减小权重。ECR
.
在真实系统中,干扰和预测错误可能导致意外的约束违反。试图通过增加约束难度来防止这些违规通常会降低控制器的性能。