環境の計測用にいろんなセンサをWio LTEに繋げようとしてます。
Groveのモジュールに都合よいのがあればそれを繋げますが、今回使いたかったセンサがGroveになかったのでGrove化してみました。
#ディジタル紫外線センサ VEML6070
日の光に含まれる紫外線はお肌に悪いと言われてます。その紫外線の強さを計測したくて紫外線センサを探したところ、I2Cで接続できるVEML6070を見つけました。そのままだと扱いにくいのでストロベリーリナックスのモジュールを使用します。
このセンサのインターフェースはI2Cで、電源も3.3Vで動作するので、そのままWio LTEに接続できます。
#Grove化
VEML6070のモジュールには、I2Cのプルアップ抵抗が取り付けられていないので付ける必要があります。
小型の基板にGroveコネクタ、VEML6070のモジュール、抵抗を半田付けします。
#ライブラリ
Arduino用のライブラリを探したらあったので、それを使いました。
ただライブラリに付属しているスケッチ例はWio LTEで使えないので、スケッチ例を元に以下の様にしました。
#include <WioLTEforArduino.h>
#include <Wire.h>
#include "Adafruit_VEML6070.h"
Adafruit_VEML6070 uv = Adafruit_VEML6070();
WioLTE Wio;
void setup() {
Wio.Init();
Wio.PowerSupplyGrove(true);
SerialUSB.println("VEML6070 Test");
uv.begin(VEML6070_1_T); // pass in the integration time constant
}
void loop() {
SerialUSB.print("UV light level: "); SerialUSB.println(uv.readUV());
delay(1000);
}
#動作確認
動作させるとシリアルモニタに計測した結果が表示されます。センサを手で覆うと値が変化しました。