sábado, 2 de julio de 2022

Domótica: Consumo eléctrico en HA

En este artículo voy a describir como podemos mostrar nuestro consumo eléctrico en Home Assistant. Esta integración mostrará tus consumos y máximas potencias alcanzadas de forma gráfica mediante el componente apexcharts-card.


Para ello vamos a hacer uso de los servicios proporcionados por Datadis, que es una plataforma, gratuita y sencilla que engloba a la mayoría de las distribuidoras (propietarias de tu contador y de la red eléctrica que llega a tu casa), y permite acceder a los datos de todos tus suministros independientemente de la distribuidora.


Lo primero que tenemos que hacer es darnos de alta en esta plataforma. Accedemos a su web y hacemos click en ACCEDER y a continuación REGISTRO.

Tendremos que introducir nuestros datos (nombre y apellidos, NIF, teléfono, correo electrónico, etc.). También tendrás que seleccionar un método para verificar nuestra identidad (subiendo unas fotos de nuestro DNI o mediante certificado electrónico).

Por último nos enviarán un correo electrónico con un enlace para finalizar el proceso de registro.

Una vez finalizado el registro, recibiremos un correo electrónico confirmando dicho registro. Accedemos a Datadis y comprobamos que aparece el listado de los suministros contratados con nuestra distribuidora. En mi caso:

Podemos realizar otras consultas, descargar datos, etc. desde Datadis pero esto no es objeto de este artículo.

Configuración en Home Assistant

Para integrar la información de nuestro consumo eléctrico en HA necesitamos tener instalado HACS. Si no lo has hecho ya puedes seguir este tutorial.

Seleccionamos HACS - Integraciones y en buscar escribimos e-dataSi no lo encuentra tendrás que añadir el repositorio https://github.com/uvejota/homeassistant-edata. Para ello tendrás que ir a HACS - Integraciones - Menú de desbordamiento (los tres puntitos del borde superior derecho de la pantalla) - Repositorios personalizados y pegar la url del repositorio indicado anteriormente (categoría: Integración).

Seleccionamos e-data y se nos abrirá una ventana con información sobre esta integración. Hacemos click en DESCARGAR ESTE REPOSITORIO CON HACS - DESCARGAR.


A continuación instalamos apexcharts-card. Para ello seleccionamos HACS - Intefaz - EXPLORAR Y DESCARGAR REPOSITORIOS y escribimos apexcharts-card.


Hacemos click en apexcharts-card y DESCARGAR ESTE REPOSITORIO CON HACS - DESCARGAR.

Hacemos click en RECARGAR para limpiar la caché de nuestro navegador, volvemos a iniciar la sesión con lo que ya se nos muestra apexcharts-card como instalado.

Para finalizar reiniciamos Home Assistant.

Configuración

Vamos a añadir el siguiente código en sensores.yaml con la ayuda de nuestro editor de código (en mi caso Studio Code Server).

Al final del fichero escribimos lo siguiente:

- platform: edata
  username: !secret my_datadis_username 
  password: !secret my_datadis_password 
  cups: !secret my_cups
  #experimental: false # opcional, puede ser true/false y permite probar funciones experimentales
  #debug: false # opcional, puede ser true/false y permite "desbloquear" mensajes de log de tipo info y superior


En nuestro fichero secrets.yaml debemos añadir los siguientes datos:

# Your Datadis user and password
my_datadis_username: "username"
my_datadis_password: "password"
my_cups: "cup"

donde introduciremos nuestro usuario y clave para acceder a Datadis así como el código CUPS de nuestro contrato que podemos obtener de la propia web de Datadis o de una factura de nuestra comercializadora. El CUPS es el Código Universal del Punto de Suministro. Se trata de una clave de 20 o 22 dígitos alfanuméricos que comienza por ES aquí en España. Sirve para identificar cada vivienda o negocio que recibe energía. Es un código único, permanente e invariable: no cambia aunque modifiques tu tarifa o te cambies de compañía.

A continuación Verificamos y Reiniciamos Home Assistant (Herramientas para desarrolladores)

Para verificar que todo funciona correctamente seleccionamos Herramientas para desarrolladores - Estados y buscamos por edata. Nos tiene que aparecer información sobre nuestro consumo energético.

En el campo friendly_name nos aparece el valor edata_xxxx. Estas útimas cuatro letras coinciden con las cuatro últimas cifras de nuestro cups que viene en el siguiente campo y que tenemos que tener en cuenta en los siguientes pasos.

Para ver el significado de cada campo puedes consultar el repositorio de Github. En esta página copiamos también el código que aparece en la parte inferior porque nos hará falta para mostrar esta información.


type: markdown
content: >
  {% for attr in states.sensor.edata_xxxx.attributes %} {%- if not
  attr=="friendly_name" and not attr=="unit_of_measurement"  and not
  attr=="icon" -%} **{{attr}}**: {{state_attr("sensor.edata_xxxx", attr)}} {{-
  '\n' -}} {%- endif %} {%- endfor -%}
title: Informe

Debemos sustituir xxxx por las cuatro últimas cifras de nuestro CUPS en minúscula.

A continuación, para mostrar estos datos en formato tabla podemos crear una nueva tarjeta. Para ello nos vamos a Resumen - Editar Panel de Control y añadimos una nueva tarjeta del tipo apexcharts-card sustituyendo el código de dicha tarjeta que nos aparece por defecto por el código anterior (no olvides de sustituir xxxx). Finalizamos con GUARDAR.


Gráficos

Puedes crear varias tarjetas del tipo apexcharts-card personalizadas. Para ver algunos ejemplos como mostrar el gráfico de nuestro consumo diario, mensual, etc. consulta Github


Como siempre, hay que sustituir XXXX por las cuatro últimas letras de nuestro CUPS y modificar el código por defecto de la tarjeta.

Notas

  • En el momento de realizar este artículo he de modificar el comando extend_to_end: false a  extend_to: false todos los ejemplos porque no funciona dicho comando (versión 
  • Cuando copio el código a veces me indica que el sensor no se encuentra disponible. Al guardar la tarjeta la gráfica se muestra correctamente a pesar de dicho error.
  • El sensor con el dato económico del PVPC no funciona.

Listo!, ya puedes mostrar tus consumos eléctricos en Home Assistant.

Mas información:



No hay comentarios:

Publicar un comentario

Nota: solo los miembros de este blog pueden publicar comentarios.