Buen dia En este artículo quiero hablar sobre la implementación de dispositivos en módulos ESP. El tema de dispositivos similares ya se ha divulgado en Internet, pero no deja de ser relevante.
IdeaLlevo mucho tiempo pensando en implementar un determinado sistema de visualización y control en un departamento, pero no pude encontrar ninguna aplicación para los sensores disponibles para la venta, específicamente para mí. Lo primero que confundió fue la presencia de cierto servidor (una pieza separada de hierro) que recopila datos, los procesa y los arroja a algún lugar para su visualización. Me gustaría tener un sistema escalable de dispositivos independientes, preferiblemente trabajando con una aplicación, de manera óptima si la aplicación está lista, lo que parecía casi imposible (mirando hacia el futuro, diré que existe una aplicación de este tipo y puede configurarse de manera bastante flexible para nuestras tareas). Y, por supuesto, quería hacer una línea de mis dispositivos.
Requisitos del sistema- Falta de servidor de hardware ("Unidad central").
- Sensores / controles independientes.
- Los sensores deben ser inalámbricos.
- Al cambiar la composición y los tipos de sensores, no debería haber dependencia (agregar un nuevo dispositivo no debería ser necesario para "ver" algo en los demás).
- Si es posible, los sensores deben funcionar con batería.
- Si es necesario, los sensores deberían poder configurarse, pero sin excavar en el código (óptimamente web).
- Notificaciones Este es un requisito por separado. Todos estamos acostumbrados a usar teléfonos celulares y recibimos notificaciones al instante.
Esta no es una lista completa de "Lista de deseos", pero es la principal.
Busca una soluciónLa solución para crear el sistema llegó un poco más tarde. Primero, se desarrolló el primer dispositivo, sobre el que escribiré en este artículo.
Pieza de hardware. ESP-12E y ESP32. Todos los proyectos descritos a continuación se implementan en el primer módulo. El segundo módulo tiene varios proyectos comerciales que no serán considerados en este artículo.
Hay muchos artículos y foros en Internet sobre el ESP-12E, y no repetiré sobre todos los pros y los contras. Todos los "enchufes" se produjeron principalmente debido a la falta de experiencia en el trabajo con el módulo y con el medio ambiente, en principio.
Figura 1. Foto del ESP-12E.La parte del software. El firmware para ESP se escribió en el IDE de Arduino. La aplicación Blynk se ejecuta en el lateral del teléfono / tableta. Este es un constructor muy conveniente para mostrar datos. La aplicación tiene un servidor en la nube donde los dispositivos (sensores) envían datos, y Blynk los recibe y permite mostrarlos (www.blynk.cc). Del mismo modo, los comentarios se organizan con el dispositivo. Es importante destacar que una sola aplicación puede recopilar y mostrar datos de múltiples dispositivos.

