主要内容

比较使用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,'MO'1,'UO',2);

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

MPCDesigner(植物)

该应用程序指定的工厂增加了数据浏览器以及默认控制器,MPC1以及默认的仿真方案,scenario1

定义模拟场景

配置抗干扰模拟场景。

in.MPC设计,在MPC设计选项卡,单击编辑方案>scenario1

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

参考信号表中,信号下拉列表,选择常数在它们的标称值保持两个输出的设定值。

不可测的扰动表中,信号下拉列表中,选择step。使用默认值时间step价值观。

这种情况下模拟中未测量输入干扰以1秒的时间单位阶跃变化。

点击好的

该应用程序运行更新的模拟场景,并更新控制器的响应曲线。当输出响应绘图,默认控制器返回测量输出,MO1,到其标称值,但是该控制动作使得在未测量的输出的增加,UO1

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

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

注意

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

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

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

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

右键单击mpcHard控制器,并选择调(MAKE电流)。该应用程序添加mpcHard控制器响应于所述输入响应输出响应情节。

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

设计部分,点击约束

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

缺省情况下,所有的输出限制是软的,即计算最优控制移动时,控制器可以允许违反的约束。

要使未能测量的输出约束硬,请单击约束软化设置,并输入MaxECR价值0.为UO。此设置放在控制器的输出不能违反了严格的限制。

点击好的

响应绘图更新以反映新的mpcHard配置。当输出响应绘制,在UO1情节,mpcHard响应被限制为最大的3.。作为一个权衡,控制器不能返回MO1响应到其标称值。

提示

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

与软输出约束创建控制器

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

在这一点调音标签,在分析部分,点击存储控制器保存副本mpcHard数据浏览器

数据浏览器,在这方面控制器部分,重命名mpcHard_Copy到目前为止MPCSOFT.

在这一点调音标签,在控制器部分中,在MPC控制器下拉列表中,选择MPCSOFT.作为电流控制器。

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

设计部分,点击约束

在约束对话框,在输出约束部分,输入MaxECR价值100.为UO软化约束。

点击好的

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

删除默认控制器响应曲线

如果只比较这两个约束控制器,您可以从输入和输出响应曲线默认约束控制器。

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

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

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

另请参阅

相关主题