Wetterstation Rain Counter

Open Source Hausautomation

Moderator: Co-Administratoren

Antworten
Garbsen
Beiträge: 295
Registriert: 12.07.2017, 21:08
Hat sich bedankt: 1 Mal
Danksagung erhalten: 14 Mal

Wetterstation Rain Counter

Beitrag von Garbsen » 29.04.2022, 22:16

Hallo
Der Datenpunkt ‘Rain Counter’ der Wetterstation wird ja korrekt als entity nach HA übergeben.
Leider ist da aber nur die Gesamtmenge seit Beginn der <installation enthalten.
In der CCU WebUI wird daneben noch Rain today und rain yesterday ausgegeben.
Hat jemand eine Idee, wie man in HA Veränderungen der entity tracken kann?
Idealerweise nach
Menge des letzten Regens (inclusive <Zeitpunkt des letzten Regen-Endes)
Regenmenge heute kumuliert
Regenmenge gestern kumuliert (dies könnte man ja gegebenenfalls um Mitternacht in eine entsprechende Variable übertragen)

In NodeRed hatte ich das hinbekommen, würde aber NR gerne völlig abstellen und das direkt in HA lösen.
Danke für Input
512 Kanäle in 101 Geräten und 145 CUxD-Kanäle in 19 CUxD-Geräten:
--------------------------------------------
http://www.eq-3.de/service/downloads.html
Tips und Tricks für Anfänger: viewtopic.php?t=22801
Programmlogik: viewtopic.php?f=31&t=4251
Webui-Handbuch: https://www.eq-3.de/Downloads/eq3/downl ... h_eQ-3.pdf
Script und Linksammlung: viewtopic.php?f=26&t=27907

Garbsen
Beiträge: 295
Registriert: 12.07.2017, 21:08
Hat sich bedankt: 1 Mal
Danksagung erhalten: 14 Mal

Re: Wetterstation Rain Counter

Beitrag von Garbsen » 01.05.2022, 16:51

Ok. Ich habe jetzt ein wenig rumgelesen und rumprobiert und ein Automation zusammengeflickt.
So sollte es laufen, ausprobieren konnte ich es mangels Regen noch nicht ;-), die einzelnen Aktionen laufen jedenfalls.

Code: Alles auswählen

 alias: Regenmenge aufzeichnen
description: ''
trigger:
  - type: moist
    platform: device
    device_id: d77ca05a85290f9e7e1f3dfb26eaad48
    entity_id: binary_sensor.wetterstation_raining_2
    domain: binary_sensor
    id: Regen
  - platform: time
    at: '23:59:58'
    id: Mitternacht
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id: Mitternacht
        sequence:
          - service: input_number.set_value
            data:
              value: '{{ states(''input_number.regenmenge_heute_4'')|int}}'
            target:
              entity_id: input_number.regenmenge_heute_5
          - service: input_number.set_value
            data:
              value: '{{ states(''input_number.regenmenge_heute_3'')|int}}'
            target:
              entity_id: input_number.regenmenge_heute_4
          - service: input_number.set_value
            data:
              value: '{{ states(''input_number.regenmenge_heute_2'')|int}}'
            target:
              entity_id: input_number.regenmenge_heute_3
          - service: input_number.set_value
            data:
              value: '{{ states(''input_number.regenmenge_gestern'')|int}}'
            target:
              entity_id: input_number.regenmenge_heute_2
          - service: input_number.set_value
            data:
              value: '{{ states(''input_number.regenmenge_heute'')|int}}'
            target:
              entity_id: input_number.regenmenge_gestern
          - service: input_number.set_value
            data:
              value: '{{ states(''input_number.regenmenge_heute_4'')|int}}'
            target:
              entity_id: input_number.regenmenge_heute_5
          - service: input_number.set_value
            data:
              value: '{{ states(''input_number.regenmenge_heute_5'')|int}}'
            target:
              entity_id: input_number.regenmenge_heute_6
      - conditions:
          - condition: trigger
            id: Regen
        sequence:
          - service: input_number.set_value
            data:
              value: '{{ states(''sensor.wetterstation_rain_counter_2'')|int}}'
            target:
              entity_id: input_number.regenmenge_bei_beginn
          - wait_for_trigger:
              - type: not_moist
                platform: device
                device_id: d77ca05a85290f9e7e1f3dfb26eaad48
                entity_id: binary_sensor.wetterstation_raining_2
                domain: binary_sensor
          - service: input_number.set_value
            data:
              value: >-
                {{ states('sensor.wetterstation_rain_counter_2')|int +
                states('input_number.regenmenge_bei_beginn')|int}}
            target:
              entity_id: input_number.letzte_regenmenge
          - service: input_number.set_value
            data:
              value: >-
                {{ states('input_number.regenmenge_heute')|int +
                states('input_number.letzte_regenmenge')|int}}
            target:
              entity_id: input_number.regenmenge_heute
          - service: input_number.set_value
            data:
              value: 0
            target:
              entity_id: input_number.regenmenge_bei_beginn
          - service: input_datetime.set_datetime
            data:
              timestamp: '{{ now().timestamp() }}'
            target:
              entity_id: input_datetime.letzter_regen_um
    default: []
mode: parallel
max: 2

binary_sensor.wetterstation_raining_2 Und sensor.wetterstation_rain_counter_2

stammen aus Homematic, alle anderen Variablen (input_number) müssen als Helfer angelegt werden.

Vielleicht kann das für andere hilfreich sein.
Wenn jemand Logik- oder Syntaxfehler entdeckt, dann gerne hier posten.
512 Kanäle in 101 Geräten und 145 CUxD-Kanäle in 19 CUxD-Geräten:
--------------------------------------------
http://www.eq-3.de/service/downloads.html
Tips und Tricks für Anfänger: viewtopic.php?t=22801
Programmlogik: viewtopic.php?f=31&t=4251
Webui-Handbuch: https://www.eq-3.de/Downloads/eq3/downl ... h_eQ-3.pdf
Script und Linksammlung: viewtopic.php?f=26&t=27907

Antworten

Zurück zu „Home Assistant“