主要内容

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

此示例显示如何使用的使用多个控制器响应MPC设计师。特别地,比较具有不同输出约束配置的控制器。

定义工厂模型

创建工厂的状态空间模型,并指定MPC信号类型。

a = [-0.0285 -0.0014;-0.0371-0.1476];B = [-0.0850 0.0238;0.0802 0.4462];C = [0 1;1 0];d =零(2,2);植物= SS(A,B,C,D);植物= setmpcsignals(植物,'mv',1,'ud'2,'莫',1,'uo',2);

打开MPC设计师,并导入工厂模型。

MPCDesigner(植物)

该应用程序将指定的工厂添加到数据浏览器以及默认控制器,MPC1.以及默认的仿真方案,场景1

定义模拟方案

配置干扰抑制仿真方案。

MPC设计师,在这方面MPC设计师选项卡,单击编辑场景>场景1

在“模拟方案”对话框中,指定一个模拟持续时间40秒。

在里面参考信号表,在信号下拉列表,选择持续的在其标称值下持有两个输出的设定值。

在里面未训练的紊乱表,在信号下拉列表,选择。使用默认值时间价值观。

这种情况在1秒钟的时间模拟未测量的输入干扰的单位步骤变化。

点击

该应用程序运行更新的仿真方案并更新控制器响应绘图。在里面输出响应绘图,默认控制器返回测量输出,MO1.在其标称值,但控制动作导致不测量的输出增加,UO1.

使用硬输出约束创建控制器

假设控制规范表明未测量干扰的这种增加是不希望的。为了限制未测量干扰的效果,创建具有硬输出约束的控制器。

笔记

在实践中,不建议使用硬输出约束。当由于干扰而在约束界限之外移动时,这种约束可以创造一个不可行的优化问题。

在里面数据浏览器, 在里面控制器部分,右键单击MPC1.,选择复制

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

双击每个控制器并按如下方式重命名它们。

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

在这一点调整标签,在控制器部分,MPCHARD.被选为当前MPC控制器调整。

在里面设计部分,点击约束

在“约束”对话框中,在输出约束部分,在最大限度列,指定最大输出约束3.对于未测量的输出(UO)。

默认情况下,所有输出约束都是软的,即控制器在计算最佳控制移动时,控制器可以允许违反约束。

要使未能测量的输出约束硬,请单击约束软化设置,然后输入一个MAXEC.的价值0.对于UO。此设置对无法违反的控制器输出限制了严格的限制。

点击

响应绘图更新以反映新的MPCHARD.配置。在里面输出响应绘图,在UO1.情节,这MPCHARD.响应仅限于最大限度3.。作为权衡,控制器无法返回MO1.响应其标称价值。

小费

如果绘图传说阻断响应信号,则可以将图例拖动到不同的位置。

使用软输出约束创建控制器

假设偏离MO1.从标称值太大。您可以将输出约束软化为两个控制目标之间的折衷:MO1.输出跟踪和UO1.约束满足。

在这一点调整标签,在分析部分,点击存储控制器保存副本MPCHARD.在里面数据浏览器

在里面数据浏览器, 在里面控制器部分,重命名mpchard_copy.MPCSOFT.

在这一点调整标签,在控制器部分,在MPC控制器下拉列表,选择MPCSOFT.作为当前控制器。

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

在里面设计部分,点击约束

在“约束”对话框中,在输出约束部分,输入一个MAXEC.的价值100.为UO软化约束。

点击

响应绘图更新以反映新的MPCSOFT.配置。在里面输出响应阴谋,MPCSOFT.在先前的控制器响应之间显示折衷。

删除默认控制器响应绘图

要仅比较两个约束的控制器,您可以从输入和输出响应图中删除默认的无约束控制器。

在这一点MPC设计师标签,在结果部分,点击比较控制器>mpcnone.

该应用程序删除了mpcnone.回应答案输入响应输出响应情节。

您可以切换任何控制器的显示数据浏览器除了目前正在调整的控制器。在下面比较控制器,具有显示响应的控制器用复选标记表示。

也可以看看

相关话题