⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 yucekongzhi.m

📁 基于动态矩阵控制算法的模型预测控制
💻 M
字号:

A1=[1.597 -0.7725 0.2694;1 0 0;0 0.5 0];
B1=[0.25;0;0];
C1=[-0.1 0.1088 -0.0992];
D1=zeros(1,1);
[A,B,C,D]=d2cm(A1,B1,C1,D1,1);   %从离散系统上的状态方程转化为连续系统上的状态方程
[num,den]=ss2tf(A,B,C,D);        %将连续系统上的状态方程转化为传递函数方程
G=tf(num,den)
g=poly2tfd(num,den,0,0);         %将通用的传递函数模型转换为MPC传递函数模型
plant=tfd2step(50,1,1,g);        %plant为开环对象的实际阶跃响应模型
plotstep(plant);
P=6;                             %预测时域长度n为6(动态矩阵A(n*m维的常数阵))
M=2;                             %控制时域长度m为2
ywt=[];                          %二次型性能指标的输出误差加权矩阵
uwt=1;                           %二次性能指标的控制量加权矩阵  
Kmpc=mpccon(plant,ywt,uwt,M,P);  %Kmpc为模型预测控制器的增益矩阵
[clmod,cmod]=mpccl(plant,plant,Kmpc);   %clmod为模型预测控制闭环系统的MPC状态空间模型,cmod为控制器的MPC状态空间模型
tend=100;r=5;                         
[y,u,ym]=mpcsim(plant,plant,Kmpc,tend,r);%y为系统输出,u为控制变量,ym为模型预测输出
plotall(y,u,2)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -