Regenmenge letzte Stunde letzter Tag

FotoKlaus

New member
Hallo lb Homeassistant Familie
ich bin in Homeassistant ein Newcomer und beiße mich zur Zeit durch einige Probleme.
Vieles konnte ich schon lösen aber an diesem bin ich schier am verzweifeln.

Ich habe hier eine Wetterstation mit Regensensor, die liefert mir den Summenwert des bis jetzt gefallenen
Regens. Ich habe mir in HOAS 2 Verbrauchzähler gemacht regenmenge_dieser_stunde und sensor.regemnge_dieser_tag
Diese funktionieren einwandfrei.
Nun mochte ich bevor die neue Std beginnt den Wert von regenmenge_dieser_stunde in einen Helfer kopieren regenmenge_letzte_stunde
das gleiche auch mit regenmenge_dieser_tag nach regenmenge_letzter_tag, kurz bevor der Tag zu ende geht.

Ich habe schon einiges probiert aber leider bis jetzt noch keinen Erfolg gehabt.
Was mir bei input_numer.regenmenge-letzte_stunde überhaupt nicht gefällt ist die Eingabemöglichkeit im Dashboard, (verstellt mir meine Frau öfters zufällig hihi)

Bis mein jetziger Programmzustand sieht wie folgt aus: configuration.yaml

Code:
input_number:
  regenmenge_letzte_stunde:
    name: Regenmenge letzte Stunde
    initial: 0
    min: 0
    max: 100   
    step: 0.01

  regenmenge_letzter_tag:
    name: Regenmenge letzter Tag
    initial: 0
    min: 0
    max: 100
    step: 0.01

template:
  - sensor:
      - name: "Regenmenge letzte Stunde"
        state: "{{ states('input_number.regenmenge_letzte_stunde') }}"
        unit_of_measurement: "mm"

  - sensor:
      - name: "Regenmenge letzter Tag"
        state: "{{ states('input_number.regenmenge_letzter_tag') }}"
        unit_of_measurement: "mm"

Und folgende Automation habe ich dazu erstellt:

Code:
alias: Regenmenge letzter Tag, letzte Stunde
description: ""
triggers:
  - minutes: /59
    seconds: /59
    id: letzte Stunde
    trigger: time_pattern
  - hours: "23"
    minutes: "59"
    seconds: "55"
    id: letzter Tag
    trigger: time_pattern
conditions: []
actions:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - letzte Stunde
        sequence:
          - target:
              entity_id: sensor.regenmenge_letzte_stunde
            data:
              state: >-
                {{ iif (states('sensor.regenmenge_dieser_stunde'),
                states('regenmenge_dieser_stunde'), 0) }}
            action: input_number.set_value
      - conditions:
          - condition: trigger
            id: letzter Tag
        sequence:
          - target:
              entity_id: input_number.regenmenge_letzter_tag
            data:
              state: >-
                {{ iif (states('sensor.regenmenge_dieser_tag'),
                states('regenmenge_dieser_tag'), 0) }}
            action: input_number.set_value
mode: parallel
max: 2

Fehlermeldung bekomme ich keine, funktioniert aber auch nicht.
Ich hoffe sehr auf eure Hilfe, um endlich das Problem vom Tisch zu haben.
Ich will dann die Regenwerte weiter in einer Automation für automatisches gießen der Beete und Rasen benutzen.

Vielen Dank im Voraus für eure Hilfe

Klaus
 
probier mal so als Idee
YAML:
states('sensor.regenmenge_dieser_stunde') | float(0)
States sind immer Strings, wenn man sie nicht umwandelt.
 
Da passen direkt ein paar Dinge nicht, z.B. ist states('regenmenge_dieser_tag') keine gültige Angabe, da fehlt das sensor. davor, entity_id: sensor.regenmenge_letzte_stunde ist kein gültiges target für action: input_number.set_value und diese Schreibweise:
YAML:
trigger: time_pattern
minutes: /59
seconds: /59
bedeutet "Löse alle 59 Sekunden alle 59 Minuten jede Stunde aus", gemeint wäre hier wohl "Löse bei der 59. Sekunde jeder 59. Minute jede Stunde aus" (ohne / davor) - nicht, dass es nicht funktionieren würde, aber zur Klarstellung, dass diese Schreibweise bei kleineren Zahlen zu unerwünschten Ergebnissen führen kann.

