センサーから生の値を取得した後、または生の値を使用可能なデータに変換した後、フィルタリング(カルマン/ローパス)を行いますか?それは重要ですか?もしそうなら、なぜですか?
例:IMUから生の値を取得した後にフィルターするか、生の値を使用可能なデータに変換した後にフィルターします。飛行力学パラメータ。
センサーから生の値を取得した後、または生の値を使用可能なデータに変換した後、フィルタリング(カルマン/ローパス)を行いますか?それは重要ですか?もしそうなら、なぜですか?
例:IMUから生の値を取得した後にフィルターするか、生の値を使用可能なデータに変換した後にフィルターします。飛行力学パラメータ。
回答:
KFは、すべてのセンサー入力とセンサーの相関に基づいてロボットの姿勢を推定します。コンパスデータに対してEKFを実行する場合、コンパスの読み取り値がどの程度であるかを判断するためにロボットのポーズが本当に必要になります。それがなければ、ローパスフィルタリングになります(KFのような確率的フィルターは使用しません)。
すべてを同じフレームに入れる前にフィルタリングすると、フィルタリングでどの情報をフィルタリングする必要があるのかわかりません。「使用可能」の意味が正確にはわからないので、すべてのセンサーデータをロボットの座標フレームに変換したと思います。その場合、すべてのセンサー測定値を1つのEKFに直接入力できるため、フィルタリングは非常に簡単です。実際、これは私がよく知っているフィルタリングを行う「通常の」方法です。
例:IMUがロボットに接続されているとします。IMUは、ロボットのポーズの推定に使用されます。IMUがロボットの動きについて何かを伝えている限り、どの単位を使用してもかまいません。次に、IMU の相互関係を使用して、コンパスや走行距離計など、動きを測定する他の物に使用できます。それがKFの目的です。KFは、バンドパスフィルターなどのセンサーフィルターではありません。
生データをフィルタリングします。
ほとんどのノイズとエラーを(うまくいけば)取り除きます。通常、生データはそれほど役に立ちません。
ジャイロはドリフトし、コンパスには多くのノイズがあります。カルマンは両方を削除できます。