NEWS
Extra Warmwasser mit PV Überschuss
-
Hallo Leute,
Ich bin Node Red Anfänger und würde gerne meine Extra Brauchwasser Steuerung welche derzeit über Blockly läuft gerne in Node Red umsetzen:
Ab einem gewissen Überschuss (2,4kW) mit Verzögerung von ~20 Minuten möchte ich das Extra Brauchwasser einschalten (ShellyEIN welcher einen Kontakt für z.Z. 10 Sek. schließt). Eine minON Zeit von 30 Minuten benötige ich auch auch wenn in der Zeit der PV Überschuss <2,4kW ist, nach diesen 30 Minuten kann Extra Brauchwasser (zweiter ShellyAUS welcher einen Kontakt für z.Z. 10 Sek. schließt) die Anforderung deaktivieren mit wieder einer Verzögerung von ~2 Minuten falls nur ein paar Wolken gerade vor der Sonne sind oder wenn die Abschalttemperatur von 57°C erreicht ist soll der ShellyAUS die Anforderung ebenfalls deaktivieren. Später möchte ich noch manuell das Brauchwasser EIN/AUS schalten über Icons in meiner VIS.
Ich habe jetzt mal begonnen mit dem NR zu spielen. Wie löst man das mit angelegten DP im Borker richtig damit der Switch Brauchwasser EIN richtig schaltet?
-
@peter666666 Zu Deinem Flow gibts in meinen Augen einiges anzumerken - ich würde auch mit Hysterese arbeiten. Ok Du versuchst es mit 30 Minuten. Ausserdem sehe ich in dem Flow nicht die Verzögerung von 20 Minuten. Dann wenn ein Shelly für 10 s einschaltet we schaltet nach 10s wieder aus. Also in meinen Augen sind da ja nur Teile implementiert. Kannst Du auch mal Dein Blockly posten? - Dieses Mal aber als Screenshot. Ist das Schalten des Brauchwassers ein Datenpunkt oder sind das 2 Datenpunkte, die Du jeweils mit true schaltest? Muss nach den 10s wieder false für den Shelly geschaltet werden? Wenn also nach 10s wieder false schaltet.
-
@mickym die 20 Minuten stelle ich dann ein wenn alles funktioniert. Zum testen habe ich nur Sek. eingestellt. Die Shelly schalten sich selber wieder aus nach 10 Sek. (einstellbar in der APP). DP Brauchwasser aktiv ist ein DP den ich mit true/false setze. Die Shelly brauchen nur einen Impuls und bleiben dann die eingestellte Zeit EIN und gehen dann wieder auf AUS.
-
@peter666666 Wenn das Brauchwasser aktiv ist - sehe ich in dem Blockly dass Du das ja über einen Datenpunkt regelst, in dem Flow aber nicht. Ansonsten zeigt Dein Beispiel, dass die Blocklies sehr schnell unübersichtlich werden.
-
@mickym ja so weit bin ich noch nicht im Flow (ist glaube ich nur für die manuelle Steuerung des BW). muss mal schauen wie ich die "IF Schleife" richtig mache. Stimmt es ist nicht mehr übersichtlich.
-
@peter666666 Na warte mal - da sind einige Fehler drin, ich mach Dir mal einen Vorschlag den können wir dann diskutieren.
-
@mickym danke! Kann man die Verzögerungen so machen das diese nur einmal starten und wenn schon eine "läuft" nicht wieder eine gestartet wird?
-
@peter666666 Schreibe ich Dir gleich alles - dafür nimmt man keine fixe Verzögerung sondern die Nachrichtenrate.
Damit legst Du fest, dass nur 1 Nachricht ausgegeben wird innerhalb der 20 Minuten und alle zwischenzeitlich ankommenden Nachrichten verworfen werden.
-
@peter666666 sagte in Extra Warmwasser mit PV Überschuss:
So sieht der Flow momentan aus, wenn ich alles richtig verstanden habe:
Ich habe es mit Inject Nodes simuliert, du kannst die ja wieder löschen und Deine iobroker IN Nodes wieder aktivieren. - Du musst halt die DP für den Indikator noch anpassen, wenn MinOn aktiv ist.
Hier mal ein paar grundsätzliche Anmerkungen
- Bei Bedingungen eines Parameters - kann man alle Bedingungen in 1 Switch Node machen.
- Bei der Delay Node - wenn man fixe Verzögerung einstellt dann werden die Nachrichten nicht begrenzt. Sprich es ist über 2.5 dann wird eine Nachricht erzeugt (nennen wir es Zeitpunkt 0), die Nachricht würde nun 10s oder 20 Min. verzögert. Wenn zum Zeitpunkt 0+1 Min wieder eine Nachricht erzeugt würde, dann würde nach 11 s die 2. Nachricht bzw. nach 21 Minuten die nächste Nachricht gesendet.
Eigentlich müssten damit alle Bedingungen abgedeckt sein. Ich finds halt um Weiten übersichrlicher als Dein Blockly.
Hier der Flow zum Import:
Du musst halt noch die Sekunden in den trigger und delay Nodes gegen Minuten dann austauschen und deaktiviere Deine Blocklies - damit die nicht dazwischen funken.
-
@mickym das ist ja eine geile Funktion das mit dem Delay. Vielen dank. Ist um einiges übersichtlicher. Jetzt muss ich es mir anschauen und verstehen :). VIELEN DANK schon mal!
-
@peter666666 sagte in Extra Warmwasser mit PV Überschuss:
@mickym das ist ja eine geile Funktion
Na - die wenigsten glauben, dass NodeRed hier wesentlich mehr Möglichkeiten bietet und auch so was für eine Fehlersuche viel übersichtlicher darstellt. Du kannst an jeder Stelle im Flow Debug Nodes machen und Dir im Debug Fenster anschauen.
-
@mickym Habe hier meinen Alias DP eingetragen aber ich sehe die Temperatur nicht?
-
@peter666666 Die wird erst angezeigt, wenn diese aktualisiert/eingelesen wird. Im Blockly ist das doch denke ich genauso, dass der Datenpunkt im Normalfall erst aktualisiert werden muss. Wenn Du willst, dass sowas zu Beginn beim Flowstart eingelesen wird, musst Du halt die iobrokerIN Node entsprechend konfigurieren:
-
@mickym muss ich bei der Node 30 minON "Verzögerung verlängern bei Eingang neuer Nachrichten" den Hacken nicht raus nehmen weil ja sonst die Zeit immer verlängert wird bei PV Wertänderung oder Warmwassertemperatur Änderung oder habe ich einen Denkfehler?
-
@peter666666 sagte in Extra Warmwasser mit PV Überschuss:
@mickym muss ich bei der Node 30 minON "Verzögerung verlängern bei Eingang neuer Nachrichten" den Hacken nicht raus nehmen weil ja sonst die Zeit immer verlängert wird bei PV Wertänderung oder Warmwassertemperatur Änderung oder habe ich einen Denkfehler?
Ja stimmt. Du musst auch noch einen Block unten einbauen, dass nicht geschaltet wird wenn die Temperatur über 57°C ist. Jetzt würde zwar über 57°C abschalten, aber dann wenn PV Überschuss herrscht wieder einschalten. Ich werde mal kurz den ganzen Flow noch etwas umbauen.
-
@mickym das habe ich auch gerade gemerkt das er mir den DP auf true setzt.
-
@mickym und das manuelle starten muss ich noch einpflegen bzw. zumindest versuchen
-
@peter666666 Na das ist ja einfach - Du brauchst doch nur einen Datenpunkt über den Du manuell startest - simulieren kannst Du es direkt in dem Du eine Inject Node rein machst.
-
@mickym versuche ich mal
-
So ich habs jetzt so geändert, dass die 57°C in allen Fällen ausschalten auch wenn MinOn nicht erreicht wird:
Falls das nicht gewünscht ist, dann musst halt den switch mit der Temperaturüberprüfung mit der getNode verbinden. Das ist halt, was ich meine: Man sieht die Logik halt viel besser in NodeRed: