Tabla de contenido:

Alarma de inundación de sótano de potencia ultrabaja con ESP8266: 3 pasos
Alarma de inundación de sótano de potencia ultrabaja con ESP8266: 3 pasos

Video: Alarma de inundación de sótano de potencia ultrabaja con ESP8266: 3 pasos

Video: Alarma de inundación de sótano de potencia ultrabaja con ESP8266: 3 pasos
Video: 🌧️alarma anti inundaciones 🌧️ alarma casera anti-inundacion--alarm anti-flood home 2024, Noviembre
Anonim
Alarma de inundación de sótano de potencia ultrabaja con ESP8266
Alarma de inundación de sótano de potencia ultrabaja con ESP8266
Alarma de inundación de sótano de potencia ultrabaja con ESP8266
Alarma de inundación de sótano de potencia ultrabaja con ESP8266

Hola, bienvenido a mi primer instructable.

El sótano de mi casa se inunda cada pocos años por varias razones, como fuertes tormentas eléctricas de verano, mucha agua subterránea o incluso la rotura de una tubería. Aunque no es un lugar agradable, mi caldera de calefacción central está ubicada allí y el agua puede dañar sus partes electrónicas, por lo que necesito bombear el agua lo antes posible. Es difícil e incómodo comprobar la situación después de una fuerte tormenta de verano, así que decidí hacer una alarma basada en ESP8266 que me envía un correo electrónico en caso de una inundación. (Cuando la inundación es causada por una gran cantidad de agua subterránea, el nivel del agua suele ser inferior a 10 centímetros, lo que no es dañino para el calentador y no se recomienda bombear porque volverá de todos modos y cuanto más bombee, más agua subterránea vendrá. la próxima vez. Pero es bueno conocer la situación).

En esta aplicación, el dispositivo puede estar en "suspensión" durante años y, si todo funciona según lo planeado, solo funciona durante unos segundos. Usar el sueño profundo no es práctico, ya que consume demasiada corriente si queremos dormir durante períodos muy largos y el ESP8266 solo puede dormir unos 71 minutos como máximo.

Decidí usar un interruptor de flotador para encender el ESP. Con esta solución, el ESP no se alimenta cuando el interruptor está abierto, por lo que el consumo de energía es solo la autodescarga de las baterías, lo que mantiene el sistema listo para la alarma durante años.

Cuando el nivel del agua alcanza el interruptor de flotador, el ESP se inicia normalmente, se conecta a mi red WiFi, me envía un correo electrónico y se duerme para siempre con el ESP. Sueño profundo (0) hasta que se apaga y se vuelve a encender. Si no puede conectarse a WiFi o no puede enviar el correo electrónico, se pone en suspensión durante 20 minutos y vuelve a intentarlo hasta que tenga éxito.

Esta idea es similar a la solución descrita por Andreas Spiess en este video. Pero debido a la naturaleza de la inundación y el interruptor de flotador, no necesitamos agregar un MOSFET para mantener el ESP encendido hasta que termine su tarea, porque el interruptor de flotador se cerrará si el nivel del agua está por encima del nivel de activación..

Paso 1: el esquema:

El esquema
El esquema

Partes

  • D1: diodo Schottky BAT46 para despertar con sueño profundo. Tengo mejores experiencias con diodos Schottky que resistencias entre D0 y RST.
  • Interruptor de flotador: tubo de láminas simple de $ 1.2 e interruptor de flotador a base de imán de eBay. El anillo con el imán se puede invertir para cambiar entre la conmutación de nivel de fluido alto y bajo. Enlace de eBay
  • Soporte de batería: para 2 pilas AAA de 1,5 V
  • P1: 2x 2P 5.08mm (200mil) terminales de tornillo para conectar los cables de la batería y el interruptor de flotador.
  • C1: condensador 1000uF 10V para aumentar la estabilidad del ESP mientras la radio está encendida. Tenga en cuenta que si el ESP está en sueño profundo, la energía almacenada en el condensador es suficiente para alimentarlo durante 3-4 minutos. En ese período, la operación del interruptor de flotador no puede reiniciar el ESP porque el capacitor lo mantiene encendido mientras está en sueño profundo. Esto solo es interesante durante las pruebas.
  • U1: Microcontrolador LOLIN / Wemos D1 Mini Pro ESP8266. Esta es la versión pro con conector de antena externa, que puede ser útil cuando se coloca en el sótano. Tenga en cuenta que debe volver a soldar la "resistencia" SMD de 0 ohmios para seleccionar la antena externa en lugar de la antena de cerámica incorporada predeterminada. Recomiendo comprar microcontroladores LOLIN en la tienda oficial de LOLIN AliExpress porque hay muchos tableros Wemos / LOLIN de versiones falsas o antiguas por ahí.
  • Tablero perfilado: Un tablero proto de 50 mm * 50 mm será suficiente para adaptarse a todas las piezas. El circuito es demasiado simple para hacer una PCB.:)

Tenga en cuenta que la batería está conectada a la entrada de 3,3 V. Aunque el D1 Mini tiene un LDO incorporado para operación USB / LiPo, no lo necesitamos cuando se alimenta con 3V de baterías alcalinas 2xAAA. Con esta conexión, mi D1 Mini pudo completar su tarea con solo un voltaje de suministro de 1.8V.

Paso 2: el código

El programa podría ser más agradable o más simple, pero sus partes están bien probadas en mis otros proyectos.

El boceto utiliza las siguientes bibliotecas:

ESP8266WiFi.h: predeterminado para placas ESP8266.

Gsender.h: biblioteca de remitentes de Gmail de Borya, se puede descargar desde aquí.

El flujo del programa es bastante simple.

  • Se inicia ESP.
  • Lee la memoria RTC para comprobar si es un primer inicio o no
  • Se conecta a WiFi mediante la función cleverwifi (). Esto se conecta a WiFi usando la dirección MAC del enrutador (BSSID) y el número de canal para una conexión más rápida, reintenta sin esos después de 100 intentos fallidos y se pone en suspensión después de 600 intentos. Esta función se derivó del boceto de ahorro de consumo de energía WiFi de OppoverBakke, pero sin guardar los datos de conexión a la parte RTC en esta aplicación.
  • Comprueba el voltaje de la batería con el ESP integrado en las funciones ADC_MODE (ADC_VCC) / ESP.getVcc (). Esto no requiere un divisor de voltaje externo ni ningún cableado a A0. Perfecto para tensiones inferiores a 3,3 V, que es nuestro caso.
  • Envía un correo electrónico de alerta con Gsender.h. Agregué variables y texto personalizado al asunto y las cadenas de mensajes para informar el voltaje de la batería, el tiempo transcurrido desde la primera detección y consejos sobre el reemplazo de la batería. No olvide cambiar la dirección de correo electrónico del destinatario.

    • Duerme

      • Si tiene éxito, duerme "para siempre" con ESP.deepSleep (0); Físicamente estará en modo de reposo hasta que el nivel del agua sea alto. Técnicamente, esto es unas pocas horas o un máximo de unos días, lo que no agotará la batería con la corriente de suspensión de pocos uA. Cuando se acabe el agua, el interruptor de flotador se abrirá y el ESP se apagará por completo, y el consumo de corriente será 0.
      • Si no tiene éxito, se duerme durante 20 minutos y luego vuelve a intentarlo. Es posible que se produzca un corte de energía de CA en caso de una tormenta de verano. Cuenta los reinicios y los almacena en la memoria RTC. Esta información se utiliza para informar el tiempo transcurrido desde el primer intento de alarma. (Tenga en cuenta que, al probarlo con alimentación USB y monitor en serie, el RTC también puede mantener el valor del recuento de ciclos entre descargas).

Paso 3: Montaje e instalación

Montaje e instalación
Montaje e instalación
Montaje e instalación
Montaje e instalación
Montaje e instalación
Montaje e instalación

Después de probar el código en una placa de prueba, lo soldé a una pequeña pieza de placa de perforación.

Usé 2 piezas de terminales de tornillo de 2 polos de 5,08 mm de paso cosidos, un conector hembra para el ESP, un condensador y algunos puentes.

Tenga en cuenta que la resistencia SMD con el número "0" junto a la antena de cerámica debe volver a soldarse a las almohadillas vacías junto a ella para seleccionar la antena externa.

Luego puse todo en una pequeña caja de conexiones eléctricas IP55. Los cables del interruptor de flotador están conectados a través de un prensaestopas.

La caja se coloca a una altura segura, donde el agua (con suerte) nunca puede alcanzarla, así que utilicé un par de cables de cobre relativamente gruesos de 1 mm ^ 2 (17AWG) para conectar el interruptor de flotador. Con esta configuración, el ESP podría iniciar y enviar el mensaje incluso con un voltaje de entrada de 1.8V.

Después de la instalación, este centinela silencioso está en guardia, pero espero que no tenga que enviar una alarma pronto …

Recomendado: