diese Anfrage bezieht sich auf das tolle Projekt von Cyrelian aus dem Jahr 2018... und da dieser Thread schon 16 Seiten hat, schreibt udo1toni, dass mal lieber ein neuer Thread aufgemacht werden soll...
Das Thread von Cyrelian beschreibt eicht ein Wahnsinnsprojekt! Und ist vermutlich jedes Frühjahr aktuell.
Bei mir läuft nun ein Wasserkreis mit Magnetventil und einem Sonoff über OH. Als Nichtprogrammierer tue ich mich offen gestanden sehr schwer den Rules-Code zu nachzuvollziehen. Anfangs hatte ich noch gehofft, dass alles „irgendwie“ per Copy&Paste in mein System zu überführen, doch die 16 Seiten Foreneinträge haben mir ganz schnell den Zahn gezogen.
Deshalb habe ich mir überlegt, ob es nicht möglich ist, das ganze System von den Anforderungen auf eine Kernaussage „Bewässere in Abhängigkeit von Regen IST und SOLL (Vorhersage) Werten“ zu reduzieren.
Wenn ich das OH System aus Bindgings, Things, Items und Rules richtig verstanden habe, müsste also eine Regel reichen die umgangssprachlich folgendes aussagt:
(DB = DauerBeregnung in Minuten, die berechnet wird)
Code: Alles auswählen
Starte jeden Montag, Mittwoch und Freitag um 03.00 Uhr
Wenn DB > 0, dann
Ventil auf
Warte DB Minuten
Ventil zu
Ende.
Die Beregnungsdauer könnte eine Funktion aus vorgegebenen Variablen und Werten von dem Wetterdienst sein:
Code: Alles auswählen
DB = DauerBeregnung (die gesuchte Zahl)
MB = Maximale Beregnungsdauer (ein Vorgabe durch den User)
MR = Maximaler Regen (eine Vorgabe in mm durch den User: Fällt mehr, dann keine zusätzliche Beregnung)
IR = IST-Regen (Niederschlag in mm gestern, durch Wetterdienst)
SR = SOLL-Regen (Niederschlag in mm Vorhersage durch Wetterdienst)
Code: Alles auswählen
DB = MB – ((IR+SR)/MR * MB)
Wo könnte denn dann eine solche Berechnung in OH stattfinden? Wie komme ich denn an die IST und Soll Werte? Das Wunderground-Binding habe ich eingebunden und steh jetzt ratlos da.
Wäre dieser Ansatz weniger komplex als das von Cyrelian, oder liegt der Teufel derart im Detail, dass es genau so umfangreich wird? Ich hoffe, dass ich hiermit jemanden anspreche die/der das Projekt auch klasse findet, die große Lösung auch respekteinflößend findet aber programmieren kann…
Mir ist auch klar, dass ich hier gerade nach viel frage – ich hab versucht den Programmbereich so klein wie möglich zu halten und verstehe aber die Zusammenhänge nur so lala… aber wäre das nicht einfacher als bei Cyrelian?
Kann mir jemand bitte helfen?
Danke euch!
Martin