ミニ①:IMU 読み出し
M5StickC Plus の内蔵 IMU(MPU6886)を読む。まず Serial で正しさを確認し、そのあと LCD に出す。 追加配線なし(内部 I2C)。無線操縦はミニ②以降。
Step 0: 構想
Chocofon(B):
M5 の IMU 使ってみたい! いきなり車を傾き操縦する前に、まずセンサの数字が見たい。
M5 の IMU 使ってみたい! いきなり車を傾き操縦する前に、まずセンサの数字が見たい。
AIチューター:
作戦はシンプル。Serial で正しさを確認してから LCD に出す。無線はミニ②。追加配線は不要——内蔵 IMU は内部 I2C です。
作戦はシンプル。Serial で正しさを確認してから LCD に出す。無線はミニ②。追加配線は不要——内蔵 IMU は内部 I2C です。
Step 1: 調査
AIチューター:
IMU は加速度とジャイロ(角速度)を出すセンサ。M5StickC Plus では M5Unified の
IMU は加速度とジャイロ(角速度)を出すセンサ。M5StickC Plus では M5Unified の
M5.Imu で読めます。
「I2C」はマイコンとセンサをつなぐ通信の一種で、今回はボード内部に配線済みです。
Chocofon(B):
つまりブレッドボードにジャンパしなくていいの? 楽だ……!
つまりブレッドボードにジャンパしなくていいの? 楽だ……!
Step 2: プロジェクト作成
PlatformIO プロジェクト m5_imu_readout(ボード: M5StickC Plus)。
pio run -e stickc_plus -t upload
pio device monitor -b 115200
Step 3: Serial 確認
Serial Monitor(115200)に accel / gyro と簡易 pitch・roll を出力。 机上確認済(2026-07-26) — 傾けると数値が動くことを確認。
Chocofon(B):
傾けて数値が動いた! これなら操縦に使えそう。
傾けて数値が動いた! これなら操縦に使えそう。
Step 4: 画面表示
Serial OK のあと、同じ値を LCD に表示。 画面には P / R(度)を大きく、続けて accel・gyro を出す。
AIチューター:
LCD 更新は 100 ms 間隔。Serial は 50 ms のまま残してあるので、Monitor と画面を同時に見られます。 実機のチップは MPU6886 でした。
LCD 更新は 100 ms 間隔。Serial は 50 ms のまま残してあるので、Monitor と画面を同時に見られます。 実機のチップは MPU6886 でした。
Chocofon(B):
画面の数字も動いた! Step 4、OK!
画面の数字も動いた! Step 4、OK!
Step 5: まとめ
管理人:
ミニ①公開。Serial と LCD で内蔵 IMU(MPU6886)の見える化まで完了。次はミニ②——傾きで RC-CAR を机上操縦する。
ミニ①公開。Serial と LCD で内蔵 IMU(MPU6886)の見える化まで完了。次はミニ②——傾きで RC-CAR を机上操縦する。
Chocofon(B):
数字が見えた! 次は傾けて車を動かしたい!
数字が見えた! 次は傾けて車を動かしたい!
AIチューター:
ミニ②では pitch/roll をスロットル・ステアにマップし、ボタン A でスティック操作と切り替えます。Push 非常停止はそのまま。
ミニ②では pitch/roll をスロットル・ステアにマップし、ボタン A でスティック操作と切り替えます。Push 非常停止はそのまま。
- プロジェクト概要 — ミニ①〜③の地図
- Library:M5StickC ピン配置と比較
- 無線ラジコンカー — 操縦対象の L1
- コード: m5_imu_readout(GitHub)
つづき
ミニ②(傾き操縦・机上)は準備中。正本: docs/hardware/m5-imu-readout.md