主要内容

设计工作流程,用于显式MPC

要创建显式MPC控制器,必须首先设计传统的(隐式)MPC控制器。然后根据传统控制器设计生成显式MPC控制器。

传统(隐式)MPC设计

首先为您的应用程序设计传统(隐式)MPC并在模拟中测试。关键注意事项如下:

  • 模型预测控制工具箱™软件目前支持以下作为独立变量显式MPC:万博1manbetx

    • nxc控制器状态变量(植物,干扰和测量噪声模型状态)。

    • ny(≥1)输出参考值,其中ny是植物输出变量的数量。

    • nv(≥0)测量植物干扰信号。

    因此,在创建显式MPC控制器之前,必须修复大多数MPC设计参数。固定参数包括预测模型(植物、干扰和测量噪声)、尺度因子、视界、惩罚权重、操纵变量目标和约束边界。

    有关设计传统MPC控制器的信息,请参阅控制器创建

    有关调整传统MPC控制器的信息,请参阅细化

  • 不支持参考和测量扰动预览。万博1manbetx在每个控制间隔,电流ny参考和nv测量的扰动信号适用于整个预测地平线。

  • 要限制显式MPC所需的区域数,仅包括基本限制。

    • 当包括操纵变量(MV)上的约束时,使用短控制范围或MV阻塞。看选择样本时间和视野

    • 避免对植物产量的限制。如果这样的约束是必要的,考虑对选定的预测视界步骤施加它,而不是对整个预测视界。

  • 为每个人建立上下界限nxnxc+ny+nv独立变量。你可能知道一些先验的界限。但是,您必须运行至少记录nxc当系统运行超出预期条件范围时,控制器状态。重要的是不要低估这个范围,因为明确的MPC控制函数不是为范围之外的自变量定义的。

    有关指定界限的信息,请参阅generateExplicitRange

    有关模拟传统MPC控制器的信息,请参阅模拟

明确的政策委员会代

给定恒定的MPC设计参数nx对照法的独立变量上限和下限,即,

x l x k x u

generateexplicitmpc.命令决定nr地区。这些区域中的每一个由不等式约束和相应的控制法常数定义:

H x k K 1 n r u k F x k + G 1 n r

explicitMPC对象包含常量HKF, 和G对于每个地区。显式MPC控制器对象还保存原始(隐式)设计和独立变量边界。只要xk)保持在指定的范围内,并保留所有nr区域,显式MPC对象提供相同的最佳MV调整,uk),作为等价的隐式MPC对象。

关于显式MPC的详细信息请参见[1].有关如何生成显式MPC控制器的详细信息,请参阅[2]

明确的MPC简化

即使是一个相对简单的显式MPC控制器也可能需要许多区域(nr>> 100)完全表征QP解决方案。如果区域的数量很大,请考虑以下内容:

  • 使解决方案形象化斑块命令。

  • 使用简化命令减少区域数量。有时,这种减少可以没有(或可忽略不计)对控制法最优性的影响。例如,相邻区域对可以使用基本相同FK常量。如果是,且两个区域的并集形成凸集,则可以合并为单个区域。

    或者,您只能消除相对较小的区域或仅保留所选区域。在运行期间,如果当前xk)不包含在任何保留区域,显式MPC返回次优uk), 如下:

    u k F j x k + G j

    在这里,j是边界约束的区域的索引,Hjxk)≤Kj,违反了。

执行

在运行期间,对于给定的xk),显式MPC控制器执行以下步骤:

  1. 验证那个xk)满足指定的界限,xl≤x (k)≤xu.如果不是,则控制器返回错误状态和集合uk) =uk1)。

  2. 从地区= 1,逐个测试区域以确定是否xk)属于。如果Hxk)≤K,然后xk)属于区域.如果xk)属于区域,然后是控制器:

    • 获得FG从内存,并计算uk) =Fxk)+G

    • 通过返回状态代码和索引来表示成功完成

    • 返回而不测试其余区域。

    如果xk)不属于地区控制器:

    • 计算违规术语v的最大(正)分量(Hxk) -K)。

    • 如果v这是最低限度的违规吗xk),控制器设置j和套装v最小值v

    • 然后控制器递增并测试下一个地区。

  3. 如果所有区域都经过了测试xk)不属于任何区域(例如,由于数值精度问题),控制器:

    • 获得FjGj从内存,并计算uk) =Fjxk)+Gj

    • 设置状态以指示次优解决方案并返回。

因此,每个控制区间的最大计算时间是测试每个区域,计算每种情况的违规项,然后计算次最优控制调整所需的时间。

模拟

您可以使用该命令行模拟sim卡或者mpcmoveexplict.命令。

你可以使用显式MPC控制器块连接显式MPC到在Simulink中建模的工厂万博1manbetx®

参考

[1] A. Bemporad,M. Morari,V. Dua和E.N.pistikopoulos,“限制系统的明确线性二次调节器”自动化,卷。38,不。1,pp。3-20,2002。

[2] A. Bemporad,“一种基于非负值最小二乘的多边形计算的多参数二次编程算法,2014年,提交了发布。

另请参阅

||

相关话题