👨🎓个人主页:研学社的博客
💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
💥1 概述
在线控制器必须在使用前进行设置。要设置状态空间MPC控制器,用户必须提供状态空间模型,由A,B,C和D矩阵表示(注意:它应该是离散时间),预测视界,P,移动视界,M和性能权重,Q和R。默认初始状态和输入设置为零。
SSMPC=MPCSETUP(A,B,C,D,P,M,Q,R,X0,U0);
从 MPC 安装程序返回的函数句柄是一个联机控制器 SSMPC。控制器通过证明两个输入来调用:电流测量、Y 和未来参考、参考。返回时,它产生最佳输入,U 表示下一步:
U = SSMPC(Y,Ref);
双CSTR(连续搅拌反应罐)过程如下所示。
📚2 运行结果
部分代码:
% MPC parameters
% The MPC controller is configured with following parameters.
% Prediction horizon and moving horizon
p=10;
m=3;
% Performance wights
Q=1.5*eye(2*p);
R=eye(2*m)*0.1;
%% MPC set-up
% The MPC controller is set-up by calling SSMPCSETUP:
ssmpc=mpcsetup(A,Bu,C,D,p,m,Q,R);
%% Simulation
% 150 seconds (1500 sampling intervals) simulation is conducted with
% several setpoint changes and random cooling water temperature changes
% within positive and negative 1 degree.
% Simulation length and variables for results
N=1500;
x0=zeros(6,1);
Y=zeros(N,2);
U=zeros(N,2);
% Predefined reference
T=zeros(N,2);
T(10:N,1)=1;
T(351:N,1)=3;
T(600:N,1)=5;
T(1100:N,1)=3;
T(100:N,2)=2;
T(451:N,2)=1;
T(700:N,2)=4;
T(1200:N,2)=2;
% Simulation
%%
for k=1:N
% Process disturbances
w=Bd*(rand(2,1)-0.5)*2;
% Measurements noise
v=0.01*randn(2,1);
% actual measurement
y=C*x0+v;
% online controller
u=ssmpc(y,T(k:end,:)');
% plant update
x0=A*x0+Bu*u+w;
% save results
Y(k,:)=y';
U(k,:)=u';
end
%% Results
% The simulation results are summarized in two sub-plots.
t=(0:N-1)*0.1;
subplot(211)
plot(t,Y,t,T,'--','linewidth',2)
🎉3 参考文献
部分理论来源于网络,如有侵权请联系删除。
[1]曹永、杨志杰,“多目标过程可控性分析”,计算机与化学工程,28(2004),83--90.2.
[2] Al Seyab,RK和Cao,Y,“基于差分递归神经网络的预测控制”,计算机与化学工程