
ロボットカー

KidsBoardとKidsScriptを使うリモコンカー

タミヤの「楽しい工作シリーズ」のユニバーサルプレートをシャーシにしています。KidsBoardの取り付け穴はユニバーサルプレートと同じ5mmピッチですので、スペーサーをはさんでM3のネジで固定できます。

シャーシの裏面にギヤモーター(TTモーター)を固定します。固定用のパーツは3Dプリンタで作成しました。シャーシを支えるボールキャスターもタミヤ「楽しい工作シリーズ」のものです。
電池は単3×4本を使用しています。DCモーターを使う工作は大電流が流れ、瞬間的に電圧が落ちることがあります。単3×3本だと瞬間的にESP32に必要な3Vを下回って通信が途切れることがあるため、4本使用しています。
KidsBoardには5V以上の電圧がかかりますが、内部で3VにしているためESP32に影響はありません。
UIのボタンで前後左右、停止を操作します。
KidsScriptのプログラム例



モータードライバーは2つのポートで操作します。
KidsBoardは仕様の制限で、4つのモジュールコネクターに、0,1,3,4番のポートを割り当てて、かつ全てのコネクターに共通に5番ポートを割り当てています。

例えば0番ポートのあるコネクターでモータードライバーを使う場合、ポートとモーターの動きの関係は以下のようになります。
ポート0番 | ポート5番 | モーター |
HIGH | LOW | 正回転 |
LOW | HIGH | 逆回転 |
LOW | LOW | 停止 |
HIGH | HIGH | 停止 |
(上記のプログラム例はスピード調節が可能なようにアナログ出力を使用していますので255をHIGH、0をLOWと読み替えてください。)
プログラム例ではポート0番と1番を左右のモーターのモジュールに分けて、それぞれ共通な5番のポートと組み合わせています。
この方法では左右のモーターの正回転、逆回転の組み合わせができませんので、モーターカーを左右に旋回する時は、一方のモーターを停止して、回る方向と反対側のモーターを正回転する必要があります。(戦車の超信地旋回のようにその場で回ることができません)
KidsBoard IJとIchigoJam BASICを使う、自動運転カー

タミヤの「楽しい工作シリーズ」のユニバーサルプレートをシャーシにしています。KidsBoardIJの取り付け穴はユニバーサルプレートと同じ5mmピッチですので、スペーサーをはさんでM3のネジで固定できます。(一箇所はRaspberry Pi picoの下にありますので、取り付けの時はRaspberry Pi picoを外してください)

シャーシの裏面にギヤモーター(TTモーター)を固定します。固定用のパーツは3Dプリンタで作成しました。シャーシを支えるボールキャスターもタミヤ「楽しい工作シリーズ」のものです。
電池は単3×3本を使用しています。
Ichigojam BASICのプログラム例
プログラムのときは、KidsBoard IJにキーボードとHDMIモニターを接続します。
キーボードはRaspberry Pi picoに、モニターはKidsBoard IJの「DVI」コネクターに接続します。

プログラム例

OUT1とOUT2のモジュールコネクターにモータードライバーを取り付けます。
1つのモータードライバーは2つのポートをセットで操作します。
(OUT1とOUT3、OUT2とOUT4がセット)

例えばOUT1のあるコネクターでモータードライバーを使う場合、ポートとモーターの動きの関係は以下のようになります。
OUT1 | OUT3 | モーター |
0 | 1 | 正回転 |
1 | 0 | 逆回転 |
0 | 0 | 停止 |
1 | 1 | 停止 |
IN1のモジュールコネクターに、障害物センサーを取り付けています。障害物がなければ前進し、障害物を検知したら1000行目のサブルーチンに飛んで、一旦後退してから左に旋回して、再び前進するようになっています。