NEWS
Pflanzenbewässerung "hüpft" immer wieder auf "Falsch"
-
Hi,
ich habe mir drei neue Geräte besorgt:
2x Feuchtigkeitsmesser mit entsprechenden Spitzen die man in die Pflanzenerde steckt und welche in % die Feuchtigkeit wiedergeben
1x Bewässerungsteuerung die nur "on" oder "off" durchführen kann.Nachdem ich herausgefunden habe wann es ideal wäre erneut zu Bewässern, habe ich ein recht simples script erstellt
Anders gesagt möchte ich wenn zwei Bedingungen erfüllt sind (Sensor 1 <= 90%, Sensor 2 <= 97%) der Sensor auf on/wahr hüpft und so lange bleibt, bis die Bedingungen nicht mehr erfüllt sind und dann entsprechend auf off/falsch zurückschaltet.Leider habe ich das Problem dass die Steuerung immer wieder auf off springt, obwohl nichts geändert wurde. Auch wenn ich sie Manuell auf wahr stelle, dauert es nicht lange und zak - springt sie wieder auf falsch.
Ich habe ebenso versucht es umzustellen (Sensor 1 >= 90%, Sensor 2 >= 97%, dann auf falsch, sonnst auf wahr bleiben), aber auch da hat sich nichts getan.Kurzes Debugging hatte ich auch versucht:
Schlauer wurde ich da jedoch nicht...
Ich komme einfach nicht drauf was ich da falsch mache
Könnt ihr mich bitte unterstützen?
Vielen Dank!
LG
-
@igor123 sagte in Pflanzenbewässerung "hüpft" immer wieder auf "Falsch":
habe ich ein recht simples script erstellt
Ist das alles? Nur der "Falls"-Block? Kein Trigger?
-
@codierknecht
Ja das wäre alles.
Muss aber gleich sagen dass ich von dem ganzen nicht wirklich Ahnung habe ....
Mir wäre das ganze logisch gewesen - auch ein Blick auf JS klang für mich vielversprechend und somit dachte ich dass es das wäre... scheinbar nicht? -
Du brauchst auf jeden Fall einen passenden Trigger.
Triggere auf die beiden Feuchtigkeitssensoren.Ob das dann nach Wunsch funktioniert, hängt auch davon ab ob die Sensoren nicht direkt nach Einschalten des Ventils zu hohe Werte melden. Dann muss man da gegensteuern.
Zu Testzwecken könnte man im Trigger auch mal die Werte der Sensoren ins Log schreiben.Der Auslöser für das Abschalten scheint allerdings gar nicht das Script zu sein.
Was ist das für ein Ventil?@igor123 sagte in Pflanzenbewässerung "hüpft" immer wieder auf "Falsch":
Muss aber gleich sagen dass ich von dem ganzen nicht wirklich Ahnung habe
Lesestoff: https://forum.iobroker.net/topic/70481/blockly-for-dummies-starthilfe-und-tipps
-
@igor123 sagte in Pflanzenbewässerung "hüpft" immer wieder auf "Falsch":
sagen dass ich von dem ganzen nicht wirklich Ahnung habe ..
das erklärt warum du es als Bug von IoBroker betrachtest
ich hab das mal hierher geschoben
-
@codierknecht
Danke dir!
Irgendwie funktioniert das noch nicht so recht...
Nur wenn sich beide Sensoren mit einen aktuelleren Wert melden, funktioniert es.
Nun bin ich drauf gekommen das der Sohnemann am Ventil herumdrückt.. super cool - somit läuft das Wasser ende nie...Ich habe es mal so herum probiert damit der Status vom Ventil geprüft wird und der dann kurz danach schließt/öffnet falls notwendig und somit die Aktionen vom Sohn überspielt:
Hier habe ich aber eben das Problem dass er jede Sekunde überprüft, obwohl der wert schon erreicht ist.
Offensichtlich kann das Ventil mit so vielen Messages nicht umgehen und schickt eine Fehlermeldung als "nicht erreichbar" zurück.Ich hatte mich ebenso mit "stop" gespielt, bin jedoch nicht so recht draufgekommen wie ich es in meinem Fall richtig einsetze
Weiters hatte ich testweise Werte eingestellt so dass er auf Falsch springen müsste (in dem Fall 93 bei jeweils einem sensor eingetragen) -> leider hüpft das Ventil nicht auf falsch
Das Ventil hatte ich von Aliexpress erworben und via Zigbee eingebunden
-
@igor123 sagte in Pflanzenbewässerung "hüpft" immer wieder auf "Falsch":
Nur wenn sich beide Sensoren mit einen aktuelleren Wert melden, funktioniert es.
Was ja auch logisch ist, da Du ein "UND" verwendest.
Nun bin ich drauf gekommen das der Sohnemann am Ventil herumdrückt.. super cool - somit läuft das Wasser ende nie...
Bei mir startet mit dem Einschalten des Ventils ein Timer, der die Bewässerung nach max. 30 Minuten beendet.
-
@igor123
Triger im Triger funktioniert nicht.
Nicht umsonst hast du da eine Warnung.
-
@codierknecht sagte in Pflanzenbewässerung "hüpft" immer wieder auf "Falsch":
Bei mir startet mit dem Einschalten des Ventils ein Timer, der die Bewässerung nach max. 30 Minuten beendet.
Würde ich es so umsetzen dann läuft es mehrmals täglich für die eingestellte Zeit wenn der Sohn lustig ist und immer wieder herumdrückt.
Ich habe ein übliches Ventil von Gardena welches um 6 & 18h jeweils für 6 Minuten öffnet - Dieses Ventil ist VOR dem smarten Ventil.
Ziel vom smarten Ventil war es, dass dieser offen bleibt wenn die zwei Sensoren die eingestellte Feuchtigkeit unterschreiten bzw. schließt wenn es mehr als eingestellt ist.Kannst du mich bitte unterstützen um ganze ins Blockly-Script zu packen?
@eduard77 sagte in Pflanzenbewässerung "hüpft" immer wieder auf "Falsch":
Triger im Triger funktioniert nicht.
Funktioniert tatsächlich, nur führt er eben jede Sekunde aus obwohl es eh schon wahr ist o.ä.
-
@igor123
Erste Regeln bei Blockly, die man lernen muss. Immer ein Trigger benutzen und kein Trigger im Trigger.
Wieso machst du nicht wie Codierknecht dir oben empfohlen hat.
Jede Sekunde den Wert prüfen ist unnötig und nicht Ressourcen schönend.
Auf Änderung von deinen Sensoren zu triggern und dann den Wert zu prüfen.
Und wenn den Objekt Wert unter deinem Wert liegt, dann Ventil öffnen.
Gegebenfalls noch für Ventil Auschalten ein Timeout einbauen. -
Triger im Triger funktioniert nicht.
Hatte ich gar nicht registriert. Danke für den Hinweis.
@igor123
Lesestoff: https://forum.iobroker.net/topic/70481/blockly-for-dummies-starthilfe-und-tippsNiemals auf keinen Fall Trigger verschachteln.
In Deinem Fall hast Du jetzt jede Minute zwei neue Trigger angelegt. Damit kommst Du in Teufel's Küche und kriegst schneller als gedacht Probleme mit den Systemressourcen.
Auf jeden Fall solltest Du jetzt erstmal das Script stoppen und ggf. die Javascript-Instanz einmal neustarten.dann läuft es mehrmals täglich für die eingestellte Zeit wenn der Sohn lustig ist und immer wieder herumdrückt
Ist der so klein, dass er daran rumspielt oder so alt, dass er Papa sabotieren möchte?
Du könntest einen Trigger auf das Ventil legen und dort den Ursprung prüfen.
Ist diesersystem.adapter.zigbee.0
dann schließt Du das Ventil gleich wieder.
Oder Du blockierst gleich den Knopf auf dem Ventil (Blechschelle o.ä.)Ich habe ein übliches Ventil von Gardena welches um 6 & 18h jeweils für 6 Minuten öffnet - Dieses Ventil ist VOR dem smarten Ventil.
Das Gardena kann dann eigentlich weg. Wäre ja doppelt gemoppelt.
Das kann man prima mit 'nem CRON Zeitplan erledigen.
0 6,18 * * *
Darin bei entsprechenden Werten der Sensoren das Ventil öffnen und mit 'nem Timeout von 6 Minuten wieder schließen.
Hab' jetzt leider keine Zeit ein Beispiel zu basteln. Vielleicht kann jemand hier kurz aushelfen? @paul53 ? -
@codierknecht
So? -
@Codierknecht
Danke für die super Erklärung
@paul53
ich hab es jetzt so eingerichtet - ich werde es mal beobachten - danke!