Experimentos con ESPEasy (ESP8266) y bajo consumo – v3.0

Seguimos en nuestra búsqueda del bajo consumo de nuestro ESP8266 para utilizarlo con batería y en este experimento vamos a tratar de diseccionar el consumo del medidor de CO2 con el que estamos haciendo los experimentos.

¿Cuánto consume el ESP8266 y cuánto el sensor de CO2?

Vamos a ver nuestro último experimento en el que conseguimos que nuestro medidor de CO2 funcionara con una batería 18650 durante 12 días, reportando valores mediante MQTT cada minuto, desde un nuevo punto de vista.

En esta ocasión, la misión es averiguar cuánto consume en ESP8266 (un módulo ESP-12F) y cuánto el sensor de CO2 de ultra bajo consumo que estamos utilizando (un Senseair Sunrise S11).

Lo que vamos a hacer es medir el consumo medio del medidor de CO2 completo durante un minuto y después mediremos solo el consumo del sensor de forma independiente (aunque funcionando en el medidor de CO2, de forma normal).

Recordarás, del artículo anterior, el siguiente gráfico de corriente consumida:

Ahora lo vamos a ver de otra forma:

Como ves, he capturado la medida durante 59.44 segundos (un ciclo completo de despertar, dormir y medir) y el consumo medio ha sido de 7.61mA.

Si te fijas, verás que hay un pico, nada más despertar el ESP8266, de muy alto consumo (294mA) seguido inmediatamente de una zona relativamente estable. Este alto consumo corresponde al arranque del ESP8266, del que sabemos que tiene un consumo muy alto en el momento de arrancar.

El ESP8266 despierta, se conecta a la red wifi, al broker MQTT y envía los datos por MQTT. Esto corresponde a los primeros 10 segundos aproximadamente en los que se ve mucha actividad en el consumo.

Después el ESP8266 pasa al estado de deep sleep y vemos como, a partir de ahí, cada 16 segundos, aproximadamente, tenemos unos pequeños «tirones» de consumo, como un peine. Esto corresponde al consumo del sensor Senseair Sunrise (recuerda que lo tenemos en modo de medida continua y él mide cada pocos segundos de forma independiente al ESP8266, esté éste despierto o dormido).

Por cierto, esos 16 segundos no son un valor aleatorio, coinciden con la configuración que tenemos puesta en ESP Easy para leer el Senseair Sunrise. Como vemos, todo coincide y las cuentas cuadran.

Si observas con atención, verás además que tras ese primer pico de consumo de casi 300mA, hay unos cinco segundos de consumo con unos pequeños picos y después otro «peine grande», superpuesto a esos picos más pequeños.

Efectivamente, ese peine grande corresponde a la medida del Senseair Sunrise realizada por el ESP8266 hace cuando está despierto, superpuesto al propio consumo del ESP8266.

En el siguiente gráfico podrás verlo claro.

He alimentado el medidor desde su batería de li-ion 18650, pero he interrumpido la línea de alimentación del sensor para poder introducir ahí el instrumento de medida. De esa forma obtengo el consumo del Senseair Sunrise aislado (pero mientras sigue funcionando en el medidor).

Si miras este gráfico y el anterior podrás ver perfectamente como coincide.

Se observan unos pequeños consumos intermedios que no aparecían en el gráfico anterior. La verdad es que ignoro el motivo, puede que por ser demasiado rápidos y ser una medida con un margen dinámico demasiado grande. Haré algún análisis y pruebas adicionales a ver si lo descubro.

Lo importante es que podemos ver que el sensor consume durante esos 59,48 segundos una media de menos de 150μA. Un consumo bajísimo comparado con los 7.61mA que consumía el conjunto.

He mantenido el gráfico en la misma escala que el anterior a propósito para que puedas compararlo mejor, aunque eso le resta detalle y precisión, por lo que a continuación te enseño con detalle uno de esos peines para que puedas ver en qué consisten, y que, aunque parecen algo importante, realmente su consumo es mínimo, debido a su corta duración.

Conclusiones

Parece evidente, a la vista de las pruebas y medidas realizadas, que está claro donde debemos centrar los esfuerzos.

No podemos evitar (hasta donde yo sé, aunque investigaré más) ese pico de consumo de casi 300mA al volver de deep sleep, pero por otro lado es muy corto, por lo que la cantidad de energía consumida es muy pequeña.

Los esfuerzos, a mi modo de ver, se deben centrar en seguir reduciendo el tiempo que el ESP8266 está despierto. En segundo lugar, y muy lejos del primero, optimizar los tiempos activos del sensor, para que solamente esté activo cuando el ESP8266 solicita una medida.

Continuará…

¿TE HA RESULTADO INTERESANTE?
¡NO TE PIERDAS FUTUROS EXPERIMENTOS!
SUSCRÍBETE A LA NEWSLETTER Y ENTRA EN EL GRUPO DE TELEGRAM Y NO TE PIERDAS NADA DE LO MEJOR.

Deja un comentario