Mein Smart Rainsensor ist über den Cloudservice WeatherUnderground (WUnderground) mit meiner eigenen Wetterstation (PWS) verbunden. Er steuert mithilfe des Smarthouse Controllers VERA meine Bewässerungsanlage anstatt eines einfachen (Trocknungszeit-)Regensensors. Der Smart Rainsensor betrachtet nicht einfach einen Zeitpunkt, sondern einen Zeitraum über mehrere Tage in der Vergangenheit und Zukunft. Der Smart Rainsensor benutzt dabei Ist-Wetterdaten aus meiner eigenen PS-Wetterstation und Prognosen von WUnderground. Er berechnet aus Standort, Jahreszeit, Temperatur, Wind und Luftfeuchtigkeit den Wasserverbrauch der Pflanzen. Das wird dann mit der Regenmenge verglichen, die in dem Betrachtungszeitraum angefallen ist und die erwartet wird.
Das Problem und das Lösungskonzept
Ein normaler (Trocknungszeit-)Regensensor betrachtet einen Zeitraum von wenigen Stunden, um zu entscheiden, ob es trocken oder nass ist. Hat es vorher kräftig geregnet oder ist in Kürze Regen zu erwarten, dann kann diese Entscheidung falsch sein. Deshalb will ich einen längeren Zeitraum betrachten. Die Betrachtungsperiode ist u.a. abhängig von der Pufferkapazität des Bodens, der Art der Pflanzen und der Güte der Prognose. Nach einigem Probieren habe ich 4 Tage Vergangenheit, heute und 2 Tage Zukunft ausgewählt.
Die Niederschlagsmengen variieren bei uns sehr kleinräumig. Der deutsche Wetterdienst hat für meinen Standort keine brauchbaren Daten. Deshalb benötige ich diese Daten aus einer eigenen Personal Weather Station (PWS) im Garten oder aus engster Nachbarschaft. Die historischen Daten von Nachbar-PWS sind inzwischen nicht mehr kostenlos bei den Wetter-Cloudservices verfügbar. Deshalb war eine eigene PWS unabdingbar. Ich wollte meine Wetterstationsdaten auf unkomplizierte Art auch von unterwegs abrufen können. Deshalb lasse ich diese Stationsdaten von einem Cloudservice hochladen. Von dort kann ich sie beliebig abfragen und auch trage-gerecht aufbereitet für den Smart Rainsensor per API abrufen. Ich habe den (kostenlosen) WUnderground Service ausgewählt, weil er zuverlässig ist und auch Prognosedaten zur Verfügung stellt.
Die Realisierung
Hier folgt ein Gesamtüberblick über die Systemkomponenten und die Wirkweise. Einzelheiten zu Abläufen, Programmen und Konfiguration finden sich im Beitrag Smart RainSensor = VERA Sitesensor-App + PHP-Script + WUnderground-API.
Das System kann mit wenigen Parameteränderungen für andere Wetterstationen eingesetzt werden.
- Feld 1: Status des Regensensors. Ist der Gesamt-Bewässerungsbedarf (=Wasserverdunstung minus Regen, siehe Feld 4) negativ, dann geht der Status auf StopWater. Die Bewässerungsanlage wird abgeschaltet. Dies kann auch dann der Fall sein, wenn es einige Tage nicht geregnet hat. Oder umgekehrt: Die Bewässerung kann u.U. laufen, während es leicht regnet
- Feld 5: Betrachtungszeitraum. Er ist wählbar,
hier sind die Tage |-4|-3|-2|gestern|heute|morgen|+2| ausgewählt. Das Feld ist als Spaltenüberschrift für die Felder 6 bis 8 zu verstehen. - Feld 2: Gesamtsumme Regen im Betrachtungszeitraum in mm (Ist & Prognose)
- Feld 6: Tagessummen Regen mm (Tage vgl. Feld 5)
- Feld 3: Gesamtsumme Wasserverdunstung der Pflanzen im Betrachtungszeitraum in mm (Ist & Prognose)
- Feld 7: Tagessummen Wasserverdunstung in mm (Tage vgl. Feld 5)
- Feld 4: Gesamt-Bewässerungsbedarf (=Wasserverdunstung minus Regen) im Betrachtungszeitraum in mm (Ist & Prognose)
- Feld 8: Tages-Bewässerungsbedarf in mm (Tage vgl. Feld 5)
Die PWS ist über den Gastzugang des WLAN mit dem Cloud Service WUnderground verbunden. (Über diesen Zugang ist nur das Internet und nicht mein Heimnetz erreichbar.) Die Außenstation der PWS ist per 800-MHz-Funk mit der Innenstation verbunden. WUnderground erhält in ca. 10 min Intervallen die Wetter-Messdaten von der PWS und speichert sie. Die aufbereiteten Daten stehen für diverse Anzeigen im Browser bzw. in Smartphone Apps zur Verfügung. Zusätzlich ist eine Download API verfügbar.
Auf VERA ist die App SiteSensor so konfiguriert, dass sie periodisch die notwendigen Wetterdaten besorgt und prüft, ob eine Abschaltung der Bewässerung erforderlich ist. Da die Aufbereitung der Daten ziemlich aufwendig ist, habe ich ein Skript auf meinem Webserver zwischengeschaltet. (Nebennutzen: Die Zugangsdaten meines PWS sind VERA nicht bekannt.) SiteSensor ruft also dieses Skript auf. Das wiederum ruft die WUnderground API auf, verarbeitet die Daten und liefert an SiteSensor die Resultate zurück. SiteSensor wertet die Resultate des Skripts aus, triggert bei Bedarf eine Scene, die dann den Bewässerungsschalter steuert.
Die Anbindung ist einfach: Der normale Regensensor der Bewässerungsanlage wird durch einen Z-Wave-Schalter ersetzt, der durch VERA gesteuert wird.
Der Wasserbedarf der Pflanzen, genauer die Evapotranspiration wird mithilfe der Penman-Monteith-Methode errechnet, siehe Irrigation and drainage Paper 56 der FAO (Food and Agriculture Organization of the United Nations).
Als PWS wird eine kostengünstige (130 EUR) Wifi-Wetterstation (mit Solarstromversorgung, Regen-, Windsensor etc.) von
Froggit bzw. Shenzhen benutzt. Die Upload-Verbindung zu WUnderground (IBM) ist problemlos möglich und man erhält somit einen kostenlosen API Key zum Download der Daten.
Für WheatherUnderground war bis 2017/2018 bei VERA eine sehr nützliche App VirtualRainsensor verfügbar. Diese App habe ich bis Herbst 2018 benutzt und dabei auf PWS Wetterdaten aus der Nachbarschaft zurückgegriffen. Nach dem Kauf von WUnderground durch IBM funktioniert die App nicht mehr. Die API ist verändert und man erhält nur noch dann einen kostenlosen API-Key, wenn man PWS-Daten für WUnderground zur Verfügung stellt. Deshalb habe ich mir eine PWS Wetterstation beschafft und einen Smart RainSensor auf neue Weise realisiert.
Wer einen VERA Smarthouse Controller benutzt, kann den Smart Rainsensor sehr einfach nachbauen. Das Skript sollte auf jedem Webserver praktisch unverändert laufen. Es benötigt nur eine Handvoll Parameteränderungen (Wetterstationsdaten, WundergroundID’s,…). Auch die Konfiguration der App Sitesensor kann bis auf die Skript-URL unverändert bleiben.
Einzelheiten siehe Smart RainSensor = VERA Sitesensor-App + PHP-Script + WUnderground-API .
Dieser Beitrag gehört zur Themengruppe
Smarthouse Apps und Tools, Smarthouse Schnittstellen und Integration
VERA bietet viele und sehr verschiedenartige Apps an. Die meisten sind kostenlos. Vielfach koppeln die Apps Drittsysteme an. Zusätzlich finden sich diverse Hilfsmittel zur Automatisierung. Dies reicht vom einstellbaren Tag-Nacht-Schalter, über virtuelle Logik-Devices bis hin zu Makrosprache für die Abbildung komplexer Ablauflogik. Daneben sind alternative Benutzeroberflächen verfügbar. Bei aller Begeisterung für die vielfältigen Apps darf man deren Speicherbedarf nicht übersehen. Er kann nämlich erheblich sein. Darüber hinaus können Apps beträchtliche Prozessorlast verursachen. Je mehr Apps man einsetzt, desto mehr nimmt die Wahrscheinlichkeit von Schnittstellen Problemen zu. Zusätzlich besteht gerade bei Entwicklungs-Apps ein Risiko infolge der zukünftigen Veränderungen der VERA Plattform. Also ist eine sorgfältige und zurückhaltende Auswahl von Apps anzuraten.
- VERA WerkzeugeVERA bietet viele kostenlose Werkzeuge zur Unterstützung von Administration und Entwicklung. Davon führe ich hier nur die VERA Werkzeuge auf, ...
- VERA: Logic Device AppsZur Verkettung von scenes benötigt man vielfach eine Logik Variable. Deren Zustände sollen als SceneAction gesetzt werden können. ...