主要内容

在运行时改变输入和输出边界

这个例子展示了如何在实时控制中改变输入和输出饱和限制。对于命令行和Simulink®模拟,您可以在每个控制金宝app间隔指定更新的输入和输出约束。MPC控制器将输入和输出信号保持在指定的范围内。

有关在运行时更新线性约束的更多信息,请参见在运行时更新约束

创建工厂模型和MPC控制器

定义一个具有采样时间的SISO离散时间工厂Ts

t = 0.1;plant = c2d(tf(1,[1 .8 3]),Ts);[A, B, C, D] = ssdata(植物);

创建具有指定预测地平线的MPC控制器,p、控制地平线,c,采样时间,Ts.使用植物作为内部预测模型。

p = 10;m = 4;mpcobj = mpc(植物、t、p、m);
- - - >“权重。mpc对象的操纵变量属性为空。假设默认的0.00000。- - - >“权重。mpc对象的操控变量率属性为空。假设默认的0.10000。- - - >“权重。mpc对象的属性为空。假设默认的1.00000。

指定控制器调优权重。

mpcobj.Weights.MV = 0;mpcobj.Weights.MVrate = 0.5;mpcobj.Weights.OV = 1;

对于本例,受操纵变量的上界和下界以及输出变量的上界在运行时是不同的。为此,您必须首先在MPC控制器对象中为这些约束定义初始虚拟有限值。指定的值MV。最小值MV。马克斯,机汇。马克斯

在运行时,使用mpcmoveopt对象或MPC控制器模块的相应输入信号。

mpcobj.MV.Min = 1;mpcobj.MV.Max = 1;mpcobj.OV.Max = 1;

使用Simulink仿真模型金宝app

打开仿真软金宝app件模型。

mdl =“mpc_varbounds”;open_system (mdl)

在该模型中,输入最小约束端口和最大约束端口(uminumax)和输出最大约束端口(ymax)使能。由于最小输出边界是无约束的,因此ymin输入端口被禁用。

配置输出设定点,裁判,和模拟持续时间,

ref = 1;尖= 20;

运行模拟,并在I/O范围内查看输入和输出响应。

(mdl sim (mdl) open_system (' /我/ / O '])
- - - >转换”模型。将“mpc”对象的“属性”放入状态空间。——>假设添加到测量输出通道#1的输出扰动为集成白噪声。——>”模式。mpc对象的Noise属性为空。假设每个测量输出通道上都有白噪声。

在命令行模拟模型

指定设备和控制器的初始状态。

x = 0(大小(B, 1), 1);xmpc = mpcstate (mpcobj);

将MPC控制器的闭环输出、操纵变量和状态轨迹存储在数组中YYUU,XX,分别。

YY = [];UU = [];XX = [];

创建一个mpcmoveopt对象,用于指定运行时绑定值。

选择= mpcmoveopt;

运行模拟循环。

t = 0:圆形(尖/ Ts)%存储植物状态。XX = [XX;x];%计算和存储工厂输出。没有直接的馈通%从输入到输出。y = C * x;YY = [YY;y ');%从Simulink输出的数据中获取参考信号值金宝app%的模拟。ref = yout.Data (t + 1、2);%更新输入和输出边界。为了保持一致性,请使用由Simulink仿真输出的%约束值。金宝app选项。MVMin = uout.Data (t + 1、2);选项。MVMax = uout.Data (t + 1, 3);选项。OutputMax = yout.Data (t + 1, 3);%计算MPC控制动作。u = mpcmove (mpcobj xmpc y ref,[],选项);%更新植物状态并存储输入信号值。x = A*x + B*u;UU = [UU;u ');结束

比较仿真结果

绘制来自Simulink和命令行模拟的输入和输出信号以及变化的输入和输出边界。金宝app

图subplot(1,2,1) plot(0:Ts:Tsim,[UU uout.Data(:,1) uout.Data(:,2) uout.Data(:,3)])“输入”)传说(命令行输入的模金宝app型输入的“下限”...“上界”“位置”“东南”)子plot(1,2,2) plot(0:Ts:Tsim,[YY yout.Data(:,1) yout.Data(:,3)])“输出”)传说(的命令行输出模金宝app型输出的“上界”...“位置”“东南”

命令行模拟和Simulink模拟的结果是相同的。金宝appMPC控制器保持输入和输出信号在指定的范围内,因为约束在整个仿真过程中变化。

bdclose (mdl)

另请参阅

相关的话题