Medidor de CO2

Una vez, sentado en el trabajo y sintiéndome incómodo al respirar, decidí armar un medidor de CO2.
Después de estudiar varios artículos sobre este tema, formuló los requisitos para el dispositivo.

  1. El dispositivo debe estar con una pantalla, ya que debe ser un dispositivo portátil.
  2. El dispositivo no debe depender de Internet por la misma razón.
  3. El dispositivo debe poder registrar valores a lo largo del tiempo, lo cual es conveniente para ver en cualquier momento. Y esto significa que debe tener su propio servidor web y su propio punto de Wi-Fi.

El último elemento condujo ambiguamente a la entrada de que el dispositivo estará en el ESP. Como no necesito un alto rendimiento, elijo la opción más barata, que ESP8266, 07. En casa, una copia con 1 mb de memoria estaba por ahí.

Pedí las piezas de repuesto que faltaban para aliexpress, y fueron:

  1. Pantalla Oled 96x64 SSD1331.
  2. Sensor de CO2 MH-Z19B.
  3. Módulo DS1307 RTC.

Al recibir los detalles, comenzó a desarrollar el circuito utilizando KiCad.

Debo decir de inmediato: todas las fuentes estarán al final del artículo y, una vez ensamblados de acuerdo con los esquemas, cargando el firmware, deberían obtener un dispositivo que funcione completamente.

El esquema salió así:

imagen

Decidí hacer que los módulos fueran extraíbles, por lo que no hay módulos en el circuito, sino solo conectores para ellos.
Yo extendí el tablero:

imagen

Después de fabricar la placa de circuito impreso y la soldadura, salió lo siguiente:

imagen

imagen

En el montaje y en el trabajo se ve así:

imagen

Ahora sobre la parte del software.

El código se escribió en el IDE de Arduine, ya que no soy programador y no quería entender las bibliotecas en el estudio visual ni en ningún otro lugar.

En principio, utilicé el código para los módulos en el dispositivo de ejemplos de bibliotecas y de Internet, así que no me detendré en ello. ¿Quién quiere? Comprender fácilmente el boceto.
Pero resultó que no era tan simple implementar la visualización y visualización de estadísticas a tiempo.

Lo quería de esta manera: desde un teléfono móvil o computadora portátil, es lo más fácil posible conectarse al dispositivo, a través del navegador HTML, vaya a la página de datos y visualícelo en un gráfico de tiempo.

Primero, en ESP, creó un punto de acceso sin contraseñas y autenticaciones.

El segundo: creó una matriz de datos en la que escribo datos de CO2 y el tiempo de adquisición de datos (para esto, de hecho, configuré el reloj en el dispositivo.

En tercer lugar, configuré un servidor HTTP y varias páginas HTML, en una de las cuales saqué datos.

Cuarto: Java Script para dibujar el gráfico en la página se escribió en el sistema de archivos ESP.

Dado que la salida del gráfico solo fue posible con la ayuda de Java Script, después de un largo experimento, el cuarto punto se implementó de esta manera: el script Chart.js más simple se escribió como un archivo en el sistema de archivos SPIFFS ESP, que solicita una página que muestre el resultado.

En general, al encender el dispositivo, en la pantalla cada 10-15 segundos se muestran las nuevas lecturas del sensor, y cada 8 minutos las lecturas actuales del sensor se registran en la matriz de datos.

Después de un tiempo, queriendo analizar las lecturas a tiempo, se conecta a través de su teléfono o computadora portátil al punto Wi-Fi "CO2", luego de conectarse inicie el navegador de Internet e ingrese la dirección IP "10.10.10.1" en la barra de búsqueda. Llegas a la página:

imagen

Hay un botón para ir a la página de vista de datos y un botón para ir a la página de configuración de la hora (ya que el tiempo a veces se pierde y simplemente se pierde cuando se reemplaza la batería).

La página de salida de datos se ve así:

imagen

Archivo con fuente aquí.

El archivo contiene un boceto, Java Script, proyecto Kicad, una impresión en formato Photoshop con una resolución de 600 ppp, en caso de que no desee meterse con Kicad.

Cómo configurar Adruino ide para firmware ESP y cómo cargar archivos a SPIFS se puede encontrar fácilmente en Internet.

Para el firmware ESP, deberá desconectar el sensor de CO2, ya que se cuelga en TX0 y RX0, que son necesarios para el firmware. Además, firmé lo contrario en la placa de línea de datos, de modo que conecto TX desde la luz intermitente a TX en la placa, etc.

Source: https://habr.com/ru/post/es422001/


All Articles