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社は結構メジャーになってきて、他にも多くの製品を出しているので、これからもいろいろ試して紹介していこうと思います。