Ich würde das Thema aber ohnehin etwas anders angehen, nämlich über https://www.home-assistant.io/integ...rs-buttons-images-numbers-selects-and-sensors womit auch direkt die Eingabemöglichkeit für den Helfer auf dem Dashboard entfällt (wobei man ihn auch einfach vom Dashboard entfernen könnte).

Also angenommen, wir haben sensor.regenmenge_dieser_stunde und sensor.regenmenge_dieser_tag (das ist so die richtige Schreibweise?), dann ergäbe das diesen Code in der configuration.yaml:
YAML:
template:
  - trigger:
      - trigger: time_pattern
        hours: 23
        minutes: 59
        seconds: 55
    sensor:
      - name: "regenmenge_letzter_tag"
        state: "{{ states('sensor.regenmenge_dieser_tag') | float(0) }}"
        unit_of_measurement: "mm"
  - trigger:
      - trigger: time_pattern
        minutes: 59
        seconds: 59
    sensor:
      - name: "regenmenge_letzter_stunde"
        state: "{{ states('sensor.regenmenge_dieser_stunde') | float(0) }}"
        unit_of_measurement: "mm"
Beachte, dass Du nur ein nicht eingerücktes template: haben kannst, also bei dem aktuellen Stand würdest Du die oberste Zeile weglassen und den folgenden Code unterhalb des vorhandenen template: einfügen.

Damit ersparen wir uns die Helfer inklusive dessen Einschränkungen - mehr als 100 mm pro Stunde sind zwar unwahrscheinlich, aber schon vorgekommen, und mehr als 100 mm pro Tag nicht so unwahrscheinlich - und die Automatisierung fällt ebenfalls weg, da der trigger hier direkt in den Sensor ausgelagert ist.
 
Hallo Nival
vielen Dank für deine Antwort
habe ich sofort eingefügt und warte nun den ersten Regen ab um festzustellen ob es funktioniert.
Ich habe den Yaml Code wie von dir vorgeschlagen in die configuration.yaml eingefügt.
und top die Eingabemöglichkeit im Dashboard ist weg.

Das einzige was mir noch aufgefallen ist das im Übersichtdashboard ein neues Fenster erstellt wurde
"Sensor" und die beiden Sensoren letzter Tag und Stunde eingetragen wurden.
Kann man sie auch irgend wie in einen anderen Bereich verschieben?
Weil Sensor anklicken -> Zahnrad -> anderen Bereich wählen geht da ja nicht.
Klaus
 
@FotoKlaus kann es sein, dass Du noch nicht die Kontrolle über das Dashboard übernommen hast? Das habe ich schon bei dem Helfer vermutet, wenn der dort eigentlich nicht erwünscht war.

Initial hat Home Assistant die Kontrolle und fügt automatisch hinzu was neu ist / entfernt automatisch was es nicht mehr gibt. Das ist so eine kleine Hilfestellung für Neulinge, damit sie zumindest überhaupt ein Dashboard haben. Später übernimmt man das eigentlich und entscheidet selbst, was dort wie angezeigt werden soll.

Wenn ich mich richtig erinnere war der Weg, oben rechts erst auf den Stift zu klicken und dann auf die drei Punkte, dort müsste etwas im Sinne von "Kontrolle übernehmen" stehen, dann dürfte noch eine kleine Warnung kommen, die bestätigen, und dann kannst Du selbst auswählen was wie auf dem Dashboard angezeigt werden soll. Diese Sensoren müssen dort ja nicht gelistet sein, so wenig wie die Helfer vorher. Sie vom Dashboard zu entfernen bewirkt auch nur genau das und entfernt nicht den angelegten Sensor ansich, den kannst Du dann immernoch z.B. über Entwicklerwerkzeuge => Zustände sehen, oder ihn auf einem weiteren Dashboard als neue Karte hinzufügen.

Ergänzung, hier hatten wir das Thema mit dem "Kontrolle übernehmen" auch schonmal: https://forum.heimnetz.de/threads/zum-dashboard-hinzufuegen-geht-nicht.5865/#post-56953
 
Zuletzt bearbeitet:

Zurzeit aktive Besucher

Letzte Anleitungen

Statistik des Forums

Themen
6.661
Beiträge
63.892
Mitglieder
6.915
Neuestes Mitglied
Butzi49
Zurück
Oben