主要内容

明确的MPC控制器

显式模型预测控制器

  • 明确的MPC控制器块

库:
模型预测控制工具箱

描述

明确的MPC控制器块使用下面的输入信号:

  • 测量装置输出()或自定义状态估计(x (k | k))

  • 参考或定位点(裁判)

  • 测量植物干扰(医学博士),如果任何

明确的MPC控制器块使用查找表来存储预先计算的piecewise-affine最优控制律,而不是解决一个二次规划优化问题在运行时在每个控制间隔等MPC控制器块。考虑到同一MPC问题,两个街区返回相同的解决方案。明确的MPC控制器块需要较少的在线计算的努力,这是有用的应用程序,需要一个短间隔的控制。然而,较重的离线计算的努力和更大的内存占用。的确,明确MPC的组合性质限制了它的使用相对较少的应用程序输入,输出,和状态变量,短期预测地平线,和几个输出约束。

明确的MPC控制器金宝app只支持可选的MPC特性的一个子集,在下表中列出。

金宝app支持的功能 不支金宝app持的功能
  • 内置(卡尔曼滤波)和自定义状态估计

  • 外港的状态估计结果

  • 外部轮廓尺寸被控变量的反馈信号

  • 单精度数据块(缺省为双精度)

  • 继承采样时间

  • 在线优化(点球体重调整)

  • 在线约束调整

  • 在线目标调整被控变量

  • 参考和/或测量干扰预览

港口

输入

全部展开

需要输入

测量输出,指定为一个矢量信号。块使用测量装置输出改善状态估计。如果您的控制器使用默认状态估计,必须测量装置输出连接到输入端口。如果你的控制器使用自定义状态估计,你必须连接估计植物状态x (k | k)输入端口。

依赖关系

要启用这个端口,清除使用自定义状态估计,而不是使用内置的卡尔曼滤波器参数。

自定义状态估计,指定为一个矢量信号。块使用连接状态估计,而不是估计美国使用内置的估计量。如果您的控制器使用自定义状态估计,必须连接的当前状态估计x (k | k)输入端口。如果您的控制器使用默认状态估计,必须测量的输出连接到输入端口。

尽管噪音模型状态(如果有的话)不习惯在MPC优化、自定义状态向量中定义必须包含所有的州mpcstate对象的控制器,包括植物、干扰和噪声模型。

另一种评估时使用自定义状态估计技术被认为是优于内置的估计或状态完全可测。

依赖关系

要启用这个端口,选择使用自定义状态估计,而不是使用内置的卡尔曼滤波器参数。

在每个控制即时,裁判信号必须包含当前引用值(目标或定位点)ny输出变量,ny输出的总数,包括测量和不可测量的输出。因为这个块不支持引用预览,金宝app裁判必须是一个矢量信号。

额外的输入

如果你的控制器预测模型测量干扰,您必须启用这个端口和连接到它包含一个行向量信号N医学博士元素,N医学博士是测量扰动的数量。

因为这个块不支持预览测量干扰,金宝app医学博士必须是一个矢量信号。

依赖关系

要启用这个端口,选择测量的干扰参数。

控制信号用于工厂前面的控制区间,指定为一个向量长度的信号Nmv,在那里Nmv是操纵变量的数量。使用这个输入端口时提高状态估计精度:

  • 你知道你的控制器并不总是控制着植物。

  • 实际的MV信号应用于植物可能不同于控制器所产生的价值,比如在控制信号饱和。

控制器状态估计假设MVs是分段常数。因此,在时间tk,ext.mv值必须包含有效的MVs倍之间tk - 1tk。例如,如果MVs实际上是在这个区间不同,你可能提供价值评估在定时间tk

请注意

  • 连接ext.mvMV信号实际应用于植物在前面的控制区间。通常,这些MV信号控制器所产生的价值,尽管这并非总是如此。例如,如果您的控制器脱机和跟踪模式运行(也就是说,控制器输出不是推动工厂),然后喂实际控制信号ext.mv可以帮助实现无扰转移时,控制器将重新上线。

  • 当控制器驱动的工厂,插入一个内存块或单位延迟块反馈MV信号应用于工厂前面的控制区间。这也避免了直接的引线ext.mv尺寸的mv外港,因此防止代数循环模型金宝app®模型。

例如使用外部操纵变量的输入端口无扰转移,明白了与无扰转移开关控制器在线和离线

依赖关系

要启用这个端口,选择外部操纵变量参数。

关掉控制器评估、连接开关一个非零的信号。

禁用控制器评估减少计算工作时不需要控制器的输出,比如当系统操作手动或另一个控制器接管。然而,控制器继续更新其内部状态估计以通常的方式。因此,只要准备好简历评估开关信号返回零。控制器的评价,而通过电流ext.mv信号控制器的输出。如果ext.mv尺寸不启用,控制器输出是在价值评估时禁用。

例如使用外部操纵变量的输入端口无扰转移,明白了与无扰转移开关控制器在线和离线

依赖关系

要启用这个端口,选择使用外部信号,使控制器评估参数。

输出

全部展开

要求输出

最优操纵变量控制行动,作为一个列向量长度的信号返回Nmv,在那里Nmv是操纵变量的数量。

