Medir tu consumo de gas en HA

En esta entrada te cuento como medir tu consumo de gas en HA de una forma no invasiva, muy sencilla, barata y sin cables!

¿Por qué y cómo medir el consumo de gas?

La verdad, hasta hace unos días, ni me lo había planteado. No obstante, recientemente he empezado a configurar mi panel de «Energía» con el consumo eléctrico, y no he podido evitar echar un vistazo.

Me está pareciendo muy interesante cómo esta información puede impactar en mi ahorro o, como mínimo, ayudarme a entender mis hábitos de consumo. En concreto, creo que medir tu consumo de gas en HA puede darte una idea de si haces un buen uso de la calefacción de tu casa o cómo de caras te salen esas duchas calientes 😅

Después de revisar la documentación de Home Assistant, he visto que hay distintos métodos dependiendo de cómo sea tu contador (por ejemplo, conectando un lector al puerto P1, si cuenta con él, o utilizando una cámara con inteligencia artificial).

No obstante, si tienes un contador de la serie BK-G4 como el anterior (los más comunes en Europa), es que es muy fácil de hacer! El truco es que cuando la última ruleta del contador (el ‘2’ en la siguiente imagen) pasa de 9 a 0 (y, por lo tanto, el siguiente número pasaría de ‘3’ a ‘4’) esta genera un impulso electromagnético. Seguro que ya sabes por dónde voy.

Cuando la comunidad se dio cuenta de ello, alguien probó a colocar debajo un sensor de contacto (de los de puertas y ventanas) y… bingo! Con uno de estos sensores zigbee, baratos y a pilas podemos leer el consumo!

Sensor ventana (blanco)

Sensor magnético para detectar aperturas en puertas y ventanas. Funciona a batería vía Zigbee, permitiendo control local e integración en Home Assistant mediante Zigbee2MQTT para máxima privacidad.Sensor magnético para detectar aperturas en puertas y ventanas. Funciona a bater...

Sensor ventana (negro)

Sensor magnético Zigbee para detectar apertura de puertas y ventanas. Funciona con batería, opera en local y es compatible con Home Assistant vía Zigbee2MQTT. Ideal para seguridad y automatizaciones.Sensor magnético Zigbee para detectar apertura de puertas y ventanas. Funciona c...

*Algún precio puede haber cambiado desde la ultima revision

Lo primero y más importante, es elegir el sensor que vas a utilizar. He hecho muchas, muchas pruebas y el éxito del proyecto está (obviamente) en que el sensor reaccione al impulso magnético del contador.

Como vamos a necesitar que el sensor esté lo más cerca posible del contador para mejorar la sensibilidad, nos vamos a deshacer de la carcasa de plástico. El ‘handicap’ es que el hueco es muy pequeño, y no puedes meter el sensor «sin más». Necesitas un sensor como este, cuyo detector está soldado en la parte superior.

El motivo es que lo tenemos que desoldar, doblar un poco las patillas y volverlo a soldar, de manera que sobresalga un poco respecto a la placa. Tal y como se ve en la imagen. Es un pequeño cambio, que va a marcar la diferencia.

Instalación del sensor

Para medir tu consumo de gas en HA con uno de estos sensores baratos, sigue estos pasos:

  1. Una vez tengas tu sensor, vincúlalo con Zigbee2MQTT y dale un nombre reconocible (por ejemplo, «Sensor Contador Gas»). Este te proporcionará la siguiente entidad que indica ‘off’ cuando el circuito está cerrado (imán cerca) y ‘on’ cuando está abierto.
  1. Ahora colócalo en este soporte que he diseñado (inspirándome en ejemplos de la comunidad) para que encaje perfectamente en el contador. Debes colocarlo de forma que el detector magnético quede expuesto, como se ve en la imagen.
  1. Lógicamente, está específicamente diseñado para esta serie de contadores, y para acercar lo máximo posible el sensor a la parte del contador. Así, con ayuda de un pequeño tornillo y una tuerca, quedaría instalado de la siguiente forma:
  1. Vuelve a Home Assistant y ve a Configuración > Dispositivos y servicios > Ayudantes > Crear ayudante > Contador, e indica los siguientes datos:
    • Nombre. El que tú quieras (por ejemplo, «Contador Gas»).
    • Icono. De nuevo, el que tú quieras.
    • Valor mínimo: 0.
    • Valor máximo: 9999999999.
    • Tamaño del paso: 10 (puesto que el sensor se activa cada vez que la última ruleta da una vuelta entera).
  1. Esto te generará una entidad de tipo contador (por ejemplo, ‘counter.contador_gas’). Ahora ve a Herramientas para desarrolladores > Acciones > counter.set_value, para sincronizarlo con el valor del contador real. Simplemente, selecciona tu entidad e introduce el valor correspondiente (redondeando las unidades a la baja, o te dará error).
  1. Ahora crea una sencilla automatización, que se dispare cada vez que el sensor de contacto pase a estado ‘off’, e incremente nuestro contador. A continuación te dejo un código que puedes usar de plantilla.
alias: Contador del gas
description: ""
triggers:
  - trigger: state
    entity_id:
      - binary_sensor.sensor_contador_gas_contact
    to:
      - "off"
