Automatisierung: WW-Speicher beim Aufheizen umschichten?

a-wing

Member
Hallo, sitze gerade an der Automatisierung, die meinen WW-Speicher beim Aufheizen des Wassers mittels der Zirkulationspumpe umschichten soll.
(Experimenteller Hintergrund ist, dass das Erreichen der Solltemperatur verzögert wird, um mehr Wasser im Speicher zu erwärmen und nicht nur den obersten Bereich)

  • Eingangsbedingung ist 3-Wege-Ventil hat Status 'tank' und die WW-Speichertemperatur ist größer 46° C.
  • dann soll die Zirkulationspumpe (über Shelly) für 5 Minuten den Inhalt im Speicher verwirbeln.
  • Dann Zirkulationspumpe (über Shelly) wieder aus und eine Wiedereinschaltsperre für 2 Stunden
Probleme bereiten mir, die Eingangsbedingungen richtig zu definieren. Mein Code dazu sieht so aus:
YAML:
alias: WW-Timer_2
description: Warmwasserumschichtung im Speicher bei 46°
trigger:
  - platform: state
    entity_id:
      - sensor.waermepumpe_main_threeway_valve_state
    for:
      hours: 0
      minutes: 0
      seconds: 0
    attribute: tank
condition:
  - condition: numeric_state
    entity_id: sensor.waermepumpe_main_dhw_temp
    above: 46
action:
  - type: turn_on
    device_id: 62e96d7cf6c931752d3c59b277e62de8
    entity_id: 9fffee4232d6fc96778a36f3d8ac4bd7
    domain: switch
  - delay:
      hours: 0
      minutes: 5
      seconds: 0
      milliseconds: 0
  - type: turn_off
    device_id: 62e96d7cf6c931752d3c59b277e62de8
    entity_id: 9fffee4232d6fc96778a36f3d8ac4bd7
    domain: switch
  - delay:
      hours: 2
      minutes: 0
      seconds: 0
      milliseconds: 0
mode: single

leider hat die Automation noch nicht ausgelöst, es steckt also noch ein Fehler darin.:confused:
Bin für jede Hilfe dankbar.

Gruß
Andreas
 
Du triggerst darauf, das sie das Attribut TANK von deinem sensor.waermepumpe_main_threeway_valve_state ändert.
Was besagt den dieser Wert ? Ändert der sich ? Was sagt Traces ?
 
Du triggerst darauf, das sie das Attribut TANK von deinem sensor.waermepumpe_main_threeway_valve_state ändert.
Was besagt den dieser Wert ? Ändert der sich ? Was sagt Traces ?
Hatte es inzwischen auf diesen Code abgeändert, weil ich mit Attribut auch nix anfangen kann:
YAML:
alias: WW-Timer_2 Speicherumschichtung
description: Warmwasserumschichtung im Speicher bei 46°
trigger:
  - platform: state
    entity_id:
      - sensor.waermepumpe_main_threeway_valve_state
    for:
      hours: 0
      minutes: 0
      seconds: 0
    to: Tank
condition:
  - condition: numeric_state
    entity_id: sensor.waermepumpe_main_dhw_temp
    above: 45
action:
  - type: turn_on
    device_id: 62e96d7cf6c931752d3c59b277e62de8
    entity_id: 9fffee4232d6fc96778a36f3d8ac4bd7
    domain: switch
  - delay:
      hours: 0
      minutes: 5
      seconds: 0
      milliseconds: 0
  - type: turn_off
    device_id: 62e96d7cf6c931752d3c59b277e62de8
    entity_id: 9fffee4232d6fc96778a36f3d8ac4bd7
    domain: switch
  - delay:
      hours: 2
      minutes: 0
      seconds: 0
      milliseconds: 0
mode: single

Was Traces sagt, keine Ahnung, weiß noch nicht wofür das gut ist. 🤷‍♂️
Der Status vom 3-Wege Ventil ändert sich immer von 'Room' auf 'Tank' und zurück.

Gruß
Andreas
 
Traces sagt Dir genau, was deine Automatisierung macht.
Ob sie ausgelöst wurde und wann, was die Bedingungen gemacht haben und welche Aktionen durchgeführt wurden oder auch nicht und warum nicht.
Einzig der Auslöser kann da nicht gesehen werden. Also ob dein Sensor jetzt von Room auf Tank gewechselt hat, steht da nur, wenn der Auslöser auch die Automatisierung getriggert hat.
Ob der Sensor gewechselt hat, kannst Du im Logbuch sehen.
 
Einzig der Auslöser kann da nicht gesehen werden.
Das ist ja gerade der spannende Teil, ob die beiden Bedingungen so zusammenspielen, wie ich mir das vorstelle. ;)
Habe aber jeden Tag zwei Zeitfenster zum Lifetesten.
Das die Pumpe angeht und die Verzögerungszeiten laufen hatte ich in der Simulation (mit Traces) gesehen.

Hat sich eigentlich bei den Automatisierungen dieses Jahr durch Updates von HA was geändert? Habe da aus einem anderen Forum noch eine Menge Automatisierungen für meine Panasonic Wärmepumpe und der Heishamon-HA-Integration entdeckt. Kann diese aber irgendwie nicht umsetzen, weil es geringfügig anders aussieht? Vielleicht mache ich dazu mal einen gesonderten Thread auf.

Gruß
Andreas
 
Gerade ist wieder ein Fenster (zw. 18 und 20 Uhr) zum Testen abgelaufen.
Die Automatisierung startete, weil das 3-Wege Ventil zu ´Tank´ wechselte.
Jedoch schaute diese auch gleichzeitig auf die zweite Bedingung >45 Grad.
Das die Temperatur jedoch noch nicht erreicht war wurde die Automatisierung abgebrochen.

Also mit Wenn und aber nur Wenn scheint es nicht ganz zu klappen.
Vielleicht muss es andersrum heißen. Wenn Temperatur >45 Grad ist aber nur wenn Ventil den Status Tank hat, starte die Automatisierung.
Damit gehe ich morgen in den Test.

Gruß
Andreas
 
Das ist ja gerade der spannende Teil, ob die beiden Bedingungen so zusammenspielen, wie ich mir das vorstelle. ;)
Die Bedingungen werden ja auch angezeigt und auch, welcher Trigger ausgelöst hat, wenn er den auslöst.
Du siehst halt nur nicht, wenn die Automatisierung NICHT auslöst, warum sie es nicht getan hat.
Gerade ist wieder ein Fenster (zw. 18 und 20 Uhr) zum Testen abgelaufen.
Die Automatisierung startete, weil das 3-Wege Ventil zu ´Tank´ wechselte.
Jedoch schaute diese auch gleichzeitig auf die zweite Bedingung >45 Grad.
Das die Temperatur jedoch noch nicht erreicht war wurde die Automatisierung abgebrochen.
Was dann ja auch mal so richtig ist, weil Du es so programmiert hast.

Wenn ich dein Vorhaben richtig Verstanden habe, gehst Du tatsächlich vollkommen falsch an die Sache ran.
Die Pumpe soll ja nicht nur Anspringen, wenn der Zustand auf TANK geht und die Temperatur >45 Grad ist, sondern immer, wenn die Temperatur über 45 Grad geht UND der Zustand TANK ist. Richtig ?
Vielleicht solltest Du mal hier lesen, dann könnte manches klarer werden.
Aber auch das hier könnte zu deinem Problem passen. Bei jeder Temperaturänderung die Automatisierung starten und mit WENN DANN Abfragen alles weitere steuern.
 
Wenn ich dein Vorhaben richtig Verstanden habe, gehst Du tatsächlich vollkommen falsch an die Sache ran.
Die Pumpe soll ja nicht nur Anspringen, wenn der Zustand auf TANK geht und die Temperatur >45 Grad ist, sondern immer, wenn die Temperatur über 45 Grad geht UND der Zustand TANK ist. Richtig ?
Richtig, es ist eine Und-Verknüpfung von 2 Bedingungen. Weiß aber trotzdem noch nicht, wie ich das umsetze.
Stecke ich beides in den WENN-Bereich ist es ein Oder.
Wie mache ich eine Und-Verknüpfung? Dein Beispiel zum Lesen war zwar einleuchtend von der Problematik her, da ich aber nicht mit Uhrzeiten triggere, hab ich noch so meine Probleme, das um zu setzen.