控制器更新mv输出在每个控制即时使用显式MPC控制器对象中包含的控制律。如果控制律评价不成功,mv是不变的(也就是说,它是在以前的成功的结果)和状态输出,如果存在,变成了0或1。

额外的输出

该输出显示最新的显式的MPC控制律评价是否成功。外港提供了一个标量信号,有下列值之一:

  • 1 -成功的明确的控制律的评估

  • 0 -失败由于一个或多个控制律参数的范围

  • 1 -控制律参数在有效的范围内,而是一个推断是必要的

如果状态要么是0或1,mv外港仍在最后已知良好的价值。

依赖关系

要启用这个端口,选择分段仿射函数的状态评估参数。

这个输出提供了多面区域的索引用于最新的显式控制律的评估。如果控制律评估失败,这个外港的信号为零。

依赖关系

要启用这个端口,选择地区评估分段仿射函数的数量参数。

估计控制器控制在每一个瞬间,作为一个矢量信号返回。估计状态包括植物、干扰和噪声模型。如果使用自定义状态估计,这个输出信号有相同的值x (k | k)输入信号。

依赖关系

要启用这个端口,选择估计控制器状态参数。

参数

全部展开

一个explicitMPC对象包含要使用的控制律。它必须存在于MATLAB®工作区。使用generateExplicitMPC命令来创建这个对象。

编程使用

块参数:empcobj
类型:字符串,特征向量
默认值:”“

一个可选的mpcstate对象指定初始控制器状态。如果你离开这个参数空白,块中定义使用名义值Model.Nominal财产的explicitMPC对象。创建一个覆盖默认值mpcstate对象在你的工作区,并输入它的名字。您可以使用这个参数,使控制器状态反映了真正的植物环境的模拟最好的你的知识。

如果启用了自定义状态估计,忽略了初始控制器状态参数。

编程使用

块参数:x0
类型:字符串,特征向量
默认值:”“
General选项卡

如果你的控制器测量干扰,必须选择添加这个参数医学博士输出端口的块。

编程使用

块参数:md_inport
类型:字符串,特征向量
价值观:“关闭”,“上”
默认值:“上”

选择要添加这个参数ext.mv输入端口。

编程使用

块参数:mv_inport
类型:字符串,特征向量
价值观:“关闭”,“上”
默认值:“关闭”

选择要添加这个参数状态输出端口的块。

编程使用

块参数:return_status
类型:字符串,特征向量
价值观:“关闭”,“上”
默认值:“上”

选择要添加这个参数地区输出端口的块。

编程使用

块参数:return_region
类型:字符串,特征向量
价值观:“关闭”,“上”
默认值:“关闭”

选择要添加这个参数est.state输出端口的块。

编程使用

块参数:return_state
类型:字符串,特征向量
价值观:“关闭”,“上”
默认值:“关闭”

选择删除该参数输入端口和添加x (k | k)输入端口。

编程使用

块参数:state_inport
类型:字符串,特征向量
价值观:“关闭”,“上”
默认值:“关闭”
其他选项卡

被操纵的变量的块数据类型指定为以下之一:

  • ——双精度浮点

  • ——单精度浮点

    如果你是单精度目标、实现块指定输出数据类型

  • 数据类型的表达式——一个表达式计算。有关更多信息,请参见控制信号的数据类型(金宝app模型)

编程使用

块参数:BlockDataType
类型:字符串,特征向量
价值观:“替身”,“单身”,数据类型的表达式
默认值:“替身”

选择该参数继承父子系统的样品时间块样品时间。这样做可以有条件地执行这个块函数调用子系统(金宝app模型)触发子系统(金宝app模型)块。例如,看到的使用MPC控制器块内部函数调用和触发子系统

请注意

你必须执行函数调用子系统触发子系统块的采样率控制器。否则,你可以看到意想不到的结果有两个原因。

  • MV速度向量的第一个元素(这是当前的最后一个值之间的差别的操纵变量)通常是加权和约束假设最后一个MV值发生在过去在样本时间MPC中指定对象,当块执行不同的采样率,这种假设不再成立。

  • 内置的卡尔曼滤波估计使用样本时间MPC中指定对象提供一个当前状态估计MPC优化问题,所以当块执行不同的样品时间,估计国家不再是正确的。

如果你清楚这个参数(默认),样品时间块继承的控制器对象。

查看样本块的时候,在仿真软件模型窗口,金宝app调试选项卡,在信息覆盖,选择颜色文本。有关更多信息,请参见查看样品的时间信息(金宝app模型)

编程使用

块参数:SampleTimeInherited
类型:字符串,特征向量
价值观:“关闭”,“上”
默认值:“关闭”

选择要添加这个参数开关输入端口。当一个非零信号的开关输入端口,控制器评估。看到的是关闭的开关输入端口为更多的细节。

编程使用

块参数:switch_inport
类型:字符串,特征向量
价值观:“关闭”,“上”
默认值:“关闭”

扩展功能

C / c++代码生成
使用仿真软件生成C和c++代码®编码器™。金宝app

PLC的代码生成
使用仿真软件生成结构化文本代码®PLC编码器™。金宝app

版本历史

介绍了R2014b