0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

scilab計算問題!その2

Posted at

まえがき

前回は伝達関数に含まれる粘性係数などのシミュレーション問題をやりました。
今回はちょっと実用的な、収束値などを~%以下にするにはなどをシミュレーションをします。

実行環境

・windows10
・scilab(6.1.0)64bit

問題

問題全体の前提
※時間軸は0秒~1秒まで0.01秒刻みで設定すること。
モータを単純比例フィードバック制御で動かすことを考える。
伝達関数はG(s)=k / ( Js+(B+k) )


問題d
定常偏差を0にするために積分器 1/s を導入する。
モータ制御の伝達関数に積分器を加えると、伝達関数は

G(s)=k / ( Js^2 + (B*s +k) ) になる。

Scilabを用いて以下のシミュレーションを行い、結果(波形)を記入せよ。
イナーシャ : J=0.05
粘性係数 : B=1
比例ゲイン : k=5

積分器が含まれていない伝達関数での出力波形A(黒)
積分器が含まれている伝達関数での出力波形B(青)

s =%s;
t=0:0.01:1;

J = [0.05 0.05]
B = [1 1]
Kp = [5 5]
Col = [1 2]

for i=1:1:2;
    if i==1 then
        // 積分器なし(黒)
        P = (Kp(i)/(J(i)*s + B(i) + Kp(i)));
    else
        // 積分器あり(青)
        P = ( Kp(i)/(J(i)*s^2 + B(i)*s + Kp(i)) );
    end;

    sys = syslin('c', P);
    y = csim('step', t, sys);
    plot2d(t, y, Col(i)), xgrid();   
end;

kadai03_d.jpg


問題e
Scilabを用いて以下のシミュレーションを行い、結果(波形)を記入せよ。
※ただし、時間軸を伸ばすため t=0:0.01:5 に変更 
積分器 あり
イナーシャ : J=1
粘性係数 : B=5
比例ゲイン : k=5 → k=10 → k=20

s =%s;
t=0:0.01:5;

J = [1 1 1]
B = [5 5 5]
Kp = [5 10 20]
Col = [1 2 3]

for i=1:1:3;
    P = ( Kp(i)/(J(i)*s^2 + B(i)*s + Kp(i)) );

    sys = syslin('c', P);
    y = csim('step', t, sys);
    plot2d(t, y, Col(i)), xgrid();    
end;

kadai03_e.jpg


問題f
Scilabを用いて以下のシミュレーションを行い、結果(波形)から定常偏差の値を読み取れ。
積分器 なし
イナーシャ : J=0.4
粘性係数 : B=0.9
比例ゲイン : k=5

s =%s;
t=0:0.01:1;

J = [0.4]
B = [0.9]
Kp = [5 5]
Col = [1]

for i=1:1:2;
    P = (Kp(i)/(J(i)*s + B(i) + Kp(i)));

    sys = syslin('c', P);
    y = csim('step', t, sys);
    plot2d(t, y, Col(i)), xgrid();    
end;

kadai03_f.jpg


問題g
以下の条件を満たすために必要十分な比例ゲインの値を求めよ。
イナーシャ : J=2
粘性係数 : B=2
定常偏差 : 目標値1の10%以下

s =%s;
t=0:0.01:1;

J = [2 2 2]
B = [2 2 2]
Kp = [15 17 20]
Col = [1 2 3]

for i=1:1:3;
    // 積分器なし
    P = (Kp(i)/(J(i)*s + B(i) + Kp(i)));

    sys = syslin('c', P);
    y = csim('step', t, sys);
    plot2d(t, y, Col(i)), xgrid();   
        
end;

kadai03_g.jpg

あとがき

基礎中の基礎はこれで抑えられたと思う。
ひさびさに使うときに思い出す用です^^

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?