Gruß
Andreas
 
Richtig, es ist eine Und-Verknüpfung von 2 Bedingungen. Weiß aber trotzdem noch nicht, wie ich das umsetze.
Am besten schaut man sich in der Automatisierung unter "Dann mache" mal alles an, was man da so auswählen kann, gerade bei "Bausteine" und "Andere Aktionen"
Stecke ich beides in den WENN-Bereich ist es ein Oder.
Wie kommst Du da drauf ?
WENN a = 1
DANN WENN b = 1
DANN MACHE Schalte Licht ein.
Einfache Logik. Wenn a 1 ist, wird auch noch gebrüft, ob b auch 1 ist. Wenn nicht, wird nichts gemacht, wenn ja, wird das Licht eingeschaltet.

ODER

Eine WENN DANN Aktion.
Bei WENN klickt man auf "Bedingung hinzufügen", dann auf "Bausteine" und wählt "ODER" bzw. "UND" aus, je nachdem, was man will.
Und schon erscheint der Text "Testen, ob mehrere Bedingungen erfüllt sind". Also genau das, was DU möchtest.
Wie mache ich eine Und-Verknüpfung? Dein Beispiel zum Lesen war zwar einleuchtend von der Problematik her, da ich aber nicht mit Uhrzeiten triggere, hab ich noch so meine Probleme, das um zu setzen.
Naja, nach irgendwas muß ich ja in dem Beispiel triggern.
Aber ein Trigger ist halt auch nur ein Auslöser :D
Du mußt dich Fragen, was soll deine Automatisierung auslösen.
Der Wechsel des Ventilstatus auf TANK, das Überschreiten der Temperatur auf größer 46 Grad oder BEIDES ?
Mein Vorschlag wäre tatsächlich beides.
Im WENN DANN fragst Du dann beide Bedingungen mittels UND ab und führst dann eine Aktion aus.
 
Du mußt dich Fragen, was soll deine Automatisierung auslösen.
Danke dir erstmal, ich komme der Verwirrung immer näher :D
Als ersten Auslöser brauche ich die Temperatur, die aber erst nach einer gewissen Aufheizphase erreicht wird (>45°).
Und dann frage ich den Status des Ventils ab.
Nur wenn dieses auf "Tank" steht, soll die Zirkulationspumpe eingeschaltet werden.
Also so:
YAML:
alias: WW-Timer_2 Speicherumschichtung
description: Warmwasserumschichtung im Speicher bei 46°
trigger:
  - platform: numeric_state
    entity_id:
      - sensor.waermepumpe_main_dhw_temp
    above: 45
condition:
  - condition: and
    conditions:
      - condition: state
        entity_id: sensor.waermepumpe_main_threeway_valve_state
        state: Tank
action:
  - type: turn_on
    device_id: 62e96d7cf6c931752d3c59b277e62de8
    entity_id: 9fffee4232d6fc96778a36f3d8ac4bd7
    domain: switch
  - delay:
      hours: 0
      minutes: 5
      seconds: 0
      milliseconds: 0
  - type: turn_off
    device_id: 62e96d7cf6c931752d3c59b277e62de8
    entity_id: 9fffee4232d6fc96778a36f3d8ac4bd7
    domain: switch
  - delay:
      hours: 2
      minutes: 0
      seconds: 0
      milliseconds: 0
mode: single
Mal sehen, wie es morgen abläuft.

Gruß
Andreas
 

Zurzeit aktive Besucher

Letzte Anleitungen

Statistik des Forums

Themen
5.371
Beiträge
53.249
Mitglieder
5.157
Neuestes Mitglied
Swimmer71
Zurück
Oben