MPU6050 + Raspberry Pi Pico(Arduino) -> PCで3Dのキューブを回転表示

前回の記事「Madgwickライブラリの収束を速くする 【Arduino/MPU6050】」の続きです。

角速度(ジャイロ)・加速度センサーMPU6050の角度をPC上で表示するプログラムを作ってみました。

Raspberry Pi Pico(Arduino開発環境)でMPU6050から読み取った角速度・加速度からMadgwickで角度を推定しPCへ送り、PC上で受け取った角度で3Dのキューブを回転させ表示します。
今回はRaspberry Pi Picoを使用しましたが、Arduino UNOなどでも接続ピンが変わるのとタイマーのところを変更すれば行けると思います。

プログラムはGitHubで公開しています。

■Raspberry Pi Pico側
PicoとMPU6050は上の写真のように接続しました。

  Pico               MPU6050
  Pin6 GP4        -> SDA
  Pin7 GP5        -> SCL
  Pin36 3V3(OUT)  -> VCC
  Pin3 GND        -> GND

Raspberry Pi Pico側はArduino開発環境を使用しました。
Arduino開発環境にはearlephilhower版を使用しました。

Raspberry Pi Pico側のプログラム(Arduino)
MPU6050/MPU6050.ino

以下のライブラリを使用しています。
GitHubからZIP形式でダウンロードして、Arduino IDEの「スケッチ」->「ライブラリをインクルード」->「zip形式のライブラリをインクルード」でインストールします。

〇角速度・加速度から角度を推定 -> MadgwickAHRSフィルタ
https://github.com/arduino-libraries/MadgwickAHRS

〇タイマー割込み
https://github.com/khoih-prog/RPI_PICO_TimerInterrupt

■PC側
MPU6050.py

Pythonで作成しています。
COM_PORT変数は適切なポートに書き換えてください。

以下のライブラリを使用しています。
〇pyserial
PCとPicoのシリアル通信のためにpyserialを使用しています。
以下のコマンドでインストールしてください。

pip install pyserial

〇Panda3D
3D表示のためにPanda3Dを使用しています。
以下のコマンドでインストールしてください。

pip install Panda3D


本格派対局将棋 ぴよ将棋
本格派対局将棋アプリ ぴよ将棋
[Android] [iOS]

かわいい「ひよこ」と対局する将棋アプリ。かわいいけどAIは本格派!
対局後の検討機能や棋譜管理機能も充実!棋譜解析機能も搭載!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です