「Grove Shield for micro:bit」という製品を使い、マイクロビットにGrove規格の各種センサをつなぎます。
今回は、micro:bitにGrove温度センサ(Grove – Temperature Sensor)をつないでみようと思います。
つなぎ方は簡単で、以下のように、シールドにmicro:bitと温度センサを取り付けるだけです。
USBケーブルはパソコンとつながっています。
なお、この温度センサでは、採取したアナログ値を以下の式で温度に変換します(参照場所は こちら)。
温度を測定するためのプログラムを作成します。
「ブロック」では対数の式が書けないので、「JavaScript」モードに切り替え、残りの式(「temperature = …」 の行)を入力します。
この式を入力した後は、もう「ブロック」モードには戻れません。
プログラムをmicro:bitに書き込み、「コンソールを表示 デバイス」をクリックすると、採取した抵抗値、そこから計算した温度が表示されます。
次に、採取した温度の確からしさを確認するために、他の温度センサと比較してみます。
使用する温度センサは「LM35DZ」です。
以下のようにつなぎます。「P0」には「Grove温度センサ」が、「P1」には「LM35DZ」がつながっています。
プログラムは以下のようになります。
「Grove温度センサ」、「LM35DZ」、「micro:bitに搭載されている温度センサ」で観測した温度を、一定時間毎に無線で送信します。
なお、ここではまだ温度を計算する式は入力されていません。
「JavaScript」モードに切り替え、温度を計算する式を入力します。
micro:bitにこのプログラムを書き込んだ後は、ベランダに小一時間放置しておきます。
もう一台、micro:bitを準備します。
無線を受信するために、以下のプログラムを書き込みます。
パソコンにつないだままで、「コンソールを表示 デバイス」をクリックし、温度の採取状況を観測します。
採取データをエクスポートし、Excelでグラフ化してみます。
micro:bit搭載の温度センサ(グラフ中のtemp3)は、CPU内部の温度センサのためか、全般的に温度が高めになっています。
また、測定途中でしばらく、micro:bitや温度センサに直射日光が当たっていたのですが、その期間は各デバイスの測定値はバラバラです。