こんにちは。あたふた仕事に追われていたら、10月になっていました💦
相変わらず外は30℃超える日もあってアチチ。。秋っぽい高い青空が待ち遠しい~
## センサ値を無線で飛ばそう
さて、前回は、PCでセンサ値を表示することができましたが、実際に外で実験する場合、PCを持ち歩かないといけないというのは大変なので無線化して、スマートフォンで確認できるようにしたい!と申しておりました。 (PC持ち歩いてしたら不審な行動に見られそうですし。。)
それを今回やります! ↓前回の記事はこちらから。
無線化するにあたっていろいろな方法がありますが、今回はArduinoと互換性がある”Leafony”を使用してBLEでセンサ値を飛ばしてスマートフォンに表示したいと思います。
Leafonyを選択した理由としては、前回でArduinoを使用してUVインデックスを求めた時のコードをそのまま使用できる点で便利!!という点と、基板サイズが一円玉サイズと小さいので外で実験したとき怪しまれづらいかなーという思いで。(^^)
## Leafonyを動かしてみよう
Leafonyが動作することをまず確認してみようと思います。
Leafonyの公式HPにあるクイックスタートの”BLEで環境センシング”を試してみます。
## ハードウェア
今回使用するリーフはこれら5つです。AV01はleafを重ねて”ねじ止め”するだけに使い、電源はAZ01 USBから供給します。
AC02 BLE Sugar
Al01 4-Sensors
AP01 AVR MCU
AZ01 USB
AV01 CR2032
上から順に ①4-Sensors, ②USB, ③AVR MCU, ④BLE Sugar, ⑤CR2032の順につなげてねじ止めします。
## ソフトウェア
Sample-Sketches/4-Sensors_BLE at master · Leafony/Sample-Sketches · GitHub
を使用。
但し、使用したライブラリがこのサンプルのバージョンとあっていないか、違うライブラリを使用したのか以下の点をサンプルから変更しました。
変更前 | ➡ 変更後 |
---|---|
#include <HTS221.h> | #include <Arduino_HTS221.h> |
#include <ST7032.h> | #include <LCD_ST7032.h> |
ST7032 lcd; | LCD_ST7032 lcd; |
lcd.begin(8, 2); | lcd.begin(); |
lcd.setContrast(30); | lcd.setcontrast(30); |
smeHumidity.begin(); | HTS.begin(); |
dataTemp = (float)smeHumidity.readTemperature(); | dataTemp = (float)HTS.readTemperature(); |
dataHumid = (float)smeHumidity.readHumidity(); | dataHumid = (float)HTS.readHumidity(); |
## 動作結果
Andoridスマホのブラウザからセンサ値がきちんと表示されました!
Leafonyが正常に動作することを確認できましたので、次はとうとう今回の本題、UVインデックスの値を無線で飛ばして確認できるようにしたいと思います!