2016/01/20

移動平均とローパスフィルタ

デジタル制御ではセンサのAD変換値を平滑化するために移動平均を使います.
この移動平均を連続系で考えてみるために考察します.

サンプリング周波数$ f_s $[Hz], 移動平均数 N個の移動平均は、ローパスフィルタと同じような役割をします.

カットオフ周波数$ f_c $ は、おおよそ下記で表されます.
\[
f_c = \frac{0.443}{\sqrt{N^2 - 1}} \cdot f_s
\]

公式の理屈は参考文献[1]を参照していただいて、
まずステップ応答を比べてみます.

計算条件:カットオフ周波数44.3Hzで合わせたフィルタ
① サンプリング周波数 1kHz, 10個の移動平均
② サンプリング周波数 2kHz, 20個の移動平均
③ カットオフ周波数 44.3Hzの1次ローパスフィルタ $ \frac{2 \pi \cdot 44.3}{s+(2  \pi \cdot 44.3)} $
④ カットオフ周波数 44.3Hz、減衰比0.7の2次ローパスフィルタ $ \frac{(2 \pi \cdot 44.3)^2}{s^2+2 \cdot 0.7 \cdot (2 \pi \cdot 44.3)s+(2 \pi \cdot 44.3)^2} $

応答としては2次のローパスフィルタに近いと考えたらよいのでしょうか?


次はボード線図で比べてみます.Scilabを使って①、②、③、④を比較した図です.
(考え方は[2]を参考にしました)

ボード線図の見どころは

a. 先にあげた公式はゲインが-3.0dBになる周波数を求めている
  (4つの曲線はすべて44.3Hz, -3.0dBを通る)

b. 移動平均のフィルタとしての特性は、移動平均数 ÷ サンプリング周波数で決まる.

c. 0~100Hzの範囲での移動平均は1次のローパスフィルタより強く、2次のローパスフィルタに似ている
      (先のステップ応答で見られた通り)

d. 100~500Hzまで見てみると、ところどころ減衰が悪い周波数があり、
 その周波数では1次LPF程度のレベルで考えたほうが良い

というところだと思います.



参考文献
[1] 移動平均の周波数特性 - メモがわり http://seesaawiki.jp/w/weidows95/d/%B0%DC%C6%B0%CA%BF%B6%D1%A4%CE%BC%FE%C7%C8%BF%F4%C6%C3%C0%AD

[2]デジタルフィルタを計算する
http://bluefish.orz.hm/sdoc/digifil2.html#移動平均フィルタ

0 件のコメント :

コメントを投稿