MPC控制器

模拟模型预测控制器

  • 库:
  • 模型预测控制工具箱

描述

MPC控制器块接收当前测量的输出信号(),参考信号(REF)和可选测量干扰信号(医学博士)。块计算最佳操作变量(mv)通过使用默认的KWIK求解器或自定义QP求解求解一个二次规划问题。有关更多信息,请参见QP解决者

要使用仿真和代码生成块,你必须指定一个MPC对象,它定义了模型预测控制器。这个控制器必须已经为它所控制的工厂设计好了。

由于MPC控制器块使用MATLAB函数块,它需要编译每次更改MPC对象和块的时间。同时,由于MATLAB®不允许编译后的代码驻留在任何MATLAB产品文件夹中,您必须使用非MATLAB文件夹在Simulink上工作万博1manbetx®使用MPC块时建模。

港口

输入

展开全部

需要输入

植物输出参考值,指定为行向量信号或矩阵信号。

使用跨越预测水平线相同的参考值,连接REF到一个行向量的信号与NY元素,其中Ny是输出变量的数目。每个元素指定一个输出变量的参考。

以改变在从时间预测范围(预览)的参考文献中k+ 1,k+p,连接REF一个矩阵信号Ny列和高达p行。在这里,k现在是几点p是预测层。每一行包含一个预测层步骤的引用。如果指定的值小于p行,最后的引用用于预测层的其余步骤。

测量的输出信号,指定为矢量信号。MPC控制器使用所测量的植物输出,以提高其状态的估计。如果你的控制器使用默认状态估计,你必须连接被测设备输出到输入端口。如果控制器使用自定义状态估计,则必须将信号连接到X [K | K]输入端口。

依赖

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

自定义状态估计,指定为矢量信号。MPC控制器使用连接状态估计,而不是使用其内置估计器估计状态。如果您的控制器使用自定义状态估计,则必须将当前状态估计连接到X [K | K]输入端口。如果控制器使用默认状态估计,则必须将信号连接到输入端口。

即使在MPC优化中不使用测量噪声状态(如果有),自定义状态向量也必须包含定义的所有状态mpcstate控制器的对象,包括被控对象、干扰对象和噪声模型状态。

当一种可选的估计技术被认为优于内置的估计器时,或者当状态完全可测时,使用自定义状态估计。

依赖

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

额外的输入

如果控制器模型已测量的扰动,启用该输入端口,并连接一个行向量或矩阵信号。如果您的控制器具有测量的扰动,您必须启用该端口。

为了在预测范围使用相同的测量的干扰值,连接医学博士到一个行向量的信号与N医学博士元素,其中N医学博士为被操作变量的数量。每个元素指定为一个测量的干扰值。

以改变在从时间预测范围(预览)的干扰k时间k+p,连接医学博士一个矩阵信号N医学博士列和高达p+1行。在这里,k现在是几点p是预测层。每一行包含一个预测跨度一步干扰。如果指定的值小于p+1行,最终的扰动用于预测层的剩余步骤。

控制信号在前一控制间隔内用于工厂,指定为长度矢量信号Nmv,其中Nmv为被操作变量的数量。使用此端口时:

  • 你知道你的控制器并不总是在工厂的控制

  • 当实际的MV信号应用于电厂时,可能与控制器产生的值不同,如控制信号饱和

控制器状态估计假设MV为分段常数。因此,在时间tk,ext.mv值必须是倍之间的有效MVtk - 1tk。例如,如果MV实际上在这个区间内变化,那么您可以提供在某个时刻的时间平均值tk

请注意

  • 连接ext.mv对MV信号实际应用于电厂的前一控制区间。通常,这些MV信号是由控制器生成的值,但情况并非总是如此。例如,如果你的控制器离线并运行在跟踪模式;也就是说,控制器输出的不是驱动装置,而是实际控制信号ext.mv可以帮助实现无缝转换时,控制器切换回联机。

  • 使用此选项可能会导致在Simulink模型的代数环,因为有直接馈通从万博1manbetxext.mv运行轨迹的mv外港。为了防止这种代数循环,插入一个内存块或单位延迟块。

对于使用用于平滑转换的外部操纵变量输入端口的示例,请参见开关控制器在线和离线与保险杠转移

依赖

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

要关闭控制器优化计算,请连接开关为一个非零信号。

当不需要控制器输出时,例如系统手动操作或另一个控制器接管时,禁用优化计算可以减少计算工作量。但是,控制器继续以通常的方式更新其内部状态估计。因此,它随时准备恢复优化计算开关信号返回到零。虽然控制器优化关闭时,块通过当前ext.mv向控制器输出信号。如果ext.mvinport未启用,控制器输出保持在禁用优化时的值。

对于使用用于平滑转换的外部操纵变量输入端口的示例,请参见开关控制器在线和离线与保险杠转移

依赖

要启用该端口,选择使用外部信号来启用或禁用优化参数。

若要指定被操纵的变量目标,请启用此输入端口,并连接行向量或矩阵信号。要使给定的被操纵变量跟踪其指定的目标值,还必须为该被操纵变量指定一个非零调优权值。

为了在预测范围使用相同的操作量的目标,连接mv.target到一个行向量的信号与Nmv元素,其中Nmv为被操作变量的数量。每个元素指定操作变量的目标。

根据时间变化预测范围(预览)的目标k时间k+p-1,连接mv.target一个矩阵信号Nmv列和高达p行。在这里,k现在是几点p是预测层。每一行包含一个预测层步骤的目标。如果指定的值小于p行,最终的目标是用于预测跨度的其余步骤。

依赖

要启用该端口,选择操作变量的目标参数。

在线约束

最小输出变量约束,指定为包含的行向量Ny有限值,其中Ny是输出的数量。每个元素指定的下限为输出变量。的的第i个元素YMIN取代了OutputVariables .Min(我)在运行时,控制器的性能。

如果较低的控制器对象绑定指定了输出变量没有,则相应的连接的信号值将被忽略。

如果未选择该参数,则块使用存储内的恒定的约束值其MPC对象。

请注意

使用矩阵信号不能在指定时间运行时间变化的制约。

如果OutputVariables .Min(我)将控制器的属性指定为向量(即约束在预测范围内变化),则的第i个元素YMIN替换此向量中的第一个有限项,其余的值将移位以保留相同的约束配置文件。

依赖

要启用该端口,选择下OV限制参数。

最大输出变量约束,指定为包含一个行向量Ny有限值,其中Ny是输出的数量。每个元素指定的上限为输出变量。的的第i个元素YMAX取代了OutputVariables(ⅰ)。最大在运行时,控制器的性能。

如果一个输出变量不具有上在控制器对象绑定指定,那么相应的连接的信号值将被忽略。

如果未选择该参数,则块使用存储内的恒定的约束值其MPC对象。

请注意

使用矩阵信号不能在指定时间运行时间变化的制约。

如果OutputVariables(ⅰ)。最大将控制器的属性指定为向量(即约束在预测范围内变化),则的第i个元素YMAX替换此向量中的第一个有限项,其余的值将移位以保留相同的约束配置文件。

依赖

要启用该端口,选择上层OV限制参数。

最小操纵变量的约束,指定为包含一个行向量Nmv有限值,其中Nmv为被操作变量的数量。每个元素指定的下限为一个操纵变量。的的第i个元素umin取代了ManipulatedVariables .Min(我)在运行时,控制器的性能。

如果较低的控制器对象绑定指定的操作量没有,则相应的连接的信号值将被忽略。

如果未选择该参数,则块使用存储内的恒定的约束值其MPC对象。

请注意

使用矩阵信号不能在指定时间运行时间变化的制约。

如果ManipulatedVariables .Min(我)将控制器的属性指定为向量(即约束在预测范围内变化),则的第i个元素umin替换此向量中的第一个有限项,其余的值将移位以保留相同的约束配置文件。

依赖

要启用该端口,选择较低的MV限制参数。

最大操作量的限制,指定为包含一个行向量Nmv有限值,其中Nmv为被操作变量的数量。每个元素指定操作变量的上限。的的第i个元素UMAX取代了ManipulatedVariables(ⅰ)。最大在运行时,控制器的性能。

如果一个操纵变量不具有上在控制器对象绑定指定,那么相应的连接的信号值将被忽略。

如果未选择该参数,则块使用存储内的恒定的约束值其MPC对象。

请注意

使用矩阵信号不能在指定时间运行时间变化的制约。

如果ManipulatedVariables(ⅰ)。最大将控制器的属性指定为向量(即约束在预测范围内变化),则的第i个元素UMAX替换此向量中的第一个有限项,其余的值将移位以保留相同的约束配置文件。

依赖

要启用该端口,选择上层MV限制参数。

操作变量约束矩阵,指定为Nc——- - - - - -Nmv矩阵信号,其中Nc是混合输入/输出约束的数目和Nmv为被操作变量的数量。

如果您定义EMPC对象,必须将信号连接到E输入端口。否则,将零矩阵与正确的大小连接。

要指定运行时混合输入/输出限制,使用E与沿着输入口F,G,年代港口。这些约束替换了前面使用的混合输入/输出约束setconstraint。有关混合输入/输出约束的详细信息,请参见关于输入,输出的线性组合的约束条件

混合输入/输出约束的数量不能在运行时更改。因此,Nc必须在行数相匹配E矩阵指定使用setconstraint

依赖

要启用该端口,选择自定义限制参数。

控制的输出约束矩阵,指定为Nc——- - - - - -Ny矩阵信号,其中Nc是混合输入/输出约束的数目和Ny为工厂输出的数量。如果您定义FMPC对象,必须将信号连接到F具有相同行数的输入端口。否则,将零矩阵与正确的大小连接。

要指定运行时混合输入/输出限制,使用F与沿着输入口E,G,年代港口。这些约束替换了前面使用的混合输入/输出约束setconstraint。有关混合输入/输出约束的详细信息,请参见关于输入,输出的线性组合的约束条件

混合输入/输出约束的数量不能在运行时更改。因此,Nc必须在行数相匹配F矩阵指定使用setconstraint

依赖

要启用该端口,选择自定义限制参数。

定制约束矢量,指定为长度的行向量信号Nc,其中Nc是混合输入/输出约束的数量。如果您定义GMPC对象,必须将信号连接到G具有相同行数的输入端口。否则,将零矩阵与正确的大小连接。

要指定运行时混合输入/输出限制,使用G与沿着输入口E,F,年代港口。这些约束替换了前面使用的混合输入/输出约束setconstraint。有关混合输入/输出约束的详细信息,请参见关于输入,输出的线性组合的约束条件

混合输入/输出约束的数量不能在运行时更改。因此,Nc必须在行数相匹配G矩阵指定使用setconstraint

依赖

要启用该端口,选择自定义限制参数。

测量的干扰约束矩阵,指定为Nc——- - - - - -nN矩阵信号,其中Nc是混合输入/输出约束的数量,和Nv是测量的扰动的数目。如果您定义年代MPC对象,必须将信号连接到年代具有相同行数的输入端口。否则,将零矩阵与正确的大小连接。

要指定运行时混合输入/输出限制,使用年代与沿着输入口E,F,G港口。这些约束替换了前面使用的混合输入/输出约束setconstraint。有关混合输入/输出约束的详细信息,请参见关于输入,输出的线性组合的约束条件

混合输入/输出约束的数量不能在运行时更改。因此,Nc必须在行数相匹配G矩阵指定使用setconstraint

依赖

要启用该端口,选择自定义限制参数。只有在。时才添加此端口MPC物体测量了扰动。

在线调整权重

要指定运行时输出可变调谐的权重,启用该输入端口。如果禁用此端口,则块将使用Weights.OutputVariables控制器对象的属性。这些调优权值对输出引用的偏差进行补偿。

如果MPC控制器对象在预测范围内使用恒定的输出调优权值,则只能在运行时指定恒定的输出调优权值。类似地,如果MPC控制器对象使用在预测范围内变化的输出调优权值,则只能在运行时指定时变输出调优权值

要通过预测跨度使用不断进行调整的权重,连接y.wt到一个行向量的信号与Ny元素,其中Ny是输出的数量。每个元素指定一个输出变量是非负调谐重量。有关指定调整权重的更多信息,请参阅调整权重

根据时间变化预测范围内的调优权重k+ 1,k+p,连接y.wt一个矩阵信号Ny列和高达p行。在这里,k现在是几点p是预测层。每一行包含一个预测跨度一步调整权重。如果指定的值小于p行,最后一行中的调优权值应用于预测范围的其余部分。有关预测范围内不同权重的更多信息,请参见时变权值和约束条件

依赖

要启用该端口,选择OV权参数。

若要指定运行时操纵的变量调优权值,请启用此输入端口。如果禁用此端口,则块将使用Weights.ManipulatedVariables控制器对象的属性。这些调谐权值惩罚偏离MV目标。

如果MPC控制器对象在预测范围内使用常数操纵变量调优权值,则只能在运行时指定常数操纵变量调优权值。类似地,如果MPC控制器对象使用在预测范围内变化的操纵变量调优权值,则只能在运行时指定时变操纵变量调优权值

要在预测范围内使用相同的调优权值,请连接u.wt到一个行向量的信号与Nmv元素,其中Nmv为被操作变量的数量。每个元素指定一个操作量的非负调谐重量。有关指定调整权重的更多信息,请参阅调整权重

根据时间变化预测范围内的调优权重k时间k+p-1,连接u.wt一个矩阵信号Nmv列和高达p行。在这里,k现在是几点p是预测层。每一行包含一个预测跨度一步调整权重。如果指定的值小于p行,最后一行中的调优权值应用于预测范围的其余部分。有关预测范围内不同权重的更多信息,请参见时变权值和约束条件

依赖

要启用该端口,选择MV的权重参数。

若要指定运行时操作的可变速率调整权重,请启用此输入端口。如果禁用此端口,则块将使用Weights.ManipulatedVariablesRate控制器对象的属性。这些调整的权重惩罚控制动作大的变化。

如果MPC控制器对象使用恒定操纵在预测范围可变速率调谐的权重,可以在运行时仅指定恒定操纵可变调谐率的权重。类似地,如果MPC控制器对象使用操纵变量率调谐权重,超过预测范围变化时,可以指定在运行时仅随时间变化的操作量率调谐权重

要在预测范围内使用相同的调优权值,请连接du.wt到一个行向量的信号与Nmv元素,其中Nmv为被操作变量的数量。每个元素指定一个操纵变量速率一个非负的调谐重量。有关指定调整权重的更多信息,请参阅调整权重

根据时间变化预测范围内的调优权重k时间k+p-1,连接du.wt一个矩阵信号Nmv列和高达p行。在这里,k现在是几点p是预测层。每一行包含一个预测跨度一步调整权重。如果指定的值小于p行,最后一行中的调优权值应用于预测范围的其余部分。有关预测范围内不同权重的更多信息,请参见时变权值和约束条件

依赖

要启用该端口,选择MVRate权参数。

若要指定运行时松弛变量调优权值,请启用此输入端口并连接标量信号。如果禁用此端口,则块将使用Weights.ECR控制器对象的属性。

松弛变量调谐重量没有影响,除非控制器对象定义软约束其相关ECR值是非零值。如果存在软约束,增加了ecr.wt值使得这些约束相对较硬。然后,控制器最小化预测的最坏情况下的约束违规的大小放在更高的优先级。

依赖

要启用该端口,选择ECR重量参数。

在线的视野

预测范围,指定为正整数信号。预测范围的信号值必须小于或等于该最大的预测范围参数。

在运行时,值p覆盖默认的预测范围在控制器对象指定。有关更多信息,请参见在运行时调整地平线

依赖

要启用该端口,选择在运行时调整预测层和控制层参数。

控制范围,指定为下列之一:

  • 小于或等于预测层的正整数信号。

  • 正整数指定阻止间隔长度的矢量信号。有关更多信息,请参见被控变量阻塞

在运行时,值覆盖默认的控制范围在控制器对象指定。有关更多信息,请参见在运行时调整地平线

依赖

要启用该端口,选择在运行时调整预测层和控制层参数。

输出

展开全部

要求输出

最优操作变量控制动作,输出为长度为列向量的信号Nmv,其中Nmv为被操作变量的数量。

如果求解器收敛到局部最优解(qp.status是正的),然后mv包含了最佳的解决方案。

如果求解失败(qp.status是否定的),则mv仍然是在最近成功的解决方案;即,控制器输出冻结。

如果求解器达到迭代的最大数目没有找到的最优解(qp.status是零)和Optimization.UseSuboptimalSolution控制器的特性是:

  • 真正的, 然后mv包括次优解

  • , 然后mv然后mv仍然在其最近成功的解决方案

附加输出

目标函数的成本,作为非负标量信号输出。成本量化到控制器已经实现了其目标的程度。成本值是使用经缩放的MPC成本函数,其中每个术语和量纲无偏移计算。

成本价值只有在。时才是有意义的qp.status输出是负的。

依赖

要启用该端口,选择优化成本参数。

优化状态,输出为整数信号。

如果控制器在给定的控制区间内解决了QP问题,则qp.status输出返回计算中使用的QP求解器迭代次数。该值是一个有限的正整数,与计算所需的时间成正比。因此,较大的值意味着在这个时间间隔内块执行相对较慢。

QP求解器无法找到最优解的原因如下:

  • qp.status=0- QP求解器无法在指定的最大迭代次数内找到解决方案MPC对象。在这种情况下,如果Optimizer.UseSuboptimalSolution控制器的性能是中,块保持其mv输出最近成功的解决方案。否则,它使用最后一个迭代求解过程中发现的次优解。

  • qp.status=1- 该QP解算器检测不可行QP问题。看到监控优化状态,检测控制器故障对于其中一个大的,持续的干扰驱动其指定的边界外部的输出变量的例子。在这种情况下,块保持其mv输出最近成功的解决方案。

  • qp.status=2- QP求解器在求解严重病态QP问题时遇到了数值上的困难。在这种情况下,块保持其mv输出最近成功的解决方案。

在一个实时的应用程序,你可以使用qp.status设置一个报警或采取其他专项行动。

依赖

要启用该端口,选择优化状态参数。

估计的控制器状态在每个控制瞬间,输出为矢量信号。估计的状态包括设备状态、干扰状态和噪声模型状态。

依赖

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

最佳序列

最佳操作量序列,返回为与基质信号p+ 1行和Nmv列,p预测视界和Nmv为被操作变量的数量。

首先pmv.seq包含从当前时间的计算出的最优操作变量值k时间k+p-1。第一排mv.seq包含电流操作量的值(输出mv)。由于控制器没有计算最优控制移动的时间k+p,最后两行mv.seq都是相同的。

依赖

要启用该端口,选择最优控制序列参数。

优化预测模型的状态序列,作为矩阵信号返回p+ 1行和Nx列,p预测视界和Nx是状态的数量。

首先px.seq包含从当前时间的计算出的最优状态值k时间k+p-1。第一排x.seq包含当前估计的状态值。由于控制器不计算最优状态的时间k+p,最后两行x.seq都是相同的。

依赖

要启用该端口,选择最佳状态序列参数。

最佳输出可变序列,返回为与基质信号p+ 1行和Ny列,p预测视界和Ny是输出变量的数目。

首先py.seq包含从当前时间计算出的最优输出值k时间k+p-1。第一排y.seq是根据当前估计的状态和当前测量的扰动(输入的第一行医学博士)。由于控制器不计算在时间最佳输出值k+p,最后两行y.seq都是相同的。

依赖

要启用该端口,选择最佳输出序列参数。

参数

展开全部

指定一个MPC对象,该对象通过输入变量的名称来定义隐式MPC控制器MPC从MATLAB工作区对象。

编程使用

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

指定初始控制器状态。如果保留此参数为空,则块将使用在Model.Nominal财产的MPC对象。若要重写默认值,请创建mpcstate对象,并在字段中输入其名称。

使用此参数使控制器的状态反映在你的模拟你所知的开始真正的工厂环境。此初始状态可以从所定义的标称状态不同MPC对象。

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

编程使用

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

到交互式地修改使用指定的控制器MPC控制器参数,开MPC设计应用通过点击设计。例如,您可以:

  • 导入新的预测模型。

  • 更改范围、约束和权重。

  • 评价他们的线性装置MPC性能。

  • 将更新后的控制器导出到MATLAB工作区。

如果你有一个现有的MPC对象中指定该对象的名称MPC控制器参数。

如果你没有一个现有的MPC对象在工作区MATLAB,离开MPC控制器参数空。随着MPC控制器块连接到工厂,开MPC设计通过点击设计。使用该应用的线性在规定的工作点Simulink模型,并设计万博1manbetx控制器。要使用此设计方法,你必须有万博1manbetx仿真软件控制设计™软件有关更多信息,请参见在Simulink中设计MPC控制器万博1manbetx使用MPC设计器线性万博1manbetx化Simulink模型

一旦你使用指定控制器MPC控制器参数,您可以查看通过单击运行时的稳定性和鲁棒性设计问题评论。有关更多信息,请参见回顾模型预测控制器的稳定性和鲁棒性问题

General选项卡

如果您的控制器已经测量了扰动,则必须选择此参数以添加医学博士输出端口到块。

编程使用

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

选择这个参数来添加ext.mv输入端口,用于该块。

编程使用

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

选择这个参数来添加mv.target输入端口,用于该块。

编程使用

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

选择这个参数来添加成本输出端口到块。

编程使用

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

选择这个参数来添加qp.status输出端口到块。

编程使用

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

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

编程使用

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

选择这个参数来添加mv.seq输出端口到块。

编程使用

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

选择这个参数来添加x.seq输出端口到块。

编程使用

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

选择这个参数来添加y.seq输出端口到块。

编程使用

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

选择此参数可删除输入端口并添加X [K | K]输入端口。

编程使用

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

在线功能选项卡

