主要内容

generateExplicitOptions

显式MPC生成的优化选项

描述

例子

选择= generateExplicitOptions (MPCobj当转换传统MPC控制器时,创建一组选项,MPCobj,以使用generateExplicitMPC.返回设置的选项,并将所有选项设置为默认值。使用点符号来修改选项。

例子

全部折叠

在传统MPC控制器的基础上,为双积分器装置生成显式MPC控制器。

定义双积分装置。

Plant = tf(1,[1 0 0]);

为此设备创建一个传统(隐式)MPC控制器,采样时间为0.1,预测范围为10,控制范围为3。

Ts=0.1;p=10;m=3;MPCobj=mpc(电厂,Ts,p,m);
- - - >“权重。mpc对象的操纵变量属性为空。假设默认的0.00000。- - - >“权重。mpc对象的操控变量率属性为空。假设默认的0.10000。- - - >“权重。mpc对象的属性为空。假设默认的1.00000。

要生成显式MPC控制器,必须指定参数范围,如状态值和操纵变量。为此,请生成范围结构。然后,将结构中的值修改为所需的参数范围。

范围=generateExplicitRange(MPCobj);
-->将“mpc”对象的“Model.Plant”属性转换为状态空间。-->将模型转换为离散时间。假设测量的输出通道#1没有增加干扰。-->“mpc”对象的“Model.Noise”属性为空。假设每个测量输出通道上存在白噪声。
range.State.Min(:)=[-10;-10];range.State.Max(:)=[10;10];range.Reference.Min=-2;range.Reference.Max=2;range.manufactedVariable.Min=-1.1;range.manufactedVariable.Max=1.1;

使用更稳健的简化方法进行计算。使用generateExplicitOptions要创建默认选项集,然后修改polyreduction选项

选择= generateExplicitOptions (MPCobj);opt.polyreduction = 1;

生成显式MPC控制器。

EMPCobj = generateExplicitMPC (MPCobj、范围、选择)
明确的MPC控制器  --------------------------------------------- 控制器样品时间:0.1(秒)多面区域:1参数的数量:4解决方案简化:没有状态估计:默认卡尔曼增益  --------------------------------------------- “EMPCobj类型。为原始的隐式MPC设计。“EMPCobj类型。'的有效参数范围。“EMPCobj类型。OptimizationOptions'用于多参数QP计算的选项。“EMPCobj类型。piecewiseaffinsolution '的区域和增益在每个解决方案。

输入参数

全部折叠

传统MPC控制器,指定为MPC控制器对象。使用货币政策委员会命令创建传统的MPC控制器。

输出参数

全部折叠

用于生成显式MPC控制器的选项,作为结构返回。在创建结构时,所有选项都设置为默认值。使用点符号来修改您想要更改的任何选项。字段及其默认值如下所示。

NNLS求解器使用的零检测公差,指定为一个正标量值。

冗余不等式约束检测公差,指定为正标量值。

平面区域检测公差,指定为一个正标量值。

约束归一化公差,指定为一个正标量值。

NNLS求解器的最大迭代次数,指定为正整数。

QP解算器迭代的最大次数,指定为正整数。

用于检测区域平整度的二分法迭代的最大次数,指定为正整数。

用于删除冗余不等式的方法,指定为1(鲁棒)或2(快速)。

另请参阅

R2014b中引入