Automatisierte Bewässerung mit Advanced Flows

Advanced Flows können offiziell nur per Screenshot geteilt werden, Asterix.
Aber: Die App “Device Capabilities” bietet die Möglichkeit, diese Flows zu importieren und zu exportieren :partying_face:
https://community.homey.app/t/the-flow-exchange-r-tauschen-sie-ihre-flows-mit-anderen-aus/69584

Ich habe in der OpenWeather App eine Gerät für den neuen API Endpunkt für historische Daten ergänzt.
Damit lassen sich historische Tages-Summen abrufen oder auch bis zu 4 Tage voraus eine tägliche Vorhersage für Regenmengen ermitteln.
Probiert das bitte mal aus unmd gebt eine kurze Rückmeldung, wie genau die Daten tatsächlich sind.

Test-Version 1.5.0:

Details (engl:):

@DirkG : fyi

1 Like

Welchen API Key brauche ich da? Mit meinem normalen komm ich da nicht weiter.

Für diesen API-Endpunkt brauchst du einen OneCall 3.0 key (mit Subscription). Die alten OneCall 2.5 keys gehen hier leider nicht.

Siehe auch die Info im Pair-Dialog (Button “Anleitung”). Ich hoffe, das ist dort kurz und knapp beschrieben :slight_smile:
Alles weitere klären wir dann besser OnTopic im OpenWeather-Thread :wink:

1 Like

@Asterix, @RonnyW hatte die OpenWeather App ja um die historischen Wetterdaten ergänzt (OneCall API 3.0).
Hier mal ein Screenshot der gestrigen Regenmenge im Vergleich:

Die Regenmengen meines Netatmo Regensensors (gelbe Linie) und der historischen Daten von OW sind nahezu identisch, 5,4 zu 5,6 mm.
Warum die Regenmenge der Tempest Wetterstation so stark abweicht kann ich mir momentan zwar nicht erklären, spielt für Deinen Anwendungsfall auch keine Rolle.

Sicherlich müsste man die Werte weiterhin vergleichen, aber zur Bestimmung der gestrigen Regenmenge reichen die historischen Daten der OW App meiner Meinung nach absolut aus.

1 Like

Hey cool, vielen Dank für den Vergleich👍🏼
Ich habe nun einmal einen 1. Flow entworfen, dieser ist noch ohne historischen Daten☝🏽
Ich bin mir fast zu 100% sicher, dass er leider wahrscheinlich nicht funktionieren wird😖
Vor allem das Ende mit dem deaktivieren und wieder aktivieren. Das muss ich wohl in einem weiteren Flow machen oder wie seht ihr das??:thinking:

Nein, wenn Du das hier meinst dann funktioniert das so oder so nicht:

Für einen Timer benötigt man eine weitere Karte “Wenn Timer abgelaufen ist” dann…

Anstelle den Flow zu de-/aktivieren, würde ich einfach eine Ja/Nein-Variable nutzen.

Wie meinst du das genau mit einer Variablen? :face_with_monocle:
Der Flow muss ja für 2 Tage pausieren/aussetzen.

Und danke für den Hinweis bezüglich zweiter Karte bei einem Timer :+1:

Als erstes würde ich nicht die Regen-Prognosen für morgen und übermorgen nutzen, diese sind viel zu ungenau. Wenn Du die One Call API 3.0 abonniert hast, dann kannst Du ja auch auf historische Daten zugreifen. Erfahrungsgemäß stimmen diese deutlich besser überein.

Bzgl. der Variable hatte ich mir noch mal ein paar Gedanken gemacht. Anstelle einer Ja/Nein Variable ist mMn eine numerische Variable sinnvoller.

Bei diesem Flow wird um 02:00 Uhr geprüft ob gestern lt. OpenWeather der Niederschlag mehr als 10 mm war oder ob gestern bewässert wurde (Variable: Tage nach Bewässerung = 0). Wenn dies der Fall ist dann wird die Variable auf 1 gesetzt. Ist beides nicht der Fall, dann wird die Variable um 1 Tag erhöht:

Am nächsten Tag um 02:00 Uhr findet diese Überprüfung erneut statt. Hat es wieder nicht geregnet oder wurde wieder nicht bewässert, wird die Variable um 1 Tag weiter erhöht.

Um 06:00 Uhr morgens wird dann überprüft, wieviele Tage es nicht geregnet hat bzw. nicht bewässert wurde. Gleichzeitig wird überprüft, ob es grade regnet. Werden beide Bedingungen erfüllt wird die Bewässerung aktiviert und ein Timer gestartet:

Ist der Timer abgelaufen wird die Bewässerung ausgeschaltet und die Variable Tage nach Bewässerung auf 0 gesetzt:

Ich denke das ist erst mal ein Grundgerüst und kann sicherlich noch erweitert und optimiert werden, z.B. dass die Bewässerung ausgeschaltet wird wenn es anfängt zu regnen. Du müsstest die “Tage nach der Beregnung” und die Zeit für den Timer natürlich auch noch nach Deinen Bedürfnissen anpassen.

1 Like

Hallo fantross

Vielen Dank für deine Hilfe. Ich habe dies nun in den vergangenen Tage nachgestellt, aber irgendwie will das nicht wie es sollte :sleepy:
Kannst du mir eventuell behilflich sein, was die Ursache ist?
Folgende Fragen habe ich:

  1. Ich habe diese drei Flows alle in demselben Flow, ist das gut oder nicht?
  2. Die Logiktage erhöhen sich nur um einen Tag, sprich auf 1, jedoch nicht auf 2 resp. 3, warum?
    => Ich habe mit Variablen / Logik noch fast keine Erfahrung :see_no_evil:

Ehrlich gesagt sehe ich keinen Fehler. Ich hab es bei mir mal “durchgespielt” und es funktioniert genau so wie es soll.

Mach mal bitte folgendes:
– setze die Variable Tage nach Bewässerung manuell auf 0
– ändere den Wert der Flow-Karte Niederschlag ist größer als auf 100 (also selbst wenn es gestern bzw. am Vortag geregnet haben sollte, wird der Wert definitiv nicht über 100 mm liegen, was wiederum bedeutet, dass der Vortag zu trocken war und die Variable Tage nach Bewässerung erhöht werden muss)
– ändere den Wert der Flow-Karte Niederschlag ist kleiner als auf 100 (die Variable Niederschlag ist der aktuelle Regenwert von dem OpenWeather Gerät “Wetter, aktuell (Standort)”. 100 mm weil dieser Wert mit Sicherheit nicht erreicht wird = zu trocken)
– ändere den Wert des Timers auf 5 oder 10 Sekunden

Tag 1
Jetzt simulierst Du den 1. Flow. Das Ergebnis sollte so aussehen:


(Niederschlag war nicht > 100 mm + “Tage nach Bewässerung” ist 0 → “Tage nach Bewässerung” wird auf 1 gesetzt)

Jetzt den 2. Flow simulieren. Das Ergebnis sollte so aussehen:


(“Tage nach Bewässerung” wurde im 1. Flow auf 1 gesetzt, entspricht also nicht 3. Außerdem ist der aktuelle “Niederschlag” < 50, was zu trocken bedeutet. Der Flow wird deshalb nicht bis zum Ende, als dem Start des Timers, ausgeführt)

Der 3. Flow braucht jetzt noch nicht simuliert werden, da der Timer vom 2. Flow ja nicht gestartet wurde.

Tag 2
Jetzt wieder den 1. Flow simulieren. Ergebnis:


(Niederschlag zu wenig = trocken + “Tage nach Bewässerung” ist nicht 0 → “Tage nach Bewässerung” wird per Berechnung auf 2 gesetzt)

Den 2. Flow könne wir uns sparen, da die Variable “Tage nach Bewässerung” noch keine 3 erreicht hat.

Tag 3
Den 1. Flow simulieren. Identischer Flowablauf wie am 2. Tag. “Tage nach Bewässerung” wird per Berechnung auf 3 gesetzt.

Jetzt wieder den 2. Flow simulieren. Ergebnis:


(Der Timer und die Bewässerung wird gestartet, da beide Bedingungen erfüllt sind. Info: der Timer wird zwar tatsächlich gestartet. Da es sich aber um eine Simulation handelt, wird der 3. Flow nach Ablauf des Timers nicht automatisch gestartet.)

Jetzt den 3. Flow simulieren. Ergebnis:


(Die Variable “Tage nach Bewässerung” wird wieder auf 0 gesetzt und die Bewässerung gestoppt.)

Am nächsten Tag um 2:00 Uhr Nachts fängt das ganze Spiel wieder von vorne an.