Figura 2. Capturas de pantalla de la aplicación.Más tarde, publicaremos un artículo sobre software y enlaces a las fuentes. Yo hago el hardware. La implementación del software es realizada por mi colega.
El primer trío de sensores.1. Sensor de dióxido de carbono
OpenWindAir .
Construido sobre la base del módulo Wi-Fi ESP-12E. La medición se realiza con el sensor de CO2 MH-Z19. Es ampliamente conocido y le permite tomar medidas de forma rápida y precisa. Además, el dispositivo tiene un sensor de temperatura y humedad AM2302 incorporado. También hay soporte para un sensor externo para su uso, por ejemplo, con el sistema de Monitoreo de Personas. El dispositivo funciona con miniUSB desde una PC o fuente de alimentación de 5V. Implementado LED y alarmas de sonido (este último puede apagarse desde la aplicación o usarse por el reloj, para no despertarse por la noche).
2.
Sensor de humedad del suelo
LifeOfFlowers para plantas.
Construido sobre la base del módulo Wi-Fi ESP-12E. La medición de la humedad del suelo ocurre usando un electrodo atascado en el suelo (parte de la placa del dispositivo). Lo que es importante: el electrodo, como toda la placa, está barnizado (aquí tuve que idearlo con mediciones), lo que evitará la descomposición del contacto. Además de la humedad del suelo, el dispositivo mide la humedad y la temperatura ambiente (AM2302), la luz y el voltaje de la batería. Sí, LifeOfFlowers funciona de 1 a 3 años con dos baterías AAA (el tiempo de funcionamiento depende de la frecuencia de actualización).
3.
Advertencia Sensor de fugas de
agua .
Construido sobre la base del módulo Wi-Fi ESP-12E. La medición se realiza utilizando los electrodos incluidos en el gabinete IP-65. El dispositivo funciona con dos baterías AAA (o AA), el tiempo de funcionamiento también es de 1 año. Las dimensiones del dispositivo son solo 55x55x30mm. Para comenzar, debe colocar el dispositivo en un lugar potencialmente peligroso y esto indicará la presencia de agua en el piso. La aplicación también muestra el voltaje de las baterías, para no olvidar reemplazarlas a tiempo.
OpenWindAir - implementación de hardwareAquí no puede encontrar volantes de circuitos aquí, todo es simple y en hojas de datos. Si alguien necesita un circuito, puedo dárselo.
La composición del dispositivo:
ESP8266 ESP-12E: el módulo en sí, que se encarga de recopilar, procesar y enviar datos. Fuente de alimentación 3.3V.
MH-Z19 - sensor de concentración de dióxido de carbono. Funciona en UART, mide hasta 5000 ppm y funciona con 5V.
AM2302 - medición de humedad y temperatura. Dado que el sensor está ubicado dentro de la carcasa, se tuvieron que ingresar constantes de calibración y los datos de medición son para referencia. Para mediciones más precisas, se utiliza un sensor remoto.
1-1462037-8 (IM03TS) - relé, para conmutar baja corriente, establecido por si acaso, para jugar. En principio, esto es algo interesante, pero aún no han presentado aplicaciones (se envía al mismo conector externo que el sensor de humedad externo).
CP2102-GM - USB-UART. Sí, decidimos hacer hermosos registros para mostrar información en tiempo real, resultó muy conveniente, puede ver los datos en el terminal, ver el orden de descarga, depurar.
LM1117MP-ADJ - LDO para 3.3V.
También hay un busca, un par de botones y tres LED. Además de los umbrales de concentración de CO2, los LED indican el proceso de cargar el dispositivo, conectarse a un punto de acceso (o trabajar sin conexión) y el proceso de actualización.
El dispositivo implementa la actualización OTA. Lanzamos el firmware en cualquier servidor (después de prescribirlo), presionamos el botón, aplicamos energía y comienza el proceso de firmware. Después de flashear (o reiniciar) durante un tiempo específico, puede ir a la interfaz web (el dispositivo aparece como un punto de acceso) y conducir en la configuración de red; después de eso, todo está listo para funcionar.
Fig 3. Foto de la placa con componentes.Quiero escribir un poco sobre la forma y las características de la placa de circuito impreso. Durante las pruebas, se descubrió que durante el uso prolongado de Wi-Fi, el módulo calienta la placa. Esto no sería crítico si el sensor incorporado de temperatura y humedad dentro de la carcasa. Tuve que extender el módulo ESP con el alimentador y los sensores en diferentes direcciones, y también hacer un corte en el tablero, donde, como el diseñador, todavía se inserta una partición especial. Por lo tanto, no hay mezcla de aire dentro de la caja y las mediciones de temperatura y humedad son mucho más confiables.
Figura 4. Foto de la partición en el tablero.ViviendaHabía muchas dudas: quería tener un hermoso cuerpo metálico y aerodinámico con una franja mate de indicación, etc., pero como siempre, el minimalismo vino al rescate. El factor de forma del caso determinó la presencia de LED de 5 mm de la vieja escuela, que resultaron ser muy convenientes. Debido al hecho de que son convexos, esto le permite colocar el dispositivo, por ejemplo, en un estante y la indicación seguirá siendo claramente visible. La caja en sí fue cortada con láser de plexiglás de 2 mm.
Hicimos varias opciones, en diferentes colores y con una combinación de colores, así como de diferentes materiales. Se ve muy decente. Incluso intenté hacerlo desde PCB de inmediato con el orden de las placas de circuito impreso. Por el momento, estamos pensando en la opción de fabricar el caso en producción, pero hasta ahora esto solo está en los planes. También puedo diseñar modelos.
Fig 5. Foto del dispositivo.PlanesEn general, hay planes para hacer varios dispositivos más (además de estos tres). Por ejemplo, ESP32 tiene Ethernet incorporada (solo necesita física) y más ADC incorporados, lo que le permitirá prescindir de un multiplexor, como es el caso con LifeOfFlowers, pero más sobre eso más adelante.
Amenaza Blynk tiene una API de servidor que se puede implementar (verificar) fácilmente en una PC. Por lo tanto, el enlace al servidor desaparece.
ZZY Tener menos negativo renombró el artículo. Cuando pasemos a administrar la casa utilizando dispositivos, corregiré el artículo.
Gracias por su atencion!
ZZZY: Como se prometió, aquí hay un enlace a un artículo sobre software
geektimes.ru/post/122601