mBlockを使ってArduinoを動かしてみた8:パソコン画面のキャラクターと連動(小学生こう君のブログ )
(父の解説:Scratchをベースにしたビジュアルプログラミング言語mBlockでは、mBlockのアプリ画面に「スプライト」というキャラクターがいます。Scratchのデフォルトのキャラクターは猫ですが、mBlockはパンダです。そのmBlockキャラクターと、Arduinoマイコンを連動させることができる!ということで、挑戦してみました。日本語で読める情報はまだ限られているようですので、記事の末尾に補足情報も掲載しておきます。)
こんにちは! こう君です。今回は、コンピュータのアプリのキャラクターと、Arduinoを連動させてみたいと思います。キャラクターを画面上でクリックすると、ArduinoのLEDがついたり消えたりするプログラムです。
まずは、回路から作っていきたいと思います。回路はとても簡単で、第1回の記事で作った2番目の回路と同じです。
次に、プログラミングをしたいと思います。初めて「ブロードキャスト」を使います。
画像の「拡張」というボタンをクリックしてください。
すると、画像のような画面が出るはずです。
この、「ブロードキャスト」の+追加というボタンをクリックしてください。
すると、ブロック定義の下に、画像のような画面が出るはずです。
そして、新しく追加された「ブロードキャスト」を使って、Arduinoに画像のようなプログラミングをしてください。PCからメッセージを受け取るとLEDをオンやオフします。
Arduinoのプログラムはこれだけです。
次に、画像の部分の「スプライト」という部分をクリックしてください。
すると、プログラムのブロックが変わったはずです。キャラクターについてプログラムができます。
そして、画像のようにプログラミングをしてください。
(父 注: スプライト(キャラクター)がクリックされたとき、「PC(スプライト)側でLEDをONかOFFか決める」→「ブロードキャストでArduinoへメッセージを送る」→「OKのメッセージが返って来るまで待つ」→「返ってきたら、スプライトをランダムに動かす」→「2秒間スプライトが話す」という構成です。)
そして、Arduinoを接続して、「デバイス」にもどして、接続とアップロードをクリックしてください。
このとき、画像の部分をクリックしてください。すると、キャラクターの枠が大きくできます。
そして、右上図の画像の矢印にあるパンダをクリックしてください。
すると、パンダがしゃべって、LEDがつくはずです。
できました!
次回は、番外編ということで、Arduinoスターターキットについている液晶ディスプレイを使ってみたいと思います。
父の補足: mBlockの情報はまだ英語か中国語(mBlockを作っている会社は中国・深圳(シンセン)市のスタートアップ)が多く、日本語ではあまり情報を見つけられませんでした。今回のプログラム作成にあたっては、英語の公式サイトのマニュアル[1]だけを見てもよくわからなかったので、検索で見つけた中国の方のレクチャー動画[2]を参考にしました。
今回紹介した、「PCから命令をArduinoに送る」「Arduinoは命令実行の完了後、確認の信号をPCに戻す」という基本動作さえできれば、いろいろな遊び方が可能になると思います。
[1] “Upload Mode Broadcast,” Makeblock Co., Ltd., 2020, https://www.mblock.cc/doc/en/use-extensions/upload-mode-broadcast.html.
[2] 周泰民, “mBlock5 + Arduino UNO 互動範例(インタラクティブな例),” Feb. 2019, https://www.youtube.com/watch?v=k9-nPWfv64U.
続き: mBlockを使ってArduinoを動かしてみた9:液晶ディスプレイ(小学生こう君のブログ )
mBlockを使ってArduinoを動かしてみた10:コードブレーカーゲームのルール(小学生こう君のブログ )
mBlockを使ってArduinoを動かしてみた11:コードブレーカーの暗号を作る(小学生こう君のブログ )
mBlockを使ってArduinoを動かしてみた12:コードブレーカーの暗号判定(小学生こう君のブログ )
mBlockを使ってArduinoを動かしてみた13:コードブレーカー判定結果の出力(小学生こう君のブログ )
mBlockを使ってArduinoを動かしてみた14:コードブレーカー正解/失敗時の動作(小学生こう君のブログ )
mBlockを使ってArduinoを動かしてみた15:コードブレーカー答えの入力(小学生こう君のブログ )
mBlockを使ってArduinoを動かしてみた16:コードブレーカー完成して遊んでみた(小学生こう君のブログ )
バックナンバー:
mBlockを使ってArduinoを動かしてみた1:セットアップ(小学生こう君のブログ )
mBlockを使ってArduinoを動かしてみた2:LEDライト点滅(小学生こう君のブログ )
mBlockを使ってArduinoを動かしてみた3:LEDで信号機(小学生こう君のブログ )
mBlockを使ってArduinoを動かしてみた4:スイッチ取り付け(小学生こう君のブログ )
mBlockを使ってArduinoを動かしてみた5:早押しボタン(小学生こう君のブログ )