Inercambio de impresiones sobre el sensor de co2 CCS811

Saludos a todos:
Tengo construido desde hace unos meses un sensor de eCO2 con el CCS811 y el BMP280. En principio funciona bien, pero me gustaría intercambiar opiniones, motaje, codigos, etc.
¿Alguien lo tiene o lo ha tenido funcionando?.

No tengo tu suerte y algo de 20 dolares hoy en mi país (Argentina) es prohibiitivo.
Si tengo el BMP280 y funciona perfecto.

Nada de suerte aqui en España sale practicamente igual, unos 19 euros, yo todos estos chismes se los compro a los chinos, que aunque tarda casi un mes en llegar cuestan menos de la mitad.
Y si el BMP280 funciona de maravilla es el otro el que me inquieta.

Que es lo que te inquieta?
Comparte tu preocupación ya que justamente ese es el tema.

Principalmente que no me respeta el valor que le doy al “baseline”, (valor de referencia del nivel de co2 de donde esta colocado), con lo cual creo que no es un medidor absoluto mas bien relativo. es decir creo que mide incrementos del co2.
La cosa no tendría importancia si respetara la baseline, pero la cambia el solito cuando le viene en gana y tras producirse un incremento de co2, al poco tiempo, vuelve a marcar los 400 ppm standar del aire puro, sin haber hecho ventilación alguna.
Por cierto mira que chulo ha quedado.

Vaya, menudo problema tienes!! Ahora comprendo tu título.

No tengo ninguna respuesta al problema solo intento entender. Mira que dice esta página.

The Air Quality Breakout Board - CCS811 is a digital gas sensor solution that senses a wide range of Total Volatile Organic Compounds (TVOCs), including equivalent carbon dioxide (eCO2) and metal oxide (MOX) levels. VOCs are often categorized as pollutants and/or sensory irritants and can come from a variety of sources like construction materials (paint, carpet, etc.), machines (copiers, processors, etc.) and even people (breathing, smoking, etc.

O sea que responde a varios elementos Orgánicos Volátiles, al CO2 equivalente ?? y a niveles de oxido metálico. Guauu!! o sea estas midiendo eCO2 + otras cosas, entonces tu fallo es de CO2 o es que otras cosas estan complicando la lectura?

Se me ocurre ponerlo en una caja cerrada y ver como se comporta por un tiempo.
Luego tal vez introducir una exhalación de aire + CO2 y por supuesto se disparará pero lo sigues dejando confinado a ver si mantiene en el tiempo

Qué opinas?

EDITO 1: como siempre sigo leyendo y encuentro cosas curiosas que ayudan a entender el problema.
Parece que hace falta medir temperatura y humedad para corregir el algoritmo de medición del CCS811, (ver link)

La librería esta basada en otro sensor de humedad y temperatura pero todo esta integrado para reflejar lecturas adecuadas.
Librería CCS811 y ejemplos con compensación temperatura

EDITO 2: Vaya que tienes suerte, hace meses que nadie habla de este sensor y ahora mira

Medidor de CO2, Temperatura y Humedad//CCS811, DHT22

Hola @surbite, el cacharo en si no mide co2 lo de eco2 es "equivalenteCO2", según los TVOC aplica alguna formula,(que a ver si la encuentro), para calcular el CO2 producido por la respiración humana. Pero anoche pensando voy a olvidarme del co2, (que lo pueden producir otras causas) y centrarme en los TVOC, (que si los mide directamente), para ventilar o no.

Si estoy compensando humedad y temperatura por eso lleva el BMP280.

Esa libreria no la conocia, he usado una generica "CCS811.h" que es útil para cambiar el firmware del chip a la ultima versión dada por el fabricante pero para nada mas. Estoy usando la de sparkfun que tiene mas utilidades. La probare a ver que tal va

Lo de la caja ya lo he hecho con un tupper con un cigarrillo encendido y monitoreando valores, claro la medición se dispara hasta el maximo, pero nada al rato vuelve a cambiar la linea base, sin admitir una nueva, es como si se acostumbrara al ambiente que le rodea.

Si es casualidad lo de ese post, he invitado a su autor a que lea esto por si se le ha pasado y se anima a unirse.

Saludos.

En el manual aclara que la linea de base se encarga el Software, recomendando tomar una linea de base de 24 hs.

Automatic Baseline Correction
The resistance RS of the sensitive layer is the output of the
sensor. However, metal oxide sensors do not give absolute
readings. The resistance RS varies from sensor to sensor
(manufacturing variation), from use-case to use-case, and over
time. To mitigate this problem, the output of the sensor is
normalized: RS is divided by RA. The value of RA is known as the
baseline. RA cannot be determined by a one-time calibration; it
is maintained on-the-fly in software. This process is known as
baseline correction. The air quality is expected to vary in a
typical environment so the minimum time over which a
baseline correction is applied is 24 hours. Automatic baseline
correction is enabled after initial device operation.
Manual Baseline Correction
There is a mechanism within CCS811 to manually save and
restore a previously saved baseline value using the BASELINE
register.

Hola, efectivamente @PeterKanTropus. Pero yo le doy manualmente una línea base tras transcurrir 20 minutos desde el encendido, como recomienda el datasheet antes del párrafo que citas.

Conditioning Period (Run-In)
After early-life (Burn-In) use the conditioning period is the time 
required to achieve good sensor stability before measuring 
VOCs after long idle period.
After writing to MEAS_MODE to configure the sensor in mode 
1-4, run CCS811 for 20 minutes, before accurate readings are 
generated.
The conditioning period must also be observed before writing 
to the BASELINE register.

Se supone que debería conservarla y no cambiarla. Además tengo varias líneas base obtenidas en sitios distintos sacadas poniendo el registro donde la guarda a cero y dejándolo calculándola durante esas 24 horas. En fin algo ocurre que hace que la cambie y aún no encuentro que es. Saludos

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.