NEWS
Zeitschalter Ein / Aus Zeitvorgabe via VIS
-
@Aiouh sagte:
Wenn der EV Schütz aber nach ein paar Minuten ausgeht, läuft mein Timer trotzdem nicht los.
Der EV Schütz muss triggern, wenn dessen Ausschalten eine Reaktion bewirken soll.
-
@paul53 Ich habe mir erst mal in der Testumgebung ein script gebastelt, da es am live system doch um einige kW Leistung geht die geschaltet werden sollen, oder eben auch mal besser nicht geschaltet werden dürfen...
Meine Zusatzheizung soll nur dann, mit deinem Timer , geschaltet werden wenn:
- Der Timer an sich aktiviert ist
- Der Verbrauch im Beispiel nicht höher 2kw liegt
- Der Schütz für mein EV (aktor_prio) nicht eingeschaltet ist.
Im Test mit dummy datenpunkten scheint das so zu funktionieren, nun hätte ich doch gerne noch die Beurteilung des/der Experten
-
@Aiouh sagte:
nun hätte ich doch gerne noch die Beurteilung
Bei mehreren Triggern kann man nicht Wert abfragen: Die Abfrage muss raus und "stop zyklische Ausführung Intervall" muss zusammen mit dem Ausschalten ganz unten passieren.
Als 2. Trigger muss sicherlich "test_aktor_prio" verwendet werden.
Das erste Einschalten fehlt.
Die Debug-Ausgaben verwirren eher, da sie den vorherigen Wert ausgeben, denn "steuere" arbeitet asynchron (ist noch nicht fertig, wenn der Wert eingelesen wird).
-
@paul53 Vielen Dank, wieder was gelernt, irgenwann begreif ich das (hoffentlich)
-
@paul53 ...musste den Fred ausgraben weil ich wieder eine ähnliche Aufgabenstellung habe und wieder nicht weiterkomme.
Ich möchte ein Ventil "X" Minuten einschalten dann "Y" Minuten Pause und das Ganze "Z" mal wiederholen.
Für den ersten Teil wollte ich das obige Script nutzen.Für die Wiederholungen hab ich ein Muster gebastelt, das an sich funktioniert.
Nur die Kombination der beiden, also das "x mal ausführen" krieg ich nicht hin.
Ich dachte ich kann "einfach" das obige script anstelle des "debug output n" einsetzen. Aber egal welche der "Execution Blöcke" ich einsetze, es werden Teile des obigen scripts gleich 5 mal hintereinander ausgeführt.12:42:28.209 info javascript.0 (13807) Start javascript script.js.test.timertest 12:42:28.235 info javascript.0 (13807) script.js.test.timertest: registered 1 subscription, 0 schedules, 0 messages, 0 logs and 0 file subscriptions 12:42:35.251 info javascript.0 (13807) script.js.test.timertest: timeout1 12:42:35.267 info javascript.0 (13807) script.js.test.timertest: timeout1 12:42:35.270 info javascript.0 (13807) script.js.test.timertest: timeout1 12:42:35.277 info javascript.0 (13807) script.js.test.timertest: timeout1 12:42:35.283 info javascript.0 (13807) script.js.test.timertest: timeout1 12:42:39.265 info javascript.0 (13807) script.js.test.timertest: cycle time 12:42:39.270 info javascript.0 (13807) script.js.test.timertest: cycle time 12:42:39.272 info javascript.0 (13807) script.js.test.timertest: cycle time 12:42:39.283 info javascript.0 (13807) script.js.test.timertest: cycle time 12:42:39.285 info javascript.0 (13807) script.js.test.timertest: cycle time 12:42:40.267 info javascript.0 (13807) script.js.test.timertest: timeout2 12:42:40.272 info javascript.0 (13807) script.js.test.timertest: timeout2 12:42:40.282 info javascript.0 (13807) script.js.test.timertest: timeout2 12:42:40.285 info javascript.0 (13807) script.js.test.timertest: timeout2 12:42:40.286 info javascript.0 (13807) script.js.test.timertest: timeout2 12:42:43.265 info javascript.0 (13807) script.js.test.timertest: cycle time 12:42:43.270 info javascript.0 (13807) script.js.test.timertest: cycle time 12:42:43.271 info javascript.0 (13807) script.js.test.timertest: cycle time 12:42:43.282 info javascript.0 (13807) script.js.test.timertest: cycle time 12:42:43.286 info javascript.0 (13807) script.js.test.timertest: cycle time 12:42:44.267 info javascript.0 (13807) script.js.test.timertest: timeout2 12:42:44.291 info javascript.0 (13807) script.js.test.timertest: timeout2 12:42:44.295 info javascript.0 (13807) script.js.test.timertest: timeout2 12:42:44.297 info javascript.0 (13807) script.js.test.timertest: timeout2 12:42:44.298 info javascript.0 (13807) script.js.test.timertest: timeout2 12:42:47.267 info javascript.0 (13807) script.js.test.timertest: cycle time 12:42:47.273 info javascript.0 (13807) script.js.test.timertest: cycle time 12:42:47.299 info javascript.0 (13807) script.js.test.timertest: cycle time 12:42:47.323 info javascript.0 (13807) script.js.test.timertest: cycle time 12:42:47.324 info javascript.0 (13807) script.js.test.timertest: cycle time 12:42:48.270 info javascript.0 (13807) script.js.test.timertest: timeout2 12:42:48.298 info javascript.0 (13807) script.js.test.timertest: timeout2 12:42:48.304 info javascript.0 (13807) script.js.test.timertest: timeout2 12:42:48.324 info javascript.0 (13807) script.js.test.timertest: timeout2 12:42:48.325 info javascript.0 (13807) script.js.test.timertest: timeout2
Ich hoffe wieder auf Hilfe, denn begriffen hab ich das noch immer noch nicht ganz
-
@aiouh sagte: das "x mal ausführen" krieg ich nicht hin.
Man muss innerhalb des Zyklus eine Variable hoch oder runter zählen und bei Erreichen des Zielwertes den Zyklus beenden (Intervall stoppen).
Beispiel ohne Intervall mit Funktion: -
@paul53 vielen Dank, ich war mittlerweile auf dem richtigen Weg, aber an das Stoppen des Intervall hatte ich nicht gedacht. Das hat mir jetzt viel Zeit gespart
-
@paul53 Das script wird ja durch setzen des "automatik-ein" auf "1" gestartet und läuft durch. So war der Plan. Nun möchte ich "automatik-ein" nach Ablauf des scripts automatisch wieder auf "0" setzen.
Spricht was gegen die folgende Lösung ? Funktionieren tut sie zumindest
-
@aiouh sagte; Spricht was gegen die folgende Lösung ?
Ein "else" anstelle des Vergleichs mit 0 hätte genügt.
-
@paul53 Danke !