主要内容

使用MPC设计师设计控制器

这个例子展示了如何设计一个模型预测控制器连续搅拌釜式反应器(装运箱)使用MPC设计师

装运箱模型

线性化模型的连续搅拌釜反应器(装运箱)所示装运箱模型。在模型中,前两个状态变量是试剂的浓度(这里称为C一个并以kmol / m3)和反应堆的温度(这里称为T,以K),而前两个输入是冷却剂的温度(Tc,以K,用于控制植物),流入饲料试剂浓度C一个f以kmol / m3,(通常认为是无边无际的干扰)。

对于这个示例,冷却剂温度范围有限的±10度的名义价值和有限的变化率±2度/秒。

创建一个装运箱系统的状态空间模型。

(5 = -0.3427;47.68 - 2.785);B = (0.3 0 0 1);C = flipud(眼(2));D = 0 (2);装运箱= ss (A, B, C, D);

进口植物和定义MPC结构

mpcDesigner

MPC设计师应用初始窗口。

MPC设计师选项卡,结构部分中,点击MPC结构

在定义MPC结构通过导入对话框中,在从MATLAB选择植物模型或一个MPC控制器工作区表,选择装运箱模型。

装运箱是一个稳定、连续时间LTI系统MPC设计师设置控制器样品时间0.1Tr,在那里Tr的平均上升时间吗装运箱。对于这个示例,指定MPC控制器样品时间字段中,输入样本的时间0.5秒。

默认情况下,所有植物输入被定义为操作变量和所有植物输出测量输出。在分配i / o通道节中,指定输入和输出通道等指标:

  • 冷却液温度,第一个输入是一个操纵变量。

  • 第二个输入、进料浓度是一个无边无际的干扰。

  • 第一个输出,反应堆温度,测量输出。

  • 第二个输出,反应物浓度,是一个无边无际的输出。

定义MPC结构通过导入对话框。

点击进口

应用程序导入装运箱植物的数据浏览器。以下也增加了数据浏览器:

  • mpc1违约MPC控制器使用装运箱作为其内部模型。

  • scenario1违约模拟场景。

应用程序运行默认的模拟场景和更新输入响应输出响应情节。闭环系统能够跟踪所需的测量输出成功,虽然这不是无节制的输出。预计这种行为作为植物只有一个操纵变量。

MPC设计器窗口,显示闭环阶跃响应。植物输入左边,与操纵变量响应在左上角和无边无际的扰动响应在左下角。输出是右边,与测量输出响应在右上角和无边无际的输出响应在右下角。

一旦你定义货币政策委员会结构,你不能改变它在当前MPC设计师会话。使用不同的通道配置,开始一个新的会话的应用。

定义输入和输出通道属性

MPC设计师选项卡上,选择I / O属性

在对话框中,输入和输出通道规范的名字列,指定一个有意义的名称为每个输入和输出通道。

单位列,选择指定的单位为每个通道。

自定义状态空间模型使用偏离名义操作点,保持名义价值为每个输入和输出通道0

保持比例因子为每个通道的默认值1

对话框中输入和输出通道规范。

点击好吧

输入响应输出响应情节标签更新以反映新的信号名称和单位。

配置模拟场景

MPC设计师选项卡,场景部分中,点击编辑场景>scenario1

在模拟场景对话框中,设置仿真时间20秒。

参考信号表、在第一行指定一个步骤大小2和一个时间5

信号列,在第二行,选择一个常数参考浓度定位点的标称值,输入和输出通道规范中定义对话框(在这种情况下,名义值为零)。

上部分的模拟场景对话框。

默认情况是配置为模拟的阶跃变化2开尔文参考反应堆温度,T,一次5秒。

点击好吧

响应图更新以反映新的仿真场景配置。的参考价值C一个但不再是一个一步一个常数等于零。

场景部分的左下部分MPC设计师,点击scenario1。点击scenario1第二次,重命名的场景stepT

MPC设计器窗口,显示其闭环阶跃响应更新单位和场景的名字。

配置控制器的视野

调优选项卡,视野节中,指定一个预测地平线15和一个控制层3

MPC设计器窗口,突显出地平线的优化选项卡中,随着时间的样本,预测和控制层设置。

响应图更新以反映新的视野。的输入响应情节显示所需的控制行为违反约束的冷却剂温度变化率。

定义输入约束

设计部分中,点击约束

在约束对话框输入和输出约束的部分,输入行,进入冷却液温度的上下界最小值马克斯分别列。

指定的速度变化的限制杀鼠灵RateMax列。

约束对话框。

点击好吧

MPC设计器窗口,显示更新后的闭环响应。

输入响应图显示了限制被控变量控制行动。

指定控制器调整权重

调优选项卡,设计部分中,点击权重

输入重量表,增加了操纵变量(MV)率的重量0.3。体重增加MV率惩罚大MV控制器优化代价函数的变化。

输出权值表,保持默认重量值。默认情况下,所有不可测量的输出权重为零。

由于只有一个操纵变量,如果控制器试图同时输出特定的定位点,将展示一个或两个输出响应的稳态误差。自从控制器输出为零重量忽略了定位点,设置输出重量浓度为零允许反应堆温度设定值跟踪零稳态误差。

权值对话框。

点击好吧

MPC设计器窗口,显示更新,不那么咄咄逼人,闭环反应。

输入响应图显示了更为保守的控制行为,导致较慢的输出响应

消除输出超调

假设应用程序要求零输出反应过度。在性能调优选项卡,将闭环性能滑块向左直到输出响应没有过度。这个滑块向左移动同时增加了控制器和被控变量率的重量降低了输出变量重量,产生一个更健壮的控制器。

MPC设计器窗口,显示更新,即使不那么咄咄逼人,闭环响应。

当你调整控制器优化权值使用闭环性能滑块,MPC设计师不会改变权重你对话框中指定的权重。相反,滑块控制调整因素,这是使用指定的权重定义实际的控制器权重。

这个因素是1当滑块为中心;其价值增加左滑块移动,减少当滑块移动时正确的。操纵变量和输出变量的权重因子增加重量和将被控变量率权重从权重对话框。因此,移动滑块来增加鲁棒性降低OV和MV重量和增加MV率权重,从而导致放松控制的输出和更为保守的控制动作。

视图控制器的实际重量,出口MATLAB的控制器®工作区,并查看权重导出的控制器对象的属性。

测试控制器抗干扰性

在过程控制应用程序中,抗干扰性更重要比选点跟踪。模拟控制器阶跃变化的反应进料浓度不可测量的干扰。

MPC设计师选项卡,场景部分中,点击情节场景>新场景

在模拟场景对话框中,设置仿真时间20秒。

参考信号表,在第一行信号下拉列表中,选择一步,然后指定一个步骤大小2和一个时间5。在信号列,在第二行,保持常数参考浓度定位点的标称值。

无边无际的干扰行,在信号下拉列表中,选择一步。然后指定一个步骤大小0.2和一个时间5

上部分的模拟场景对话框。

点击好吧

应用程序添加了新场景数据浏览器并创建相应的新输入响应输出响应情节。

数据浏览器,在场景节中,重命名NewScenariodistReject

MPC设计器窗口,显示了闭环反应在新的场景。

正如你所看到的输出响应情节,闭环系统仍能够达到所需的反应堆温度。在这种情况下,需要控制行动,结合输入扰动,导致稳态输出浓度下降,C一个0.1 kmol / m3

指定浓度输出约束

以前,您定义控制器调整权重来实现跟踪反应器温度的主要控制目标定位点与零稳态误差。这样做使自由无限的反应堆的浓度变化。假设的反应一旦反应堆浓度低于0.05 kmol / m3对其名义价值。限制反应堆浓度,指定输出约束。

调优选项卡,设计部分中,点击约束

在约束对话框输入和输出约束部分,在第二行输出表,指定一个最小值无边无际的输出(UO)的价值-0.05

默认情况下,所有输出约束是柔软的,这意味着他们的MinECRMaxECR值是大于零的。软化无边无际的输出(UO)进一步约束,增加MaxECR价值。

约束对话框。

点击好吧

MPC设计器窗口,显示更新后的闭环反应在新的场景。

输出响应情节,反应堆的浓度,C一个稳定在-0.05 kmol / m3后10秒。由于只有一个操纵变量,控制器使两个相互竞争的控制目标之间达成妥协:温度跟踪和约束的满意度。软输出约束使控制器牺牲约束要求更多改善温度跟踪。

因为输出约束是软,控制器保持一定程度的温度控制,允许小浓度约束违反。一般来说,根据应用程序的需求,您可以尝试不同的约束设置来实现一个可接受的控制目标妥协。

出口控制器

调优选项卡,分析部分中,点击出口控制器保存调整控制器,mpc1MATLAB的工作区。

删除植物、控制器和场景

删除一个植物,控制器,或场景,数据浏览器你想删除,右键单击项,并选择删除

你不能删除当前控制器。同时,你不能删除一个植物或场景,如果它是唯一上市植物或场景。

如果植物被任何控制器或场景中,您不能删除。

删除多个植物、控制器或场景,转变每个条目并单击您想要删除。

引用

[1]Seborg, d, E。,t·f·埃德加·d·a . Mellichamp过程动力学和控制2004年,第二版,威利,34-36和94 - 95页。

另请参阅

相关的话题