Robo Figure Skating

 

県教委主催の高校生を対象としたプログラミング講座を夏休みに担当させていただいていますが,今年の開催に備えてロボットの回路と基板の設計変更をやっています.

プログラミングのお題はオリジナル競技の“Robo Figure Skating”.上の写真に示す2輪走行ロボットを使い,フィギュアスケートのような3分間の走行演技をしてください,というものです.リンクの広さは3.6m×2.7m,6畳間と同じです.走行だけでなく,NeoPixelを使った光の演技も可能です.

ハードウェアは毎年変更になっていて,マイコンボードは昨年からSeeed XIAO RP2040になり,今年は慣性計測装置(IMU)がSTマイクロのLSM6DS3TR-C(加速度+ジャイロ)に変更になります.上の写真は昨年度のバージョンで,XIAO RP2040 + Bosch BNO055(加速度+ジャイロ+磁気)です.

回路図は↑.モータドライバのTB6612はモータ電源とロジック電源が内部で分離されているのですが,SAMD21/51やRP2040はモータが回転し始めるとリセット(おそらくブラウンアウトリセット)がかかってしまうというトラブルに遭遇しましたので,フォトカプラで完全絶縁をしています.micro:bitのときはそういうことはなかったのですが...

オプションで超音波距離センサ(3Vで動作できるタイプのHC-SR04 1)を接続できるようにしてあり,中学校技術の教科書にあるお掃除ロボットの走行も可能です.

基板パターンはこんな感じです↓ IMUを基板中心に置き,それがRFSロボットの車軸中心上に来るようにしています.またXIAO RP2040は中心軸から少し左に寄せていますが,これはNeoPixelが中心軸に来るようにするためです.



1 データシートによるとGPIO方式での動作時はR4とR5がNCになっていてそれがデフォルトなのだけど,秋月電子の写真ではどちらも何某かの抵抗が接続されている.そんな動作モードはないんだけどなぁ...