個人的に micro:bitより 高校教育に適していると感じている教育用マイコン、makecode社 の CyberPi (サイバーパイ)の8つのデモサンプルプログラムを紹介します!ネットワーク接続をしてCyberPiの双方向通信によるデバイス間連携も実践!!
CyberPiとはどういった機能を持っているのか、どういったプログラムが具体的に組めそうなのかが本記事でわかります!
特に、ネットワーク接続による CyberPi の双方向通信は必見!めっちゃ簡単に出来ます!
Scratch(スクラッチ) と同じ操作感で IoT に強みのある mBlock を用いて制御します。
プログラミングやIoTの初学者でもわかる入門(使い方)向けの内容でもあります。
デモプログラム
CyberPi は8つのプログラムを保持しています。そして、初期の8つのプログラムはデモサンプルとなっており、CyberPi でどういったことができるか、ある程度体験することが可能です。
新しくプログラムを CyberPi に保存していく場合、初期のデモサンプルは上書きされます。mBlock上 のチュートリアルから似たようなサンプルプログラムをダウンロードすることが可能ですが、全く同じではないようですので、上書きする際には注意してください。
(工場出荷状態への初期化方法があれば知りたい!Makeblockさん、教えて欲しいです!)
デモサンプルは以下となります。
- Magic recorder(録音・再生)
- The Voice Show(音量の棒グラフ表示)
- Kaleidoscopes(描画)
- Trigorometrix function line(三角関数の折れ線グラフ表示)
- Find Green(モーションセンサーゲーム)
- 四則演算ゲーム
- Plane wars(シューティングゲーム)
- Shake it, Send gifts(デバイス間連携(ネットワーク接続))
事前準備・プログラムの起動・切り替え方法
CyberPi に保存されているプログラムを起動するためには、アップロードモードにしておく必要があります。mBlock と CyberPi を接続していない状態であれば、CyberPi は自動でアップロードモードとなります。アップロードモードとライブモードの違いに関しては下記の記事をご覧ください。
アップロードモードの状態(もしくは mBlockと未接続の状態)にすると、以前最後に実行したプログラムが実行されます。初めて起動する場合には、CyberOS の HOME 画面が表示されます。
![CyberOSのHOME画面](http://alfnets.info/wp-content/uploads/DSCF0035.png)
CyberOS の HOME 画面が表示されない場合や、プログラムを切り替えたい場合は、右側面の「HOME」ボタンを押すと HOME 画面が表示されます。表示されない場合には、CyberPi と mBlock が接続されて ライブモード になっている可能性があります。
![CyberPiのHOMEボタン](http://alfnets.info/wp-content/uploads/89c190b486132e45ed1f6f6f57ea5e3c.jpg)
HOME 画面が表示されたら「プログラムの切替」を選択して▷の形をしたBボタンを押します。プログラムの一覧が表示されるので、実行したいプログラムを選択してBボタンを押すとプログラムが実行されます。
![CyberOSのHOME画面](https://alfnets.info/wp-content/uploads/DSCF0035.png)
![プログラムの選択](https://alfnets.info/wp-content/uploads/DSCF0036.png)
1.Magic recorder(録音・再生)
Magic recorder は、録音と再生ができるプログラムとなります。左のジョイスティックを押し込むことで、録音が始まります。
![Magic recorderの起動画面](http://alfnets.info/wp-content/uploads/b48a80e191a4d50028ce2a6603c54b12.jpg)
録音を止めるには、□の形をしたAボタンを押します。
![Magic recorderでの録音中画面](http://alfnets.info/wp-content/uploads/5eb2166a2a820e1e9cb1e9d101cac267.jpg)
録音したものを再生するには、▷の形をしたBボタンを押します。
![Magic recorderでの再生前の画面](http://alfnets.info/wp-content/uploads/f896fb56defab9427b846cbc467fdffc.jpg)
再生が終了しても、下記の再生中の画面のままとなります。気にせず、もう一度録音したい場合には、ジョイスティックを押し込み、もう一度再生したい場合には▷の形をしたBボタンを押します。
![Magic recorderでの再生中の画面](http://alfnets.info/wp-content/uploads/1eefd9dd32fc336ba91fc92caec6562a.jpg)
なお、残念ながら録音して保持できるデータは一つのみのようです。
2.The Voice Show(音量の棒グラフ表示)
The Voice Show は、マイクで入力された音量を棒グラフでリアルタイムに表示するプログラムとなります。▷のBボタンを押すことでスタートします。
![The Voice Showのスタート画面](https://alfnets.info/wp-content/uploads/57ab0f57c580a22edf3fc5bafc9b0142.jpg)
![The Voice Show](https://alfnets.info/wp-content/uploads/The-Voice-Show.gif)
3.Kaleidoscopes(描画)
Kaleidoscopes は、ディスプレイ上に描画をしていくプログラムとなります。実行後すぐに描画が始まります。
![Kaleidoscopes](http://alfnets.info/wp-content/uploads/Kaleidoscopes-1.gif)
4.Trigorometrix function line(三角関数の折れ線グラフ表示)
Trigorometrix function line は、三角関数(sin、cos、tan)を折れ線グラフで描画していくプログラムとなります。実行後、すぐに描画が始まります。
![Trigorometrix function line](http://alfnets.info/wp-content/uploads/TrigorometrixFunctionLine.gif)
5.Find Green(モーションセンサーゲーム)
Find Green は、モーションセンサーを取り入れたゲームとなります。CyberPi を傾けることにより白い四角を操作することができ、緑色の小さな四角を捕まえていくゲームとなります。
![Find Green](http://alfnets.info/wp-content/uploads/Find-Green.gif)
6.四則演算ゲーム
四則計算ゲームは、左側に表示される簡単な式(四則演算)をジョイスティックで上下に操作して、右から迫ってくる正解となる数字を当てるゲームとなります。
![四則演算ゲーム](http://alfnets.info/wp-content/uploads/7ae38b7876ede943f63cc76656130727.gif)
7.Plane wars(シューティングゲーム)
Plane wars は、いわゆるシューティングゲームです。□の形をしたAボタンを押すとゲームがスタートします。そして、Aボタンで弾を撃ち、向かってくる飛行機(敵機)を撃ち落としていきます。なお、撃ち落とせなかった場合でも、自機とぶつからなければ大丈夫です。自機と敵機がぶつかると GAME OVER となります。
![Plane wars](http://alfnets.info/wp-content/uploads/PlaneWars.gif)
8.Shake it, Send gifts(デバイス間連携(ネットワーク接続))
Shake it, Send gifts は、2つのデバイス間で簡単な通信をするプログラムとなります。前提として、2つの CyberPi は次項のネットワーク接続を終えている必要があります。
まずは、両CyberPi でプログラムを実行します。その後、片方の CyberPi をシェイク(振る)します。そうするともう片方の CyberPi で、音とLEDの光とともにディスプレイ上にプレゼントマークが表示されます。
![Shake it, Send gifts](http://alfnets.info/wp-content/uploads/Shake-it-Send-gifts-crop.gif)
つまり、見た目上は CyberPi から CyberPi へプレゼントを贈っているように見えるプログラムとなります。実際は、ネットワーク通信で CyberPi 同士がメッセージのやり取り(送受信)をしているような動きとなります。
ネットワーク接続方法
8番目のデモサンプルである Shake it, Send gifts のように、他のデバイスやサーバーと通信が発生するプログラムの場合(IoTやAI機能など)、ネットワーク(Wi-Fi)接続が必要となります。
ネットワーク接続には2つの方法があります。
- AI もしくは IoTブロック のネットワーク接続用のブロックを用いてネットワーク(Wi-Fi)接続するプログラムを作成し、そのプログラムを CyberPi にアップロードしてプログラムを実行する
- CyberPi と mBlock を接続した状態で、mBlock から CyberPi の設定をしてネットワーク(Wi-Fi)接続する
ブロックを用いたネットワーク(Wi-Fi)接続
AI もしくは IoT にある 「Wi-Fi [ssid] パスワード [password] に接続する」ブロックを用いることで、ネットワーク(Wi-Fi)に接続するプログラムを作成することができます。
![ネットワーク接続ブロック](http://alfnets.info/wp-content/uploads/7dcc061d1a7eb4ae30d0943a3869f7f7.png)
SSID とは、Wi-Fi の電波(無線)を飛ばしている機器(アクセスポイント や 無線ルータ)を識別する名前(識別子)のことです。俗にいう、Wi-Fi名です(Wi-Fi は無線の規格自体のことを指すため、正しい表現ではありませんが)。
そして、パスワードはその SSID (Wi-Fi)に接続するためのものとなります。デフォルトだと無線ルータやアクセスポイントに貼ってあるシールに記載されているパスワードのことです。
また、「ネットワークに接続した」ブロックを用いることで、”ネットワーク接続が完了するまで待ってから次の処理を実行する” などのプログラムを作成することが可能です。
設定からネットワーク(Wi-Fi)接続
CyberPi と mBlock を接続後、mBlock上で CyberPi の設定をすることができ、そこで Wi-Fi の設定も可能です。 CyberPi と mBlock の接続方法がわからない方は下記の記事を参照してください。
まず、CyberPi と mBlock を接続し、その後、mBlock の画面左下のメニューより「設定」ボタンをクリックします。
![mBlock上の画面左下のメニューの設定ボタン](http://alfnets.info/wp-content/uploads/eab13b21c034fefb181c9d11056532b3.png)
そして、「Wi-Fiの設定」ボタンをクリックした後、ポップアップした Wi-Fi の設定画面において SSID と パスワード を入力して「OK」ボタンをクリックします。
![Wi-Fiの設定ボタン](https://alfnets.info/wp-content/uploads/3f08e517c7600fd495a08ca9f0c5c1bc.png)
![Wi-Fiの設定画面](https://alfnets.info/wp-content/uploads/fc4aad0c175e9de7220eba9699c42708.png)
これで無事 CyberPi がネットワークに接続され、デバイス間連携や IoT、AI の機能を使用することができるようになります。
なお、ネットワークに接続されると、CyberPi の HOME画面でWi-Fiアイコンが表示されます。
![CyberPiの接続アイコン](http://alfnets.info/wp-content/uploads/7af8034b7ae770d28f31e8aa854175cf.jpg)
まとめ
今回は CyberPi のデモサンプルプログラム、8つを紹介しました。電子工作が不要でここまで多くの機能を保有しているので、今後、事例が増えていくと面白くなってくるのではないかと感じました。
強みであるネットワーク連携については、AI や IoT の記事でさらに詳しく紹介しています。よろしければご覧いただけると幸いです。
![](https://alfnets.info/wp-content/uploads/b023488e478284d5244690f5fab84c37-160x90.png)
![](https://alfnets.info/wp-content/uploads/dd4437e904109198b474b9eb3a80eabd-scaled-e1622612772897-160x90.jpeg)
コメント