mpcmove
计算最优控制动作并更新控制器状态
语法
描述
使用此命令可以用一个植物模型来闭环模拟MPC控制器。调用mpcmove
在for循环中重复计算被操纵变量并在每个时间步上更新控制器状态。
返回最优移动mv
= mpcmove (MPCobj
,xc
,ym
,r
,v
)mv
并更新状态xc控制器的MPCobj
.
被操纵的变量mv
在当前时间计算给出:
控制器对象,
MPCobj
,一个指向当前估计扩展状态的指针,
xc
,测量的植物产量,
ym
,输出引用,
r
,测量的扰动输入,
v
.
如果ym
,r
或v
被指定为[]
,或者如果它作为最后一个输入参数缺失,mpcmove
使用适当的MPCobj.Model.Nominal
而不是价值。
当使用默认状态估计时,mpcmove
还更新句柄对象引用的控制器状态xc
.因此,当使用默认状态估计时,xc
总是指向更新后的控制器状态。在使用自定义状态估计时,应该进行更新xc
之前每一个mpcmove
调用。
[___) = mpcmove (___,
中的默认约束和权重选项
)MPCobj
中指定的值选项
,一个mpcmoveopt
对象。使用选项
在闭环模拟过程中提供约束和权重的运行时调整。
例子
输入参数
输出参数
提示
选择
使用
sim卡
当不使用运行时约束或权重变化时,用于设备不匹配和噪声模拟。使用MPC设计师交互式设计和模拟模型预测控制器的应用程序。
使用MPC控制器块,用于代码生成。金宝app
使用
mpcmoveCodeGeneration
在代码生成之前模拟MPC控制器。
版本历史
之前介绍过的R2006a