主要内容

在平衡操作点设计模型预测控制器

这个例子展示了如何设计一个模型预测控制器与非零名义值。

获得的植物模型线性化的非线性植物模型®非零稳态操作点。金宝app

线性化非线性植物模型

非线性植物是在仿真软件中实现模型金宝appmpc_nloffsets和线性化使用默认的操作条件线性化函数从仿真软件控制设计。金宝app

创建一个操作点规范当前模型的初始条件。

plant_mdl =“mpc_nloffsets”;op = operspec (plant_mdl);

计算这些初始条件的操作点。

[op_point, op_report] = findop (plant_mdl, op);
操作点搜索报告:- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - opreport mpc_nloffsets =操作点搜索报告模型。(时变组件评估在时间t = 0)操作点规范成功实现。状态:- - - - - - - - - - - Min x马克斯dxMin dx dxMax………………………………(1) mpc_nloffsets /集成商负0.57514正0 -1.8208 e-14 0 (2) mpc_nloffsets / Integrator2负2.1503正0 -8.3846 e-12 0输入:- - - - - - - - - - -看上去最小u最大长得一样(1)mpc_nloffsets / In1负-1.252正输出:- - - - - - - - - - - Min y马克斯说______ (1)mpc_nloffsets /着干活负-0.52938正无穷

提取名义状态、输出和输入值的计算操作。

x0 = [op_report.States(1)方式;op_report.States(2)方式);y0 = op_report.Outputs.y;情况= op_report.Inputs.u;

线性化的工厂初始条件。

工厂=线性化(plant_mdl op_point);

MPC控制器设计

创建一个MPC控制器对象与指定的样品时间Ts,预测地平线20.和控制的地平线3

t = 0.1;mpcobj = mpc(3)植物,Ts, 20日;
- - >“权重。ManipulatedVariables”属性是空的。假设默认的0.00000。- - >“权重。ManipulatedVariablesRate”属性是空的。假设默认的0.10000。- - >“权重。OutputVariables”属性是空的。假设默认的1.00000。

在控制器中设置名义值。

mpcobj.Model。名义=结构(“X”x0,“U”情况,“Y”,y0);

设置输出测量噪声模型(白噪声、零均值、标准偏差= 0.1)。

mpcobj.Model。噪音= 0.1;

设置控制变量约束。

mpcobj.MV。Max = 0.2;

使用仿真软件模拟金宝app

指定输出信号的参考价值。

r0 = 1.5 * y0;

开放和模拟模型。

mdl =“mpc_offsets”;open_system (mdl) sim (mdl)
- - >将模型转换为离散时间。- - >输出假设扰动添加到测量输出通道# 1是集成的白噪声。

模拟使用sim卡命令

模拟控制器。

Tf =圆(10 / Ts);r = r0 *的(Tf, 1);[y₁, t1, u1, x1, xmpc1] = sim (mpcobj, Tf, r);

情节和仿真结果进行比较。

次要情节(1、2、1)情节(y.time y.signals.values, t1, y1, t1, r)传说(“非线性”,“线性化”,“参考”)标题(“输出”)网格次要情节(1、2、2)情节(u.time u.signals.values, t1, u1)传说(“非线性”,“线性化”)标题(“输入”网格)

bdclose (plant_mdl) bdclose (mdl)

另请参阅

|