Fridge door open alert ・ 冰箱门提醒
ホールセンサーで冷蔵庫のドアの開閉を監視し、長時間開けっ放しだとブザーで警告します。
この構成をエディタで開く・編集する →| 部品 | 役割 | ポート | リンク・価格 |
|---|---|---|---|
| M5Stack Core2 | Controller | grove_i2c, grove_analog, grove_uart, mbus | official page — $46.9 |
| Unit Hall | Hall sensor (door open/close) | grove_analog | official page — $5.95 |
| Unit Buzzer | Buzzer (alert) | grove_analog | official page — $4.5 |
M5Stack Core2とHallユニット(磁気センサー)、Buzzerユニット(ブザー)で作る、冷蔵庫のドア開けっ放しアラートです。冷蔵庫のドアに磁石を取り付け、Hallユニットで磁気を検知します。ドアが開いて磁石が離れると、設定した時間以上開いている場合にブザーが鳴ります。
# M5Stack Core2 + Hall Sensor + Buzzer (Fridge door alert)
# Wiring: Hall -> Core2 black Port.B (analog pin 36)
# Buzzer -> Core2 blue Port.C (UART pin 16/17, but we use pin 17 as GPIO)
import time
from machine import Pin, ADC
from m5stack import lcd
# Hall sensor on Port.B (analog pin 36)
hall = ADC(Pin(36))
hall.atten(ADC.ATTN_11DB) # read full 0-3.3V range
# Buzzer on Port.C (use pin 17 as digital output)
buzzer = Pin(17, Pin.OUT)
# Thresholds (adjust after testing)
DOOR_OPEN_THRESHOLD = 2000 # if hall value > this, door is open
ALARM_DELAY_SECONDS = 10 # seconds before alarm sounds
# State variables
door_open_start = None
alarm_active = False
while True:
value = hall.read()
lcd.clear()
lcd.print('Hall: %d' % value, 10, 20)
if value > DOOR_OPEN_THRESHOLD:
# Door is open
if door_open_start is None:
door_open_start = time.time()
elapsed = time.time() - door_open_start
lcd.print('Door open for %d s' % elapsed, 10, 60)
if elapsed >= ALARM_DELAY_SECONDS and not alarm_active:
alarm_active = True
buzzer.on() # start buzzer
lcd.print('ALARM!', 10, 100)
else:
# Door is closed
door_open_start = None
if alarm_active:
buzzer.off()
alarm_active = False
lcd.print('Door closed', 10, 100)
time.sleep(0.5)
この作り方はAIが構成から生成したものです(未検証)。通電前に配線とコードをご確認ください。
この構成はAIが実在するM5Stack部品から設計し、ポート互換をサーバで検証したものです。編集・共有できます。
エディタで開く →UnitKit は M5Stack® 製品向けの非公式ツール。作りたいものを書くと、部品リストと配線図が出ます。