NEWS
[Vorlage] Gartenbewässerung mit 6 Ventilen
-
@benziman prinzipiell spricht nichts dagegen Feuchtigkeitssensoren im Skript zu berücksichtigen.
Ich müsste nur wissen, was für einen DP die Sensoren haben ( true / false oder Feuchtigkeit in % oder so).
Bzgl deiner VIS sieht es so aus, als wenn in der VIS falsche Objekte hinterlegt sind
-
ok, ich schaue mir das mal genauer an und melde mich erneut (die Gardena Sensoren sind echt Teuer und das GW erst recht, die Ecowitt sind günstiger aber nicht so schön flach. Ich melde mich wenn ich die DPs in iobroker habe.
Bezüglich der VIS, ich habe die komplette VIS gelöscht sowie alle DPs, dann die Views importiert und danach das neue Script gestartet.
sieht im Editor gut aus, ohne FehlerEDIT: habe mal mit den Elemten verlgichen die angezeigt werden
auch bei der Werteberechnung scheint sich wieder ein Fehler eingeshclichen zu haben (hatte ich bei der lezten VIS auch!)
zeigt immer noch auf java nicht userdat! dadurch kann man deine View nicht Fehlerfrei importieren (nur zur Info)
habe ich per suchen und ersetzen und alles neu importieren gelöst, das passiert dann bei jeder neuen Version die du hochlädst
Bei Steuerung Ende und Dauer sind zwei Schreibfehler drin deswegen sind die null
kannst du gerne hochladen wenn du magst (läuft jetzt ohne Probleme)
1650736468947-bewaesserung_vis_v1.1.1_fixed.zip -
@kuddel
Der Gardena Sensor hat als DP Feuchtigkeit in Prozent und Temperatur -
Hallo liebes Forum und besonders @kuddel,
vielen, vielen Dank für die Mühe, so ein Skript (inkl. Vis) zu erstellen, und noch zu supporten.
Ich stehe gerade vor einem Problem. Erstens bin ich kein JAVA (Blockly) Experte, habe aber alles importiert bekommen und es läuft. Jetzt weicht mein Aufbau aber vom "Standard" ab. Ich habe einen SONOFF POW R3 für die Pumpe und einen 4CH Pro für 4 Ventile. Beide mit Tasmota (11.1.0). Der POW schaltet aber den CH4 erst ein. Daher benötige ich eine Pause, von ca. 10-15 Sekunden, nach dem Einschalten der Pumpe. Dann erst ist der CH4 hochgefahren und die PulseTime1-4 kann übertragen werden bzw. die POWER-States1-4 können geschaltet werden.
Leider kenne ich mich noch nicht so gut mit Blockly aus um den richtigen Ort für einen Pausenblock in Deinem Hammerskript zu finden. Kann mir da irgendwer nen Tipp geben?Ich hoffe, ich habe mich halbwegs verständlich ausgedrückt.?
Nochmals vielen Dank für Deine bzw. Eure Arbeit. -
@wama73 da dein Problem ein absoluter Sonderfall ist, sehe ich die Lösung nicht bei mir im Skript, sondern in einem extra Skript.
Der Ansatz wäre: Das extra Skript löst 20 Sekunden vor der Bewässerung aus und aktiviert somit deinen POW.
Im Anschluss startet mein Skript dann ganz normal.Kann mir nächste Woche mal Gedanken dazu machen, wie das in Blockly aussehen würde.
-
@kuddel
Danke für die schnelle Antwort.
Eigentlich müsste ich dann nur Dein Skript aus einem anderen aufrufen.?
Doch dafür fehlt mir das KnowHow.Nachtrag: Werde einen DP anlegen, diesen durch ein neues Skript ändern bzw. den POW einschalten, 15 Sekunden Pause und dann Deinen DP "bewaesserung_aktiv" setzen. So wie ich Dein Skript verstehe, wird der Aktor_Pumpe, wenn "true", ignoriert bzw. nicht geschaltet.?
-
@wama73 so wie du das vorhast, würde das natürlich funktionieren.
Du startet die Bewässung dann ja quasi manuell.
Somit hebelst du dann aber die Schwellwerte aus und deine Bewässerung würde immer starten, auch wenn es bei dir seit 2 Wochen regnet und es nur 5 Grad sind.
Was genau meinst du mit der Pumpe ?
-
@kuddel
Ich setze in "meinem" Skript den "Aktor_Pumpe" auf TRUE, warte 15 Sekunden und setze dann den DP "bewaesserung_aktiv" auf TRUE. Dann sollte Dein Skript doch so ablaufen als hätte ich es über die VIS gestartet. Mit allem PiPaPo.?
Dann noch in der VIS einen zusätzlichen Button "Start" der "mein Skript triggert.
Kann es leider zur Zeit nicht umsetzen, da ich auf der Arbeit bin. -
@wama73 die Bewässerung startet auf jeden Fall, aber ignoriert dabei halt alle Schwellwerte bzgl. Temperatur, Regen und Wind.
-
@kuddel
Aber ist es nicht egal, ob ich den Button in der VIS drücke oder den DP via Skript setze.
Ah, gerade kommt die Erinnerung... Wenn die Schwellwerte nicht passen, schaltest Du den Pumpen_Aktor erst gar nicht.?Ok, ich hab da noch nen Sonoff mini in der Steuerung. Nutze aber nur den Switch (Taster am Pumpenhaus). Dessen "POWER" könnte ich nutzen um den 4CH zu aktivieren und dann Deinen DP "bewaesserung_aktiv" setzen.
Das ist echt blöd, so etwas zu bescheiben, wenn man es nicht vor sich hat. Sorry. -
@wama73 wenn die Schwellwerte nicht passen, wird die Bewässerung gar nicht erst gestartet.
Du willst ja sicher autom. bewässern oder?
Was nimmst du als Start? Feste Uhrzeit oder Sonnenauf/ -untergang?
-
@wama73 habe da mal fix etwas zusammengebastelt:
Mit diesem Blockly kannst du deinen Aktor 20 Sekunden vorm Start von der Bewässerung zur festen Startzeit 1 starten.
Export
-
@kuddel ich würde feste Uhrzeiten bevorzugen. Glaube am einfachsten ist es den 4CH dauerhaft mit Spannung zu versorgen und den ganzen Zauber sein zu lassen. Der CH4 verbraucht zwar 4-6 Watt im Leerlauf, aber egal.
Der POW und der mini (kam erst nachträglich um die Pumpe "vor Ort" einzuschalten) sind dauerhaft versorgt. Der POW schaltet dann den 4CH und den Trafo dazu. -
@wama73 siehe Post von eben...
-
@kuddel super, vielen Dank. Hab den Post beim Scheiben nicht gesehen
Werde beide Varianten mal probieren, also dauerhaft versorgt und Deine Lösung. Komme aber wohl erst am WE dazu. -
Mahlzeit die Herren,
Das Script von @Kuddel läuft bei mir nun auch schon eine Weile und das auch zuverlässig. Da ich vor 18 Tagen komplett neu angesäht habe, nutze ich derzeit vorallem die Intervallschaltung. Dafür nochmals Danke
Allerdings konnte ich diese nicht mehr unterbrechen. Also egal ob die Automatik ausgeschalten wurde oder die Intervalle per Haken in der VIS abgeschalten wurden, es liefen alle zuvor geplanten Durchgänge bis zum erreichen der geplanten Anzahl.Ich war mal so frei und habe zumindest für mich ein workarround erarbeitet, was bis dato ganz gut läuft. Fehler hatte ich noch keine. Ob das dem ursprünglichen Script gerecht wird, sei dahin gestellt. Letztlich habe ich nur noch zwei kleine Abfragen eingefügt.
Wenn die Intervall_Startzeit = false gesetzt wird, läuft das Intervall zwar weiter, es wird aber keine Bewässerung ausgelöst. Quasi ein pausieren.
Wenn die Automatik = false, dann wird das Intervall komplett abgebrochen. Letzteres ist zwar etwas unsauber, aber funktioniert.Beste Grüße
-
@puppet1912 danke für den Hinweis.
Das habe ich gar nicht bedacht.
Für mich war eigentlich klar, dass man die Intervall Schaltung aktiviert und sie dann vis zum Ende durchläuft. An einen Stop habe ich gar nicht gedacht
-
@kuddel Gerne doch.
Ich hatte es jetzt immer mal, dass es trotz anderer Vorhersage etwas geregnet hat. Daher war es ab und an mal notwendig die Intervalle zu unterbrechen/abzuschalten.
Im Prinzip finde ich die Variante mit dem Pausieren ganz gut, dann kann man es ohne große Dateneingabe wieder weiter laufen lassen, falls es doch nicht so dolle geregnet hat. Sicherlich aber eine Grenzanwendung für die Neuansaht. Und es erhöht den WAF deutlich.
Im "Sonst" wo der Debug-Block fürs Stoppen steht: Hier wollte ich eigentlich noch den Wert für den aktuellen Durchlauf auf den Wert für die Gesamtanzahl setzen. Das dieser auch stimmt. Allerdings ist noch irgendwie im Script ein Zähler der das verhindert hat. War aber heute Nacht zu faul zum Suchen, da es auch so funktioniert hat.
Grüße
-
@kuddel habe gerade beide Varianten getestet. Also dauerbestromt und Dein Blockly. Beides funktioniert super.
Warte noch auf die Rückmeldung von DasWetter.com zur Nutzung der API. Dann wird es wohl die dauerbestomte Lösung. Aber nochmals danke. -
Hallo zusammen!
Ich hatte immer mal wieder den Fall, dass mein Shelly für den Trafo zum Zeitpunkt der Beendigung des Bewässerungsdurchlaufs nicht mehr erreichbar war. Wlan-Verbdinung ist top und alle anderen die direkt daneben sitzen, waren erreichbar. Da die Zeit auffällig war bin ich mal auf die Suche im Script gegangen. Und siehe da, da haben sich noch ein paar Fehler eingeschlichen. Und was mir vorher gar nicht aufgefallen ist, beim PumpenAktor und Netzteilaktor wird keine AutoOffTime gesetzt. In beiden Fällen waren vermutlich durch Copy-Paste noch falsche Variablen im Script verwendet....ich habe das mal geändert und jetzt läuft alles wie gedacht.
Im linken Teil des Scripts wo die DPs für "Aktor Typen ON_Time" gesetzt werden, ist im Teil für "Pumpe" und im Teil für "Ventil Netzteil" noch ein falscher DP gesetzt. Dieser ist im Bild schon korrigiert, im ursprünglichen Script ist an der Stelle noch der Aktor 6 eingetragen.
Des Weiteren im Block 4.2 - Ventil-Netzteil. Hier war im Block für die Einschaltdauer des Netzteils noch die Variable für die Pumpe drin. Ist im Bild ebenfalls schon geändert und läuft. Jetzt habe ich auch einen AutoOff für den Shelly am Trafo.
Bis dato ist auch mein Shelly durchgängig erreichbar. Kann es mir zwar nicht ganz erklären, aber wann kann man das schon...
Beste Grüße