Midiendo la lluvia con Home Assistant

Post para seguir completando nuestro sistema domótico, o puede ser interesante si pretendéis montar una estación meteorológica… Hoy toca un pluviómetro, al final del documento sabremos medir el volumen de lluvia y poder visualizarlo en Home Assistant, o realizar alguna automatización…

 

En mi caso particular debo confesaros que empecé con un dispositivo impreso con piezas de una impresora 3D pero no resultaba 100% fiable… era algo casero, así que la mejor opción comercial que encontré, porque a veces los dispositivos de los fabricantes son más fiables… adquirí en AliExpress una pieza de repuesto para una estación meteorológica que sirve seguro, por 17,34€ no se pierde más el tiempo 😉

 

Ahora, necesitaremos una placa de estas maravillosas con un microcontrolador, un ESP32 o un ESP8266 nos pueden valer por igual, en la que instalaremos el firmware de ESPHome y con unas pocas líneas de código lo tendremos. Prometo un día hacer un post de cómo instalar ESPHome en un dispositivo de estos, pero vaya, muy por encima, tendremos ESPHome instalado en nuestro Home Assistant, conectaremos la placa por USB al Home Assistant y podremos crear ya nuestro nuevo dispositivo.

 

Tras añadir el dispositivo y configurarlo, con el siguiente código nos valdría, conectamos el medidor de lluvia, un cable a GND y el otro a cualquier GPIO de nuestra placa. Indicamos la unidad de medida, el intervalo de actualización y el multiplicador de cada ‘palada’ que haga balancear al medidor, el volumen que contiene en mm:

sensor:
  - platform: pulse_counter
    pin:
      number: GPIO12
      inverted: True
      mode: INPUT_PULLUP    
    unit_of_measurement: 'mm'
    name: 'esp32-portero-precipitacion-lluvia'
    update_interval: 1s
    filters:
      - multiply: 0.367

 

Grabamos y se lo instalamos a la placa,

 

Y ya podremos añadir una tarjeta con la entidad que nos habrá creado! Con esto ya podremos ir visualizando y midiendo la cantidad de lluvia.

 

Si queremos además, conocer lo que llueve por hora, por día, por semana, por mes, o anualmente para luego visualizarlo más elegantemente, deberemos añadir los siguientes integraciones en el fichero de configuración de Home Assistant, serán ‘utility meters’, les indicamos su nombre y su ciclo de reseteo:

...
utility_meter:
  precipitacion_lluvia_horario:
    name: "Precipitacion Lluvia - Horario"
    source: sensor.esp32_portero_precipitacion_lluvia
    cycle: hourly
  precipitacion_lluvia_diario:
    name: "Precipitacion Lluvia - Diario"
    source: sensor.esp32_portero_precipitacion_lluvia
    cycle: daily
  precipitacion_lluvia_mensual:
    name: "Precipitacion Lluvia - Mensual"
    source: sensor.esp32_portero_precipitacion_lluvia
    cycle: monthly
  precipitacion_lluvia_anual:
    name: "Precipitacion Lluvia - Anual"
    source: sensor.esp32_portero_precipitacion_lluvia
    cycle: yearly
...

 

Ahora ya podremos hacer una tarjeta para ver lo que llovió las últimas 24 horas:

type: custom:apexcharts-card
header:
  show: true
  title: Lluvia - Últimas 24h
  show_states: true
series:
  - entity: sensor.precipitacion_lluvia_horario
    name: Milímetros cúbicos
    type: area
    opacity: 0.7
    color: blue
    group_by:
      duration: 15m
      func: avg
graph_span: 24h
update_interval: 5min

 

Ejemplo de lluvia el último mes:

type: custom:apexcharts-card
header:
  show: true
  title: Lluvia - Último mes
  show_states: false
series:
  - entity: sensor.precipitacion_lluvia_diario
    name: Milímetros cúbicos
    type: column
    opacity: 0.7
    color: blue
    group_by:
      duration: 1d
      func: max
graph_span: 30d
update_interval: 5min

 

O mismamente el último año:

type: custom:apexcharts-card
header:
  show: true
  title: Lluvia - Último año
  show_states: false
series:
  - entity: sensor.precipitacion_lluvia_mensual
    name: Milímetros cúbicos
    type: column
    opacity: 0.7
    color: blue
    group_by:
      duration: 30d
      func: max
graph_span: 365d
update_interval: 5min

 

Si os fijáis uso unas tarjetas llamadas ‘ApexCharts‘ para dibujar gráficas es de las mejores ya que puedes mezclar métricas, visualizaciones, unidades…

Espero que os haya resultado interesante el post! y como siempre, agradeceros que mováis este tipo de contenido en las redes sociales!

 

Héctor Herrero