日本Androidの会秋葉原支部ロボット部 関 昌充(P酒)
(この文書のライセンスはCC BY-NC 4.0です)
Why? micro:bit
前回、前々回とPICAXEについての簡単な記事を書いたのですが、今回は前から気になっていたmicro:bitについて紹介させていただきます。
本体とPC等の開発環境があれば色々できる。
ArduinoやPICAXEで何かしようとすると、本体以外にLED、スイッチ、センサー等の部品を買ってきて接続して、という流れになりますが、micro:bitの場合は、標準で、LEDアレイ、スイッチ、タッチセンサー(端子)、温度センサー、加速度センサー等が入っていますので、本体と開発環境があれば色々試せます。
Webベースの開発環境(JavaScriptブロックエディター)でブロックプログラミングができる。
これは「ArduBlock」を入れたArduinoIDEや、PICAXE Editor等でもできます。違いは、ボタン1つでブロックとJavaScriptを相互に切り替えできる点でしょうか?
(ArduinoIDEではコードに変換してからコンパイルするのでコードを見ることができますし、PICAXE EditorでもブロックをBasicのコードに変換することはできます。[逆は不可])
ただ、Webベースということもあり、動作がやや遅と思います。
Webベースにしたのは...ユーザエクスペリエンスの収集目的なのかなぁ?バージョン管理の煩わしさ回避なのかなぁ?
本体なしでもシミュレーションができる。
これはPICAXE Editor等でもできるのですが、チップレベルのシミュレーションなので、外付けのLEDやセンサー等を含めたシミュレーションはできません。
micro:bitの方は、ハードウェアの仕様が統一されているため、センサー等も含めたシミュレーションができるのだと思います。
スマホ(だけ)でも開発できる。
BLE対応のAndroidかiPhoneである必要がありますが、残念ながら筆者のAndroidタブレットはBLEに対応していないため動作確認はしていません。
micro:bitを始めるために(最低限)必要なもの
micro:bit本体
開発環境(JavaScriptブロックエディター)があればシミュレーションもできるので、本体が無くてもプログラミングはできるのですが、やはり実機で動かしたいですよね。
開発環境
###JavaScriptブロックエディター
https://makecode.microbit.org/#lang=ja
Mac,Windows PC,Chromebook,Linux で使えるようです。
エディターで作成したプログラム(hexファイル)をmicro:bitにダウンロードする際には、micro:bitをUSBケーブルでPC等に接続し、ドライブとして表示されるmicro:bitにhexファイルを「送り」、書き込みが終了すると実行されます。
前のプログラムは消えます。
初期設定に戻すには、以下のhexファイルとのこと。
###Pythonエディター
http://python.microbit.org
こちらもWebベースなので同様に使えるのではないかと思います。
###スマホアプリ
BLEに対応していれば、開発したプログラムをBLE経由でmicro:bitにダウンロードできます。
https://play.google.com/store/apps/details?id=com.samsung.microbit
https://itunes.apple.com/gb/app/micro-bit/id1092687276?mt=8
拡張するには
##コネクタ
上述のように、micro:bitは、スイッチやLEDアレイ等を備えていますが、他のセンサーもつなぎたい、LED等も拡張したい、というようなときには、コネクタで信号を引き出します。端子の形が変わっているので、特殊なコネクタ?と思いきや、普通のカードエッジコネクタのようです。使っている端子だけ引き出せばいいんですね。
##テスター(ほぼ必須)
前回のPICAXEの記事でも紹介しましたが、コネクタで外部にセンサー等を接続する際には、配線チェックを充分に行った方がいいです。下手をするとPCやmicro:bit本体を壊します。
##オシロスコープかOSC
これもPICAXEの記事でも紹介しましたが、信号を見るのにあると便利です。
次回予告
コネクタの改造
上の写真だと解りづらいのですが、基板の下にヘッダピンを付けて直接ブレッドボードに挿そうとすると、左側の3列分のパターンが邪魔になります。切っちゃえ!と思ったのですが、裏の配線パターンを見ると微妙な位置に信号線?がありました。次回はその辺りに触れたいと思います。
I2Cデバイス
これは前回のPICAXEの記事の最後でも予告していたのですが、諸般の事情により実現できませんでしたので、是非次回。