Beiträge von MaxHaksleFax

    Und was passiert an einem sehr heißen Tag mit einem Gewitter mit Wolkenbruch um 20:30 Uhr?

    Mittlerweile habe ich das Skript erweitert, aber noch nicht getestet.
    Accuweather liefert relativ viele Daten zu Regen etc. von daher war es relativ viel Schreibarbeit im Code, da sowohl Tag, als auch Nacht abgefragt & mit Grenzwerten verglichen werden müssen. Zudem wird nach Regen und Gewitter unterschieden. Lediglich die Gesamtniederschlagsmenge ist ein zusammengefasster Wert...

    Nach der Temperaturabfrage werden jetzt noch 6 weitere Parameter abgefragt, die das Bewässern wieder "zurücksetzen" können (jeweils Tag & Nacht: Regen-& Gewitterwahrscheinlichkeit, Gesamtniederschlagsmenge)

    Moin,

    da ich mir viele Inspirationen und Hilfe hier im Forum durchs Lesen von Userbeiträgen geholt habe wollte ich nun auch mal mein bisher längstes/größtes Skript hier veröffentlichen.

    Es ist eine Bewässerungssteuerung, die die zu erwartende Tageshöchsttemperatur bei Accuweather abfragt und je nach Ergebnis in 3 Staffelungen die Bewässerungsdauer abends schaltet. Das Skript läuft auf einem der derzeit 2 eingesetzten Shelly Pro 2, der zweite Shelly auf der anderen Hausseite wird übers Netzwerk mit angesteuert (ohne eigenes Skript). So kann man bis zu 4 Ventile (Pro Ausgang 1) theoretisch ansteuern. Zur Funktion: Morgens Temperaturabfrage, zur Abendzeit gibts ne Meldung per SIGNAL aufs Handy, dass man (wenn bewässert werden soll) gefälligst den Garten aufräumen soll, um 21Uhr beginnt dann die Bewässerung mit unterschiedlichen Schaltzeiten nach Tageshöchsttemperatur. An dem Shelly ist noch ein Taster angeschlossen (Einstellung im Setup natürlich als unabhängiger Eingang, ohne direkte Verknüpfung zum Ausgang), mit dem man manuell ein- und ausschalten kann. Tastendruck < 2 Sek. einfaches ein- und ausschalten ohne Zeitsteuerung, drückt man länger als 3 Sek. wird für eine pauschale Zeitlänge eingeschaltet und geht dann wieder automatisch aus (spart für Faule wie mich den zweiten Gang zum Taster ein bzw. die Kids wissen, wenn Wasser aus, dann Wasserspiele vorbei ;) ). Wenn manuell bewässert wurde, wird nicht nochmal extra automatisch bewässert. Das Ein-/Aus Verhalten wird über die Abfrage des ersten Schaltausgangs realisiert, so dass man die automatische Bewässerung auch abbrechen kann, ohne dass man Laufzeitmerker o.ä. mitschleppen muss.

    Das Skript ist sicherlich nicht perfekt, da JavaSkript nicht meine primäre Programmiersprache ist, da gibt es noch Verbesserungspotential, auch die Fehlerabsicherung ist alles andere als ausgereift. Auch die gestaffelte Bewässerungsdauer könnte man optimieren, derzeit ist nur ein Start zur ganzen Stunde +58min Laufzeit möglich. Kann man ändern, indem man dann bei Minuten > 60 die Std erhöht und die Minuten entsprechend ausrechnet - war ich aber zu faul für, das es für mich ausreicht und die Bewässerung nicht dynamisch 8 Minuten nach Sonnenuntergang angehen muss :)

    Viel Spaß damit, wer (Teile) davon als Inspiration verwenden mag