最終更新 2024.04.01
2 つの方法があるようだ。 ・Scrattino を使う http://nomolk.hatenablog.com/entry/2018/06/17/223000 ・Scratch for arduino http://raspi009.seesaa.net/article/449145834.html Scratch for arduino の方が簡単である。 ただし、各ポートの役割は固定されているようだ。 各ポートの in/out の設定を細かくするには Scrattino を使う。 どちらもスクラッチの機能(スプライトを動かしてゲームを行う) に Arduino の入出力機能が追加される。 だから、ゲームのコントローラ(ジョイスティック)を 追加したり、ゲームの結果によって、モーターを動かしたり できる。 Scratch の可能性が大きく広がる。
<参考サイト> https://soramoyou04.wpblog.jp/2017/11/25/scrattino2%E3%81%A7arduino%E3%81%A8scratch%E3%82%92%E7%B9%8B%E3%81%92%E3%81%A6%E9%81%8A%E3%81%BC%E3%81%86%EF%BC%81%E3%80%90winmac%E3%80%91/ 以下の 3 つの要素で構成される。 (1) Scratch 2 Offline Editor (ローカルで動作する scratch) (2) Scrattino2 (Scratch と Arduino の間のインターフェース) (3) StandardFirmata というスケッチを動作させた Arduino 1. StandardFirmata の書き込み Arduino に StandardFirmata というスケッチを書き込む。 Arduino IDE の ファイル --- スケッチ例 --- Firmata --- StandardFirmata を書き込む。 実体は libraries/Firmata/examples 以下にある。 2. Adobe AIR のインストール Scratch Offline Editor 2.0 の動作には Adobe AIR の最新版が必要である。 Adobe AIR とは異なる OS 上で共通に動作するランタイム環境である。 Flash Player のベースとなったテクノロジーが Adobe AIR には 組み込まれている。 AdobeAirInstaller.exe をダウンロードしてダブルクリックする。 3. Scratch 2 Offline Editor のインストール Scratch-461.exe をダウンロードして、ダブルクリックする。 インストール時にネットワークに接続しようとする。 拒否すると、Scrattino2 と接続できなくなるので、 「許可」する。 地球マークのアイコンをクリックして「日本語」を選択すると、 メニューが日本語になる。 4. Github から以下のファイルをダウンロードする https://github.com/yokobond/Scrattino2/releases Scrattino2.Setup.0.3.0.exe scrattino2_resources.zip zip ファイルは展開しておく。 5. Scrattino2 のインストール exe ファイルを起動する。 Scrattino2 という名前のアプリがインストールされる。 インストール中にネットワークに接続しに行く。 拒否すると起動時にエラーが出て、Scratch 2 から接続できない。 ネットワーク接続は許可する。 初回は自動的に起動する。 起動時に JavaScript のエラーが出た場合は、 ネットワーク接続に失敗している。この状態では、 Arduino との通信には成功するが、Scratch 2 との 通信に失敗する。JavaScript のエラーが出ないように、 ファイアウォールの設定を変更する。 Scan Port を実行する。 Arduino が接続されている COM? の行が N/A となっていても、 ダブルクリックするとスイッチアイコンが出現するので、on にする。 アナログ入力端子の値が正しい値(何も接続していないときは 値が激しく変化する)であれば、接続成功である。 6. Scratch から Arduino を使えるようにする Scratch 2 Offline Editor を起動し、Shift を押しながら 「ファイル」を選択し、「実験的な HTTP 拡張を読み込む」を 選択する。 scrattino2_resources\scrattino2_resources\extension\scrattino2.s2e を選択する。 ブロックグループ「その他」を押したとき、 Scrattino ▼ --------------○ の ○ の色が 緑 接続成功 黄 Arduino が接続されてない 赤 Scrattinoが起動されてない
<参考サイト> http://raspi009.seesaa.net/article/449145834.html 以下の 2 つの要素で構成される (1) Scratch for Arduino というアプリ (2) S4AFirmware16.ino というスケッチを動作させた Arduino 1. ファイルのダウンロード s4a.cat から S4A16.zip をダウンロードする。 解凍すると S4A16.exe が出現する。 実行すると Scratch for Arduino がインストールされる。 2. Arduino にファームウェア s4afirmware16.ino をインストールする http://aularagon.catedu.es/materialesaularagon2013/ProgramacionCODE-Scratch-Arduino/html/s4afirmware16ino.html にある。s4afirmware16 というフォルダを作り、 その中に s4afirmware16.ino という作る。 そのファイルにコピペする。
S4A を実行する。 Arduino の COM ポートは自動認識するようだ。 <ポートの割り当て> Arduino 関係のブロックは「動き」にある。 各ポートの役割は固定されているようだ。 A0〜A5 入力用 D2, D3 入力用 D10〜D13 出力用 D4, D7, D8 サーボモーター用? 緑旗をクリックすると、実行開始 赤丸をクリックすると、中断 <Arduino との通信> Arduino のスプライトが 1 個ある。 このスプライトのみ Arduino と通信するブロックを 使うことができる。 このブロックを削除すると Arduino と通信できない。 > 出力 digital ○ on digital ○ off analog ○ value △ motor ○ off motor ○ angle △ > 入力 value of sensor analog○ 0-1023 (0V-5V) sensor digital○ pressed はい(5V) いいえ(0V) デジタル入力は if で判定するとき「はい」か「いいえ」 0 と 1 ではない!!! <?> 「制御」のカテゴリーに、ゲームの必須機能である 「クローンを作る」がない。なぜ?