Taula de continguts:

Il·luminació nocturna automàtica del passadís IoT amb ESP8266: 4 passos (amb imatges)
Il·luminació nocturna automàtica del passadís IoT amb ESP8266: 4 passos (amb imatges)

Vídeo: Il·luminació nocturna automàtica del passadís IoT amb ESP8266: 4 passos (amb imatges)

Vídeo: Il·luminació nocturna automàtica del passadís IoT amb ESP8266: 4 passos (amb imatges)
Vídeo: Лучший в Японии автобус с ночевкой, всего 11 мест $183 🚍Tokyo to Osaka🥰 Dream Sleeper🎦4k 2024, Desembre
Anonim
Image
Image
Reuneix tots els materials necessaris
Reuneix tots els materials necessaris

Vaig començar aquest projecte inspirat en una llum d’escala d’un altre post instructiu. La diferència és que el cervell del circuit està utilitzant ESP8266, el que significa que serà un dispositiu IoT.

El que tinc en ment és tenir la llum nocturna del passadís per als nens, quan surten de la seva habitació, il·lumina el camí que va al bany. Per a això estic fent servir l’ESP8266 per detectar el moviment des del sensor PIR. He utilitzat 2 sensors PIR, un a cada extrem per al viatge de tornada. Tenint en compte que ESP8266 és capaç d’IoT, també puc utilitzar-lo per detectar si hi ha algun moviment al passadís publicant un missatge MQTT a Home Assistant.

Pas 1: reuniu tots els materials necessaris

Reuneix tots els materials necessaris
Reuneix tots els materials necessaris
Reuneix tots els materials necessaris
Reuneix tots els materials necessaris

Per a aquest projecte estic fent servir els materials següents:

- ESP8266

- Sensor PIR

- Resistència de 330 Ohm que actua com a limitador de corrent

Cinta LED dirigible de 5 V (WS2812B)

- Conducte elèctric per allotjar els llums

Pas 2: connecteu el circuit

Connecteu el circuit
Connecteu el circuit
Connecteu el circuit
Connecteu el circuit
Connecteu el circuit
Connecteu el circuit

Estem connectant bàsicament la línia de dades de la tira LED al pin D2 o ESP8266 mitjançant una resistència de 330 Ohm per limitar el corrent. Tingueu en compte que el voltatge de funcionament de l’ESP8266 és de 3,3 V.

Els sensors PIR estan connectats als pins D5 i D6, un per al sensor esquerre i un per al dret. No oblideu connectar l’alimentació de la tira PIR i LED a 3,3V en aquest cas.

Pas 3: pengeu el codi

Pengeu el codi
Pengeu el codi
Pengeu el codi
Pengeu el codi

Perquè el codi funcioni, necessitareu la biblioteca següent:

- Biblioteca "FastLed" de Daniel Garcia, en aquest cas tinc la versió 3.3.3 instal·lada

- TimeLib

- ESP8266Wifi

- ESP8266WebServer

- ArduinoOTA

Si encara no els teniu instal·lats, podeu instal·lar-los des de "Eines-> Gestiona la biblioteca" a la interfície Arduino.

A la secció següent del codi

#define FASTLED_ESP8266_D1_PIN_ORDER # inclou "FastLED.h" FASTLED_USING_NAMESPACE

#define NUM_LEDS 30

#define LEDS_PER_STAIR 2 // Nombre de leds per escala. Encara no es pot canviar actualment: només es pot apreciar #defineix BRIGHTNESS 120 // 0 … 255 (utilitzat a fade7) #define PIN_LED 04 // Pin de dades LED (GPIO4) D2 #define PIN_PIR_DOWN 14 // PIR Pin de baix (GPI14) D5 #define PIN_PIR_UP 12 // Pin PIR Upstairs (GPI12) D6

Podeu configurar el nombre de LED a la vostra tira LED, també la connexió del LEDStrip si decidiu connectar-lo a un pin diferent i també el pin del sensor PIR si decidiu connectar-lo a un pin diferent de la MCU.

La configuració anterior es troba al fitxer "ledsettings.h".

Podeu descarregar el codi font complet des del següent enllaç.

Un cop hàgiu pogut compilar el codi amb èxit, podeu penjar-lo a l'ESP8266.

Pas 4: prova i prova i resolució de problemes

Prova i prova i resolució de problemes
Prova i prova i resolució de problemes
Prova i prova i resolució de problemes
Prova i prova i resolució de problemes

Si tot va bé, hauríeu de tenir un llum del passadís que us pugui sentir orgullós. Quan engegueu el circuit per primera vegada, la tira LED s’encendrà amb una seqüència arc de Sant Martí. Aleshores, la llauna ESP8266 actuarà com a punt d’accés (AP) per permetre-li configurar la connexió WiFi.

Si utilitzeu el codi que tinc, podríeu veure "ESP-HallLight" com a punt d'accés. Per seguretat he posat protecció amb contrasenya per a l’AP. La contrasenya per defecte és "arduino", podeu canviar-la al fitxer settings.h, a la secció següent.

#define CLOCK_NAME "ESP-HallLight"

#define WIFI_AP_NAME CLOCK_NAME #define WIFI_APPSK "arduino" // contrasenya AP predeterminada

Un cop connectat amb èxit mitjançant un telèfon mòbil o un ordinador portàtil a través de WiFi, hauríeu de poder apuntar el navegador cap a 192.168.4.1, hauríeu de veure la pantalla de configuració tal com es mostra a la imatge superior. Ara podeu introduir la configuració de WiFi i, un cop introduït, ESP8266 es reiniciarà i intentarà connectar-se al vostre WiFi. Si es pot connectar correctament, ja no veureu el punt d'accés "ESP-HallLight".

Si encara esteu connectat a la interfície Arduino, podeu controlar-lo mitjançant el monitor sèrie.

Nota: no heu de configurar el WiFi perquè els sensors funcionin, hauria de funcionar al cap d’uns segons quan els llums inicials estiguin apagats.

Per provar-ho, podeu provar de caminar d’un costat o d’agitar la mà; la llum s’hauria d’encendre seguint la direcció del recorregut; si fa el contrari, haureu d’intercanviar el sensor esquerre i dret en el codi.

Durant la meva primera construcció vaig connectar accidentalment un extrem incorrecte de la tira de LED, cosa que va provocar que cap dels LED s’encengui.

Espero que us agradi aquesta versió, si us és útil, si us plau voteu pel concurs. Si teniu alguna pregunta, no dubteu a enviar-me una nota i hi arribaré tan aviat com pugui.

Alguns després de pensar-ho seria afegir funcions addicionals com:

  • Tenir una interfície per convertir els LED de manera independent del sensor, similar a la meva publicació anterior sobre LED Strip controlat per WiFi o indicador d’estat de LED Strip.
  • Afegiu una funció addicional per publicar el missatge MQTT a Home Assistant similar a la publicació següent.

Recomanat: