2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

フィルターの特性と遅れの違い|LPF・HPF・バンドパスの使い分け

Posted at

遅れのないフィルタ・微分処理についての整理メモ

遅れのない処理

遅れのないフィルタとしては filtfilt
遅れのない微分としては 中央差分微分 が代表的である。

これらはいずれも、

  • 未来のデータを含めて計算する
  • 位相遅れが発生しない

という特徴を持つ。

モデル上では使えない点に注意

ただし、これらの手法は
Simulinkモデル上ではリアルタイム実装できないため、
基本的には 前処理(オフライン処理)専用 となる。

通常のフィルタや微分は、

  • 現在値
  • 過去の値
  • 過去の傾き

を用いて計算するため、必ず遅れ(位相遅れ)が発生する

あえて遅れを入れる場合

一方で、意図的に遅れを発生させたい場合も存在する。

例えば、

  • ハンドルトルクをモデルに入力する場合
  • 高周波成分が制御や挙動確認の邪魔になる場合

などでは、
ローパスフィルタ(LPF)やバンドパスフィルタを用いて、
信号を整形することが多い。

基本的な考え方としては、

可能であれば遅れは小さいほうが良い

ため、前処理が可能な場合は
filtfilt や中央差分微分を使用するほうが望ましいと考えている。

MATLABでのフィルタ設計

MATLABでフィルタを設計する際は、
designfilter を使用することが多い

ローパスフィルタ(LPF)

ローパスフィルタは、

  • エンジン振動
  • センサー由来の高周波ノイズ

などを除去する目的で使用する。

実務上、数十Hz付近にノイズが集中するケースが多く、
それ以上の周波数成分が不要であれば、
カットオフ周波数をやや低めに設定することで、
ノイズをほぼ除去することが可能になる。

なお、カットオフ周波数付近の成分は完全には消えないため、
余裕をもった設定が必要になる点には注意したい。

バンドパスフィルタ

バンドパスフィルタは、

  • 低周波側にもノイズが乗っている場合
  • 特定の周波数帯のみを取り出したい場合

に有効である。

例えば、
「ある周波数帯だけを抽出したい」といったケースで使用する。

ハイパスフィルタ(HPF)

以下のような場合には、ハイパスフィルタの使用を検討する

  • 本来ゼロ付近のはずなのに、値が乗っている
  • 長時間信号を確認すると、全体が斜めに傾いている(ドリフト)

ただし、HPFは十分に長い信号に対してのみ使用することを推奨する

低いカットオフ周波数のHPFを使用した場合、

  • 信号の開始直後
  • 信号の終了付近

では、信頼性の低いデータ区間が発生する

そのため、

  • カットオフ周波数が低いほど
  • 信号の前後で注意すべき区間が長くなる

という点に注意が必要である。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?