Edited at

ディジタル紫外線センサをWio LTEに繋げる

More than 1 year has passed since last update.

環境の計測用にいろんなセンサをWio LTEに繋げようとしてます。

Groveのモジュールに都合よいのがあればそれを繋げますが、今回使いたかったセンサがGroveになかったのでGrove化してみました。


ディジタル紫外線センサ VEML6070

日の光に含まれる紫外線はお肌に悪いと言われてます。その紫外線の強さを計測したくて紫外線センサを探したところ、I2Cで接続できるVEML6070を見つけました。そのままだと扱いにくいのでストロベリーリナックスのモジュールを使用します。

このセンサのインターフェースはI2Cで、電源も3.3Vで動作するので、そのままWio LTEに接続できます。


Grove化

VEML6070のモジュールには、I2Cのプルアップ抵抗が取り付けられていないので付ける必要があります。

小型の基板にGroveコネクタ、VEML6070のモジュール、抵抗を半田付けします。


ライブラリ

Arduino用のライブラリを探したらあったので、それを使いました。

https://github.com/adafruit/Adafruit_VEML6070

ただライブラリに付属しているスケッチ例は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);
}


動作確認

動作させるとシリアルモニタに計測した結果が表示されます。センサを手で覆うと値が変化しました。