bode関数を用いて​出力させた.ゲイン・​位相データを用いたb​ode線図の作図に関​して

25 ビュー (過去 30 日間)
keka
keka 2019 年 10 月 18 日
回答済み: keka 2019 年 10 月 18 日
[mag,phase,wout] = bode(sys,w) を利用して,
離散系のsysに対するゲインおよび位相データをワークスペースへ出力させる事を試みました。
しかし,出力されるデータを用いて,similogx(wout,mag) として描画するbode線図と,
そのまま bode(sys,w) を 用いて描画するbode線図が一致しません。
(ゲイン,位相に対応する周波数成分に10倍分のズレが生じています)
この原因についてご教示ください。
(サンプルコードを添付いたします。)

採用された回答

Naoya
Naoya 2019 年 10 月 18 日
Figure1 と Figure2 で、横軸 (周波数軸) の単位が一致していないかもしれません。
bode 関数に戻り値を付ける場合は、wout の単位は rad/sec となります。
〇 rad/sec に合わせる場合は、 Figure2 側で、任意の場所で右クリックし、[プロパティ] よりプロパティエディタを開きます。
[単位]タブに移動し、 周波数の単位を Hz ⇒ ラジアン/秒 に変更します。
〇 Hz に合わせる場合は、 Figure1 側で semilogx で与える wout の箇所を 2*pi で割り算します。
% 修正例
semilogx(wout/(2*pi),mag_out); % 振幅応答
semilogx(wout/(2*pi),phase_out); % 位相応答

その他の回答 (1 件)

keka
keka 2019 年 10 月 18 日
ご回答ありがとうございます,解決いたしました。
bode関数の戻り値には,周波数の単位が(rad/sec)として扱われるのですね。
bode関数を用いた描画で,横軸のデフォルト単位をHzに設定していたことを失念していました。

カテゴリ

Find more on プロットのカスタマイズ in Help Center and File Exchange

タグ

製品


リリース

R2019a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!