デジタルフィルター周波数応答設計ツール 戻る
Signal Processing

デジタルフィルター周波数応答設計ツール

Butterworth・Chebyshev・Bessel IIRフィルターのゲイン・位相特性をリアルタイム可視化。フィルタータイプ・次数・カットオフをスライダーで操作しながら設計を理解しよう。

フィルターパラメータ
フィルタータイプ
フィルターファミリー
次数 n 4
カットオフ周波数 fc 1000 Hz
サンプリングレート fs
リップル ε (dB) 1.0
プリセット
フィルター特性
-3dB周波数
fc×10での減衰
fc位相 (°)
ロールオフ dB/oct

理論メモ

Butterworth: $|H|^2 = \dfrac{1}{1+\left(\Omega/\Omega_c\right)^{2n}}$
双一次変換: $s = \dfrac{2f_s(z-1)}{z+1}$
Chebyshev: $|H|^2 = \dfrac{1}{1+\varepsilon^2 T_n^2(\Omega/\Omega_c)}$

振幅特性 |H(f)| (dB)

位相特性 ∠H(f) (°)

インパルス応答 h[n]

デジタルフィルター周波数応答設計ツールとは

🧑‍🎓
「フィルターの『ファミリー』って何ですか?ButterworthとかChebyshevとか、どれを選べばいいのかわからないです」
🎓
「ざっくり言うと、『通過帯域をどういう形で通すか』の設計思想の違いだね。例えば、音声EQで平坦な音を求めるならButterworth、急峻にカットしたいならChebyshevが向いてる。上の『フィルターファミリー』を切り替えて、周波数応答のグラフがどう変わるか、すぐに確かめてみよう」
🧑‍🎓
「『次数 n』を大きくするとグラフがすごく急になるんですね!でも、位相の線がぐにゃっと曲がってます。これって何か問題あるんですか?」
🎓
「その通り!次数を上げると遮断は鋭くなるけど、位相の歪みも大きくなるんだ。実務では、例えば心電図の波形みたいに『形』が大事な信号を扱う時は、位相歪みが小さいBesselフィルターを選ぶことが多いよ。『位相』のタブを選んで、ファミリーを変えながら位相の曲がり方を比べてみて」
🧑‍🎓
「『プリセット』に『地震計』ってありますけど、あれはどんな設定なんですか?リップル(ε)が0.5dBになってます」
🎓
「地震の微動から大きな揺れまで、広い周波数帯域の信号を記録するために、通過帯域内の特性を厳密に制御する必要があるんだ。Chebyshevフィルターで少しリップルを許容して、帯域端まで確実に信号を通す設定の一例だね。『音声EQ』プリセットを選ぶと、今度はButterworthで平坦な特性になっているのがわかるよ。用途に合わせて最適なファミリーとパラメータを探すのが設計の醍醐味だ」

物理モデルと主要な数式

アナログプロトタイプフィルターの設計は、複素周波数sを用いた伝達関数H(s)で行われます。以下は代表的なフィルターの振幅特性の二乗を表す式です。

$$|H(j\Omega)|^2 = \dfrac{1}{1+\varepsilon^2 T_n^2(\Omega/\Omega_c)}$$

ここで、$\Omega$はアナログ角周波数、$\Omega_c$は遮断角周波数、$n$はフィルター次数、$\varepsilon$はリップル係数です。$T_n(x)$はn次のチェビシェフ多項式で、これが通過帯域内に等リップル(振幅誤差)を生み出します。$\varepsilon=0$とするとButterworthフィルターの式 $1/(1+(\Omega/\Omega_c)^{2n})$ に帰着します。

設計したアナログフィルターH(s)をデジタルフィルターH(z)に変換するために、双一次変換が広く用いられます。これはs平面からz平面への変換式です。

$$s = \dfrac{2f_s(z-1)}{z+1}$$

ここで、$f_s$はサンプリング周波数、$z$はZ変換の変数です。この変換により安定したデジタルフィルターが得られますが、周波数軸に歪み(プリワーピング)が生じるため、設計段階でカットオフ周波数を事前補正する必要があります。このツールではその補正も内部で行われています。

実世界での応用

オーディオ信号処理:音楽再生システムのイコライザー(EQ)やスピーカーのクロスオーバーネットワークに使用されます。Butterworthフィルターは通過帯域が平坦なため、音色を変えずに不要な周波数帯域(例:低音域の高調波)をカットするのに適しています。

生体医工学:心電図(ECG)や脳波(EEG)の計測装置では、筋肉の動きによる高周波ノイズ(筋電図)や電源周波数(50/60Hz)のハムノイズを除去するためにローパス/バンドストップフィルターが用いられます。波形の形状解析が重要なので、位相歪みの少ないBesselフィルターが好まれます。

地震観測:地震計は極めて広いダイナミックレンジと周波数帯域の信号を記録します。微動から本震までを歪みなく記録するため、通過帯域特性が厳密に管理された(リップルが規定された)バンドパスフィルターが設計の鍵となります。

通信システム:無線機やモデムでは、特定のチャネル(周波数帯)の信号だけを抽出し、隣接チャネルの干渉を強力に抑制するために、遮断特性が急峻なバンドパスフィルターが必要です。この場合、リップルを許容してでも鋭いロールオフを得られるChebyshevや楕円関数フィルターが検討されます。

よくある誤解と注意点

まず、「遮断周波数は完全に切れる境目」と思っていないか? 実際は、遮断周波数(カットオフ周波数)は通常、振幅が-3dB(約70%)になる点を指す。例えば1kHzのローパスフィルターを設計しても、1.5kHzの信号が完全にゼロになるわけじゃない。この「減衰の緩やかさ」が次数で決まるんだ。次に、「位相は後で何とかなる」という油断。特にリアルタイム処理で複数のフィルターを直列につなぐと、位相のずれが積み重なって波形が大きく歪む。音声で「もやっとした」感じになったり、制御系で発振の原因になったりする。最後に、プリセットの盲信。「心電図プリセット」はあくまで一例。実際のECG計測では、電源ノイズ(50/60Hz)を除去する「ノッチフィルター」を追加したり、患者の状態に応じて帯域を微調整する必要がある。ツールの出力は設計の「スタート地点」と捉えよう。

関連する工学分野

このツールの背後にある「周波数応答の設計と評価」という考え方は、CAEを含む多くの分野で共通言語だよ。構造振動解析では、建物や機械の固有振動数を「通過帯域」、減衰を「フィルターの減衰特性」とみなして、特定周波数の振動を低減する設計に応用できる。自動車のサスペンション設計が好例だ。熱流体解析(CFD)でも、乱流モデルにおける高周波数ノイズの分離や、時系列データのスムージングにデジタルフィルター理論が使われる。さらに、制御工学とはほぼ兄弟分野と言える。フィルターの伝達関数 $H(s)$ の設計は、フィードバック制御系の補償器 $C(s)$(PID制御器など)の設計と数学的に同じ。位相遅れが安定性に与える影響を学ぶことは、制御系の位相余裕を考えることにも直結するんだ。

発展的な学習のために

まず次の一歩は、「FIRフィルター」との比較だ。このツールで扱っているIIRは少ない次数で急峻な特性を得られるが、線形位相性が保てない。一方、FIRは計算量は多いが正確な線形位相が実現できる。オーディオや通信ではFIRがよく使われるので、その違いを体感しよう。次に、数学的背景として「Z変換」と「極・零点配置」を学ぶことを強く勧める。伝達関数 $H(z)$ の極が単位円内にあると安定、というルールを知れば、フィルターの振る舞いがグラフのカーブではなく「設計パラメータの根源」から理解できる。最後に、実装面では「量子化誤差」に注意だ。理論通り設計しても、固定小数点DSPやFPGAで実装すると、係数の丸め誤差で特性が変わったり、発振したりすることがある。シミュレーションツールで理論特性を確認した後は、実機での検証が不可欠だよ。