この間、ハードオフのジャンク品でwiiモーションプラスが100円で売っていたので購入。
そのうちクアッドコプターを自作してみたいと思っているため、いろいろいじってノウハウ蓄積しておこうかと思います。
検索かけると詳しくWiiモーションプラスのことが書かれてるサイトがあったので参考にさせて頂く。相変わらずこの手のサイトは英語が多いため理解に時間がかかる。
まずはWiiモーションプラスの分解と思ったが、なんとY字型のドライバーが必要。仕方なくラジペンでメリメリ筐体を破壊。
▼中身を取り出す。
マイコンとの接続のためヌンチャク接続用コネクタを利用。
▼ピッチがずれてたがピンソケットを無理やりはんだ付け
ソケットにしておいたほうがこれからいろいろ試行するのに便利かと。
▼そしてWiiモーションプラスとArduinoでI2C通信接続。
さっそくI2Cスキャナーを使ってデバイスアドレスを確認。いろんなサイトの情報通り0x52でした。
こちらにWiiモーションプラスのデータフォーマットが詳しく解説されています。いろんなサイトでサンプルコードありますが、少しおかしなところもあるので解説読み込んである程度自分でソース理解して修正したほうが良いかと・・。
とりあえずヨーイング方向だけ取り込んでArduinoIDEでシリアルプロットしてみました。
▲Wiiモーションプラスをヨーイング方向に一定周期で振ってみたときのプロットです。ArduinoIDEのシリアルプロットで描画してます。
きれいに角速度を出力しているようです。今後、角速度からの積分で角度算出またドリフトの影響を見ていきたいと思います。
コメント