conditions: []
actions:
  - action: counter.increment
    metadata: {}
    target:
      entity_id: counter.contador_gas
    data: {}
mode: single
  1. Como el gas se factura en m3, ahora vamos a crear un sensor template que convierta las unidades. Ve a Configuración > Dispositivos y servicios > Ayudantes > Crear ayudante > Template > Sensor, e indica lo siguiente:
    • Nombre. El que quieras (por ejemplo, «Consumo de Gas»).
    • Unidad de medida. Busca y selecciona m3.
    • Clase de dispositivo. Selecciona «Gas».
    • Clase de estado. Selecciona «Total».
    • Estado. Pega la siguiente plantilla (indicando tu contador creado en el paso 5).
{{ states('counter.contador_gas')|int * 0.001 }}
  1. Tras guardar el sensor, ve a tu panel de «Energía» en modo edición. Ve al apartado «Consumo de gas» y pulsa en «Añadir fuente de gas». Al hacer clic en el desplegable te aparecerá la entidad que hemos creado en el paso anterior. Pulsa en «Guardar» y ya podrás medir tu consumo de gas en HA!

Calcula el precio de la factura

Y una de las cosas más prácticas que podemos hacer cuando consigues medir tu consumo de gas en HA es calcular cuánto te cuesta. Para ello todo lo que necesitas es tener tu última factura a mano.

Precio del m3

En primer lugar, vamos a calcular el coste de cada m3, que es lo que determina el importe de la factura. En mi caso lo he obtenido observando estos datos:

Con esta información he elaborado el siguiente ‘template’, que me devuelve el precio por m3, impuestos incluidos (puedes adaptarlo con tus datos).

{% set factor_correcion = 1.00054 %}
{% set PCS = 10.536 %}
{% set kwh = factor_correcion * PCS %}
{% set precio = 0.102229 %}
{% set impuesto = 0.00234 %}
{% set iva = 1 + 0.21 %}

{% set precio_m3_bruto = factor_correcion * PCS * precio %}
{% set precio_m3_total = precio_m3_bruto + (kwh * impuesto) %}
{% set precio_m3_final =  precio_m3_total * iva %}

{{ precio_m3_final }}

Para incorporarlo en el panel de «Energía», sigue estos pasos:

  1. Ve a Configuración > Dispositivos y servicios > Ayudantes > Crear ayudante > Template > Sensor, e indica estos datos:
    • Nombre. El que tú quieras (por ejemplo, «Precio m3 Gas»).
    • Estado. Pega el ‘template’ que acabamos de crear (y si en algún momento cambia, vuelve aquí para editarlo).
    • Unidad de medida. Indica ‘€/m³’ (puedes copiarlo desde aquí mismo).
    • Clase de estado. Indica «Medición».
    • Pulsa en «Enviar».
  2. Vuelve a tu panel de «Energía» en modo edición, y edita la entidad que indica el consumo de gas (que añadimos en el apartado anterior).
  3. En el método de cálculo, selecciona la opción «Usar una entidad con el precio actual» y selecciona el sensor creado en el paso 1.

Costes fijos

Habrás observado que me he dejado fuera algunos conceptos, que no dependen del consumo. Estos los he calculado con el siguiente ‘template’, que devuelve el coste fijo acumulado dependiendo de la hora del día (y también puedes adaptar).

{% set meses_facturados = 1.63 %}
{% set fijo_mensual = 4.88 %}
{% set fijo_diario = fijo_mensual / 30 %}
{% set alquiler_diario = 0.95 / meses_facturados / 30 %}
{% set IVA = 1 + 0.21 %}
{% set coste_fijo_diario = (fijo_diario + alquiler_diario) * IVA %}
{% set coste_fijo_hora = coste_fijo_diario / 24 %}

{{ (now().hour + 1) * coste_fijo_hora }}

Para incorporarlo en el panel de «Energía», sigue estos pasos:

  1. Ve a Configuración > Dispositivos y servicios > Ayudantes > Crear ayudante > Template > Sensor, e indica estos datos:
    • Nombre. El que tú quieras (por ejemplo, «Costes Fijos Gas»).
    • Plantilla de estado. Indica ‘0’.
    • Unidad de medida. Selecciona m3.
    • Clase de dispositivo. Selecciona «Gas».
    • Clase de estado. Selecciona «Total».
    • Pulsa en «Enviar«.
  2. Ve a Configuración > Dispositivos y servicios > Ayudantes > Crear ayudante > Template > Sensor, e indica estos datos:
    • Nombre. El que tú quieras (por ejemplo, «Costes Fijos Gas Precio»).
    • Plantilla de estado. Pega el ‘template’ que acabamos de crear.
    • Unidad de medida. Selecciona €.
    • Clase de estado. Selecciona «Aumento total».
    • Pulsa en «Enviar«.
  3. Vuelve a tu panel de «Energía» en modo edición y bajo el bloque «Consumo de gas», añade una nueva fuente. En el desplegable, selecciona el sensor creado en el paso 1 («Costes Fijos Gas»).
  4. En el método de cálculo, selecciona la opción «Usar una entidad que realiza un seguimiento de los costes totales» y selecciona el sensor creado en el paso 2 («Costes Fijos Gas Precio»).