Los que son habituales del blog, ya saben que me gusta medirlo todo, y el gas no podía ser menos.
Una cosa que no mucha gente sabe, es que suele ser muy fácil de medir porque los contadores tienen una «salida magnética» que puede ser leída fácilmente.
La dificultad está, más que otra cosa, en cómo enviar los datos desde el contador, que suele estar inaccesible y sin tomas cercanas de corriente.
Durante un tiempo estuve leyendo el consumo de gas mediante un Jeenode (una especie de Arduino con un módulo de radiofrecuencia para aplicaciones de bajo consumo). El sistema funcionó muy bien durante unos meses hasta que, bueno, hasta que ¡me lo robaron del cuadro del contador! Un buen día simplemente dejaron de llegar lecturas, fui a ver qué pasaba, y mi querido aparatito había desaparecido.
Llevo ya casi un año sin leer el gas, y con los cambios que he hecho este año en la caldera y en el sistema de control de la calefacción me vendría bien volver a tener datos en tiempo real para poder optimizar su funcionamiento y saber si los cambios que voy implementando se traducen en un ahorro de gas.
Medir el consumo del gas no es difícil, en la mayoría de los casos. Afortunadamente, los contadores de gas suelen tener un imán que se mueve con los numeritos esos que den vueltas, de manera que podemos detectar cada vuelta del número y calcular el consumo de esa manera.
En principio quería hacer el sistema de medición mediante un ESP8266 y MQTT (y lo preparé) el problema es que en las inmediaciones del contador de gas no dispongo de una toma eléctrica cercana y el ESP8266 es un poco hambriento como para alimentarlo con batería. Por otra parte, los Jeenodes son un poco caros, para lo que hay por ahí hoy en día. Como quiera que ya tengo un receptor para los Jeenodes instalado e integrado a través de Nodered (mi sistema de lectura de consumo eléctrico EmonTX se basa y es compatible con Jeenode), y todos los componentes para hacerme un Jeenode casero por poco dinero, he decidido hacerlo así.
Con un Arduino Pro Mini, de los que se pueden conseguir en AliExpress por menos de 2€, debidamente modificado para mejorar su consumo (quitando el led de encendido, que consume mucho para esta aplicación y eliminando el regulador de tensión, ya que lo voy a utilizar con pilas y espero que duren varios meses), y un módulo de radio RFM12B que ya tenía, me he construido un Jeenode casero en un par de horas.
El mayor problema es el sketch que hay que cargar en el Arduino, y es que, tras un par de años desde que escribí el viejo, no sé dónde está, no lo encuentro, ni vivo ni muerto, por lo que he tenido que escribir uno nuevo. El sketch, en si, es muy sencillo, la dificultad viene porque hay que optimizarlo para que consuma lo mínimo posible, lo que supone algún quebradero de cabeza adicional.
Como en la versión anterior, he utilizado la estupenda librería de Arduino Jeelib. Esta librería es una maravilla para implementar módulos de bajo consumo con comunicación vía radio. Es ya un poco antigua, pero es justo lo que necesito y estoy familiarizado con ella.
Edito: La verdad es que la optimización de su consumo me ha llevado mucho más tiempo del que pensaba. Al final me he pasado una semana de pruebas, de medidas y de cambios en el código hasta conseguir lo que quería.
Este es el dispositivo, una vez terminado:
Edito 2: Incluyo este gráfico un año después (Febrero de 2018), donde se puede ver que el invento funciona espectacularmente bien. Tras un año de uso ininterrumpido, la batería (dos pilas AA de 1.5 Voltios) sigue estando por encima de 3 Voltios, por lo que se prevén muchos más meses de funcionamiento antes de tener que cambiar las pilas
Edito 3: Incluyo este gráfico tres años después (Febrero de 2021).
El sistema ¡sigue funcionando tras más de cuatro años funcionando ininterrumpidamente con las mismas pilas (que ni siquiera eran nuevas cuando las puse para probar por primera vez)!
El voltaje de las pilas todavía está sobre los 2.92V, por lo que queda batería para rato. ¿Hasta dónde llegará?
Cómo se hace?. Me parece muy bien pero no se por donde empezar para hacer algo así y muchas pistas no das. Cómo lo hiciste en arduino.?
Hola Fernando.
Este es un proyecto muy antiguo que fue hecho como algo «rápido y sucio» para dar solución al problema.
Actualmente estoy trabajando en una nueva versión con ESP32. No voy muy deprisa, pero sí que hay cierto avance. Lo publicaré cuando tenga terminada una primera versión.
Un saludo.
Nos vale que sea algo rápido y sucio para ver por dónde van los tiros 😉
Sería interesante al menos, ver cómo lees el tema del imán y su algoritmo.
Podrías poner en descarga o en esta misma web el código para la lectura del contador?
muchas gracias!!