Hallo fantross
Besten Dank für deine detailreichen und bildlich dargestellten Erklärungen.
Ich habe es nun einmal genau wie von dir beschrieben durchgespielt, hat alles einwandfrei geklappt :ok_hand: Du bist ein TAUSENDSASSA :smiley: vielen Dank.
Nun lass ich einmal diese erhöten Werte und schaue, ob ich dann eine Benachrichtigung erhalten werde wie beim vorherigen Test.
Ich werde eine Rückmeldung geben, spätestens in drei Tagen sollte es soweit sein :wink:
Tag 1, Flow 1
grafik
Tag 1, Flow 2
grafik
Tag 2, Flow 1
grafik
Tag 3 Flow 2
grafik

Vom dritten Flow habe ich kein Printscreen, aber dieser hat auch funktioniert :clap:

1 Like

Wie erwartet, kam heute Morgen um 06:00 die Meldung, somit hat alles geklappt :+1: nun sollte es ja die Variable wieder auf 0 gesetzt haben, sprich, in 3 Tagen sollte ich wieder eine Meldung erhalten, dann klappt wirklich alles zu 100% :pray:

Sofern dies so kommt, werde ich dann die fiktiven Zahlen wieder auf die richtigen umstellen. Werde wieder informieren…

1 Like

Auch heute ist die Benachrichtigung gekommen :ok_hand:
Somit werde ich die Werte nun auf reale Werte umstellen.
Nochmals vielen Dank an alle die mich auf dem Weg zum Ziel unterstützt haben :partying_face:

Eine Sache vielleicht noch.
Mit der Abfrage der historischen Wetterdaten via OpenWeather App scheint etwas nicht zu stimmen. Das hatten @RonnyW und ich bereits hier diskutiert. In dem diskutierten Fall wurde die Regenmenge um 00:00 Uhr auf knapp 6 mm eingestellt, um 04:00 Uhr wurde dieser Wert dann aber auf ca. 2 mm geändert, wobei 6 mm ungefähr mit meinem Netatmo Regensensor übereinstimmte. Deshalb bin ich hingegangen und habe die automatische Abfrage in den Geräteeinstellungen deaktiviert und einen Flow erstellt, der die Daten nur 1x täglich um 00:30 abfragt.
Heute habe ich in Insights erneut nachgeschaut und folgende Werte für die gestrige Regenmenge festgestellt:
OpenWeather: 14.2 mm
(nach Aktualisierung der Daten um 00:30 Uhr heute Morgen)
Netatmo Regensensor: 6.0 mm
Tempest Wetterstation: 1.6 mm

Die 14.2 mm von Open Weather scheinen aber noch von vorgestern zu sein, deshalb habe ich eben eine manuelle Aktualisierung der gestrigen Wetterdaten von OpenWeather durchgeführt, und siehe da, der Wert hat sich auf 1.27 mm geändert! Dieser Wert ist aber deutlich wahrscheinlicher als die 14.2 mm.
Dennoch sind relativ große Unterschiede zwischen den beiden Wetterstationen und OpenWeather festzustellen. Welcher der drei Werte annähernd der tatsächlichen Regenmenge entspricht, kann ich momentan echt nicht sagen.

Vielleicht solltest Du in den nächsten Tagen die OpenWeather Regenmengen mal beobachten, und, wenn möglich, mit einem ortsansässigen Wetterdienst oder einer Wetterstation (z.B. Flughafen) vergleichen. Eventuell müsstest Du dann die Zeit des ersten Flows dahingehend ändern, dass der möglichst korrekte Regenwert vom Vortag berücksichtigt wird.
Auf dieser Internetseite sind übrigens alle öffentlich sichtbaren Tempest Wetterstationen zu finden, inkl. der Wetterdaten von Heute und Gestern:

Von Netatmo gibt es übrigens auch so eine öffentliche Seite, allerdings werden keine historischen Daten angezeigt:

Vielen Dank für den Hinweis, ich werde dies in den kommenden Tagen beobachten und mit einer Wetterstation von der Umgebung abgleichen.
Ich habe mir einen Flow erstellt, wo es mir von drei verschiedenen Wetter Vorhersagen die Daten in eine Tabelle schreibt. Nach einer Woche werde ich dann einen Vergleich machen.

Hallo zusammen, kleines Update. Da es bei uns seit Tagen wie aus Eimern regnet, hat die Test-Bewässerung noch nie gestartet, was ja auch korrekt ist.
Ich melde mich wieder, wenn es hoffentlich einmal 3 Tage nicht regnet oder zumindest nicht zu viel, so dass die Bewässerung ausgelöst wird.

So wie es momentan aussieht, wirst Du noch lange warten müssen… :cloud_with_rain:

Ja ich weiss, leider​:smiley::see_no_evil: