资源简介
动态矩阵 约束预测控制 二次规划 最优解 很好地跟踪设定值
代码片段和文件信息
clc;
clear all;
close all;
%建立传递函数
Ts=2; %采样时间
G=tf([-0.7115][163776 23608 14853.56 278.605 1.41125]);
set(G‘InputDelay‘21);
[y0t0]=step(G0:Ts:1000);
%设置DMC参数
N=500;
P=300;
m=2;
t=1; %控制加权系数
w=100; %设定值
%初始化DMC
A=zeros(Pm);
a=zeros(N1);
I=eye(m);
for i=1:N
a(i)=y0(i);
end
for i=1:P
for j=1:m
if i>=j
A(ij)=a(i-j+1);
end
end
end
H=zeros(mm)
C=zeros(m1);
y=zeros(N1);
u=zeros(N1);
A0=zeros(PN-1);
for i=1:P
for j=N-2:-1:1
if N-j+1+i-1<=N
A0(ij)=a(N-j+1+i-1)-a(N-j+i-1);
else
A0(ij)=0;
end
end
A0(iN-1)=a(i+1);
end
%DMC程序
for k=2:N
U0=zeros(N-11);
for i=1:N-1
if k-N+i<=0
U0(i)=0;
else
- 上一篇:getpointsXYZ.rar
- 下一篇:电镀用的整流器设计/MATLAB
评论
共有 条评论