スポンサーリンク

ArduinoとScratchをOneGPIOつないで遊ぶ方法(2020年 Mac Catalina対応)

ArduinoをScratchをつないで遊べる方法を調べてみると、MacのCatalina環境でぜんぜん動かなかった。現状できる方法も見つかったので、その内容をまとめてみる。

スポンサーリンク

Scrattino(スクラッチーノ)

Scrattino(スクラッチーノ)はScratch(スクラッチ)でArduino(アルディーノ)を操作できるようにしたプログラミング環境です。公式のScratch3.0にあらかじめScrattino拡張機能を組み込んで、デスクトップアプリケーションにしてあります。

スクラッチーノ3をセットアップする

はじめにためしたのがScrattino。使い勝手も良くてすばらしいのだけど、僕のMac環境(Catallina 10.15.3)では動かなかった。

Arduino IDEだと、上記のように「/dev/cu.usbmodem14401」でArduinoとつながっているのがわかる。

Scrattinoだとデバイスが見つからない。ためしにScrattino2でも同じだった。Scrattino2だとPortが「/dev/tty.usbmodem14401」とパスが違っていたので、もしかしたらこれが問題かもしれない。

S4A

次に試したのがS4A。これもScrattinoと同じタイプのものだが、Catallinaでは動かないもよう。アプリの起動すらできない。

OneGPIO Scratch 3 Extensions

なんとかみつけたのがこの「OneGPIO Scratch 3 Extensions」。Arduinoだけでなく、RaspberryPiなども対応している。ただ、設定が結構たいへん。

  • Pythonインストール
  • pipインストール
  • s3-extendインストール
  • Arduino IDE: FirmataPlusインストール
  • Arduino IDE: Ultrasonicインストール
  • Arduino IDE: FirmataPlusをコンパイルしてArduinoにインストール

ここまできたら、ターミナルで以下を実行する。

$ s3a
backplane started
Websocket Gateway started
Arduino Gateway started.
Please wait 0 seconds for Arduino to initialize...
Arduino is initialized.
To exit this program, press Control-c

「Arduino is initialized.」と表示されればOneGPIOサーバが立ち上がり、ArduinoとScratchをつないでくれる。そしてオンライン・オフラインのどちらかを選んでScratchを立ち上げる。

そして、画面左下の拡張追加のボタンをクリックすると・・・

OneGpio Arduinoが出てくるので選択すれば・・・

Arduino操作用ブロックが登場する。

とりあえずこれで動かせたけど、Scratchの拡張機能には上記のデバイスのみが正式サポートされていて、残念ながらArduinoは入っていない。

ScrattinoやこのOneGPIOのようなつなぎかたもできるけど、あくまで個人の頑張りで動いているものなので、現段階ではScratchとArduinoの拡張に将来はなさそうなかんじ。

LEGOとかに乗り換えたほうがいいかもしれない。

タイトルとURLをコピーしました