ディジタルフィルタ

ディジタルフィルタの設計法

ここでは、アナログフィルタからディジタルフィルタに変換する方法を学びます。 方法には、インパルス不変法と双一次変換があります。

インパルス不変法

アナログフィルタの伝達関数を \(H_A(s)\) とし、部分分数分解をした結果が次のようになったとします。

\[ H_A(s)=\sum_k\frac{a_k}{s-s_k} \]

これを逆ラプラス変換すると

\[ \begin{align} h_A(t)&=\mathscr{L}^{-1}[H_A(s)]\\ &=\sum_ka_k\mathscr{L}^{-1}\left[\frac{1}{s-s_k}\right]\\ &=\sum_ka_ke^{s_kt} \end{align} \]

サンプリング周期 \(T_s\) でサンプリングすると

\[ h[n]=h_A(nT_s)=\sum_ka_ke^{s_knT_s} \]

これをz変換すると

\[ \begin{align} H(z)&=\mathcal{Z}[h[n]]=\sum_{n=0}^\infty h[n]z^{-n}\\ &=\sum_{n=0}^\infty \sum_ka_ke^{s_knT_s}z^{-n}\\ &=\sum_ka_k\sum_{n=0}^\infty (e^{s_kT_s}z^{-1})^n\\ &=\sum_k\frac{a_k}{1-e^{s_kT_s}z^{-1}} \end{align} \]

双一次変換

アナログシステムで、入力信号を \(x(t)\) 、出力信号を \(y(t)\) として

\[ y(t)=\int_0^tx(t)dt \]

と表されるシステムを考えます。 この両辺をラプラス変換すると

\[ Y(s)=\frac{1}{s}X(s) \]

となり、アナログの伝達関数 \(H_A(s)\) は

\[ H_A(s)=\frac{Y(s)}{X(s)}=\frac{1}{s} \]

となります。

このシステムを離散化するために、時間区間 \([nT_s,(n+1)T_s]\) で積分を考えます。 台形則より

\[ \int_{nT_s}^{(n+1)T_s}x(t)dt \approx \frac{T_s}{2}\{x(nT_s)+x((n+1)T_s)\} \]

という近似を用います。

\[ y((n+1)T_s)-y(nT_s) \approx \frac{T_s}{2}\{x(nT_s)+x((n+1)T_s)\} \]

よって、\(x[n]=x(nT_s),~y[n]=y(nT_s)\) として、次の差分方程式を考えることにします。

\[ y[n+1]-y[n] = \frac{T_s}{2}(x[n]+x[n+1]) \]

この両辺をz変換すると

\[ zY(z)-Y(z) = \frac{T_s}{2}(X(z)+zX(z)) \]
\[ (z-1)Y(z) = \frac{T_s}{2}(1+z)X(z) \]

よって、ディジタルの伝達関数 \(H_D(z)\) は

\[ H_D(z)=\frac{Y(z)}{X(z)}=\frac{T_s}{2}\frac{1+z}{z-1}=\frac{T_s}{2}\frac{1+z^{-1}}{1-z^{-1}} \]

アナログの伝達関数 \(H_A(s)\) とディジタルの伝達関数 \(H_D(z)\) が等しいとすると

\[ \frac{1}{s}=\frac{T_s}{2}\frac{1+z^{-1}}{1-z^{-1}} \]

となり

\[ s=\frac{2}{T_s}\frac{1-z^{-1}}{1+z^{-1}} \]

という変換を得ます。 これを双一次変換といいます。

演習問題

問題
解答