ScratchでArduinoをプログラミング

Arduinoを搭載したスマーロボットカーの場合、専用のアプリが用意されていないとプログラミングするにはArduino IDEを使うことになります。

Arduino IDE

こんな感じですが、C言語を元にしているので小学生や小学校の先生にはちょっとハードルが高いですね。
と言うことで、Scratchを使ってプログラミングする方法を紹介します。いろいろな方法があるようですが、その内の2つほど見てみます。
1つめはScrattino3というプログラムです。これは下記URLからダウンロード出来ます。
https://github.com/yokobond/scrattino3-desktop/releases

Scrattino3

ダウンロードしたら解凍して、デスクトップなどわかりやすいところにフォルダを置いておきます。
Scrattino3を起動する前にArduino IDEを起動して接続を確認しておきます。

Scrattino3
次に解凍したフォルダの中にある「Scrattino Desktop.exe」をダブルクリックしてScrattino3を起動します。

Scrattino3

拡張機能でScrattinoを選択してArduinoと接続すればArduino用のブロックが現れます。(COMポートの番号は環境によって違います。)

Scrattino3

Scrattino3

後は普通にScratchでのプログラミングになります。試しにLチカのプログラムを作ってみましょう。

Scrattino3

「set D 2 Output Low」のブロックをドラッグして2→13 Low→Highに変えます。これで13番のピンに電気を出力する意味になり、LEDが光ります。適当なディレイを入れて消灯するためにHigh→Lowのブロックも入れれば指定した回数点灯→消灯を繰り返すプログラムになります。旗のマークをクリックして試してみましょう。

Scrattino3
これでScratchでArduinoをプログラミング出来るようになりましたが、Arduino IDEがやっぱり必要なことと、Arduino用のブロックが日本語化されていないことが残念ですね。

次はMakeblock社の各種ロボット用のプログラミングソフトウェアのmBlock5です。
mBotなど元々Arduino互換ですので、当然普通にArduinoに対応しています。

mBlock5

mBlock5

mBlock5

Makeblock社のHPのトップページでソフトウェアを選んでWindows版を選んでダウンロードします。(ウェブ版もありますが、ドライバーのダウンロードは必要なようです。)

mBlock5
起動したらデバイスの追加をクリックします。Arduino Unoを選んで追加するとArduino用のブロックが追加されます。こちらは日本語化されていますね。

mBlock5

mBlock5

Scrattino3と同じようにLチカのプログラムをしてみます。
プログラムが出来たらArduinoに接続してプログラムを転送します。
mBlock5の場合はScrattino3とは違ってArduinoが起動すると自動的にプログラムが動くような設定です。

mBlock5

mBlock5

mBlock5
また、右上のArduino c のタブをクリックするとArduinoのプログラムが表示されるようになっています。

mBlock5
Arduino IDEを起動しておく必要も無いし、micro:bitにも対応しているようですし、小学校の授業ではではmBlock5の方が使いやすそうですね。Makeblock社は結構メジャーになってきて、他にも多くの製品を出しているので、これからもいろいろ試して紹介していこうと思います。

Kuman SM11(旧型)

SM11

Kuman社のスマートロボットカーSM11(旧型)です。
Arduino UNO R3互換のボードを搭載していて、プリインストールされているプログラムで各種モードでで動かせますし、 Arduino IDEでプログラミングすることも出来ます。

SM11
ケースの中にはArduino UNO R3ボード、超音波センサー、回避・追跡用の赤外線センサー、ライントレース用の赤外線センサー、Bluetoothモジュールなど入っています。

SM11
マニュアルは英文のみです。発売元のHPを調べると日本語マニュアルのPDFがありますが、同型番の首振り機能付きの新型のものです。ですが、そんなに複雑な組み立てではないので、英文マニュアルとYouTubeの動画を見ながらで1時間ほどで出来ます。(動画のURLはamazonの販売ページで分かります。)

SM11
実は、こうしたロボットカーを組み立てるときに一番イラッとくるのは、モーターのネジ止めだったりします。このSM11の場合も、部品のハンダ付けの盛り上がりでナットがはめにくかったり接触してショートの危険もあるので注意が必要です。

SM11
完成してスイッチを入れるとデフォルトで赤外線リモコンモードになっています。
リモコンの2ボタンで回避モード、3ボタンでライントレースモード、4ボタンで追尾モードに切り替えて9ボタンでスタートします。停止は7ボタンです。

Bluetoothモードに切り替えるとスマートフォンなどでリモコン操作できるようになりますが、CD-ROMに入っている.apkファイルをスマートフォンやタブレットに書き込んでインストールの制限を外して・・・となると慣れていない人には敷居が高いかも知れませんね。