Sensoren für Bodenfeuchte

Kleiner Exkurs: Wurzeltiefe von Stadtbäumen:

1 Like

Spannendes Projekt, ist ja schon fast das wonach ich in #2 gefragt habe:

https://www.element14.com/community/community/project14/theholidayspecial19/blog/2020/01/12/deck-the-halls-with-holiday-flowers-and-keep-them-alive

Dort ist auch ein I2C-Feuchte-Sensor (@wtf I2C direkt auf dem Bord, d.h. ADC ganz nahe an der Analog-Quelle :-) gelistet: https://www.tindie.com/products/miceuz/i2c-soil-moisture-sensor/ Nicht soooo günstig, aber es gibt so was!

[edit] Unter Testing Capacitive soil moisture sensors gibt es einen Vergliech des I2C-Sensors mit den günstigen kapazitativen Sensoren. Dort wird auch das Thema deep sleep / Energiesparen angesprochen. In der Tabelle gibt es ein *) die zugehörige Fußnote fehlt leider.

Und Adafruit hat auch einen I2C Capacitive Moisture Sensor im Angebot.

Bei https://www.az-delivery.de/products/plant-watering-alarm-feuchtigkeitssensor?_pos=1&_sid=74861f784, Vorlage vermutlich chirp! - the plant watering alarm, gibt es auch einen mit I2C, nur etwas bulky wegen Summer und Batteriehalter mit drauf.

Einen kapazitativen gibt es auch komplett mit ESP auf dem PCB als TTGO T-Higrow das Ganze kommt wege Korrosion schlecht weg.

2 Likes

Hatte mir welche [edit bei AZ-Delivery] bestellt und die sind … nicht wirklich zu gebrauchen. Es gab wohl batches mit TLC555, die mit 3,3 V noch funktionierten. Meine gelieferten haben jetzt einen NE555 verbaut und mit einem 3,3 V Heltec Cube Cell oder auch einem 3,3 V Arduino Nano 33 IoT-board laufen die bei mir nicht. :-(

Recherchen bei diversen Angeboten auf Amazon lassen vermuten, dass aktuell der NE555 verbaut wird und mit dem meckern massig ESP-user, dass es nicht funktioniert.

1 Like

Hier noch was aktuelles:
https://hackaday.com/2021/03/14/your-plants-can-take-care-of-themselves-now/

2 Likes

Vielen Dank. Hier noch gschwind die expliziten Links zum Video und zum GitHub Repository.

Ich bin bei AZ-Delivery Produkttester und habe sowohl den Sensor mit Stromfluss, als auch den Kapazitiven im Einsatz (kenne auch die Seiten von Spieß.) und kann die bisher beschriebenen Erfahrungen unterschreiben, der eine korridiert (ob der andere später auch, weiß ich noch nicht, so lange sind sie nicht im Einsatz.)

Ich habe den oberen Teil komplett mit Heißkleber gegen Ausseneinflüsse abgetrennt, bisher hat es ganz gut funktioniert, wobei irgendwann durch den Kapilareffekt warscheinlich auch Feuchtigkeit zwischen Platine und Kleber durch kommt, besonders, wenn im Winter das Teil unter dem Schnee liegt.

Bisher läuft es aber und ich hoffe, dass ich an den Messwerten sehen kann, wenn die Messungen nicht mehr taugen und würde den dann auswechseln. Bei solchen Sensoren bin ich inzwischen der Meinung, es ist ein Verbrauchsgegenstand, so wie zB Wasserfilter (welchen ich aber nicht aus eigener Erfahrung kenne.)

Welchen chip hat dein kapazitiver Sensor denn verbaut? Wie gesagt läuft meiner mit dem NE555 an 3,3 V überhaupt nicht und “ganz gut funktionieren” tut leider gar nichts.

Ein batteriebetriebenes low power-System mit 3,3 V macht auch nur bedingt Sinn und ich möchte ein stromsparendes LoRa-Board dafür verwenden, d.h. 5 V ist für den Anwendungsfall keine Option, läuft dein System mit 5 oder 3,3 V?

Was ist das und wie beeinflusst das deine Bewertung? Falls du da einen kurzen Draht zu AZ-Delivery hast, gerne mal rückmelden, dass der Sensor so Mist ist. Das dumme ist, dass er mit der gleichen Versionsnummer und Bezeichnung Capacitive Soil Moisture Sensor v1.2 früher mit einem anderen chip, nämlich dem TLC555 verkauft wurde und damit mit 3,3 V funktionierte. Dann wurde ohne erkennbare äußere Änderung oder bei der Bezeichnung der chip getauscht und alle online-Tutorials und Beschreibungen, die z.B. mit einem ESP das Ding betrieben haben sind hinfällig und funktionieren nun nicht mehr. Da liegen bestimmt hunderte jetzt in irgendwelchen Ecken als Elektroschrott.

Das beeinflusst gar nicht meine Bewertung. Produkttester heißt in unregelmäßigen Abständen bekommst du die Möglichkeit vorgegebene Produkte zu bestellen und bekommst den Kaufpreis erstattet, wenn du das Produkt bewertest.
Du beeinflußt damit aber keine weiteren Käufer, da die Bewertung direkt per Mail an AZ-D geht. Es ist egal, ob positiv, negativ oder nur ein Einsatzszenario beschrieben wird.

Dadurch sammeln sich aber auch Bauteile, die ich so nicht direkt ohne Bedarf kaufen würde, die aber dann für Experimente im Magazin liegen.

Die fehlerhafte Verarbeitung habe ich nicht, da ich den Sensor mit 5V betreibe. So steht es auch im Datenblatt auf der Produktseite von AZ-Delivery. Aber in den Bewertungen des Produktes bei einem Vertrieb mit A… steht genau deine Beobachtung beschrieben, wobei ich nicht sehen kann, woraus hervorgeht, dass 3,3V möglich sein sollen (bei diesem Bauteil).

Es gibt aber noch einen, den oben auch schon erwähnten, weiteren Sensor, der als Blumenwächter gedacht ist (läuft sogar Stand Alone mit CR2032 und Beeper). Dieser enthält auch eine SPI Schnittstelle und soll mit 3,3 V laufen. Die habe ich aber noch nicht angeschlossen und getestet. Infos dazu mit Code und Diagrammen findet man, wenn man nach “Ardafruit Chirp” sucht.

nein, es ist I²C. Außerdem hat das Ding noch einen AVRISP (da ATTiny44) und damit doch wieder SPI. ;)

