NEWS
Blocky Script Probleme
-
Hallo,
Ich habe ein Blocky für meine Terrarium beregnungsanlage gestellt.
Nur irgendwie funktioniert das nicht wie ich will..
Unzwar, soll als erstes Überprüft werden mit einen Datenpunkt der im VIS gesetzt wird, ob Sommer oder Winterzeit ist.
Jetzt im Winter soll um 8 und um 13 Uhr jeden Tag der GPIO Pin 14 auf falsch gesetzt werden um das Relais zu schalten.
(Zurzeit ist es ein Low Level Relais. Quasi um die Beregnungsanlage auszuschalten muss das Signal 1 stehen, da es ein schließer ist), neues Relais mit High Level Trigger ist bestellt.
Nun das Phänomen, ein Tag stand ich früh auf und das Relais ging die ganze zeit an und aus..
Danach hat er es nicht mehr gemacht.Ich wollte heut von unterwegs den Log prüfen doch hatte keine Verbindung mehr zum Pi, ab um dreiviertel 11 ging es wieder, aber siehe log. Was mach ich falsch?!
-
@Lucas-Stiefel Du solltest bei Problemen erst mal klären, was da genau im Log steht. Die Zeilen mit WARN sind leider auf dem Screenshot nicht komplett drauf.
Zweitens (und ist die Ursache für merkwürdiges Verhalten):
Du erzeugst alle 3 Sekunden (Intervall) zwei neue Trigger (pinke Blöcke). Nach einer Minute sind das dann schon 2x20 = 40, nach einer Stunde 2x1200 = 2400!!!Das bedeutet, dass zu den angegebenen Zeitpunkten die jeweiligen Aktionen jeweils mehrere tausend Mal ausgeführt werden.
Grundsätzlich: Trigger-Blöcke NIEMALS in andere Blöcke schachteln. Stattdessen innerhalb der Trigger prüfen, ob die gewünschte Bedingung erfüllt ist, und nur dann die gewünschten Aktionen ausführen.
-
Hier die Logs, das Warning : Beregnung an und aus, hab ich ja gesetzt.
Das er sich abgeschalten hat ist vom system.Er sollte eig. 8:00 den Pin aus setzten und in die Log : Beregnung an schreiben.
Um 8:00:30 sollte sie wieder ausgehen und : Beregnung aus schreiben.
Wie man sieht haut irgendwas mitn Skript nicht hin weil er tausend mal aus schreibt..
-
@Lucas-Stiefel Habe meinen obigen Post editiert
-
Ich sehe schon, in der log sendet er alle ms auch Beregnung aus.
Wie kann ich das umbauen das es richtig funktioniert?
Stehe leider bissel aufm SchlauchMag einfach wenn die Winterzeit oben gegeben ist das er jeden Tag um 8 und 13 uhr für 30sekunden mein GPIO Schaltet
Edit: müsste es nicht funktionieren wenn ich im Zeitblock die Sekunden noch angebe?
-
@AlCalzone habs mir nun mal so überlegt weiß aber nicht ob das so stimmt.
- Kommentar wäre die Prüfung ob Winterzeit
- Kommentar die 30000ms für die abschaltung
-
du solltest erst den Schedule ausführen und darin prüfen, ob die Bedingungen erfüllt sind.
Jetzt werden dennoch jeden Tag mehrere neue Schedules erzeugt. Somit werden morgen wieder mehrfach die Werte gesetzt werden.
Ich habe da mal was kleines zusammengebastelt. Du musst es natürlich noch auf deine DPs und co anpassen.
Damit wird täglich um 08:00 und 13:00 Uhr das Skript ausgeführt.
-
@J-A-R-V-I-S genau so hatte ich es am anfang, aber iwie hat er das Schedule einmal ausgeführt.
Egal ob ich jeden Tag angewählt hab.
Deswegen der IntervallIch teste es nochmal so. Danke erstmal:)
-
So Skript läuft soweit.
Werd dann für die Beleuchtung 2 Shedules machen (an und aus)
Ich danke für die Hilfe