極、零点および周波数特性の表示方法

デジタル信号処理で頻繁に確認する項目として
伝達関数の極、零点および周波数特性があります。

scilabでのそれらの確認方法を
4tapのFIRフィルタを例にとって説明します。



■4tapのFIRフィルタとは
4tapのFIRフィルタの差分方程式は以下になります。

y(n) = \frac{x(n) + x(n-1) + x(n-2) + x(n-3)}{4}   ---(1)

FIRフィルタとかいうとカタい感じがしますが、
まあ、4つの数値の平均値を求める式と同じですね。


(1)式をZ変換して伝達関数を求めます。



■z変換
 Y(z) = \fra{X(z) + X(z)z^{-1} + X(z)z^{-2} + X(z)z^{-3}}{4}
 Y(z) = \frac{X(z)(1 + z^{-1} + z^{-2} + z^{-3})}{4}
 \frac{Y(z)}{X(z)} = \frac{1 + z^{-1} + z^{-2} + z^{-3}}{4}

以上より、伝達関数は以下になります。
H(z) = \frac{1 + z^{-1} + z^{-2} + z{-3}}{4} ---(2)



■scilabでの伝達関数の扱い
今、求めた伝達関数H(z)の
零点、周波数特性をscilabにて表示します。

変数zを定義します。
z= %z

伝達関数を定義
h=(1+z^(-1)+z^(-2)+z^(-3))/4;

伝達関数をシステムとして定義します。
sys=syslin('d',h);



■伝達関数の極の表示
scilabの極表示は関数plzr()を使用します。
plzr(sys);




■伝達関数の周波数特性表示
周波数特性は関数bode()を使用します。
bode(sys,1e-3,0.5,1e-3);

最終更新:2009年06月21日 17:12
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。
添付ファイル