M5Scratchってなぁに?
https://gyazo.com/40d5e93fe01a61260924513c4085c1b0
はじめに、または、どうしてこの作品を作ろうと思ったか
当時は、センサーやスイッチ、温度計などなどを自分で接続する必要があった
兄貴分であるESP32を積んだM5Stackが発売された!! (2018年2月?)
いろんなセンサーやディスプレイまでついてる!!
ほな、動かしまひょか
DojoCon 2020発表動画
https://youtu.be/tUXKSZtTxOE
Scratch Catのコード
https://gyazo.com/1e22568650e9d2549310c36faca87c32
プレゼントのコード
https://gyazo.com/100f85e129df02c3bf89c1c98a98bf0d
M5StickC/M5Stack Gray/ATOM Matrixってなぁに?
ちっちゃくて、かわいくて、
ディスプレイが最初から付いていたり、
無線のWiFiやBluetoothが使えたり、
加速度やジャイロや地磁気が取れるIMUがあったり、
ボタンスイッチもあったり、
温度計もあったり、
バッテリーがあったり、
拡張モジュールやGROVEで色々拡張できたり、
(Facesのみ) キーボードやゲームパッド、電卓キーがあったり、
他にも、とってもたくさん仲間たちがいるよ!!
https://gyazo.com/5239aa12cfab7a553231ce5ce94154d0
ソフトウエア開発環境
UIFlow: Scratchみたいなブロックでプログラミング
https://gyazo.com/a24f609eebf22bf101ce5fd713c8a0b5
Aruduino IDE: C言語みたいな記述でプログラミング
https://gyazo.com/9741ce6147d44b2fa6f1e90409a2cee1
Scratch 遠隔センサー(Remote Sensor) Protocol
TCP/IP (ポート42001)経由でデータのやり取り
テキストベースのプロトコル
メッセージのやり取り: broadcast "メッセージ"
変数のやり取り: sensor-update "変数" "値" ...
https://gyazo.com/15308ac88a10acd312c1e7026739ba0e
Scratch側での準備: 遠隔センサーを有効にする
調べる->"スライダセンサーの値"を右クリック->"遠隔センサー接続を有効にする"を選ぶ
https://gyazo.com/7515f6592eaba8833caf92b6b8ba3cbc
M5Scratch
M5Scratch = M5S* (M5Stack/M5StickC/ATOM Matrix) + Scratch
Arduino IDEで作った、M5S*とScratchとのやり取りを行うプログラム
Scratch側には、改造は不要(遠隔センサーを有効にするだけ)
https://gyazo.com/9741ce6147d44b2fa6f1e90409a2cee1
ScratchからM5S*へ
https://gyazo.com/aa0275f36c90597d0752f850be7a00d2
M5ScratchのArduino IDEで、受け取るデータやイベントを実装
データやイベントを送る部分は、Scratchで実装
sensor-update
色データ(r,g,b): 円の色を指定
座標(x,y): 猫の座標
角度t: 猫の向いている方向
ズームz: 猫の大きさの倍率
LED点滅(l): LEDを点灯/消灯(1/0)
文字列(s): 文字列sを画面に表示
broadcast
broadcast内容を画面に表示
M5S*からScratchへ
https://gyazo.com/d82ef86ac02c78b40359b55c56afc25b
Scratch側で、受け取るデータやイベントを実装
sensor_update: "'ax'センサーの値"など
broadcast: "'BtnA'を受け取った時"など
データやイベントを送る部分は、Arduino IDEで実装
sensor_update
IMU(加速度(ax,ay,az)+ジャイロ(gx,gy,gz)+(Grayのみ)地磁気(mx,my,mz))
IMUの値を使った、なんちゃって方位(heading)やpitch, roll, yawなど
温度センサー(temp)
broadcast
ボタン(BtnA,BtnB,BtnC)、キーボード(Key_*)
アイデア求む
センサーは色々な種類があって、追加もできるので、色々な使い方が考えられると思います
みんなの質問箱
Scratch 3.0では使えますか?
一緒に作ってみませんか?
M5Stackの開発環境にはどういうものがあるのですか?
みんなに
つづけていれば、イイ感じのものができたり
発表したり、コンテストに応募することで…
意見がもらえたり交流できたりして、楽しい!!
〆切ができて、作業が進む!!
M5Scratchは、とっても楽しい!!
みなさんもいっしょに遊んでみませんか?
お仲間募集中!!
https://gyazo.com/d564bdd708072bd03f82f6f9f001cbca