İçindekiler:

ESP8266 ile Otomatik IoT Koridor Gece Lambası: 4 Adım (Resimlerle)
ESP8266 ile Otomatik IoT Koridor Gece Lambası: 4 Adım (Resimlerle)

Video: ESP8266 ile Otomatik IoT Koridor Gece Lambası: 4 Adım (Resimlerle)

Video: ESP8266 ile Otomatik IoT Koridor Gece Lambası: 4 Adım (Resimlerle)
Video: 44- How Arduino Hardware Will Work After Coding For Led Test And Animation Wave 2024, Kasım
Anonim
Image
Image
Gerekli Tüm Malzemeleri Toplayın
Gerekli Tüm Malzemeleri Toplayın

Bu projeye, başka bir öğretilebilir yazıdan gelen bir merdiven ışığından ilham alarak başladım. Aradaki fark, devrenin beyni ESP8266 kullanıyor, yani bir IoT cihazı gelecek.

Aklımdaki şey, çocuklar için koridorda gece lambası bulundurmak, odalarından çıktıklarında banyoya giden yolu aydınlatmak. Bunun için PIR sensöründen gelen hareketi algılamak için ESP8266 kullanıyorum. Dönüş yolculuğu için iki uçta birer tane olmak üzere 2 PIR sensörü kullandım. ESP8266'nın IoT özellikli olduğu göz önüne alındığında, bunu Ev Asistanına MQTT mesajı göndererek koridorda herhangi bir hareket olup olmadığını tespit etmek için de kullanabilirim.

Adım 1: Gerekli Tüm Malzemeleri Toplayın

Gerekli Tüm Malzemeleri Toplayın
Gerekli Tüm Malzemeleri Toplayın
Gerekli Tüm Malzemeleri Toplayın
Gerekli Tüm Malzemeleri Toplayın

Bu proje için aşağıdaki malzemeleri kullanıyorum:

-ESP8266

- PIR sensörü

- Akım sınırlayıcı görevi gören 330 Ohm direnç

- 5 V adreslenebilir LED Şerit (WS2812B)

- Işıkları yerleştirmek için elektrik borusu

Adım 2: Devreyi Bağlayın

Devreyi Bağlayın
Devreyi Bağlayın
Devreyi Bağlayın
Devreyi Bağlayın
Devreyi Bağlayın
Devreyi Bağlayın

Akımı sınırlamak için esasen LED şerit Veri hattını 330 Ohm direnç üzerinden D2 veya ESP8266 pinine bağlıyoruz. ESP8266'nın çalışma voltajının 3,3V olduğunu unutmayın.

PIR sensörleri, biri sol sensör için diğeri sağ için olmak üzere Pin D5 ve D6'ya bağlanır. Bu durumda PIR ve LED şeridin gücünü 3.3V'a bağlamayı unutmayın.

3. Adım: Kodu Yükleyin

Kodu Yükle
Kodu Yükle
Kodu Yükle
Kodu Yükle

Kodun çalışması için aşağıdaki kütüphaneye ihtiyacınız olacak:

- Daniel Garcia'dan "FastLed" kitaplığı, bu örnekte 3.3.3 sürümü yüklü

- Zaman Kitaplığı

-ESP8266Wifi

-ESP8266WebSunucusu

- ArduinoOTA

Henüz kurmadıysanız, Arduino arayüzündeki "Araçlar->Kütüphaneyi Yönet" bölümünden yükleyebilirsiniz.

Kodun aşağıdaki bölümünde

#define FASTLED_ESP8266_D1_PIN_ORDER#"FastLED.h"yi dahil et FASTLED_USING_NAMESPACE

#define NUM_LEDS 30

#define LEDS_PER_STAIR 2 // Merdiven başına Led sayısı. Henüz para birimi değiştirilemez - sadece kayda değer #define BRIGHTNESS 120 // 0…255 (fade7'de kullanılır) #define PIN_LED 04 // LED Data pini (GPIO4) D2 #define PIN_PIR_DOWN 14 // PIR Alt Kat Pin (GPI14) D5 #define PIN_PIR_UP 12 // PIR Üst Kat Pimi (GPI12) D6

LED şeridinizdeki LED Sayısını, ayrıca farklı bir pime bağlamaya karar verirseniz LEDStrip bağlantısını ve MCU'nun farklı bir pimine bağlamaya karar verirseniz PIR sensör pimini de yapılandırabilirsiniz.

Yukarıdaki konfigürasyon "ledsettings.h" dosyasında bulunmaktadır.

Kaynak kodunun tamamını aşağıdaki bağlantıdan indirebilirsiniz.

Kodu başarıyla derleyebildiğinizde, ESP8266'ya yükleyebilirsiniz.

4. Adım: Test Etme ve Test Etme ve Sorun Giderme

Test ve Test ve Sorun Giderme
Test ve Test ve Sorun Giderme
Test ve Test ve Sorun Giderme
Test ve Test ve Sorun Giderme

Her şey yolunda giderse, gurur duyabileceğiniz çalışan bir Koridor Işıklarınız olmalıdır. Devreyi ilk kez açtığınızda, LED Şerit bir miktar gökkuşağı dizisi ile yanacaktır. Ardından, ESP8266, WiFi bağlantısını yapılandırmanıza izin vermek için bir erişim noktası (AP) görevi görecektir.

Sahip olduğum kodu kullanıyorsanız, erişim noktası olarak "ESP-HallLight"ı görebilmeniz gerekir. Güvenlik için AP için şifre koruması koydum. Varsayılan şifre "arduino"dur, bunu aşağıdaki bölümde settings.h dosyasında değiştirebilirsiniz.

#define CLOCK_NAME "ESP-HallLight"

#define WIFI_AP_NAME CLOCK_NAME #define WIFI_APPSK "arduino" // varsayılan AP şifresi

Bir cep telefonu veya dizüstü bilgisayar kullanarak WiFi üzerinden başarılı bir şekilde bağlandıktan sonra, tarayıcınızı 192.168.4.1'e yönlendirebilmelisiniz, yukarıdaki resimde gösterildiği gibi ayarlar ekranını görmelisiniz. Artık WiFi ayarlarınızı girebilirsiniz ve bir kez girildiğinde ESP8266 yeniden başlatılacak ve WiFi'nize bağlanmaya çalışacaktır. Başarıyla bağlanabiliyorsa, artık "ESP-HallLight" erişim noktasını görmezsiniz.

Hala Arduino arayüzüne bağlıysanız, bunu seri monitör üzerinden izleyebilirsiniz.

Not: Sensörlerin çalışması için WiFi'yi yapılandırmanız gerekmez, ilk ışıklar söndüğünde birkaç saniye sonra çalışması gerekir.

Test etmek için bir taraftan yürümeyi veya elinizi sallamayı deneyebilirsiniz, ışık hareket yönünü takip ederek yanmalıdır, tersini yapıyorsa, koddaki sol ve sağ sensörü değiştirmeniz gerekir.

İlk kurulumum sırasında, LED şeridin yanlış ucunu yanlışlıkla bağladım, bu da LED'lerin hiçbirinin yanmamasına neden oldu.

Umarım bu yapıyı beğenirsiniz, eğer yardımcı olduysa, lütfen yarışmaya oy verin. Herhangi bir sorunuz varsa, bana bir not bırakmaktan çekinmeyin, mümkün olan en kısa sürede ona ulaşacağım.

Bazıları düşündükten sonra aşağıdaki gibi ek özellikleri eklemek olacaktır:

  • WiFi kontrollü LED Şerit veya LED Şerit Durum göstergesi ile ilgili önceki yazıma benzer şekilde, LED'leri sensörden bağımsız olarak çevirecek bir arayüze sahip olmak.
  • Aşağıdaki gönderiye benzer şekilde Home Assistant'a MQTT mesajı göndermek için ek özellik ekleyin.

Önerilen: