資源簡介
動態矩陣 約束預測控制 二次規劃 最優解 很好地跟蹤設定值
代碼片段和文件信息
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
評論
共有 條評論