私は経験豊富なソフトウェアエンジニアであり、スマートフォンセンサーに取り組んでいます。DSPの基本的なEEクラスを受講し、自分の知識を応用しようとしています。畳み込み、伝達関数、z変換などを理解していると思います。FIRおよびIIRフィルターについて少し知っています。
今、ソフトウェアAPIとドキュメントを読むと、時間領域のセンサーデータにLPFを適用していることがわかります。私はあなたが差分方程式を使用してそれを行うことを知っています(例えば、y [i] = y [i-1] + 2 * x [i])ここで、時間信号を(たとえば)sinc波の係数と特定のカットオフ周波数で畳み込みます。したがって、「ローパスフィルター」の口語的な使用は、私にとって十分に正確ではありません。
たとえば、Google Android APIには次のドキュメントがあります:http : //developer.android.com/reference/android/hardware/SensorEvent.html#values
public void onSensorChanged(SensorEvent event)
{
// alpha is calculated as t / (t + dT)
// with t, the low-pass filter's time-constant
// and dT, the event delivery rate
final float alpha = 0.8;
gravity[0] = alpha * gravity[0] + (1 - alpha) * event.values[0];
gravity[1] = alpha * gravity[1] + (1 - alpha) * event.values[1];
gravity[2] = alpha * gravity[2] + (1 - alpha) * event.values[2];
linear_acceleration[0] = event.values[0] - gravity[0];
linear_acceleration[1] = event.values[1] - gravity[1];
linear_acceleration[2] = event.values[2] - gravity[2];
}
そのローパスフィルターをどのように解釈しますか?カットオフ周波数は何ですか?遷移帯域幅とは何ですか?平均化を行うためだけにこのLPFを使用していますか?