稼働中

マイクロビット(e_02)thonny-microbit を使う

Thonny-microbitでMicroPython

Thonnyは初心者向けのPython IDE(統合開発環境 Integrated Development Environment)です。Thonnyに「thonny-microbit」をインストールしてmicro:bit用のMicroPythonを使えるようにしたいと思います。MicroPythonプログラムでmicro:bitを動作させることができるようになります。

「thonny-microbit」はBBC micro:bitのサポートをするThonnyのプラグインだそうです。Thonny 3.0および3.1で動作するようです。※Thonny 3.2以降では同じ機能が組み込まれているのでインストールは不要らしいです。

thonny-microbitをインストール

私の場合は未だにThonny3.1.12を使っています。そのため「thonny-microbit」をインストールします。Thonnyのメニューから「Tools>Manage package」を選択します。
「thonny-microbit」を入力して「Find package from PyPI」で検索します。「Install」ボタンを押します。インストールが終われば「Close」ボタンを押します。

Manage package

Thonnyを終了します。micro:bitをUSB接続します。続いてThonnyを再起動し確認します。
メニューの「Device」に「Install microbit-micropython・・」が追加されています。「microbit-micropython」をインストールします。※MicroPythonのインストールより先に「Tools>Interpreferをmicro:bit」設定をするとエラーが出ます。

Device

micro:bitへコピーされます。

micro:bitへコピー

Interpreferを設定します。
「Options>Interprefer」選択肢に「MicroPython on BBC micro:bit」が増えています。
「MicroPython on BBC micro:bit」と「mbed Serial Port(COM3)」を選択して下方のOKボタンをクリックします。
Interprefer-BBC micro:bit

Thonnyのメイン画面に戻ります。
Shell枠に「MicroPython v1.9.2-34-gd64154c73 on 2017-09-01; micro:bit v1.0.1 with nRF51822
Type “help()” for more information. [backend=microbit]」が記載されていました。これで動作するハズです。

shell部の表示

ちなみに、help()をみると、停止、ソフトリセット、自動インデントをオフができるそうです。
Control commands:
CTRL-C — 実行中のプログラムを停止する
CTRL-D — 空白行で、micro:bitのソフトリセットを行う。
CTRL-E — 貼り付けモードに入り、自動インデントをオフにする。

Device項は、すべて選択が可能になっています。

Device

Device
Soft reboot>microbitを再起動
Upload current script as main script>メインスクリプトをアップロード
Upload current script as boot script>ブートスクリプトをアップロード
Upload current script with current name>スクリプトをファイル名付きでアップロード
Show device ‘s main script>デバイスのメインスクリプトを表示
Show device ‘s booot script>デバイスのブートスクリプトを表示
Install microbit-micropython-v1.0.1 to BBC micro:bit>microbit-micropythonをデバイスにインストール
Close serial connection>シリアル接続を閉じる

動作確認

Thonnyのshell部に直接入力してmicro:bitを動かす、エディタでスクリプトを作成してmicro:bitを動かす方法があります。

Shellで動作

microbitが動作するか確認します。ThonnyのShellに以下を入力していきます。
Image.HAPPY


>>> from microbit import * #モジュールをインポート
>>> display.show(Image.HAPPY) #5X5のLEDでImage’HAPPY’を表示
>>> display.clear()#LEDを消灯
>>>

以下のようにLEDが点灯して動作しました。

HAPPY

スクリプトで動作

次にThonnyのeditorに入力したスクリプト(保存したスクリプト)でmicro:bitを操作してみます。
①Thonnyから実行(スクリプトの開発時)
「Run」ボタンで直接スクリプトを実行できます。コンパイルしたファイルを作成せずそのまま実行できます。
エディタにあるスクリプトが実行され動作が確認できます。micro:bitにアップロードされていないのでmicro:bit単体では動作しません。micro:bitのスクリプトの開発時に使えば良いと思います。

②micro:bitにアップロードして実行(micro:bit単体で実働時)
micro:bit単体で動作させるには「Device>Upload current script as main scriptでmicro:bit」でスクリプトをmicro:bitにアップロードします。micro:bit単体(電源があればUSB接続無しで)で動作します。
「Device>Soft reboot」を選択するか、micro:bit本体をリセット(裏面のリセットボタン)します。
実際にmicro:bit単体で実働させる時に使えば良いと思います。

先のshellで動作確認した内容をThonnyのエディタに書き「b_test1.py」としました。

b_test1.py

下図はエディタにあるスクリプト「b_test1.py」を「Run」ボタンで実行して正常動作を確認した後に、micro:bitにアップロード、「Soft reboot」を実行、micro:bitのリセット、実行(Run)、を続けて行ったShellの結果表示です。micro:bitのLED表示は先と同じ’HAPPY’のImageです。

スクリプトで動作した

まとめ

Thonnyを使ってMicroPythonコードでmicro:bitを動作させる方法について記載しました。
ThonnyからMicroPytonで直接micro:bitを操作できます。いちいちコンパイルしなくてよいので楽ちんです。作成したスクリプトですぐにmicro:bitの動作を確認できます。また、スクリプトをmicro:bitにアップロードするのも簡単にできます。
MicroPytonのmicro:bitなどのデバイス開発にThonnyは非常に便利です。素人レベルの私にはちょうど良い感じで非常に気に入ってます。