Parking occupancy sensor ・ 车位检测
超音波距離センサーで駐車スペースに車がいるかどうかを検知します。
この構成をエディタで開く・編集する →| 部品 | 役割 | ポート | リンク・価格 |
|---|---|---|---|
| M5Stack Core2 | Controller | grove_i2c, grove_analog, grove_uart, mbus | official page — $46.9 |
| Unit Ultrasonic-IO (UNIT SONIC IO) | Ultrasonic distance sensor | grove_analog | official page — $5.95 |
M5Stack Core2と超音波距離センサー「Unit Ultrasonic-IO」を使って、駐車スペースに車が停まっているかどうかを検出する装置です。センサーが車までの距離を測り、設定したしきい値より近ければ「占有」、遠ければ「空き」と判定します。Core2の画面に結果を表示します。
# M5Stack Core2 + Unit Ultrasonic-IO (parking occupancy detector)
# Wiring: Ultrasonic-IO -> Core2 black Port.B (analog/IO)
import time
from machine import Pin, ADC
from m5stack import lcd
# Port.B pins on Core2: analog input pin 36, trigger pin 26 (not used here)
# Ultrasonic-IO outputs analog voltage proportional to distance
sensor = ADC(Pin(36))
sensor.atten(ADC.ATTN_11DB) # read full 0-3.3V range
# Calibration: measure distance when empty and occupied, set threshold accordingly
OCCUPIED_THRESHOLD = 1500 # raw ADC value, adjust after testing
while True:
value = sensor.read() # raw distance reading (0-4095)
# Convert to approximate distance in cm (optional, for display)
# distance_cm = (value / 4095) * 450 # linear approximation
lcd.clear()
lcd.print('ADC: %d' % value, 10, 20)
if value < OCCUPIED_THRESHOLD: # closer = occupied
lcd.print('Status: Occupied', 10, 60)
else:
lcd.print('Status: Empty', 10, 60)
time.sleep(1) # update every second
この作り方はAIが構成から生成したものです(未検証)。通電前に配線とコードをご確認ください。
この構成はAIが実在するM5Stack部品から設計し、ポート互換をサーバで検証したものです。編集・共有できます。
エディタで開く →UnitKit は M5Stack® 製品向けの非公式ツール。作りたいものを書くと、部品リストと配線図が出ます。