Scrattino2(スクラッチーノ2)はエンガワラボ様が開発された、スクラッチとアルデュイーノをつなぐアプリケーションです。これがあれば、アルデュイーノに接続した外部機器をスクラッチから操作したり、外部機器からスクラッチのキャラクターを動かしたりできます。
スクラッチだけでは出来なかった外部機器との接続ができることで、お子様がよりプログラミングに興味を持っていただけるのでは。なお、当記事はスクラッチとArduino開発環境は導入済みでArduinoボードをお持ちの前提です。まだであればスクラッチはこちらの記事で、Arduinoはこちらの記事で紹介していますので、ご覧ください。
1.アルデュイーノの準備
この手順では、Firmataプロトコルを使用してパソコンとやり取りするためのスケッチをアルデュイーノにロードします。スクラッチとつなぐ時には、このスケッチが必要です。
1-1.アルデュイーノをUSBでパソコンに接続します。筆者の環境だけかもしれませんが、Arduinoにシールドをつけたり、ジョイスティックを接続したままスケッチをロードしようとするとエラーになります。ロードエラーするようであればArduino単体だけをUSBにつないだほうが良いかもしれません。
1-2.Arduino開発環境を立ち上げたら、ファイル→スケッチ例→Firmata→StandardFirmataを選択して、クリックします。
1-3.スケッチ StandardFirmata が開きますので、スケッチ→マイコンボードに書き込むを選択して、クリックします。
1-4.プログラムのコンパイルされ、ボードに書き込まれます。
2.パソコンにスクラッチーノ2の導入
以下はWindows10へ導入したものですので、他のウインドウズでは画面等異なる場合があります。
2-1.ダウンロードサイトを開くと以下のような画面になりますので、『Scrattino2.Setup.0.2.0-win.exe』と『scrattino2_resources.zip』をクリックしてダウンロードしてください。
2-2.ダウンロードした『Scrattino2.Setup.0.2.0-win.exe』をダブルクリックしてScrattino2を導入します。以下のような画面が表示されますので、詳細情報をクリックしてください。注:署名がされていないソフトを導入しようとした場合に表示されます。今回は信用があるサイトからのソフトなので詳細情報で続けますが、知らないメールに添付されてきたようなソフトは危険ですので、『実行しない』を選択してください。
2-3.実行ボタンが表示されますので、実行をクリックしてください。
2-4.スクラッチーノ2の導入が始まります。
2-5.導入が終わると、以下のような画面になりArduinoの接続されているポート(この例ではCOM4)が表示されますので、右側のボタンをクリックして接続します。もし、ポートが表示されない場合はArduinoが上手くUSBに接続されていないので、確認してください。接続できたら、Scan Portボタンをクリックしてポートが表示されるか確認してください。
2-6.Arduinoと上手く通信できると、以下のようにA0~」A5アナログの数値が表示(変化します)されます。もし、表示されないようであれば、『1.アルデュイーノの準備』のスケッチが上手くロードできていないかもしれませんので、確認してください。
2-7.ステップ2-1でダウンロードした『scrattino2_resources.zip』を適当なフォルダー(マイドキュメントなど)に解凍してください。
3.スクラッチとArduinoで動きを確かめる
2018/09/24追記:当環境で使用しているスクラッチはV2.0です。V1.4では動かないようですので、V1.4をご使用の方は追加でV2.0を導入される事をお勧めします。V2.0の導入は、こちらの記事を参照ください。
3-1.ステップ2-7で解凍した『scrattino2_resources』フォルダー内の『project』フォルダー内の『scrattino2-example.sb2』をダブルクリックすると、Arduinoと連携したサンプルプログラムのスクラッチが開きます。なお、サンプルプログラムが不要な場合は『scrattino2.sb2』を使用してください。
3-2.Arduinoブロックは、スクリプトの種類の『その他』をクリックすると表示されます。
3-3.サンプルプログラムのスクリプトを順に説明していきます。一番上はArduinoのお決まりのLED点滅です。
緑の旗をクリックすると以下のようにArduinoボード上のL LEDが0.5秒ごとに点滅します。注:配線がされていますが、ジョイスティックの接続用です。L LEDを点滅させるだけであれば配線は不要です。。
下の回路図の抜粋(Arduinoホームページの回路図はこちら)のオレンジ色の線で示した通り、『OUTPUT D13』出力ピンとLED Lの回路はつながっています。ですので、D13出力を1(オン)、0(オフ)するとLED Lも点滅します。注:初めてArduinoの電源を入れた時はこのLEDが1秒ごとに点滅します。工場で1秒ごとに点滅するスケッチを書き込んで出荷しているからです。
3-4.2番目はScratchのねこのキャラクターをArduinoにつないだジョイスティックで動かす例です。
以下のように、ジョイスティックを動かすとキャラクターが上下左右に動きます。左上にA0とA1の数字が変化しているのが分かります。A0はアナログ入力ピン0、A1はアナログ入力ピン1のことで、そこに入力された電圧(0V~5V)を読取りコンピューターで扱える0~1023の数字に変えてくれます。その値をキャラクターのx座標とy座標に使ってねこのキャラクターを動かしています。注:右上のD13はL LEDの点滅もしているため0と1と交互に変わっています。
Arduinoとジョイスティックの接続は以下です。
3-5.3番目はArduinoのスイッチを押すと、音を鳴らす例です。Input D2が1なら真ん中のドを鳴らします。上の接続図でジョイスティックのSWがArduinoのD2に接続(オレンジ色)されていますので、スティックを押すとパソコンからドの音がなります。
今回の記事を書く際に参考にさせていただいたエンガワラボ様のスクラッチーノ2のページは以下です。
なお、Scratch2.0とArduinoの接続については、別の方法で接続する例も紹介していますので、参考にしてください。
最後まで記事をお読みいただきありがとうございます。
記事の改善に役立てたいと思いますので、よろしければアンケートにご協力ください。
初めまして。いきなりすみません、質問です。
『scrattino2_resources』フォルダー内の『project』フォルダー内の『scrattino2-example.sb2』をダブルクリックすると、Arduinoと連携したサンプルプログラムのスクラッチが開きます。とあるのですが、ファイルを開くことができません。
scrattino2-example.sb2を開く時にWindows側でアプリケーションを開く方法の選択が出てきます。直接スクラッチ1.4からプロジェクトファイルの選択をしようと思いましたが、sb2ファイルは表示されませんでした。
スクラッチ1.4で設定が必要でしょうか?
Arduinoの接続までは出来ています。
OSはWindows10です。
ご教授よろしくお願いします。
snow様、
当サイト管理人です。当サイトをご訪問いただきありがとうございます。お問い合わせの件ですが、スクラッチV1.4をお使いのようですので、連携がうまくいかないと思われます。最新の正式版スクラッチウインドウズ用はV2.0です。スクラッチーノ2はV2.0用と考えられますので、私の記事もスクラッチV2.0でテストしてあります。記事内にスクラッチのバージョンを明記しておらず、申し訳ありませんでした。この後、記事には明記します。
なお、スクラッチV1.4とV2.0では画面の構成が変わりますが、使い方は変わりません。ただ、V1.4で作成したプログラムは変換しないとV2.0で動きませんので、注意ください。私の環境でテストしてV1.4とV2.0は両方とも導入していても問題ありませんでした。snow様がV2.0を導入される場合は、現在ご使用のV1.4はV2.0に慣れるまでは消さずに併用されることをお勧めします。なお、V2.0の導入は、当サイトのこちらの記事を参考にしてください。
以上、よろしくお願いいたします。
追記:V1.4のプログラム xxxx.sbをV2.0で変換しないといけないと回答しましたが、Web版の場合でした。今、確認して、V1.4のプログラムがV2.0で読み込めましたので、訂正してお詫びします。