デジタル信号におけるRCハイパスフィルタ

デジタル信号におけるRCハイパスフィルタは次の式となる。 \[y_i=ay_{i-1}+a(x_i-x_{i-1}) \tag{1}\]
なぜこの式がRCハイパスフィルタになるのか、ここで詳しく解説してみたいと思う。
基本的にローパスフィルタの記事で説明した方法と同じやり方でハイパスフィルタは導き出すことができる。
アナログ回路のRCハイパスフィルタ
電圧を分かりやすくするために最初の回路図を少し変形させた。

回路図より、 \[E_R(t)=I(t)R \tag{1}\] である。 また、 \[q(t)=CE_C=C(E(t)-E_R(t)) \tag{2}\] \[I(t)=\frac{dq(t)}{dt} \tag{3}\] なので、式1は
\[E_R(t)=\frac{dq(t)}{dt}R=C(\frac{dE(t)}{dt}-\frac{dE_R(t)}{dt})R\tag{4}\] となる。よって出力電圧(E_R(t))は次式で導き出される。 \[E_R(t)=RC(\frac{dE(t)}{dt}-\frac{dE_R(t)}{dt})\tag{5}\]
電圧をデジタルデータで考える

ここで、電圧をサンプリングデータに置き換える。(E(t))を(x_i)とし、(E_R(t))を(y_i)とすると、式5は次のようになる。ただし、(ΔT)はサンプリング周期である。
\[y_i=RC(\frac{x_i-x_{i-1}}{ΔT}-\frac{y_i-y_{i-1}}{ΔT}) \tag{6}\]
さて、式6を(y_i)について解くと、 \[y_i=\frac{RC}{RC+ΔT}y_{i-1}+\frac{RC}{RC+ΔT}(x_i-x_{i-1})\tag{7}\] となる。
ここで(a=)に置き換えると、 \[y_i=ay_{i-1}+a(x_i-x_{i-1}) \tag{8}\] となり、RCハイパスフィルタのデジタルフィルタ計算式が導き出された。
カットオフ周波数
最後にカットオフ周波数と(a)の関係を導き出してみよう。
係数(a)は、 \[a=\frac{RC}{RC+ΔT}\tag{9}\] であった。 また、RC回路におけるカットオフ周波数(f_c)は次式で求められる。 \[f_c=\frac{1}{2πRC}\tag{10}\] これを展開すると、 \[RC=\frac{1}{2πf_c}\tag{11}\] となる。式11を式9へ代入して係数(a)について展開すれば、 \[a=\frac{1}{2πΔTf_c+1} \tag{12}\] の関係となる。
関連記事
- デジタル信号におけるRCローパスフィルタ
- RCローパスフィルタのステップ応答
- はじめてのラプラス変換
- 【Raspberry Pi】ステップ応答による抵抗値の測定
- 【自作マイクへの道①】ECM(エレクトレットコンデンサマイク)の使い方