Kmpc=mpccon(model,ywt,uwt,M,P)
model:控制器设置中要用到的模型
ywt:用于设定值跟踪误差的权重矩阵
uwt:用于控制变量的改变
[y,u]=mpcsim(plant,model,Kmpc,tend,r,usat,tfilter,dplant,dmodel,dstep)
plant:MPC模型中代表对象的模型
tend:仿真中用到的时间间隔
r:设定值矩阵
usat:给控制变量设定限制的矩阵
tfilter:噪声滤波器的时间常数矩阵,以及加入输出的未测量干扰。
例子
g=poly2tfd(0.0296,[1.25 1 0],0,1.5);%将传递函数模型转换为MPC传递函数模型
delt=0.06; ny=1; tfinal=20;
model=tfd2step(tfinal,delt,ny,g);%传递函数转换为阶跃响应模型
plant=model;
P=70; M=2;
ywt=[];
uwt=[];
Kmpc=mpccon(model,ywt,uwt,M,P);%模型预测控制器增益矩阵计算
tend=15;
r=[1];
usat=[-80 80 25];
tfilter=[];
dmodel=[];
dplant=[];
dstep=[];
[y,u]=mpcsim(plant,model,Kmpc,tend,r,usat,tfilter,dplant,dmodel,dstep);%模型预测控制仿真
plotall(y,u,delt);