当サイトは広告が表示されます。

WRX micro:bitを車両で使う その2 Microsot MakeCodeとスマホ用アプリ

2019年12月3日micro:bit,社外部品・DIY

前回購入したmicro:bitのプログラミングを行う方法(エディター)は幾つか有りますが、教育現場で最も利用されていると思われるScratch(3.0)では現状micro:bitの機能の全てを利用出来る形ではない様です。micro:bitの公式エディターはMicrosot MakeCodeとなっているので、私はこちらを使用する事にしました。Microsot MakeCodeにはWeb版の他、Windowsにはインストールを行うアプリ版があり、さらにスマホ用にはAndroid版とiOS版の各アプリもあるので、今回はそれらの様子とmicro:bitへのプログラム書き込み方法を見てみます。

スポンサーリンク

注記

Microsot MakeCodeはmicro:bit以外の機器用もあり、実際にはそれらの総称になりますが、ここではmicro:bit用のエディター(Microsot MakeCode for micro:bit)として「Microsot MakeCode」と記します。またプログラムの組み方自体まではキリが無くなってしまうので説明はしていません。

スマホ用アプリはAndroid版(スマホのAndroidバージョン9)を使用しています。iOS版は使用していませんので、記事内容とは異なるかもしれません。

Web版 Microsot MakeCode

※1

Web版はその名の通り、Webブラウザとインターネットへの接続があればPCへのアプリのインストールは必要無く利用出来ます。WebブラウザでMicrosot MakeCodeへアクセスすると、上記の画面になります。また言語の変更は最下部にある「言語を変える」で行います。Webブラウザでchromeの場合の翻訳機能は利用しない方が良さそうです。

※2

新しいプログラムの作成は「新しいプロジェクト」から行います(既存のプログラムを開く場合は※1の画面で「読み込む」から)。右側でプログラムを組むと、左側にあるmicro:bitで動作シミュレーションが行えます。最初の画面ではサンプルプログラムやチュートリアルなども豊富に揃っていますが、内容は日本語になっていない物もあります。

シミュレーションに関してはプログラムを作成していくと随時更新されるのですが、プログラムが大きくなってくると更新が邪魔になってきます。この場合はシミュレーション画面は閉じた方が(あるいは停止)スムーズになります(「シミュレーターを隠す」、「<」ボタン、■ボタン)。

プログラムの保存と転送

プログラムを作成すると※1の画面で「新しいプロジェクト」の右側に履歴として表示されますが(あるいは「マイプロジェクト」をクリック)、任意に保存を行う場合は※2の画面で「ダウンロード」の右側にあるsaveボタンで行います。入力欄で名前を付けますが、saveボタンをクリックすると「名前を付けて保存」のウィンドウが出るので、その時点でも名前は付けられます。プログラムは「HEX」というデータ形式で保存されます。

ただし保存に関してはPC内へ保存する場合とmicro:bit本体に転送する場合があるので、少し分かり難い印象があります(後述)。

※3

micro:bitはUSB(MicroB)端子でPCへ繋ぐ事で電源が入ります(micro:bit単品で使用する場合はコネクターから3V電源を供給する方法もあります)。PCへ繋ぐと上記の様にドライブとして認識されます。「DETAILS.TXT」のテキストファイルはmicro:bitのバージョン等が記載されています。「MICROBIT.HTM」は単なるmicro:bitサイトへのショートカットです。

作成したプログラムを実際にmicro:bit本体に転送するには※2の画面で「ダウンロード」から行いますが、ダウンロードをクリックすると上記2つのウィンドウが出ます。先にPC内に保存を行い(名前を付けて保存)、その後にmicro:bit本体に転送するのだと思いますが、「micro:bitにダウンロードしましょう」の画面で矢印のボタンを押しても、再び「名前を付けて保存」のウィンドウが出ます。結局の所、micro:bit本体に転送する場合もドライブとして認識されたmicro:bit本体に保存を行うだけで、PC内への保存と変わりはありません。先のsaveボタンの場合も保存先をmicro:bit本体にすれば同じ事になるので、この辺りはちょっと紛らわしいと感じます。

PC操作に慣れた人であればPC内に保存したプログラムデータ(HEX)を、ドライブとして認識されたmicro:bit本体にコピー&ペーストした方が早いと思います。micro:bit本体に貼り付けるとエクスプローラー上では上記の様に表示されますが、その後は自動的にmicro:bit本体で書き込みが行われ、一度エクスプローラーのウィンドウが閉じます。micro:bit本体でリセットが掛かって再びウィンドウが出ますが、この時は貼り付けたプログラムデータは無くなり※3と同じ状態になっています。

追記

※2の画面で「ダウンロード」をクリックした時、下記WebUSBでMicro:bit本体と接続出来ている場合はMicro:bit本体に直接データが転送されます。転送に掛かる時間もこの場合の方が早い印象です。ただしPC内には保存されないので(履歴としては残りますが)、「ダウンロード」の右側にあるsaveボタンで別途行う必要があります。また履歴に関してはプログラム作成を中断した状態までが残っていますが、PC内に保存してあったデータへ戻したい場合は、再度※1の画面で「読み込む」からデータを選択します。履歴が増え過ぎた場合は「マイプロジェクト」から個別に選択して削除する事も出来ます。さらに※2のプログラム作成画面で、右上にある歯車マークから「リセット」を行うと、Microsot MakeCodeは履歴を含めて初期状態にクリアされます(下記)。

Micro:bit本体のファームウェアの更新とWebUSBについては別記事で扱う予定です。 →記事を書きました。WebUSBでのプログラム転送の方が簡単でした。従って現在はWebUSBで転送を行っています。

---追記ここまで

WebUSB

Webブラウザがchromeの場合は「WebUSB」で、chromeから直接micro:bit本体に接続、プログラムの転送が可能とあります。ただしmicro:bit本体のファームウェアが「0249」以上の必要があり、それ以下の場合はファームウェアのアップデートが必要となっています。ファームウェアのバージョンは先の「DETAILS.TXT」で確認出来ます。私の購入したmicro:bitのファームウェアバージョンはちょうど「0249」でしたが、私はWebUSBの機能は試していません。※上記の記事でファームウェアの更新とWebUSBでの接続を行っています。

アプリ版 Microsot MakeCode

Windowsにはインストールを行う形のアプリ版もあります。Microsoft storeアプリから「micro:bit」で検索すると出てきます。インストールを行う事が出来る環境はWindows10のバージョン10240.0以降となっています。基本的にはWeb版と変わりはありませんが、ネット接続が無い環境でもプログラミング等を行う事が可能です。ただしWeb版とアプリ版それぞれで作成したプログラムの履歴は同じにはならないので、やはりPC内にしっかりと保存を行っておく必要があります。※アプリ版Microsot MakeCodeのプログラム転送についても、先の追記内の記事で扱っています。

スマホ用アプリ

スマホ用には「micro:bit コンパニオンアプリ」というアプリがあります。スマホ用アプリではBluetoothでmicro:bit本体に接続してプログラムを転送する事が可能です。「Create Code」でプログラムの作成も行える様に見えますが、実際にはWebブラウザでMicrosoftのMakeCodeサイトに繋がるだけです。ただしスマホでプログラムを組む事は画面サイズからかなり大変で、簡単なプログラムの修正程度が辛うじて行える印象です。タブレットであればなんとかなるでしょうか。

プログラムの保存と転送

現状のスマホ用アプリではプログラムの転送がメインになりそうです。私の場合、これまでのPLCではノートPCを車内に持ち込んでいました。micro:bitではスマホから転送を行えるので、プログラムはGoogleドライブ等のオンラインストレージに保存しておき、都度必要なプログラムを選択して転送が可能となるのでとても便利になります。以下からスマホとmicro:bit本体の接続とプログラム転送の方法を記します。

ペアリング

アプリの最初の画面から「Connect」を選択します。次にmicro:bit本体をペアリングモードにしますが、画面の指示通りにAとBボタンを同時に押し、その後にリセットボタンを1回押します。この時にmicro:bit本体ではLEDが左上から右下に順次点灯していくので、その間はAとBボタンは離さずに押したままにします。

micro:bit本体がペアリングモードになるとLEDが任意のパターンで点灯しますが、これがパスワードの代わりになります(従ってmicro:bit個別で点灯パターンは異なります)。スマホ側で「NEXT」をタップします。

スマホの画面で、micro:bit本体のLEDの点灯と同じパターンになるように表示をタップしてON(赤)にしますが、各列の一番上をタップすればその下も全てONとなります。したがってこの場合は矢印の表示5ヶ所をタップするだけです。その後「PAIR」をタップするとペアリングが完了します。

プログラムの転送

プログラムの転送はアプリの最初の画面で「Flash」から行いますが、最初はプログラムがありません。スマホ内にプログラムを保存しておく必要がありますが、下部の「MY SCRIPT」からHEXファイルを選択、あるいはGoogleドライブ等のオンラインストレージに保存してある場合は、アプリを指定して開く(ダウンロード)事でアプリの中にリストとして表示されました。リストの右にある矢印「<」から「FLASH」をタップします。

プログラムを転送するか聞かれるので「OK」をタップすると、転送が始まります。プログラムが転送されてmicro:bit本体への書き込みが完了すると、「Flashing successful」と出るので「OK」をタップして完了です。

再接続

プログラムを転送するとmicro:bit本体はリセットが掛かり、アプリでは再接続の画面が出ますが、私の環境では再接続は成功した事がありません。この場合は再度、アプリの「Connect」からmicro:bit本体をペアリングモードにして接続します。先の「micro:bit コンパニオンアプリ」のページでは、

途中USBケーブルを使ってmicro:bitのプログラムを上書きすると秘密のコードが削除されてしまいますので、ペアリングの手順を繰り返す必要があります。 別のmicro:bitを使う時にも手順を繰り返す必要があります。

とあるのですが、現状ではUSBケーブルは関係無しにプログラムを上書きした場合は、都度ペアリングから行う必要がある様子です。またBluetoothを使った転送でエラーが起こった場合は、スマホ側のペアリング設定も削除してから新たにペアリングを行う事も記載されています。

ペアリング方法の変更

Microsot MakeCodeでは右上の歯車マークからプロジェクトの設定を選択すると、Bluetoothのペアリングに関する設定が行えます。設定では「ペアリングのリクエスト無し」、「ペアリングを行う(デフォルト)」、「6桁のパスキー入力を行う」の3つがあります。ただし「ペアリングのリクエスト無し」にしても、スマホ用のコンパニオンアプリから接続する場合は、LEDパターンの入力は必要でした。

「6桁のパスキー入力を行う」にすると、LEDパターンの入力後にパスキーの入力が求められます。この時、micro:bitのLEDには左矢印が表示され、Aボタンを押す様に指示されます。Aボタンを押すと6桁のパスキーが順に表示されるので、この数値をスマホ側に入力します。

スマホ用アプリにはコンパニオンアプリ以外にもmicro:bitと接続出来るアプリもありますが、これらのアプリでは「ペアリングを行う(デフォルト)」、「6桁のパスキー入力を行う」では接続出来ない物があります。この場合は「ペアリングのリクエスト無し」にして接続します。

micro:bit 新バージョン「2.0」について

2020年11月25日より、Micro:bit本体の新バージョン「2.0」が発売になっています。従ってこれまでの古いmicro:bitを使用した記事(~その24)と新しいmicro:bitでは記事内容に相違がある場合があります。ただしこれまでのプログラムは基本的には新しいmicro:bitでも動作し、古いmicro:bitも引き続き使用する事が可能です(ハード的に新たに追加された機能は、拡張ボード等が必要ですが)。

なお新しいmicro:bitについては実際に1つ購入し、micro:bit関連記事「その25」から扱っています。

2022年4月追記

2021年12月にmicro:bit本体のバージョンが「2.2」になるとのアナウンスがありましたが、「2.0」との機能上の違いは無いとされています。

「micro:bit」関連記事

以下は「micro:bit」タグの記事一覧です(投稿順)。現在の記事とこれ以降に投稿した記事も含みます。「その24」までの記事ではmicro:bit本体のバージョン「1.5」を使用しています。

micro:bit関連記事
クリックで開きます

「micro:bit+プラレール」も始めました。

プラレール関連記事

その他

FA用PLCとELM327を使用した「OBD2」関連の記事は以下の記事から始まります。

注記

    • このブログ内で書いている内容はあくまで私の利用する製品(アプリ含む)や機器での場合です。他メーカーの製品や機器をはじめ、同じメーカーの製品・機器であってもバージョン違い等の場合もあるので、記事内容の保証や責任を負う事は出来ません。
    • 記事内で紹介している製品や、その他の類似製品を購入・利用する場合はそのメーカーや購入先で仕様等を確認し、自己判断と自己責任の下で利用して下さい。
    • 記事内で公開しているmicro:bit用プログラムは自由に利用・改変して頂いて構いません。ただし不具合やバグもありますので、プログラムを利用した際の故障や事故等についての保証や責任を負う事は出来ません。自己判断と自己責任の下で利用して下さい。
    • micro:bit製品やプログラミング、その他記事内容について個別の問合せや依頼を頂いても回答する事は出来ませんので、予め御了承下さい。
    • BBC micro:bitは、micro:bit教育財団の登録商標です。その他のブランド名または製品名は各所有者の商標です。