1 Like

Das stand-alone-Teil hatte ich mir damals auch mitbestellt:

Es ist vermutlich eine frühe Version / clon des schon oben verlinkten Chirp-boards https://www.tindie.com/products/miceuz/i2c-soil-moisture-sensor/

Ich bekomme es nicht recht ausgelesen, verwendete lib:

Der Sensor Wert für die Feuchte ist immer konstant und ändert sich nicht. Entweder ich habe noch einen Fehler drin oder der code ist nicht abwärtskompatibel (das aktuelle Chirp board hab einen Licht- und Temperatursensor zusätzlich) bzw. das Gerät doch anders als das Original.

Für meinen Bedarf ist es mit dem buzzer, Knopfzellenhalter und dem seitlichen 2x3 I2C-pins eh unpraktisch und unhandlich.

Habe jetzt den Gravity: Analog Waterproof Capacitive Soil Moisture Sensor - DFRobot hier liegen. Auf dem Foto im DFRobot-Shop steht noch V0.3, von Mouser habe ich die Tage einen mit der aufgedruchten Versionsnummer V1.0 bekommen. Das Kabel ist etwas starr und unflexibel. Der Sensor wird mit um die 15 EUR als waterproof beworben. Dachte von den Fotos her, das sei oben vergossen. Tatsächlich ist ein Gehäuse um die Elektronik herum, ob das tatsächlich wasserdicht ist?

Momentan ist der Sensor an einem 3,3 V-Arduino Nano 33 IoT angeschlossen und liefert im trockenen Zustand, d.h. an der Luft ca. 2,8 V und in einem Glas Wasser 0 V. Ich wollte wissen was die maximale output voltage ist, da der olle CubeCell ja nur 2,4 V maximal abkann. Das ist laut Nachfrage im Heltec-Forum übrigens die maximale Spannung, die der pin verträgt und nicht nur die, die er messen kann! Sonst hätte ich gesagt, 2,8 -2,4 V vom Sensor, d.h. sehr sehr trocken bis sehr trocken interessiert mich eh nicht und ich schließen den auch als 3,3 V-Sensor direkt an, ist wohl nicht so gesund! :frowning:

Jetzt überlege ich, ob ich beim Heltec bleiben soll oder ein anderes Board dafür verwende. Problem ist hierbei, dass der Sensor 5,6 mA verbraucht, d.h. ohne switched source wird das mit deep sleep nichts, da wäre der Heltec schon ok. Bleibt vermutlich nur einen ADS1115 zu verwenden, hätte den Vorteil, dass ich dann auch 4 Analog-Eingänge hätte, der Heltec hat nur drei und einer ist von der Batterie belegt.

Hast Du noch einen 100- und einen 470Ω-Widerstand rumliegen? [Edit: Spannungsteiler allein ist keine gute Idee, siehe Folgepost von @weef.]
https://www.digikey.de/de/resources/conversion-calculators/conversion-calculator-voltage-divider

Aber ja, vielleicht lieber über nen ADS1115 … der eine ADC-Wandler is ja schon vmtl. schön mit dem Akku verdrahtet …

neenee, dat geht nich so einfach.

Wir wissen noch nichts über die maximale Last, die das Ding zu speisen in der Lage ist (ich habe kein Datenblatt oder gar Schaltbild davon gesehen), das ist ein analoger Ausgang, der gewiß nicht 570 Ω (die Summe Deiner Widerstände Richtung GND) treiben kann, d.h. dessen Ausgansspannung bricht zusammen. Könnte aber passieren, daß dies nur bei max.Strom so ist (also “trocken”), und bei kleinen Ausgangsspannungen sogar noch klappt (da Laststrom kleiner). Damit wäre das Ausganssignal durch diesen ‘Signal-Konditionierer’ verfälscht, da nicht mehr linear, das kannste nich machen.

Dafür braucht es einen Impedanzwandler a.k.a. Einser-Verstärker, oder auch Spannungsfolger genannt, der den Ausgang ‘enkoppelt’ und niederohmig bereitstellt. An den Ausgang dieses OPAmps würde man den von Dir beschriebenen Widerstandsteiler dann anschließen (und das dann an den ADC führen). - Über diesen Teiler fließen außerdem ständig fast 3mA nach Masse (im Falle von “trocken”), auch dies nicht im Sinne der Energieeinsparung.

Wenn man die gennanten Widerstandwerte proportional vergößert und am Ende bei 100k und 470k ankommt, dann könnte es vielleicht klappen (dadurch schlechtere SNR ist bei dieser Anwendung egal).

3 Likes

Hier ist noch der Schaltplan des DFRobot-Sensors (PDF) von oben, falls es interessiert:

Seeed’s Variante:

