Con todo esto de la pandemia, se ha visto que hay ventilar (sí, nos ha hecho falta una pandemia), con una buena ventilación la probabilidad de contagiar el virus (y cualquier enfermedad que se distribuya por aerosoles) baja de manera drástica. Un indicador de cómo de buena es la ventilación en un recinto cerrado, es el nivel de CO2 en el ambiente, y en esta entrada vamos a ver cómo usar un MH-Z19B para avisar de cuando ventilar!

Mucho cuidado! Parece ser que ya hay avisos de copias fraudulentas de MH-Z19B en el mercado, sobre todo aliexpress. De momento (18-ene-2021), el vendedor más fiable es este (link)

Vídeo de cómo fabriqué el mío

Carro de la compra

Aquí te dejo todos los enlaces de lo que necesitas para poder tu propio sensor de CO2:

¿Porqué es importante medir el CO2?

Con la pandemia, una de las mayores preocupaciones son los contagios en aulas y centros cerrados, por ello mucha gente estuvo estudiando cómo impedir que el virus moviera en las clases de los más peques. Se vio, que en recintos cerrados mal ventilados, la exposición al virus era mayor, y por tanto incrementaba la posibilidad de contagio.

Además de eso, niveles de CO2 mayores, provocan que nuestra capacidad de atención disminuya, nos sintamos incómodos, y en niveles extremos lleguemos a intoxicarnos. Por ello, se ve que es aún más importante en aulas, donde la capacidad de atención es muy importante. A continuación os dejo una tabla donde se ven las concentraciones de CO2 y su efecto en la salud de las personas.

¿Cómo funciona el MH-Z19B y qué otros sensores hay?

Principalmente, para el mundo DIY, hay dos tipos de sensores de CO2, los sensores químicos y los NDIR. De los primero tenemos generalmente el CCS811, estos sensores generan una diferencia de voltaje al reaccionar el CO2 del aire con un producto del interior del sensor. La principal ventaja de estos sensores es que generalmente son más baratos pero por contra, los resultados obtenidos de las mediciones son peores.

Por otro lado tenemos los sensores NDIR, en los cuales la concentración de CO2 se mide mirando la absorción de luz infrarroja cuando pasa a través del aire. Estos sensores, son más precisos pero también bastante más caros. En este grupo tenemos 2 sensores principalmente el MH-Z19B y el MH-Z14A (dentro de nuestro presupuesto).

Imagen del MH-Z19B y el Arduino Pro Mini juntos.
El MH-Z19B y el Arduino Pro Mini juntos

El MH-Z19B tiene en su interior un emisor LED de infrarrojos que emite la luz que va a ser medida. Además, tiene un sensor para medir la cantidad de luz recibida y poder así calcular la concentración de CO2.

Primeras pruebas

Para las primeras pruebas conectamos el MH-Z19B a una Raspberry Pi 3, y guardamos los datos con InfluxDB + Grafana. Aquí os dejo la conexión del sensor a la rPi3.

Con Grafana podemos ver de manera muy sencilla, como evoluciona a lo largo del tiempo los valores de CO2 en mi taller. En rojo, he marcado las franjas que corresponden a las noches, donde debería alcanzar el mínimo. El valor de CO2 base, es decir la concentración de CO2 media en el aire limpio es de 400ppm. Los sensores MH-Z19B tienen un sistema para autocalibrarse, siempre y cuando se ventile la habitación donde están regularmente.

Viendo que el sensor trabaja de manera correcta, podemos pasar ya a montar nuestro sensor basado en Arduino.

La electrónica

En mi caso concreto estoy usando una tira LED RGB de 12V así que además de toda la electrónica normal, para poder alimentarlo desde un USB, necesito un STEP-UP para elevar el voltaje de 5V a 12V. Este es el diagrama general: Los 5V alimentan el Arduino, el Step-up, el MH-Z19B y la pantalla OLED. Entre el Arduino y la tira RGB, tenemos un pequeño circuito para que el Arduino pueda mandar la señal PWM a cada color del RGB.

Diagrama general

Por separado, y de manera más correcta aquí tenéis los esquemas tanto para el Arduino, como para el circuito de transistores:

Conexiones Arduino
Circuto PWM con Transitores

El código fuente y los ficheros 3D

El código fuente y los ficheros 3D, además del esquemático, lo tenéis en mi Github así que no dudéis en pasaros por ahí. No entro mucho en detalle porque no tiene mayor misterio, lo único que hay que saber es que en mi caso:

  • Los colores RGB tienen un pequeño “latido” suben y bajan un poco de intensidad
  • El ABC (Auto-calibración) está encendido todo el rato, por lo que sería necesario ventilar el sitio donde esté el sensor.
  • La pantalla muestra una cara alegre o triste según el nivel de CO2
Categorías: ArduinoElectrónica

Gluón

Teleco con ganas de aprender más y compartirlo. Viajero empedernido y amante de la fotografía y la tecnología. Espero dejar mi granito de arena y que este pueda servir de ayuda.