Tabla de contenido:

Luz nocturna automática de pasillo IoT con ESP8266: 4 pasos (con imágenes)
Luz nocturna automática de pasillo IoT con ESP8266: 4 pasos (con imágenes)

Video: Luz nocturna automática de pasillo IoT con ESP8266: 4 pasos (con imágenes)

Video: Luz nocturna automática de pasillo IoT con ESP8266: 4 pasos (con imágenes)
Video: FOTOCELULA LDR 2024, Noviembre
Anonim
Image
Image
Reúna todos los materiales necesarios
Reúna todos los materiales necesarios

Comencé este proyecto inspirado por una luz de escalera de otro poste instructable. La diferencia es que el cerebro del circuito está usando ESP8266, lo que significa que se convertirá en un dispositivo IoT.

Lo que tengo en mente es tener la luz de noche del pasillo para los niños, cuando salen de su habitación, ilumina el camino que lleva al baño. Para esto, estoy usando el ESP8266 para detectar el movimiento del sensor PIR. Usé 2 sensores PIR, uno en cada extremo para el viaje de regreso. Dado que ESP8266 es compatible con IoT, también puedo usar esto para detectar si hay algún movimiento en el pasillo publicando un mensaje MQTT en Home Assistant.

Paso 1: Reúna todos los materiales necesarios

Reúna todos los materiales necesarios
Reúna todos los materiales necesarios
Reúna todos los materiales necesarios
Reúna todos los materiales necesarios

Para este proyecto estoy usando los siguientes materiales:

- ESP8266

- sensor PIR

- Resistencia de 330 ohmios que actúa como limitador de corriente

- Tira de LED direccionable de 5 V (WS2812B)

- Conducto eléctrico para albergar las luces

Paso 2: conecte el circuito

Conectar el circuito
Conectar el circuito
Conectar el circuito
Conectar el circuito
Conectar el circuito
Conectar el circuito

Básicamente, estamos conectando la línea de datos de la tira de LED al pin D2 o ESP8266 a través de una resistencia de 330 ohmios para limitar la corriente. Tenga en cuenta que el voltaje de funcionamiento del ESP8266 es de 3,3 V.

Los sensores PIR están conectados a los pines D5 y D6, uno para el sensor izquierdo y otro para el derecho. No olvide conectar la alimentación para PIR y tira de LED a 3.3V en este caso.

Paso 3: Cargue el código

Sube el código
Sube el código
Sube el código
Sube el código

Para que el código funcione, necesitará la siguiente biblioteca:

- Librería "FastLed" de Daniel García, en este caso tengo instalada la versión 3.3.3

- TimeLib

- ESP8266Wifi

- ESP8266WebServer

- ArduinoOTA

Si aún no los tiene instalados, puede instalarlos desde "Herramientas-> Administrar biblioteca" en la interfaz de Arduino.

En la siguiente sección del código

#define FASTLED_ESP8266_D1_PIN_ORDER # include "FastLED.h" FASTLED_USING_NAMESPACE

#define NUM_LEDS 30

#define LEDS_PER_STAIR 2 // Número de Leds por escalera. Aún no se puede cambiar actualmente, solo se puede notar #define BRIGHTNESS 120 // 0… 255 (usado en fade7) #define PIN_LED 04 // LED Data pin (GPIO4) D2 #define PIN_PIR_DOWN 14 // PIR Downstairs Pin (GPI14) D5 #define PIN_PIR_UP 12 // Pin de arriba del PIR (GPI12) D6

Puedes configurar el Número de LED en tu tira de LED, también la conexión del LEDStrip si decides conectarlo a un pin diferente y también el pin del sensor PIR si decides conectarlo a un pin diferente del MCU.

La configuración anterior se encuentra en el archivo "ledsettings.h".

Puede descargar el código fuente completo desde el siguiente enlace.

Una vez que pueda compilar el código correctamente, puede cargarlo en el ESP8266.

Paso 4: prueba y prueba y solución de problemas

Prueba y prueba y resolución de problemas
Prueba y prueba y resolución de problemas
Prueba y prueba y resolución de problemas
Prueba y prueba y resolución de problemas

Si todo va bien, debería tener luces de pasillo que funcionen y de las que pueda estar orgulloso. Cuando encienda el circuito por primera vez, la tira de LED se iluminará con una secuencia de arcoíris. Luego, el ESP8266 actuará como un punto de acceso (AP) para permitirle configurar la conexión WiFi.

Si está utilizando el código que tengo, debería poder ver "ESP-HallLight" como punto de acceso. Por seguridad, he puesto protección con contraseña para el AP. La contraseña predeterminada es "arduino", puede cambiarla en el archivo settings.h, en la siguiente sección.

#define CLOCK_NAME "ESP-HallLight"

#define WIFI_AP_NAME CLOCK_NAME #define WIFI_APPSK "arduino" // contraseña AP predeterminada

Una vez conectado con éxito usando un teléfono móvil o computadora portátil a través de WiFi, debería poder apuntar su navegador a 192.168.4.1, debería ver la pantalla de configuración como se muestra en la imagen de arriba. Ahora puede ingresar su configuración de WiFi y una vez ingresado, ESP8266 se reiniciará e intentará conectarse a su WiFi. Si puede conectarse correctamente, ya no verá el punto de acceso "ESP-HallLight".

Si todavía está conectado a la interfaz Arduino, puede monitorear esto a través del monitor en serie.

Nota: No es necesario que configure el WiFi para que funcionen los sensores, debería funcionar después de unos segundos cuando las luces iniciales estén apagadas.

Para probar, puede intentar caminar desde un lado o agitar la mano, la luz debe encenderse siguiendo la dirección de viaje, si está haciendo lo contrario, entonces debe cambiar el sensor izquierdo y derecho en el código.

Durante mi primera construcción, conecté accidentalmente el extremo equivocado de la tira de LED, lo que resultó en que ninguno de los LED se iluminara.

Espero que disfrutes de esta compilación, si te resulta útil, vota por el concurso. Si tiene alguna pregunta, no dude en enviarme una nota y la responderé lo antes posible.

Algunos pensamientos posteriores serían agregar características adicionales como:

  • Tener una interfaz para encender los LED independientemente del sensor, similar a mi publicación anterior sobre la tira de LED controlada por WiFi o el indicador de estado de la tira de LED.
  • Agregue una función adicional para publicar un mensaje MQTT en Home Assistant similar a la siguiente publicación.

Recomendado: