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);