どれ使う?プログラミング教育ツール
「Python」で人気のプログラミング学習用マイコンボードmicro:bitをプログラミング!
2020年11月5日 15:13
プログラミング学習にぴったりの小さなマイコンボード“micro:bit”には、プログラミングのためのエディターが複数用意されています。初心者におすすめなのはMicrosoftの「MakeCode」をベースに作られたブロック型のビジュアルプログラミング方式のエディターですが、プログラミング言語Pythonのエディターもあります。今回は、Pythonのmicro:bit用エディターの使い方を紹介します。
これまでmicro:bitを紹介した記事でも「MakeCode」を使用してきましたが、ビジュアルプログラミングを卒業してPythonでのプログラミングにチャレンジしたい方はぜひこちらのエディターを試してみましょう。
Pythonエディターを起動
まず、ウェブブラウザでmicro:bitの「Python Editor」にアクセスします。次の図の通りエディターが開きます。仮のサンプルプログラムが既に記述されています。
基本の使用手順は、以下の3ステップです。
- コードを書く
- 左上の[Download]ボタンで“.hex”という拡張子のプログラムファイルをPCにダウンロード
- USBケーブルでPCにマウントしたmicro:bitに手動でファイルをコピー
以上の手順はMakeCodeエディターを使っても同じなのですが、PythonエディターにはMakeCodeエディターにあるシミュレーターがないので、いちいちこの手順をふんでmicro:bit本体でプログラムをチェックするのはちょっと面倒で手間がかかります。
WebUSBで接続するとプログラム転送がラクにできる
プログラムのチェックを楽にする方法として、ブラウザからmicro:bitに直接プログラムファイルを転送するWebUSBの機能があります。WebUSBの機能を使う主な条件は2つ。ブラウザは「Google Chrome」を使用することと、micro:bitのファームウェアのバージョンを“0243”以上にすることです。ファームウェアのアップデート方法はこちらを参考してください。筆者もアップデートしましたが、とても簡単です。
以上を確認したら、エディター上部の[Connect]ボタンを押すと、デバイスとの接続確認が出ますので[接続]ボタンでつなぎます。接続できると上部左端の[Download]ボタンが[Flash]ボタンに変わりますので確認してください。WebUSBモードにすれば、[Flash]ボタンを押すだけでプログラムを本体に転送できます。
試しにサンプルコードをそのまま転送すると、LEDディスプレイに文字が流れてプログラムがmicro:bit本体で動いていることがわかります。
WebUSBは開発中の機能とありますから、うまくいかない方は、通常の手順通りファイルをダウンロードして手動でコピーして利用してください。
簡単なコードを書いてみよう
簡単なコードを書いてみましょう。micro:bitで動く「Python」は「MicroPython」と呼ばれる小さなデバイスで動くように最適化されたものです。
まず、エディターの全ての行を消してしまいましょう。その上で、以下の1行だけ書きます。
from microbit import *
これはつねに1行目に入れる呪文のようなものと考えてください。「MicroPython」でmicro:bit用に必要なプログラムの材料を使うための指示です。これだけではmicro:bitに何の指示もしていないので、何も起こりません。
次の行に1行だけmicro:bitへの指示を書きましょう。LEDディスプレイに、指定の文字を流すプログラムです。
display.scroll("Mado no Mori")
“"”(ダブルクオーテーション)で囲まれた“Mado no Mori(まどのもり)”の部分は、自分の名前でもなんでも好きな英数字を入れてください。日本語など全角文字はmicro:bitのLEDディスプレイで表示できないので、避けます。
この2行が書けたら、[Flash]ボタンで、プログラムをmicro:bitに転送します。USBでパソコンに接続したままの状態で、プログラムが動き始め、micro:bitのLEDディスプレイ部分に指定した文字がスクロールして流れます。
プログラムを間違えたら……?
一文字でも間違えるとプログラムは動きません。このコード例で「""」は「''」でも構いませんが、他は、半角で大文字小文字、スペースなどを正確に書いてください。
しかしながら、こんな短いコードでも初めは間違えてしまうのがよくあること。例えば2行目をこんなふうに書くだけで、コードは正しく動きません。
display.Scroll("Mado no Mori")
“Scroll”は正しくは“scroll”です。
Pythonエディターの場合、プログラムにエラーがあると、エラーメッセージをmicro:bitのLEDディスプレイに流してくれます。
試しに上記のように間違えて[Flash]ボタンを押してみると、「Line 2 AttributeError…」と始まるメッセージが流れ始めます。LEDディスプレイはせまくて読みづらいですが、とりあえず“Line 2”で2行目に問題があるということはわかります。コードの2行目をチェックしてみましょう。
このようにエラーを表示してくれるのはありがたいのですが、micro:bitのLEDディスプレイではエラーを読みづらいのが難点です。
もうひとつエラーを確認する方法があります。PythonエディターにはREPLと呼ばれる実行環境が用意されていて、エラーはそこにも表示されます。エラーのチェックに使うだけであれば簡単なので次の図を参考に活用してください。
micro:bit用の「MicroPython」については日本語でもドキュメントが公開されているので、文法や記述例などは適宜参照して挑戦しましょう。
なお、micro:bitは最近バージョンアップが発表されたばかり。マイクやスピーカーなどこれまで追加モジュールで実現していた機能が本体に標準搭載されたのでとても便利になります。これから購入を検討する方は、日本で新バージョンが発売されるまで様子を見て待つのがおすすめです。
2020年度から小学校でプログラミング教育が実施されています。これに伴い家庭でも手軽にプログラミングを学習できるツールが多数登場していますが、どんなツールを使えばいいのか迷ってしまう方も多いのではないでしょうか? そこで本連載では家庭でのプログラミング教育にピッタリなお勧めツールを紹介していきたいと思います。