小学生向けプログラミングしたロボットで戦う「越前がにロボコン」、今年は制御が簡単な車輪型ロボットでも参加できるエントリー部門と、中学生も参加OKな中級者向け歩行型ロボット部門の2部門制。

ネットで見かけたおもしろそうなロボット「RoverC 6,599円」をIchigoJam BASICで制御してみました。


いい動きします!

RoverC」公式サイトを見るとアドレス#38を使ったI2C制御、IchigoJamでもいけそうです。 動かし方はC++のプログラムに載っている通り、4つのモーターの前後を-127から127で正逆回転方向を指定するだけとシンプル!

RoverCとIchigoJam、右から順につぎのように5本のソケットプラグのジャンパーワイヤーで接続します。

GND → GND
5V(供給)
G26 (SCL) → SCL
G36
G0 (SDA) → SDA
BAT → 5V
3.3V → VCC
5V

スイッチは、上からみて左に動かすとON!

1モーター動かすには、次のコード

POKE#700,0,30:?I2CW(#38,#700,2)

アドレス#700にモーター番号0〜3、改定方向と強さ-127〜127を指定して、I2CWで送信します。 これを4つのモーター向けに繰り返せば、制御OK!キーボードで動かすサンプルです。

5 S=30:M=0 10 K=INKEY() 11 IF !K WAIT10:GOTO10 15 ?K 20 IF K=UP N=S:GSB@V 30 IF K=DOWN N=-S:GSB@V 40 IF K=LEFT N=S:IF M GSB@H ELSE GSB@T 50 IF K=RIGHT N=-S:IF M GSB@H ELSE GSB@T 60 IF K=SPACE N=0:GSB@V 70 IF K=10 M=!M:LEDM 80 GOTO 10 300 @V:POKE#700,0,N,1,N,2,N,3,N:GOTO@W 310 @H:POKE#700,0,-N,1,-N,2,N,3,-N:GOTO@W 320 @T:POKE#700,0,N,1,-N,2,-N,3,N:GOTO@W 330 @W:FORI=0TO3:?I2CW(#38,#700+I*2,2):WAIT1:NEXT:RTN

5行 S:スピード1-127(20あたりだと弱すぎて動かない)、M:モード エンターキーで左右キーで左右移動か転回か切り替え
10-80行 キー操作によってRoverCコントロール
330行 4モーター分のデータ送信ドライバ
300-320行 前後、左右、転回コマンド


4つの車輪で横移動する機構がおもしろいですね!レゴ、テクニックシリーズのパーツで筐体づくりができるようになっています。


2020/11/8開催、第4回越前がにロボコン
RoverCは車輪型なので、エントリー部門にて参加可能です!

links
- M5Stack RoverCプログラム可能な全方向移動ロボットベース、M5StickC STM32f030f4マイクロコントローラーと互換性あり - Amazon

Tweet
クリエイティブ・コモンズ・ライセンス
この作品は「Creative Commons — CC BY 4.0」の下に提供されています。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / RSS