主要内容

比较多个控制器响应使用MPC设计师

这个例子展示了如何使用多个控制器响应进行比较MPC设计师。特别是,控制器与不同的输出约束的配置进行了比较。

定义植物模型

创建一个你的植物状态空间模型,并指定MPC信号类型。

= (-0.0285 - -0.0014;-0.0371 - -0.1476);B = [-0.0850 - 0.0238;0.0802 - 0.4462);C = [0 1;1 0];D = 0 (2, 2);工厂= ss (A, B, C, D);植物= setmpcsignals(植物,“MV”,1“UD”2,“莫”,1“UO”2);

开放MPC设计师,并导入植物模型。

mpcDesigner(植物)

应用程序添加指定的工厂数据浏览器随着一个默认的控制器,mpc1,和一个默认的仿真场景,scenario1

定义仿真场景

配置一个扰动抑制仿真场景。

MPC设计师,在MPC设计师选项卡上,单击编辑场景>scenario1

在模拟场景对话框中,指定一个仿真时间40秒。

参考信号表,信号下拉列表中,选择常数持有的选点输出标称值。

无边无际的干扰表,信号下拉列表中,选择一步。使用默认的时间一步值。

这个场景模拟单位阶跃变化在无边无际的输入扰动的1秒。

点击好吧

应用程序运行更新仿真场景和更新控制器响应图。在输出响应情节,默认控制器返回测量输出,MO1其名义价值,然而,控制作用导致无节制的增加输出,UO1

创建控制器输出约束

假设控制规范表明这种无节制的增加扰动是不可取的。限制无限的扰动的影响,努力创建一个控制器和一个输出约束。

请注意

在实践中,不推荐使用硬输出约束。这样的约束可以创建一个不可行的优化问题时,输出变量约束范围外的移动由于扰动。

数据浏览器,在控制器节中,右键单击mpc1,并选择复制

这个应用程序创建一个副本,并将其添加到默认的控制器数据浏览器

双击每个控制器和重命名如下。

右键单击mpcHard控制器,并选择调整(当前)。应用程序添加了mpcHard控制器响应输入响应输出响应情节。

调优选项卡,控制器节中,mpcHard选为当前MPC控制器被调整。

设计部分中,点击约束

在约束对话框输出约束的部分,马克斯列,指定一个约束的最大输出3无边无际的输出(UO)。

默认情况下,所有输出约束是柔软,控制器可以允许违反约束时计算最优控制动作。

努力使无边无际的输出约束,点击约束软化的设置,输入一个MaxECR的价值0UO。这个设置的地方严格限制控制器的输出不能违反。

点击好吧

响应图更新以反映新的mpcHard配置。在输出响应的情节,UO1情节,mpcHard反应是有限的最多3。作为一个权衡,控制器不能返回MO1应对其名义价值。

提示

如果情节传说阻断响应信号,你可以拖动不同位置的传说。

创建控制器输出软约束

假设的偏差MO1从其标称值太大。可以软化输出约束妥协之间的两个控制目标:MO1输出跟踪和UO1约束的满意度。

调优选项卡,分析部分中,点击存储控制器保存一份mpcHard数据浏览器

数据浏览器,在控制器节中,重命名mpcHard_CopympcSoft

调优选项卡,控制器的部分,MPC控制器下拉列表中,选择mpcSoft电流控制器。

应用程序添加了mpcSoft控制器响应输入响应输出响应情节。

设计部分中,点击约束

在约束对话框输出约束节中,输入一个MaxECR的价值One hundred.UO软化的约束。

点击好吧

响应图更新以反映新的mpcSoft配置。在输出响应情节,mpcSoft显示了一个之前的控制器响应之间的妥协。

删除默认的控制器响应图

比较两个约束控制器,您可以删除默认的无约束控制器的输入和输出响应的阴谋。

MPC设计师选项卡,结果部分中,点击比较控制器>mpcNone

应用程序删除mpcNone反应的输入响应输出响应情节。

你可以切换显示的控制器数据浏览器除了控制器目前调谐。下比较控制器,显示的控制器响应与勾表示。

另请参阅

相关的话题