NEWS
Verschachtelung von Bedingunen im Blockly nötig?
-
Hi @ all,
habe da mal ein paar Anfängerfragen. Um in der Übergangszeit PV-Überschuss in meine elektrische Zusatzheizung zu stecken, versuche ich mich gerade an einem Script. Zuerst will ich das natürlich auf 'Zeitplan/Astronomisch Tag' beschränken. Wie oft werden darin enthaltene 'wenn/mache' ausgeführt? Ist es sinnvoll mit einem weiteren verschachtelten 'Zeitplan/Cron' ein 5min-Intervall zu integrieren? Weitere Bedingungen sind der Stand des Stromspeichers und der Modus des Wechselrichters, die eine weitere Verschachtelung mit 'wenn/mache' bedeuten. Kann man das auch mit weniger Verschachtelung machen?
-
@clixmaster sagte: Ist es sinnvoll mit einem weiteren verschachtelten 'Zeitplan/Cron' ein 5min-Intervall zu integrieren?
Nein: Keine Trigger (Zeitplan) innerhalb von Triggern verwenden!
@clixmaster sagte in Verschachtelung von Bedingunen im Blockly nötig?:
PV-Überschuss in meine elektrische Zusatzheizung zu stecken
Dann muss der PV-Überschuss als Trigger dienen. Wie wird der Überschuss ermittelt?
@clixmaster sagte in Verschachtelung von Bedingunen im Blockly nötig?:
auf 'Zeitplan/Astronomisch Tag' beschränken.
Das ist unnötig, da in der Nacht kein PV-Überschuss entsteht.
-
@paul53 sagte in Verschachtelung von Bedingunen im Blockly nötig?:
Nein: Keine Trigger (Zeitplan) innerhalb von Triggern verwenden!
Da das ein Fehler ist, den ich hier schon recht häufig gesehen habe: Könnte man nicht in Blockly eine Warnung einbauen, wenn man so etwas zusammenbaut? Ich würde sogar noch einen Schritt weiter gehen und einem Trigger immer eine Warnung verpassen, wenn er nicht auf der obersten Ebene steht, denn Trigger in Bedingungen oder Schleifen sind meist auch keine gute Idee.
Vielleicht mit einem Link zu einer Seite, auf der dann auch erklärt wird, warum das nicht so funktioniert wie man es erwartet.Oder ist es nicht möglich solche Überprüfungen in Blockly einzuhängen?
-
-
@paul53 Das stimmt, es gibt Ausnahmen, bei denen man genau das machen möchte.
Aber ich wage die These aufzustellen, dass die meisten, die wissen was sie tun und das korrekt verwenden, tendenziell nicht in Blockly sondern in JavaScript oder TypeScript programmieren (dort würde ich dafür keine Warnung haben wollen).Wenn es eine Warnung und kein Fehler ist und man weiß was man tut kann man diese Warnung einfach ignorieren. (Edit:) Es wäre in meiner Vorstellung ja einfach nur ein Hinweis, in dem erklärt wird, warum man das normalerweise nicht machen möchte.
Ich denke, das würde tendenziell deutlich mehr helfen als schaden.
Edit: Man könnte die Prüfung auch noch ergänzen um: Wenn direkt vor dem Trigger der selbe Trigger gelöscht wird, gibt es keine Warnung.
Edit2: Okay, jetzt hast Du den Link geändert und damit eine Stelle gezeigt, bei der die Löschung des Triggers nicht direkt vor dem Setzen des Triggers passiert. Wobei, eigentlich schon, es ist nur auseinander gezogen. Man hätte dort das Löschen des Triggers auch direkt vor den Trigger setzen können. Dann ergänze ich um: Wenn der Trigger irgendwo im Blockly gelöscht wird, darf der Trigger auch ohne Warnung auf einer tieferen Ebene stehen.
-
Danke euch beiden für die Anregungen. Werde das nochmal komplett umgestalten und dann nochmal hier vorstellen.
Trotzdem wüsste ich gerne mal, wie der Trigger mit Zeitspannen funktioniert. Werden darin enthaltene Bedingungsabfragen in dieser Zeitspanne permanent abgearbeitet, jenachdem, was die Taktfrequenz hergibt? Wäre ja doch für das System ganz schön belastend.
-
@clixmaster sagte: wie der Trigger mit Zeitspannen funktioniert.
Ich verwende den Zeitplan-Wizard nicht, da er nicht zuverlässig funktioniert.
@clixmaster sagte in Verschachtelung von Bedingunen im Blockly nötig?:
Werden darin enthaltene Bedingungsabfragen in dieser Zeitspanne permanent abgearbeitet, jenachdem, was die Taktfrequenz hergibt?
Nein, es werden rechts die Trigger-Intervalle (z.B. alle 5 Minuten) angegeben.
-
@paul53 Doch so einfach Danke.
-
@paul53 hier jetzt mein angepasstes Script. Gibt es da noch Verbesserungspotenzial?
-
@clixmaster sagte: Gibt es da noch Verbesserungspotenzial?
Ja. Erstelle für jede Heizung einen 2-Punkt-Regler mit Hysterese und verwende die PV-Auswertung als Regler-Freigabe (Variable).
Es können gleichzeitig alle 4 Heizungen laufen, unabhängig von der Höhe des PV-Überschusses. Soll das so sein? Haben alle 4 Heizungen die gleiche Leistung?Beispiel für 2-Punkt-Regler Bad: