TFabConnectでmicro:bitのセンサデータを可視化

TFabConnectとはそもそも何か?

以前このブログでもご紹介したmicro:bitですが、低コストな教育用デバイスということで、世界中の教育現場で使用されています。温度、明るさ、加速度センサーが搭載されており、子供でも楽しみながらプログラミング学習とIoT体験を進められます。

プログラミング教育必修化に一抹の不安? 2020年度から、日本の小学校でもプログラミング教育が始まります。ただ、十分な準備ができてい...

しかし、1つ難点があり、micro:bit自体ではインターネットへの接続が出来ないという事です。やはりIoT=Internet of Things(モノのインターネット)という事なので、インターネットと接続して計測データを公開するというところまでやってみたいものです。

そんな中で、手軽にmicro:bitとインターネットを接続した状態でプログラミング学習が実現できるサービスとして「TFabConnect(ティーファブコネクト)」なるものがあります。

私も、どこでこのサービスの存在を知ったのかは正直覚えていないのですが、micro:bitとPCのブラウザを使って、micro:bitからインターネット接続が出来るという事で、TFabConnectに大変興味を持ったのを覚えています。

まずはTFabConnectを使ってみる

気になったら、とにかくまず使ってみる、という事で、実際にTFabConnectを使ってみることにします。サイトの説明や事例をただ眺めているだけでは実感が湧きませんので、とにかく使ってみましょう。

こちらのサービスですが、SNSでのサインアップ、ログインが可能です。

今回はFacebookでサインアップしてみることにします。

ログイン後、ダッシュボード画面に進むと、micro:bitのプログラムを作成するMakeCodeの画面に遷移するリンクがあります。そこからMakeCodeの画面に遷移して、簡単なプログラムを作成してみましょう。
ちなみに、このMakeCode画面は、本家micro:bitのMakeCode画面とほぼ一緒です。

最初はTFabConnectのサイトでも紹介されているサンプルコードをそのまま使わせて頂きます。とりあえず実際にに動作するところを早く見たいので。
コードは以下のような感じです。

micro:bitが認識されずにハマる

ここで、実際にmicro:bitをPCとUSB接続し、ダッシュボードからWebUSB接続を試みたのですが、意外なところでハマってしまいました。

ダッシュボード左側に電源プラグのようなボタンがあるのですが、こちらをクリックすると現在接続中のUSBデバイスの一覧が表示されるはずなのですが。。。
何も表示されない。
どういう事?

色々調べてみたところ、どうやらmicro:bitのファームウェアのバージョンが古いとこのような現象が起こるようです。以下のサイトを参考にしてみました。

ファームウェアのバージョンを最新にして、再度試してみると無事micro:bitに接続することができました。一安心です。

明るさをグラフ表示してみる

MakeCodeで作成したプログラム内で定義したクラウド変数は、ダッシュボードのクラウド変数名のところで以下のように表示されます。もちろん複数の変数名を定義する事も可能です。

今回はクラウド変数にlightが表示されています。
右側にあるグラフボタンをクリックすると、グラフ画面が表示されます。
ここで、自動更新ボタンをクリックしてオンにします。

ちょうどこの作業をしていたのが夜でしたので、そのままだと全然明るさセンサーが反応しません。とりあえず懐中電灯を当てて、グラフの様子を確認してみます。

段階的に明るさの数値が上がり、その後ガクッと下がっていますね。
ちょうど懐中電灯を少しずつmicro:bitに近づけた後、サッと離したのでこのようなグラフの描画になっています。
簡単なプログラムではありますが、ちゃんとmicro:bitで取得したデータが見えました。

現在PCブラウザのChromeとEdgeのみ対応

ここで思いついたのが、外出先からスマホでTFabConnectにアクセスすれば、自宅の明るさを監視できるのでは?という事です。

しかし、スマホのブラウザからではアクセスできません。
確認したところ、TFabConnectはPCブラウザのChromeとEdgeしか対応していないとのこと。
残念ながら、外出先からスマホで確認しようとした夢はついえました。

そもそも、使える機器や環境が限られている日本の小中学校でプログラミング教育を行う想定で、PCとmicro:bitがあればIoTの授業展開が簡単に行えるというコンセプトですので、スマホが想定されていないのは致し方ないところでしょうか。

2台のmicrobitでBluetooth通信も可能

TFabConnect、実際に使ってみると確かに面白いです。
ただ、PCとUSBケーブルで接続というスタイルなので、常にノートPCとmicro:bitをセットで持ち歩かないと、色んな場所の温度や明るさを計測できないですね。これは何とかならないものか。

ただ、どうやら2台のmicro:bitでBluetooth通信ができるとのこと。
20m程度は通信が可能なようです(不勉強でした)。
これなら離れたmicro:bitから測定データをPCに接続中のmicro:bitに送ることができるのでは。
そのデータをTFabConnectでブラウザにグラフ表示できそうです。

次回は家中の色んな場所に測定用micro:bitを置いて、室温を計測した結果を
PC側のmicro:bitとBluetooth接続で取得しグラフ表示してみたいと思います。

2020.09.25訂正

すみません、上記でBluetooth通信と書いてしまいましたが、正しくは「無線通信」でした。申し訳ございません。2台のmicro:bit間で通信が出来るのは無線通信を使用した時です。

Bluetooth通信については、例えばパソコンとmicro:bit間でやり取りをする際に利用することが可能です。
MakeCodeの画面で、初期状態ではBluetoothメニューは無いのですが、「高度なブロック→拡張機能」をクリックして、拡張機能画面でBluetoothをクリックすると、Bluetoothメニューが追加されます。

micro:bitでのBluetooth通信については、試してみた内容を今後別の記事でご紹介したいと思いますのでお楽しみに。