aybat ana sayfaya dön
PATIKA 02 · Home Assistant ile Akıllı Ev

ESP32 ile Hareket Sensörlü Otomatik Aydınlatma

süre: ~45 dk zorluk: başlangıç-orta gerekli: ESP32, PIR, röle

Bu eğitimde bir PIR hareket sensörü ve bir röle modülüyle, odaya girildiğinde otomatik yanan ve hareket kesildikten belli bir süre sonra sönen bir aydınlatma sistemi kuruyoruz. Karar mantığını cihaz üzerinde değil Home Assistant tarafında tutuyoruz; böylece "sadece hava karardığında yak" gibi kuralları kolayca ekleyebiliyoruz.

Gereken malzemeler

Bağlantı

PIR sensörün OUT pini bir GPIO'ya, röle modülünün IN pini başka bir GPIO'ya bağlanıyor. Röle hattının şebeke gerilimiyle çalışan kısmı için mutlaka izoleli, kapalı bir muhafaza kullanın.

ESP32 PinBağlantı
GPIO13PIR sensörü — OUT
GPIO14Röle modülü — IN
5V / GNDPIR ve röle beslemesi

ESPHome yapılandırması

Aşağıdaki YAML'i ESPHome'da yeni bir cihaz olarak oluşturup kendi Wi-Fi bilgilerinizle derleyin.

hareket-aydinlatma.yaml
esphome:
  name: hareket-aydinlatma
  friendly_name: Hareket Aydınlatma

esp32:
  board: esp32dev
  framework:
    type: arduino

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

api:
logger:
ota:
  platform: esphome

binary_sensor:
  - platform: gpio
    pin: GPIO13
    name: "Hareket Sensörü"
    device_class: motion
    filters:
      - delayed_off: 5s

switch:
  - platform: gpio
    pin: GPIO14
    name: "Röle - Aydınlatma"

Home Assistant otomasyonu

PIR sensörü doğrudan lambayı sürmüyor; sadece Home Assistant'a "hareket var" bilgisini gönderiyor. Işığı gerçekten yakıp söndürme kararını, sadece hava karardığında çalışacak şekilde bir otomasyonla veriyoruz:

automations.yaml
automation:
  - alias: "Hareketle aydınlatmayı yak"
    trigger:
      - platform: state
        entity_id: binary_sensor.hareket_sensoru
        to: "on"
    condition:
      - condition: sun
        after: sunset
    action:
      - service: switch.turn_on
        target:
          entity_id: switch.role_aydinlatma

  - alias: "Hareket kesilince aydınlatmayı söndür"
    trigger:
      - platform: state
        entity_id: binary_sensor.hareket_sensoru
        to: "off"
        for: "00:02:00"
    action:
      - service: switch.turn_off
        target:
          entity_id: switch.role_aydinlatma

Adımlar

  1. ESPHome projesini oluşturHome Assistant üzerinde ESPHome eklentisini açıp yeni cihaz ekle, yukarıdaki YAML'i yapıştır.
  2. PIR ve röleyi bağlaGPIO13'ü PIR OUT'a, GPIO14'ü röle IN'ine bağla; röle çıkışına dokunmadan önce şebeke hattını kes.
  3. Firmware'i yükleUSB üzerinden ilk yüklemeyi yap; sonraki güncellemeler ağ üzerinden (OTA) gelir.
  4. Home Assistant'a ekleCihaz otomatik keşfedilir; binary_sensor ve switch entity'lerini bir alana ata.
  5. Otomasyonları kurYukarıdaki iki otomasyonu ekleyip "for" ve "sun" koşullarını kendi tercihine göre ayarla.
İpucu: PIR sensörünün üzerindeki iki potansiyometre hassasiyeti ve gecikme süresini ayarlar; koridor gibi dar alanlarda hassasiyeti kısıp yanlış tetiklemeleri azaltabilirsin.