特定のシステムのステップ応答をlsim関数を使用して複製しようとしていますが、結果の出力が正しくありません。私が間違っていることは何ですか?matlabを使用してlsimを使用して閉ループシステム応答を実行
STEP()を使用:
s = tf('s');
G = 56.54/(0.12*s^2+0.6*s+58.31);
D = 0.21 + 19.95/s + 0.04*s;
H = G*D/(1+G*D);
y = 2.5*step(H);
plot(y)
lsimを使用():ここで
は私のコードの比較だya = 0;
e = 2.5;
t1 = 0:.05:10;
er = 2.5*ones(length(t1),1);
G = 56.54/(0.12*s^2+0.6*s+58.31);
D = 0.21 + 19.95/s + 0.04*s;
GDss = ss(D*G);
x = [0 0 0];
for k = 1:100
[y,t,x] = lsim(GDss,er,t1,x);
ya(k) = y(length(t1));
er = (e - y(length(t1)))*ones(length(t1),1);
x = x(98:100);
end
plot(ya)
プロットのyと屋は同じで、 "必要がある" が、それは何が起こっているのではありません。 ヘルプ?