Die mit ** gekennzeichnete Links auf dieser Seite sind Affiliatelinks. Als Amazon-Partner verdiene ich an qualifizierten Verkäufen.
Für das Projekt Pflanzensensoren müssen vorab folgende Schritte ausgeführt werden.
Zusätzlich wird folgendes benötigt:
Bilder der benötigten Bauteile VERSION 1
Bilder der benötigten Bauteile VERSION 2
Ja es gibt eine 2. Version! Nach ca. 1-2 Wochen hat mein Sensor kaum noch korrekte Werte geliefert. Meine Frau hat fleißig die Blumen gegossen (und meinte, dass sie im Leben noch nie so oft die Blumen hintereinander gegossen hat) und trotzdem meinte FHEM, dass immer noch Wasser fehlt.
Ja, nach 2 Wochen hat mein Sensor tatsächlich so ausgesehen.
Im Internet habe ich zwar gelesen, dass es damit wohl Probleme gibt. Aber dass diese nach 2 Wochen schon auftreten hat mich dann doch sehr verwundert.
Der Sensor hat sich auf beiden Seiten aufgelöst. Es musste also ein Lösung her.
Aus diesem Grund gibt es jetzt die Version 2.
Beide Versionen sind, was die elektronische und die ESPEasy Konfiguration angeht, identisch.
Dank eines Hinweises aus dem FHEM Forum habe ich den Schaltplan und die ESP Easy Konfiguration komplett überarbeitet. Somit sollte das Zerstören des Sensors nicht so schnell auftauchen. Laut Forumsbenutzer müsste der Sensor dann einige Jahre sauber funktionieren.
Für den Pflanzensensor habe ich ein eigenes Gehäuse entworfen. Auf den Einbau der NodeMCU habe ich ganz bewusst verzichtet. Damit halte ich mir die Möglichkeit offen, an den NodeMCU noch weitere Sensoren anzuschließen.
Wie immer basiert diese erweitere Konfiguration auf der bereits vorab getätigten Firmware Installation mit anschließender Grundkonfiguration.
Damit der Sensor nicht dauerhaft mit Strom versorgt wird müssen drei Devices definiert werden. Folgende Devices werden benötigt:
Zuerst legen wir ein "Schalter" Gerät an. Folgende Konfiguration muss hier gemacht werden:
Folgende Konfiguration wurde von mir gemacht
Folgende Konfiguration wurde von mir gemacht
Zum Abschluss müssen noch div. Rules angelegt werden, hierzu die Registerkarte "Rules" auswählen. Wenn die Registerkarte nicht vorhanden ist, könnt Ihr hier schauen wie diese aktiviert wird.
In diesem Beispiel ist der Sensor nur zwischen 07:00 Uhr und 20:00 Uhr aktiv. Er prüft dann alle 3600 Sekunden für ca. 2 sek. den Wert der Bodenfeuchte.
Das Skript ist in 4 Bereiche unterteilt
On System#Boot do
gpio,14,1
timerSet,1,10
timerSet,3,10
endon
On Rules#Timer=1 do
if [Pflanze_001#IsInTime] = 2
gpio,14,1
timerSet,2,2
else
timerSet,1,60
Endif
endon
On Rules#Timer=2 do
TaskValueSet 3,1,[Sensor_Pflanze#Analog]
gpio,14,0
timerSet,1,3600
endon
On Rules#Timer=3 do
If %systime% > 07:00:00
TaskValueSet 3,2,1
else
TaskValueSet 3,2,0
Endif
If %systime% < 20:00:00
TaskValueSet 3,2,[Pflanze_001#IsInTime]+1
Endif
timerSet,3,10
endon
On startsensor do
gpio,14,1
timerSet,2,2
endon
Nach der kompletten Konfiguration solltet Ihr noch mal einen Reboot durchführen.
Wenn der Sensor sauber arbeitet, sollte er in der Übersicht seinen aktuellen Wert anzeigen.
Version 1: Folgende Werte zeigt mein Sensor an:
Version 2: Folgende Werte zeigt mein Sensor an:
In der Regel können diese Werte so übernommen werden.
Jetzt kann der neue Sensor in FHEM angepasst werden. Sobald das Device zum ersten mal Daten an den Controller sendet, erscheint das Device in dem FHEM Raum "ESPEasy"
Folgende Attribute wurden von mir noch angepasst
Hier das fertige Ergebnis.
Zum Anzeigen des aktuellen Status habe ich mir noch zusätzliche FHEM Icons und eine "readingsGroup" erstellt.
Wer möchte kann sich hier die FHEM Icons herunterladen. Die Icons müsst ihr dann in das Verzeichnis "../fhem/www.images/fhemSVG" kopieren. Danach einfach euren FHEM Server neu starten, und schon könnt Ihr die neuen Icons nutzen.
Wer möchte kann jetzt noch ein SVG Plot erzeugen
Kommentar schreiben
Rico (Freitag, 04 Mai 2018 16:30)
Einfach nur schön wie das beschrieben wurde. ESP und fhem die beste kombi 4ever.
Christof (Donnerstag, 16 August 2018 08:41)
Super Beitrag! Hat mir sehr geholfen. Vielen Dank.
Mich würde noch interessieren, ob Du den Sensor an einer Battery betreibst und wenn ja, wie Du das mit dem Sleep Mode umgesetzt hast.
zebbl (Montag, 29 April 2019 13:33)
Super Beschreibung... Ich hab das ganze grad mit einem Wemos Mini D1 in Betrieb genommen. Die Frage wäre nun noch, ob es auch machbar wäre mehrere Feuchtigkeitssensoren an einem D1 zu betreiben?
Toni (Dienstag, 18 Juni 2019 11:45)
Danke für die tolle Anleitung, werde ich direkt mal umsetzen. Ich habe allerdings keinen FHEM Server - wäre die Abfrage auch über MQTT realisierbar? Bin da jetzt nicht so der Fachmann, aber was muss außer den MQTT Einstellungen noch verändert werden?
LG Toni
Harald (Freitag, 19 Juli 2019 10:08)
Auch von mir besten Dank. Ich habe etwas ganz ähnliches realisiert, allerdings zusätzlich zum Analogeingang meines WeMos Mini D1 nutze ich ein ADS1115 mit I2C-Bus und habe damit alles in allem 5 Feuchtesensoren. Meine Anzeige habe ich zudem auf Werte zwischen 0 (trocken) und 10 (im Wasser) kalibriert. Weiter habe ich die lange Leitung nicht zwischen WeMos und Sensoreinheit sondern zwischen Sensor und Messfühler angelegt. Ich hatte einen "Trockenversuch" mit 100 m Kabel und daraus keinen Einfluss wahrnehmen können. Im Realbetrieb sind es aber max. ca. 10 m Kabel.
Leider habe ich aber bei keinem der 5 Sensoren eine wirklich zuverlässige Angabe. Die Änderung der Spannung ist anscheinend von wesentlich mehr Faktoren abhängig als nur von der Feuchtigkeit. Da überlege ich mir noch eine Verbesserung. Vielleicht bringt ja Deine Version 2 da eine bessere Empfindlichkeit? Ich habe mir auch schon überlegt, die Spitzen in einen durchlässigen Schaumstoff zu packen, dass der direkte Kontakt zur Erde nicht ist.
Zu den Rules: Ich habe das bei mir so realisiert, dass alle drei Stunden für eine Minute im 10-Sekunden-Takt gemessen wird und FHEM dann daraus den Median entnimmt. Einzelwerte hatten eine zu große Streuung und zudem habe ich den Eindruck, dass die Spannung doch eine gewisse Zeit anliegen muss, bis sich ein einigermaßen stabiler Wert einstellt. Vielleicht war das aber auch ein Irrweg. Auf jeden Fall ist mein System noch nicht so weit, dass ich ihm die alleinige Kontrolle über meine Blumentopfbewässerung überlassen will.
Sleepmodus: Ist ganz einfach über die Rules zu realisieren. Im Anschluss an eine Messung wird Sleep aufgerufen für 1 Stunde (die Zeit muss man schätzen, die interne Uhr ist da nicht so genau). Ist dann die volle Stunde nicht gleich einem der festgelegten Werte, geht der WeMos gleich wieder schlafen. Es muss der WeMos mit Verbindung von Pin16 zu Ground selbstverständlich vorbereitet sein.
Reimund (Mittwoch, 13 November 2019 12:48)
Kann man auch ein Relais ansteuern. Wenn trocken dann Relais gewisse Zeit anschalten
Sascha (Mittwoch, 15 April 2020 13:18)
Hallo Michael,
erstmal ein super Lob und ein Dankeschön für diesen Beitrag und Zusammenstellung.
Ich habe momentan testweise 3 Stück dieser Sensoren im Einsatz, 2 davon batteriebetrieben, einer mit Netzteil.
Bis jetzt läuft alles super.
Kann man die jetztigen Metallstifte, gegen länger austauchen und auch in großen Kübeln die Feuchtigkeit messen?
Ich dacht z.b. an Fahrradspeichen?
Danke dir schon mal
Sascha
Michael Winkler (Mittwoch, 15 April 2020 13:25)
Hallo Sascha,
so etwas habe ich noch nicht probiert. Wüsste aber nicht was dagegen sprechen sollte. Probiere es einfach mal aus, und lass mich wissen ob es funktioniert hat.
Gruß
Michael
Markus (Mittwoch, 08 Juli 2020 10:11)
Hallo Zusammen,
prinzipiell funktioniert das auf meinem WemosD1 aber das Skript berücksichtigt irgendwie nicht die timer. Soll heissen nur "event,startsensor" funktioniert um Daten zu aktualisieren.
Habe die selbe Firmware verwendet um sicher zu gehen. Systime ist auch in Ordnung.
Einer eine Idee?
Gruß
Markus
Matthias (Montag, 07 September 2020 22:21)
Ich habe den Einstellungen Devices-Task Settings die Two Point Calibration enabled und einfach mal den Point 1 auf 0 größer/gleich 100 und den Point 2 auf 1000 größer/gleich 0 gesetzt. Dadurch bekomme ich gleich 0-100 Prozent in mein fhem geliefert. Sollte total nasse Erde bei dem genutzten Feuchtemesser kleinere Werte als 1000 liefern, so ist dies entsprechend zu ändern. Ich bin mittlerweile mit 2 8mm Gewindestangen als Bodenfühlern unterwegs. Vielen Dank nochmal für die Vorarbeit. Klappt alles prima.
Werner (Dienstag, 23 Februar 2021 23:42)
Ich möchte meinen WEMOS nach der Messung wieder für 3 Stunden schlafen legen (DeepSleep). Wo muss ich in den Rules den DeepSleep Befehl einbinden.
Vielen Dank für einen Tipp
Michael Winkler (Mittwoch, 24 Februar 2021 13:10)
Den Deep Sleep würde ich in der Rule "Rules#Timer=2" setzen. Der ist dafür verantwortlich den Wert an FHEM zu schicken. Zusätzlich müsstest Du aber auch noch den Zeitraum dafür betrachten. In meinem Beispiel wird der Wert ja nur zwischen 07:00 und 20:00 Uhr ausgewertet. Daher solltest Du in der Rule "Rules#Timer=1" im else Zweig auch noch einen Deep Sleep setzen.
Werner (Freitag, 26 Februar 2021 09:23)
Jeder Versuch mit "deepSleep, 10800" bringt in meinem LOG des Feuchtesensor nach 50 Minuten einen Eintrag. In der Firmware Config sehe ich das ich Einträge bis 13680 sec, machen könnte aber irgendwo steckt da ein Fehler. Ich finde auch keinen Weg herauszubekommen wie groß die maximale deepSleep Zeit sein könnte (deepSleep max kann ich ancheinend in den Rules nicht verwenden.
Michael Winkler (Freitag, 26 Februar 2021 14:11)
Du kannst ja mal mit dem Tool https://mwinkler.jimdo.com/smarthome/esp-easy/espeasy-syslog/ einen Mitschnitt machen und mir zukommen lasen. Gerne auch per Kontaktformular. Die alten ESPEasy Versionen konnten max. ca. 71 Minuten in den Deep Sleep. Die höheren Werte habe ich selber auch noch nicht ausprobiert.