
マイコンボードにはRaspberry Pi Pico とArduino UNO(互換機) を使います。
MPU-6050 は加速度と角速度を計測するセンサーです。
母艦にはラズパイ4 Model B にArduin IDE をインストールして使います。
配線
Arduino IDE
ラズパイ4にArduino IDE をインストールしておきます。
ボードはUNO の場合IDEのデフォルト設定で使えます(Arduino UNO)が、Pico の場合はインストールする必要があります、以下参照。
Arduino IDE でPi Pico Wの開発用にEarle Philhower版を使う
コードは以下を参照。
Pico とUNOで、ほぼほぼ共通で使えます。
変更点は MPU6050_WHO_AM_I の設定値だけです。
UNOの場合
#define MPU6050_WHO_AM_I 0x75
Picoの場合
#define MPU6050_WHO_AM_I 0x80
ベースコード(出典は忘れてしまいましたが、ここで改めて感謝)
シリアルポートはこんな感じ。
Pico -> /dev/ttyACM0
UNO -> /dev/ttyUSB0
シリアルモニタで確認
Appendix
Arduino IDE 無しでも実行できるようにUF2ファイルを作成。
Arduino IDEで保存したものは、ラズパイの場合なら/home/pi/Arduino というフォルダー内にxxx.inoというファイルで存在します。
例:/MPU-6050-PICO/MPU6050-PICO.ino
このままではIDEがなければ実行できません。以下のようにして実行用ファームウェアを作成します。
メニュー>スケッチー>コンパイルしたバイナリを出力
同じフォルダー内にuf2ファイルが出力されます。Pico をBOOTSELボタンを押しながらラズパイに接続すればRPI-RP2フォルダーが開くので、ここにuf2をドラッグ・ドロップすればOKです。
Appendix
Pi Pico + MicroPython 版はこちら
Pi Pico で6軸センサーのMPU-6050を使ってみる
Leave a Reply