このフォーラムへの最初の投稿です。これが正しく行われていることを願っています。過去に加速度の二重積分に関するいくつかのスレッドがあったことを知っています。また、200k+ 軍用グレードのセンサーではない加速度計に固有のエラーについても知っています。幸いなことに、私の目的では、10 秒以内でほぼ正確 (+/- 3 インチ) である必要があります。
私はもうほとんどそこにいます。bno055 IMU の線形加速を使用しています。50hz (20ms ごと) のレートでサンプリングしています。サンプリングするたびに、基本的な台形積分を使用して、ACC から速度、速度から位置に移動します。静止エラーをスローする「識別ウィンドウ」と、特定のカウント数で加速度が 0 になった後に速度を 0 に戻す「移動終了検出」コードがあります。
それはファッションの後に機能しています。もう少しうまく機能する必要があります。加速度計を動かすと、停止するまで位置がかなり正確に移動するという、非常に奇妙なキックバックが見られます。その後、位置が数インチ「キックバック」します。私よりずっと賢い友人を連れてきて、台形積分で使用する最後の 2 つのデータ ポイントの代わりに 4 つまたは 5 つのデータ ポイントを使用して、よりスマートに統合することを勧めました。
私の質問: 最後の 4 つまたは 5 つのデータ ポイントを使用して、基本的な台形積分よりも正確に積分するにはどうすればよいですか? Euler と RK4 を調べてみましたが、高度な数学をやったのは久しぶりで、どこから始めればよいかわかりませんでした。誰かがかなり簡単に説明できれば、それは素晴らしいことです. ありがとう。背景として、このコードはすべてマイクロコンピューターで実行されているため、matlab を介してデータを実行することはできません。
PS。ハイパスフィルターの使用も推奨されましたが、デジタルハイパスフィルターについて読み始めたとき、私はそれを理解できませんでした. よりスマートな統合から始めて、それが何をするか見てみようと思いました。