紫外線センサー(VEML6075、VEML6070)を使う
紫外線(ultra-violet:UV)の強さを測るセンサー(UVセンサー)の使い方を説明します。ここで使うUVセンサーの種類(型番)は、VEML6075かVEML6070を想定しています。
ラズパイとの接続
VEML6075、VEML6070というのはUVセンサーの名前で、このセンサーを使ってさまざまな商品が製造、販売されています。例えば有名な商品に次のようなものがあります。
- DFRobot VEML6075
- Zio VEML6075
- SparkFun UV Light Sensor Breakout (VEML6075)
- Adafruit VEML6075
- Seeed Studio Grobe UV Sensor (VEML6070)
- Adafruit VEML6070
センサーの種類(型番)が同じなら、センサーからデータを読みとるプログラムの書き方は同じです。が、センサーの種類が同じでも、商品ごとに異なるワイヤーやコネクターを使っていることがあります。その場合、ラズパイとの接続方法が、商品ごとに少しずつ異なります。ですので、まだ未購入であれば、どの商品を買うのがいいかお問合せください。お問い合わせ時点でのおすすめ商品をお知らせします。あわせてラズパイとの接続方法もお知らせします。
既に手元にセンサーがある場合は、その商品名が何かをチェックしてください。まず間違いなくセンサーのボードの上に書かれています。そして、その商品とラズパイとの接続方法をお問合せください。このページでは、センサーとラズパイを物理的に接続する方法は省略します。
準備
まずは、「CircuitPythonをインストールする」を参照しながら、ラズパイにCircuitPythonをインストールしてください。
続いて、CircuitPython BusDeviceをインストールします(これが何なのかは知る必要はありません)。ラズパイのTerminalで以下のコマンドを実行してください:
sudo pip3 install adafruit-circuitpython-busdevice
手持ちのセンサーがVEML6075の場合は、VEML6075のドライバをインストールします。これをインストールすると、UVのデータをVEML6075から読みとることができるようになります。ラズパイのTerminalで以下のコマンドを実行してください:
sudo pip3 install adafruit-circuitpython-veml6075
手持ちのセンサーがVEML6070の場合は、VEML6070のドライバをインストールします。これをインストールすると、UVのデータをVEML6070から読みとることができるようになります。ラズパイのTerminalで以下のコマンドを実行してください:
sudo pip3 install adafruit-circuitpython-veml6070
最後に、ラズパイのメインメニュー(ラズパイの画面左上のラズベリーのアイコンをクリック)から、Preferences -> Raspberry Pi Configurationを選択してください。Raspberry Pi Configurationという開くので、「Interfaces」のタブをクリックして、「I2C」という項目がオン(enabled)になっていることを確認してください。
プログラミング
VEML6075を使ってUVインデックス(UVI)を調べるプログラムがveml6075.pyで、VEML6070を使ってUVインデックス(UVI)を調べるプログラムがveml6070.pyです。どちらも、3秒ごとにUVインデックスを測ってShellに出力します。これがずっと(無限ループで)繰り返されるので、プログラムを止めるにはCtrl-Cしてください。プログラムの説明は後日書きたします。