NEWS
Bewässerung - Ausführung/Verzögerung unterbrechen
-
@paul53 sagte in Bewässerung - Ausführung/Verzögerung unterbrechen:
Das ist der Wert des Trigger-Datenpuktes (Blöcke "Trigger").
Ok, nur verstehe ich nicht was "Falls Wert" bedeutet. Da muss doch noch eine Kennzahl bzw. ein State gefragt werden, oder? Oder ist es grad einfach zu warm und ich kann nicht denken?
Mache-Zweig: Also exakt so wie ich es vorher hatte? Bei Dir steht doch da "Pumpe an Ventile auf".
Und zum letzten Punkt; Du hast also (in meinem Bsp) eine 4. Funktion erstellt die die ersten 3 Funktionen beinhaltet jedoch ohne Parameter?
Logisch weiß ich zwar was das macht aber nicht wie ich das erstellen kann.
Wenn Du Zeit hast kannst Du das vielleicht mal nachstellen und Screenshoten?
-
@Gerni sagte:
Du hast also (in meinem Bsp) eine 4. Funktion erstellt die die ersten 3 Funktionen beinhaltet jedoch ohne Parameter?
Nicht ganz: 3 Funktionen zu einer zusammengefasst:
- steuere Wasserpumpe mit wahr
- steuere Ventile mit wahr 5 s verzögert
- steuere Linke Rasenfläche mit wahr 3 s verzögert
- steuere Rechte Rasenfläche mit wahr 1 min verzögert
@Gerni sagte in Bewässerung - Ausführung/Verzögerung unterbrechen:
Da muss doch noch eine Kennzahl bzw. ein State gefragt werden, oder?
Ja, es wird der Wert des Triggerdatenpunktes "Rasensprenger" abgefragt.
-
@paul53 Ich glaube ich habe es. Hier mal komplett, ist doch leichter zu verstehen hoffe ich.
Was jetzt noch fehlt damit es für mich perfekt wäre:
einen Zeitplan laufen lassen jedoch nur wenn "Rasensprenger" true und über yr Adapter zB Niederschlag unter 10mm (yr Adapter ist vorhanden) ist. So müsste der Zeitplan nicht greifen. Steht also eine Gartenparty an, ich den "Rasensprenger" vorher auf false setze dürfen die Sprenger natürlich nicht laufen. -
@Gerni sagte:
Hier mal komplett,
Die oberen 3 Funktionen können gelöscht werden, da sie nirgends verwendet (aufgerufen) werden.
Im sonst-Zweig false an den Parameter an/aus der Funktion übergeben !! -
@paul53 ok vielen Dank für Deine Unterstützung, habe ich verstanden. Auch, dass die oberen drei nicht verwendet werden weil ich die ja mit letzter Funktion zusammengefasst werden.
Sieht nun so aus.
Wenn ich nun einen Zeitplan davor setze, prüft der dann ob "Rasensprenger" an und ob Regen "<10", wenn "true" und "<10" dann durchlaufe Skript, wenn "false" lasse alles ausgeschaltet?
Dann hätte ich mein Ziel erreicht. Wäre das so logisch korrekt aufgebaut?
-
@Gerni sagte:
Wäre das so logisch korrekt aufgebaut?
Nein, keine Trigger (Falls Objekt) innerhalb von Triggern (Zeitplan) verwenden ! So wird jede Minute ein neuer Trigger erzeugt.
Vorschlag:
-
@paul53 Ah Trigger in Trigger muss ich mir merken. Habe ich nachgebaut, teste ich heute Abend bzw. Morgen und gebe Feedback.
-
Datenpunkt Rasensprenger steht auf true und Blockly hat funktioniert. Zeitplan läuft also.
Lediglich an manuelles anschalten ist jetzt nicht möglich weil das ja erst startet wenn Die Zeit erreicht ist.
Ansonsten schon mal top
-
Heute dann mal einfach gewartet; Skript läuft. Vielen Dank!
-
Ich hoffe ich darf mich hier mal anhängen. Bin ein völliger Neuling und mit Skripten auf Kriegsfuß
Ich hab ein Gardena Smart System.
1x Water Control am Gartenwasseranschluss
1x Smart Power Steckdose an einer Tauchpumpe in der Zisterne
1x den Bodenfeuchtigkeitssensor
An beiden "Pumpen" hängt ein 6xfach manueller Verteiler von Gardena (heisst ich lassen Kreislauf 1 20min laufen. Schließe das Ventil/bzw. Pumpe aus. Der Verteiler wechselt nach Druckabfall auf 2. Kreislauf und ich lass wieder laufen... wenn alles 20 läuft bin ich nach 2h mit dem Bewässern fertig (wahrscheinlich viel zuviel)Die nette Garden-App lässt eine Kopplung des Sensor nur mit dem Water Control am Wasserhahn zu.. ist der Boden feucht. Pumpt das Teil trotzdem Wasser.
Meine Idee bzw Vorgehen wäre:
Jeden Tag um 5:30 Uhr wird die Feuchtigkeit abgefragt.
Ist der Wert kleiner als 40% so soll beregnet werden.
Water Control an für 20min
Pause 60 Sekunden
Water Control an 20min
usw.
Parallel dazu soll die Steckdose der Pumpe an
Steckdose an 20min
Pause 60 Sekunden
Steckdose an 20 min
usw...
bis alle Kreisläufe abgeleistet wurden
Um 21 Uhr soll das Skript quasi nochmal laufen falls der Sommertag sehr heiß war.Ich habe die Objekte via Openhab in IOB übernommen, da ich keinen Gardena-Adapter gefunden hab.
In den Skripten habe ich nun ein neuen Ordner erstellt "Gardena" und dort ein Blockly-Skript begonnen "Water Control"
Trigger Zeitplan
schedule('{"time":{"start":"06:00","end":"06:20","mode":"minutes","interval":1},"period":{"days":1}}', function () { on({id: 'openhab.0.items.gardena_sensor__humidity_humidity', change: "ne"}, function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; if (getState("openhab.0.items.gardena_sensor__humidity_humidity").val < 40) { } }); }); true;
Falls Der Wert von Feuchtigkeit kleiner als 40..
mache... und dann?Ich bin grad am rätseln...
Danke
Gruß
Dreamsleeper