マイクロマウスのジャイロセンサの誤差の補正をやってみた
2020年6月7日
こんにちは。最近はモチベーションが下がり、やる気があまりでてこないです。先週は、ブログを書くことができなかったので更新ができませんでした。ブログを始めて3カ月でついに1週間で一回更新するということを諦めました。2週間ぶりの更新です!
先日、とある方にジャイロセンサの変換用の係数には誤差があるから、係数の誤差がなくなるように物理量の変換用の係数にゲインをかければよくなるという話を伺って実際に実装したらよくなったのでメモがきとして残します。
結果
変則4輪のハーフサイズマウスについているMPU-6500を使用して実際に行った結果、とてもよくなりました。
以前までは超信地旋回が180度回転を上手くすることができずI1成分を上げてゴリ押ししていました2が、I成分をあげなくてもしっかりとあうようになりました。
データシートを確認
早速、データシートを確認したいと思います。
MPU-6500 Product Specification Revision 1.1より引用
Sensitivity Scale Factor Tolerance に注目すると、スケール変換用の誤差は25度でpm3%あるよと書いてありました。
他にも誤差はあるようですが、物理量変換時にこれだけの誤差がのっているのは辛いですよね。超信地旋回を複数回やるとどんどんずれていく理由がわかったような気がします。
実装(簡単)
ゲインをかけるだけでOK。
// gyro は取得値(16bit)として変換のところにゲインをかける
// この場合は、-2%の誤差を補正しようとしている
omega = (float)gyro / GYRO_FACTOR * 0.98f );
こんな感じです。MPU-6500との通信関連については
を参考にしていただければと思います。
さいごに
データシートの細部までしっかりと読むことの大切さをしりました。これをやるだけで、角度が以前よりも綺麗に合うようになるかもしれません。ぜひ試してみてください。
関連記事
マイクロマウスのスラロームの調整方法を考える
マイクロマウス関連記事のまとめはこちら。 私なりのマイクロマウスのターンの調整方 ...
マイクロマウスの設計・製作時のチェック項目/故障・おかしな動作をしたときに確認すること
マイクロマウス関連記事のまとめはこちら。 マイクロマウスがしっかり走っていたと思 ...
マイクロマウスのパラメータ調整について考える
マイクロマウス関連記事のまとめはこちら。 こんにちは。そらです。今回はマイクロマ ...