选择这个参数来添加YMIN输入端口,用于该块。

编程使用

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

选择这个参数来添加YMAX输入端口,用于该块。

编程使用

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

选择这个参数来添加umin输入端口,用于该块。

编程使用

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

选择这个参数来添加UMAX输入端口,用于该块。

编程使用

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

选择这个参数来添加E,F,G,年代输入端口到该块。

编程使用

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

选择这个参数来添加y.wt输入端口,用于该块。

编程使用

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

选择这个参数来添加u.wt输入端口,用于该块。

编程使用

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

选择这个参数来添加du.wt输入端口,用于该块。

编程使用

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

选择这个参数来添加ecr.wt输入端口,用于该块。

编程使用

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

选择这个参数来添加p输入端口,用于该块。

编程使用

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

选择这个参数来添加p输入端口,用于该块。

依赖

若要启用此参数,请选择在运行时调整预测层和控制层参数。

编程使用

块参数:MaximumP
类型:串,特征向量
默认值:“10”

默认条件选项卡

属性执行模拟、调整或线性化的默认块样例时间MPC设计您必须指定一个与Simulink模型设计兼容的示例时间。万博1manbetx

依赖

此参数仅适用于MPC控制器参数是空的,你打开MPC设计使用设计按钮。

编程使用

块参数:n_ts
类型:串,特征向量
默认值:“1”

属性执行模拟、调整或线性化的默认预测范围MPC设计您必须指定一个与Simulink模型设计兼容的预测范围。万博1manbetx

依赖

此参数仅适用于MPC控制器参数是空的,你打开MPC设计使用设计按钮。

编程使用

块参数:N_P
类型:串,特征向量
默认值:“10”

用于执行模拟、调整或线性化的默认操作变量数MPC设计应用程序。您必须指定的值与您的Simulink模型的设计兼容。万博1manbetx

依赖

此参数仅适用于MPC控制器参数是空的,你打开MPC设计使用设计按钮。

编程使用

块参数:n_mv
类型:串,特征向量
默认值:“1”

默认数量测量的扰动的用于执行模拟,修剪,或使用线性化的MPC设计应用程序。您必须指定的值与您的Simulink模型的设计兼容。万博1manbetx

依赖

  • 此参数仅适用于MPC控制器参数是空的,你打开MPC设计使用设计按钮。

  • 要使用此参数,必须选择测量的干扰参数。

编程使用

块参数:n_md
类型:串,特征向量
默认值:“1”

默认不可测的扰动的数目,用于​​执行模拟,修剪,或使用线性化的MPC设计应用程序。您必须指定的值与您的Simulink模型的设计兼容。万博1manbetx

依赖

此参数仅适用于MPC控制器参数是空的,你打开MPC设计使用设计按钮。

编程使用

块参数:n_ud
类型:串,特征向量
默认值:“0”

用于执行模拟、调整或线性化的测量输出的默认数量MPC设计应用程序。您必须指定的值与您的Simulink模型的设计兼容。万博1manbetx

依赖

此参数仅适用于MPC控制器参数是空的,你打开MPC设计使用设计按钮。

编程使用

块参数:n_mo
类型:串,特征向量
默认值:“1”

默认未测量输出的数目,用于​​执行模拟,修剪,或使用线性化的MPC设计应用程序。您必须指定的值与您的Simulink模型的设计兼容。万博1manbetx

依赖

此参数仅适用于MPC控制器参数是空的,你打开MPC设计使用设计按钮。

编程使用

块参数:n_uo
类型:串,特征向量
默认值:“0”

其他选项卡

选择此参数以继承父子系统的样本时间作为块样本时间。这样做允许您在内部有条件地执行这个块函数调用子系统触发子系统块。例如,参见使用MPC控制器块中的函数调用和触发子系统

请注意

你必须执行函数调用子系统触发子系统块的采样率的控制器。否则,您会看到意想不到的结果。

要查看块的示例时间,请在Simulink编辑器中选择万博1manbetx显示>采样时间。选择颜色,注释, 要么所有。有关更多信息,请参见查看样本时间信息(万博1manbetxSIMULINK)。

编程使用

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

选择这个参数来添加开关输入端口,用于该块。

编程使用

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

兼容性的考虑

展开全部

行为R2018b改变

扩展功能

C / C ++代码生成
生成使用的Simulink编码器™C和C ++代码。万博1manbetx

PLC的代码生成
使用Simulink®PLC Coder™生成结构化文本代码。万博1manbetx

之前介绍过的R2006a