MATLABシステムのシミュレーションとモデリング(6)-過渡応答解析-任意の入力

先読み:MATLABシステムシミュレーションとモデリング(5)-過渡応答解析-インパルス応答

3ランプ応答

MATLABにはランプ応答のコマンドはありません。したがって、ステップステップを採用する必要がありますS T Eのp個のコマンドやlsimをlsimをL S I Mのコマンド。

具体的には、伝達関数G(s)G(s)を取得します。ランプ応答G S に変更することができ、ゼロ初期条件下G(s)はG(s)はG s ssで割った値次に、ステップ応答コマンドを採用します。

たとえば、閉ループシステムは次のとおりです
。C(s)R(s)= 1 s 2 + s + 1 {\ frac {C(s)} {R(s)}} = {\ frac1 {s ^ 2 + s +1}}R s C S =s2+s+11
ユニットランプ入力の場合、R(s)= 1 s 2 R(s)= {\ frac {1} {s ^ 2}}R s =s21、所以:
C(s)= 1 s 2 + s + 1 1 s 2 = 1(s 2 + s + 1)s 1 s C(s)= {\ frac {1} {s ^ 2 + s + 1 }} {\ frac {1} {s ^ 2}} = {\ frac {1} {(s ^ 2 + s + 1)s}} {\ frac 1 {s}}C s =s2+s+11s21=s2+s+1 s1s1
手順は次のとおりです。

num = [0 0 0 1];
den = [1 1 1 0];
t = 0:0.1:7;
c = step(num, den, t);
plot(t, c, 'o', t, t, '-')
grid
title('Unit-Ramp Response Curve for System G(s)=1/(s^2+s+1)')
xlabel('t Sec')
ylabel('Input and Output')

MATLABの出力は次のとおりです。

ここに画像の説明を挿入

状態空間方程式について

4任意の入力

lsim()次のコマンドを使用します

手順は次のとおりです。

lsim(num,den,u,t);
lsim(sys,u,t);
y = lsim(A,B,C,D,u,t);
[y,t] = lsim(sys,u,t);
lsim(A,B,C,D,u,t);
y = lsim(num,den,u,t); 
y = lsim(sys,u,t);

初期条件がゼロの場合、入力時間関数uへの応答を生成します。tが次の式で与えられる場合:

t = 0:Δt:T t = 0:\ Delta t:T t=0ΔトンT

次に、Δt= 0 \ Delta t = 0からΔトン=0t = T t = Tに始まりますt=Tが終了する区間のすべてのΔt\ Delta tΔのトンの応答、計算する秒TTをTttですtの正の整数倍。左側のパラメーターを使用した次のコマンドは注目に値します。

y = lsim(sys,u,t);

出力応答yyを返しますyマトリックスyyyの各列が出力され、その行数はttに等しくなります。tの長さ。ただし、グラフィックは描画されません。応答曲線を描画するには、次のコマンドを使用する必要があります。

plot(t, y)

状態空間モデルの初期条件がゼロでない場合、次のコマンドを実行します。

lsim(sys, u ,t, x)

システム入力uuを生成しますuと初期条件x0 x_0バツ0応答、ここでx 0 x_0バツ0初期状態です。また、次のコマンドにも注意してください。

lsim(sysl, sys2, ... ,  u, t)

同じ絵に複数のシステムを描くことができます(sys 1、sys 2、...)(Sys1、sys2、...)s y s 1 s y s 2 レスポンス

おすすめ

転載: blog.csdn.net/weixin_43229030/article/details/110847855