Es ist leider mal wieder lange nix passiert hier im Blog. Das letzte Jahr war nicht so prickelnd und ich hab meine Arbeit an meinen Bastelprojekten quasi eingestellt.
Offensichtlich waren aber die dunklen Wintermonate bei einigen Leuten Ansporn, um ihre Heimautomatisierung und Sensorik zu überarbeiten. Es gab viele Einträge im Blog und ich bekam viele Anfragen per Mail bzgl. des Time Of Flight-Sensor VL53L0X als möglicher Ersatz des Ultraschallsensors HC-SR04. Ich hatte ja auch bei der Version 1028 nach fleißigen Testern und Rückmeldungen gefragt. Vielen Dank euch dafür! Das hat mich auch motiviert mal wieder was an dieser Front zu tun.
Auch wenn mein Ultraschallsensor für seine 2,50€ seit 3 Jahren tadellos seine Arbeit in der Zisterne verrichtet und ich bisher keine Notwendigkeit sehe diesen zu ersetzen, habe ich mir einen weiteren Sensor zu Testzwecken beschafft und in die Software implementiert. Ergebnis ist die Version 1029 der Software.
Neben dem ToF VL53L0X kann nun auch der VL53L1X angeschlossen und genutzt werden. Zu den Unterschieden der beiden Sensoren findet man einiges im Internet. Welcher Sensor nun im jeweiligen Anwendungsfall die bessere Wahl ist, muss jeder selber herausfinden bzw. freue ich mich auch wieder auf Rückmeldungen im Blog oder per Mail bzgl. eurer Erfahrungen.
Zu den beiden ToF-Sensoren nur ganz kurz folgende Zeichnung bzgl. der Öffnungskegel in Abhängigkeit zum Messabstand. Dazu aber noch weiter unten ein bisschen mehr Details da es anscheinend bei den möglichen Abständen etc. nicht verallgemeinert werden kann, welcher Sensor die bessere Wahl ist. Ich habe dazu auch (bisher) keine Tests gemacht!
Der Anschluss des VL53L1X erfolgt analog des VL53L0X. Die notwendigen PINs zum Anschluss sind u.a. in der Applikation angegeben. Hier aber nochmal schnell das Anschlussschema für die beiden ToF-Sensoren.
Die Version 1029 unterstützt weiterhin den Ultraschallsensor sowie die Displays und den Temperatursensor. Für das komplette Anschluss-Schema schaut bitte in den älteren Blog-Eintrag hier.
Die beiden ToF-Sensoren unterstützen seitens der API noch verschiedene Einstellungen die ich in der ersten Version 1028 nicht implementiert hatte und für den VL53L0X nur die Nutzung der Default-Einstellungen möglich war. In der neuen Version habe ich im ersten Anlauf zumindest ein paar wenige Einstellungsmöglichkeiten implementiert.
Dazu gehört für beide ToF-Sensoren die Möglichkeit den Abstandsmodus anzupassen. Hier holt man auch aus dem VL53L0X noch mehr heraus als im Datenblatt angegeben ist und muss bei größeren Abständen nicht zwingend auf den VL53L1X wechseln. Zudem habe ich beim VL53LoX noch die mögliche Anpassung des Timings implementiert. Hier kann zwischen dem Default-Wert auch noch High-Accuracy (hohe Genauigkeit) und High-Speed gewählt werden. Auch hier gibt es anscheinend kein Patentrezept um gute Messwerte zu erreichen und ausprobieren scheint die Devise.
Da ich diese Werte im “Setup” setze, ist nach Änderung in der WebUI ein Neustart des Sensors notwendig damit die neu eingstellten Werte greifen. Beim VL53L1X muss man den ESP auch ggf. mal vom Strom trennen. Der scheint da etwas zickig was ich auch schon erfahren musste als es nur seltsame Werte bei der Messung gab.
Die weiteren Einstellmöglichkeiten des VL53L1X muss ich mir noch genauer anschauen und implementiere sie dann ggf. in einem nächsten Update. Hier gibt es z.B. noch die Möglichkeit zur Anpassung des Timings (ähnlich dem VL53L0X was ich dort bereits implementiert habe), die Anpassung der Größe des Empfangs-Arrays (SPAD) sowie der Anpassung der Region of Interest (ROI) und Definition eines Offsets. Mit diesen Parametern kann man u.a. “spielen”, falls der Sensor hinter eine Glasscheibe verbannt werden soll.
Den Download der neuesten Version gibt es hier:
http://www.bubux.de/heimautomatisierung/ota/zisterne_aktuell.bin
Gruß Chris
Hallo Chris,
vielen Dank für die wie immer hervorragende Arbeit. Habe den VL53L1X gestern Abend auf Anhieb zum laufen gebracht. Klasse. Ob und wie er sich in meiner Zisterne macht muss ich dann am WE mal schauen und werde berichten. Wenn bei Dir der SR04 seit Jahren gut läuft freu Dich.
Meiner leidet spätestens nach 3 Monaten unter Kondensation. Nach Trocknung geht er dann wieder. Daher setze ich große Hoffnung auf den VL53. Spannend wird nur wie der relativ breite Kegel des L1X im schmalen und tiefen Fass funktioniert.
Gruß Rainer
Erfolg. Der VL53L1X ist in der Zisterne verbaut und sendet korrekte Messwerte (per MQTT an meine Solaranzeige). Der Sensor sitzt in einer Verteilerdose oben auf einem dunkelbraunen 100 er Fallrohr das in der Zisterne steht. Spannend wird, ob er bis zum Boden messen wird (260 cm) wenn die Zisterne im Frühjahr leer wird.
Hallo,
das Projekt ist wirklich klasse und funktioniert wirklich super. Nun wollte ich die aktuelle Version 1029 aufspielen. Wie lässt sich das aktuelle Update aufspielen? Über cmd funktioniert es leider nicht (error…).
Ist es irgendwie möglich den d1 mini in deepsleep zu versetzen und nur zu wecken, wenn man eine Abfrage der URL startet?
Vielen Dank
Hallo Thomas,
freut mich, dass es Dir gefällt!
Das Aufspielen einer neuen Version geht nur per Flashen oder per OTA.
OTA hab ich aktuell aber immer noch nicht komplett automatisiert. Ich bräuchte hier Deine MAC-Adresse (z.B. per Mail) um das anzuschubsen und Du musst OTA in der Software aktivieren.
Deepsleep und der Zugrif auf die Webseite beißen sich. Das geht meines Wissens nicht.
Daher gibt es aktuell auch kein Deepsleep.
Gruß
Chris
Servus Chris,
ein tolles Projekt hast du da zusammengefasst! Respekt!
Ich hätte zwei Feature Reqests 😉
– Passwortabfrage bei Login (erhöht die Sicherheit)
– Zisternennachspeisung (Ich nutze meine Zisterne für WC Spülung, und wenn die Zisterne Leer wird, muss ich diese mit Brunnenwasser nachfüllen. Hätte dafür ein Magnetventil eingebaut und das über ein Relais über den Arduino bzw. deine Zisternensteuerung gerne schalten wollen (mittels Relais, bspw. bei 25 % Füllstand -> Nachspeisung ein bis 35 %)) Cool wäre es wenn die Werte in % in der Config manuell eingetragen werden könnten!
Von der Qualität her bist du schon auf einem hohen Niveau unterwegs (in meinen Augen schon fast Serienrreif 😉
Lg,
Martin
Hallo Martin,
vielen Dank!
An der Steuerung eines Ausgangs abhängig vom Zisternensatnd (z.B. für ein Magentventil) bin ich dran. Das kommt demnächst.
Gruß
Chris
Hallo Chris,
wäre super wenn dieser Ausgang von der Config so realisiert werden würde, dass er auch für eine Zisternenrückspülung (für den Filter) verwendet werden kann. Hierzu verwende ich aktuell ein Releis welches per Timer einmal pro Woche für z.B. 20 Sekunden öffnet.
Grüße
Stefan
Hallo,
Das Projekt würde mich sehr interessieren, doch leider funktioniert der Link zum Download der aktuellen Version nicht.
Hallo Dennis,
Link ist repariert.
Gruß
Chris
Servus,
erstmal vielen Dank für die ganze Arbeit. Funktioniert soweit echt super und zuverlässig.
Ist es evtl. noch möglich, ein oder zwei (Schwimm-)Schalter mit einzuprogrammieren?
Ich möchte damit zwei nebeneinander stehende und miteinander verbundene Wassertonnen überwachen und da wären ein oder zwei integrierte Schwimmschalter als “fallback” super.
Vielen Dank und Grüße
Jochen
Hallo Jochen,
ich bin dabei zwei Ausgänge schaltbar zu machen. Eine erste Version kommt in den nächsten Tagen.
Gruß
Chris
Hallo Chris,
Vielen Dank, das klingt echt super!
Jochen
Hallo zusammen,
ich habe immer wieder Probleme mit meinem HC-SR04 und schon dem dritten im Einsatz. Die Sensoren korrodieren durch die hohe Luftfeuchtigkeit schnell.
Habe nun diesen hier gekauft: https://www.dfrobot.com/product-1935.html. Der ist wasserdicht und scheint dem HC-SR04 ähnlich zu sein. Heute habe ich ihn angeschlossen und er scheint, auf den ersten Blick zu funktionieren. Unklar ist, ob tiefere Messungen in der Zisterne noch korrekte Ergebnisse liefern. Scheint nach Datenblatt aber vielversprechend.
Grüße
Hallo Philipp,
danke für den Tipp. Ich werde im nächsten Artikel (es gibt demnächst eine neue Version die Ausgänge steuern kann) eine Zusammenfassung der bisher implementierten Abstandsmess-Sensoren zusammenschreiben. Da kommt der dabei.
Gruß
Chris
Hallo Chris, danke für deine tolle Arbeit. Wann kommt den die Einbindung des Temperatursensors DS18B20. Den gibt es ja in einer Metallhülse komplett wasserdicht, der wäre dann für die Umgebungsluft in der Zisterne zu messen perfekt. Wird eigentlich mit der Temperatur auch die Ultraschallmessung korrigiert ? Ist es eigentlich auch nochmal vorgesehen das der Quellcode von dir geteilt wird. Dann könnten alle hier dir helfen die Software weiter anzupassen. Wäre super. Ich könnte dir helfen eine Platine zu entwickeln wo man dann alles sauber anschließen kann. Auch wäre es cool das Projekt mit dem ESP 32 weiterzuentwickeln der hätte Bluetooth und auch ein besseres WLAN Modul an Board. 😉
Hallo Chris,
wann können wir den mit der nächsten Version rechnen. Außerdem bekomme ich den Display nicht zum laufen da er zwar die IP Adresse anzeigt aber danach der Füllstand fehlt. Auch wäre es cool wenn die alternativen Temperatursensoren mit in der nächsten Version wären. Korrigieren die eigentlich auch automatisch den Ultraschallsondenwert.
Gruß Martin