Danke, OK, - hätte ich finden können! ;)
Das ist wieder so ein Schaltplan… die nehmen alle Altium, aber besser lesbare Schaltpläne kommen nicht automatisch dabei heraus…Vor allem haben sie glatt den eigentlichen Bodensensor in ihrem Plan weggelassen… (welchen A.Spiess in seinem Video noch in den Schaltplan eingezeichnet hat; ca. 7’20’') m(

Ich bevorzuge dann die Zeichnung von TheCavePearlProject:
https://edwardmallon.files.wordpress.com/2020/10/2021-03-04_updatedsoilsensorschematic-2.jpg?w=625&h=300

Genau das macht Seeed bei seiner Version (Einfärbungen von mir nach Funktionsgruppen wie bei TheCavePearlProject). Der Sensor ist hier nur eine Box, daß sie einen Kondensator darstellt, der einseitig an GND ist, kann man auch hier nicht erkennen (und R7 haben sie komplett vermurkst: ein Kondensator namens “R7” mit “1M”?!?):

Aber immerhin nutzen sie einen Spannungsfolger (U2A + Außenschaltung), um den Sensor hochohmig abzunehmen. Der OPAmp treibt außerdem den Tiefpaß R6/C7. - Bei dieser Schaltung verändert immerhin das unterschiedliche Belasten des Ausgangs nicht mehr die Ladung des Kondensators “R7” und damit den Sensorwert…

Allerdings auch widersinnig, daß sie einen NE555 verwenden, aber einen LMV358 (die low-voltage-Variante des LM358, die perfekt zum TLC555 passen würde). - Der Umbau auf 3V3-Betrieb für den DFRobot-Sensor ist hier beschrieben, das könnte eine Lösung sein, @clemens - natürlich nur für PCBAs mit dem TLC555.

2 Likes

DFRobot Capacitive Soil Moisture Sensors

Aktuell hat DFRobot zwei kapazitive Sensoren im Angebot, die ich vor einer Zeit mal bestellt habe. Man könnte nun meinen, die eine Version sei nur wasserdicht, die andere nicht, ansonsten sind die Sensoren gleich. So ist es aber nicht. Sie unterscheiden sich auch in diversen Punkten (Größe, output voltage) und ihrem Verhalten.

Gravity: Analog Waterproof Capacitive Soil Moisture Sensor

Artikel-ID: SEN0308, https://www.dfrobot.com/product-2054.html

Supply Voltage: 3.3 - 5.5 V
Output Voltage: 0 - 3 V

SEN0308-detail-002_564x376

Gravity: Analog Capacitive Soil Moisture Sensor

Artikel-ID: SEN0193, https://www.dfrobot.com/product-1385.html

Supply Voltage: 3.3 - 5.5 V
Output Voltage: 1.2 - 2.5 V

Vergleich

Der Wasserdichte ist ca. 1 1/2x so groß wie der untere. Output voltage ist beim günstigeren nur 1,2 bis 2,5 V, der wasserdichte deckt mit 0 bis ca. 3 V einen weiteren Bereich ab, was erst mal nicht tragisch wäre wenn …

Bei meinem Test mit einem Glas Wasser war beim günstigen Sensor der maximale Wert für “feucht” allerdings schon bei Sensor ist 3 cm im Wasser erreicht, d.h. bei 3 oder 4 oder 5 oder 7 cm (maximale) Eintauchtiefe liefert der Sensor immer den Maximalwert!

Anders bei der wasserdichten Version. Hier ändert sich der analog ausgelesene Wert linear mit der Eintauchtiefe ab ca. 3 cm bis 10 cm (empfohlene Tiefe).

Mein Fazit ist daher, dass die wasserdichte Version von DFRobot deuchtlich besser performed als das günstige Modell. Und das hat vermutlich nichts mit der Wasserdichtigkeit zu tun.

Nun ist Wasser keine feuchte Erde, die beiden Sensoren werden sich dennoch in Erde unterscheiden. Auch unter Testing Capacitive soil moisture sensors ist ja schon aufgefallen, dass einige Sensoren weniger linear auf Feuchte-Änderungen reagieren als andere.

OT: Weshalb ich den eigentlich attraktiven (mit I2C-Schnittstelle und günstig) Sensor von Adafruit (Stemma / SeeSaw) auch nicht bestellt habe, er hat darüber hinaus noch Probleme, wenn mehr als ein Sensor an das gleiche Board angeschlossen ist.

Prototype mit ESP32 und OLED (Heltec Wifi kit 32):

2 Likes

Noch was cooles entdeckt, etwas OT weil es bisher nur ums sensing ging:

M5Stack Bewässerungseinheit mit Feuchtesensor und Pumpe
https://docs.m5stack.com/en/unit/watering

Bei berrybase nicht mal 14 EUR! Allerdings 5 V, vermutlich wegen Pumpe.

ich frage mich, ob die bodenfeuchte hier widerstands- oder kondensatorbasiert gemessen wird. denn eigentlich müsste das set ja vom anspruch her auf die bessere technologie setzen (“To briefly summarize, the capacitive sensor wins in all aspects: precision (linearity), repeatability, and fast response.” quelle). ein anderer vergleich bezieht auch noch die korrosionsthematik mit ein:

Comparing the resistive and capacitive sensors reveals that the resistive sensor is unreliable for measuring soil moisture since its response varies from one experiment to another. Another discovery from the response analysis is that the soil-exposed resistive sensor probes are sensitive to corrosion, so after 5-6 short-duration measurements, the sensor loses its functionality. For the capacitive sensor, however, the probes are coated with a polymer that resists electrolysis and oxidation. Consequently, the capacitive sensor is suitable for long-duration measurements, whereas the resistive sensor is ideal for instant measurement. quelle

hier wird kapazitativ gemessen, oder? das kann ich aber nicht in den beschreibungen ausdrücklich finden. und aus den angegebenen empfindlichkeiten kann ich das nicht ableiten. ich finde auch keinen hinweis auf das verwendete bodenfeuchtesensorbauteil.

die zweizinkige ausführung zum in den boden stecken ist zwar üblich für die weniger guten resistiven sensoren, aber wahrscheinlich darf ich nicht von der bauform auf die messweise schließen, oder?

Genau so ist es! :-) Das Ding kann nicht nur Bodenfeuchte messen, sondern auch Bodentemperatur und Elektrische Leitfähigkeit (electric conductivity, EC). Daher hat es wohl zwei Zinken für die unterschiedlichen Sensor-Messungen, aber nicht weil es ein resistives Zeugs ist:

2023-11-28 19_54_04-SenseCAP S2105 - LoRaWAN® Soil Moisture, Temperature and EC Sensor - Seeed Studi

Interessanterweise hatte die alte / erste Version des SenseCAP Bodenfeuchte tatsächlich einen resistiven Messfühler, da hatte ich auch schon gedacht “Profigerät”!?

Allerdings soll der letzte heiße Sch… Goldstandard ja eh Saugspannungs-Sensoren sein. Das Team von QTree setzt welche von ARBOR revital ein. Funktionsprinzip ist hier ganz gut beschreiben. Ich weiß nicht, ob der Sensor von Gardena auch so arbeitet (schaut ähnlich aus) und ist bei mir im Garten eine Katastrophe, da er nur “feucht” anzeigt wenn das Beet unter Wasser ist.

Jedenfalls werden für das gleiche Szenario (Wasserbedarf von Bäumen) auch kapazitive Sensoren eingesetzt, wie der von plantobelly (1/3 teurer als der SenseCAP), daher denke ich, dass die Technologie nicht soooo schlecht ist, auch die für die Wetterstationen von froggit.de zugekauften Bodenfeuchtesensoren sind kapazitiv und die Messwerte der letzten Monate sind ganz plausibel.