どれ使う?プログラミング教育ツール

携帯ゲーム機風のプログラミング学習用コンピューター「CyberPi」 ~ジョイスティックやディスプレイを搭載

 今回は、プログラミング学習用のマイクロコンピューター「CyberPi」を紹介します。makeblock社から2021年2月に出た新しく出たツールで、入出力が豊富で、できることの幅が広いのが特徴です。Amazon.co.jpでは10,780円で販売されています(価格は執筆時時点)。

豊富なインプット・アウトプット

 「CyberPi」は、携帯ゲーム機風のジョイスティックや2個のボタン、フルカラーの小さなディスプレイ、マイク、スピーカー、LEDなどが備わっていて、単体でも表現の幅が広いのが特徴です。センサー類は、光、ジャイロ、加速度センサーが内蔵されていて、さらに外部モジュールも手軽に追加することができます。また、Wi-Fiで通信できて、IoTの仕組みをつくることもできます。

本体のサイズは横84mm×縦35mm×厚さ13mm。専用のバッテリー兼拡張ボード(「Pocket Shield」)を組み合わせれば、PCから切り離して単体で使用できる

 基板そのものではなくケースに収まりボタン等が整っていて、PCから切り離して単独で使用する際に扱いやすく身軽です。

プログラミングの準備

 「CyberPi」のプログラミングには、「mBlock 5」というアプリを使用します。makeblock社のほかのプログラミング学習ロボット等と共通のビジュアルプログラミング型のアプリです。Web版と、デスクトップ版、Android/iOSアプリがそろっていて、Web版を使用する場合は、別途「mLink 2」をインストールする必要があります。本記事では、Windows版のデスクトップ版アプリで説明します。

 なお、「mBlock 5」にはビジュアルプログラミング型とは別に「CyberPi」で使える新たなPythonエディターも提供されていますが、現時点ではまだ日本語版はありません。

 アプリをダウンロードページからダウンロードし、指示に従ってインストールしたら、早速起動してみましょう。

アプリの最初の画面。❶デバイス選択。他の機器が表示されていたら[×]で削除して、下の[+追加]で「CyberPi」を選ぶ。❷プログラミングに使用するブロック。❸プログラム編集エリア。❹「CyberPi」で画面内のキャラクターを操作するなど、画面内と連動する作品に使用するステージ。「CyberPi」本体のみで完結するプログラムを作成するときは使用しない。❺「CyberPi」で使える新たなPythonエディターへのリンク

 「CyberPi」はUSBケーブルでパソコンにつなぎ、画面左下の[接続]ボタンで接続します。これで、アプリで作成したプログラムをリアルタイムに「CyberPi」本体で試すことができます。

USBケーブルで接続
❶[接続]ボタンを押す。❷接続可能デバイスを選び[接続]ボタンを押す。❸デバイスが接続された

 なお、「CyberPi」をPCから切り離して単独で使いたい時は、作成したプログラムを本体に転送する必要があります。転送の手順は次の図を参照してください。

❶[アップロードモード切り替え]を[オン]にする。❷[アップロード]ボタンを押す。❸作成したプログラムファイルが「CyberPi」に転送される

メッセージを表示させてみよう

 簡単なプログラムを作成してみましょう。次の図は、「CyberPi」本体のボタン[A](四角いボタン)を押したら好きなメッセージが表示されてLEDが点灯するプログラムです。日本語のメッセージも表示できます。メッセージやLEDの色を自由に変えてみてください。

[イベント]ブロックには、ボタンやジョイスティックの操作、ジャイロの値などに応じたブロックが用意されていて手軽にプログラムを作成できる
本体の[A]ボタンを押してプログラムが実行されたところ。小さな画面ながら文字が表示されると楽しい

 次の図のように、プログラムを少しアレンジをして、プログラムを本体に転送してPCから切り離して使えば、伝言メッセージ装置のような使い方ができます。

起動時と[B]ボタンのプログラムを追加して、[A]ボタンのプログラムに音声を追加して少しアレンジ
プログラムデータを本体にアップロードしてPCからはずせば単独の装置になる

 今回はボタンを押すだけのプログラムですが、例えば、ジョイスティックでPCの画面内のキャラクターを動かしたり、センサーで取得した値を本体の小さな画面でグラフ表示したりなどもできます。次回はより高度な使い方のアイディアをご紹介します。

 2020年度から小学校でプログラミング教育が実施されています。これに伴い家庭でも手軽にプログラミングを学習できるツールが多数登場していますが、どんなツールを使えばいいのか迷ってしまう方も多いのではないでしょうか? そこで本連載では家庭でのプログラミング教育にピッタリなお勧めツールを紹介していきたいと思います。