UV index meter ・ 紫外线监测
光センサーU021をPort.Bに接続し、周囲の明るさをUV指数の代わりに測定します。
この構成をエディタで開く・編集する →| 部品 | 役割 | ポート | リンク・価格 |
|---|---|---|---|
| M5Stack Core2 | Controller | grove_i2c, grove_analog, grove_uart, mbus | official page — $46.9 |
| Unit Light (Ambient Light Sensor) | Ambient light sensor (UV proxy) | grove_analog | official page — $3.5 |
M5Stack Core2とアンビエント光センサー(Unit Light)で作る、簡易UV指数モニターです。光センサーが周囲の明るさを測り、その値を疑似UV指数としてCore2の画面に表示します。屋外の日差しの強さを数値で確認できるので、日焼け対策の目安に使えます。
# M5Stack Core2 + Unit Light (Ambient Light Sensor)
# Wiring: Unit Light -> Core2 black Port.B (analog)
import time
from machine import Pin, ADC
from m5stack import lcd
# Port.B analog pin on Core2 is GPIO 36
light = ADC(Pin(36))
light.atten(ADC.ATTN_11DB) # read 0-3.3V range
# Thresholds for UV index approximation (adjust after calibration)
UV_THRESHOLD_LOW = 500 # below this: low UV
UV_THRESHOLD_MED = 1500 # below this: moderate UV
UV_THRESHOLD_HIGH = 2500 # above this: high UV
while True:
value = light.read() # raw analog reading (0-4095)
lcd.clear()
lcd.print('Light: %d' % value, 10, 20)
if value < UV_THRESHOLD_LOW:
uv_index = 'Low'
elif value < UV_THRESHOLD_MED:
uv_index = 'Moderate'
elif value < UV_THRESHOLD_HIGH:
uv_index = 'High'
else:
uv_index = 'Very High'
lcd.print('UV Index: ' + uv_index, 10, 60)
time.sleep(1)
この作り方はAIが構成から生成したものです(未検証)。通電前に配線とコードをご確認ください。
この構成はAIが実在するM5Stack部品から設計し、ポート互換をサーバで検証したものです。編集・共有できます。
エディタで開く →UnitKit は M5Stack® 製品向けの非公式ツール。作りたいものを書くと、部品リストと配線図が出ます。