一般的なディジタルフィルタのインパルス不変法による設計手順を示していきます。
手順1.アナログフィルタの伝達関数の設計
アナログフィルタの設計仕様を満たす伝達関数G(s)を求めます。
手順2.アナログフィルタの伝達関数の部分分数展開
ただし、N=k1+2k2
手順3.インパルス不変法によるディジタルフィルタの伝達関数の算出の実施
scilabを使った設計
下記の仕様を満たすバタワース形フィルタをディジタルフィルタ化します。
通過域エッジ周波数fp:20[Hz]
通過域偏差δp:0.3
阻止域エッジ周波数fs:30[Hz]
阻止域偏差δs:0.3
サンプリング周波数:100[Hz]
scilabコマンド
-->gs=ssbutt(20,0.3,30,0.3,'hz')
gs =
2024593.5
---------------------------------------
2 3
2024593.5 + 32007.755s + 253.01287s + s
-->aspec(gs,[0,50],'hz',1);
-->sfrq=100;T=1/sfrq;
-->gs1=expand(gs)
gs1 =
! 0 - 126.50643s 126.50643 !
! - -------------------------- ------------- !
! 2 !
! 1 16003.878 + 126.50643s + s 126.50643 + s !
-->hz=imp2z(gs1)
hz =
! 0 - 1.2650643 + 0.6525077p 1.2650643 !
! - -------------------------- ------------- !
! 2 !
! 1 1 - 0.4861239p + 0.2822211p 1 - 0.2822211p !
-->zspec(hz,2)
結果表示
アナログバタワース形フィルタの周波数特性
アナログバタワース形フィルタをインパルス不変法で近似したディジタルフィルタ
振幅に対して、近似出来ている事が分かります。