文档

指定替代成本函数与非对角的权重矩阵

这个例子展示了如何使用分支权重矩阵模型预测控制器。

定义植物模型和MPC控制器

线性模型有两个输入和两个输出。

工厂= ss (tf ({1 1; 1,2}, {[1 5 1]、[。7。5 1];[1。4 2],[1 - 2]}));[A, B, C, D] = ssdata(植物);t = 0.1;%采样时间工厂=汇集(植物、Ts);%转换为离散时间

创建MPC控制器。

p = 20;%预测地平线m = 2;%控制地平线mpcobj = mpc(植物、t、p、m);
- - >“权重。ManipulatedVariables”属性的“mpc”对象是空的。假设默认的0.00000。- - >“权重。ManipulatedVariablesRate”属性的“mpc”对象是空的。假设默认的0.10000。- - >“权重。OutputVariables”属性的“mpc”对象是空的。假设默认的1.00000。

定义约束操纵变量。

mpcobj。MV =结构(“最小值”{3;2},“马克斯”{3;2},“杀鼠灵”-100},{-100;“RateMax”,{100;100});

定义分支输出的重量。注意,它被指定在一个细胞数组。

噢= [1]* [1];重量%分支输出,对应于((y1-r1)——(y2-r2)) ^ 2mpcobj.Weights。OutputVariables ={噢};%分支输入重量,对应于(u1-u2) ^ 2mpcobj.Weights。ManipulatedVariables ={0.5 *噢};

模拟使用SIM命令

指定模拟选项。

Tstop = 30;%的仿真时间Tf =圆(Tstop / Ts);%的模拟步骤r = 1 (Tf, 1) * (1 - 2);%的参考轨迹

运行闭环仿真和阴谋的结果。

[y t u] = sim (mpcobj, Tf, r);次要情节(211)情节(t y (: 1) - r (1,1) - y (:, 2) + r(1、2));网格标题(“(y_1-r_1)——(y_2-r_2)”);次要情节(212)情节(t, u);网格标题(“u”);
- - >输出假设扰动添加到测量输出通道# 1是集成的白噪声。- - >输出假设扰动添加到测量输出通道# 2是集成的白噪声。- - >”模型。没有ise" property of the "mpc" object is empty. Assuming white noise on each measured output channel.

使用仿真软件模拟®金宝app

这个例子中,运行仿真软件®是必需的。金宝app

如果~ mpcchecktoolboxinstalled (“金宝app模型”)disp (”金宝app模型(R)需要运行这个示例的一部分。”)返回结束

现在在仿真软件模拟闭环MPC®。金宝app

mdl =“mpc_weightsdemo”;open_system (mdl);sim (mdl)

bdclose (mdl);
这个主题有帮助吗?