Ultraschallsensor HC-SR04 als Füllstandsmesser nicht wasserresistent?

Ich hatte in der letzten Saison in meiner Zisterne einen Utraschallsensor HC-SR04 eingebaut und an einen ESP8266 mit Tasmota angeschlossen. Das hat alles prima funktioniert. Leider ist er zum Ende der Saison kaputt gegangen. Optisch sieht er noch gut aus und ich hatte die Elektronik in ein Gehäuse geklebt, dass wirklich nur die beiden Ultraschallohren herausgeschaut haben.
In einer Zisterne herrscht ja generell hohe Luftfeuchte und ich vermute, dass die Ultraschallsensoren das nicht auf Dauer verkraften. Habt ihr auch das Problem? Oder wie könnte man es besser machen?

Für unseren Regenwassertank habe ich eine Lösung mit einem Drucksensor aufgebaut. Bei Amazon gibt es einen solchen mit bis zu einem 5m langen Kabel. Der Ausgang ist ein lineares 4-20mA Signal in feiner Auflösung. Das ganze ist seit Sommer 2015 Jahren ohne Probleme in Betrieb. Der Tank hat die Form eines Zylinders. Google hat mir die Formel geliefert wie die Höhe in Liter umgerechnet wird.

Viele Grüsse
Roberto

Hast du Details dazu … welche Hardware hinter dem Sensor?
Gruß Michael

Heute sind solche Sensoren bei mir an einem Homematic HMW-IO-12-Sw14-DR Modul an einer Analogen Schnitstelle angeschlossen. Hat auch immer ohne Probleme funktioniert. In den nächsten Wochen stelle ich das aber auf eine KNX Lösung um.

Zusätzlich zur Drucksensor (Füllstandhöhe) gibt es noch einen Temperaturfühler mit Messumformer. Dieser Umformer gibt entweder ein 0-10 Volt oder auch ein 4-20mA Signal aus. Auch dieser Sensor geht auf das gleiche HM Modul.

Und ausserhalb der Fragestellung:
Für wirklich klares Wasser ist ist im Tank noch ein Aktiv-Sauerstoff Erzeuger verbaut. Ein Unternehmen aus AT welches sich auf die Wasserversorger konzentriert. Als Nebenprodukt gibt es diesen Erzeuger extra für Zisternen.

Viele Grüsse
Roberto

Hab auch solche Drucksensoren verbaut. Aber noch nicht so lange. Sollten aber recht lange halten und technisch sehr einfach gemacht.
Bei meinen Anlagen hängt es via KNX am MDT 4-fach Analogaktor (der kann 4 Ein/Ausgänge mit 4-20mA oder/und 0-10V. Der MDT ist der beste Analagaktor den ich mit KNX kenne. Gibt es auch als Pille meine ich, da dürfte er dann 1-fach sein.

Cheers Seppm

Ich hatte vor ein paar Jahren sowas mit einem PIC Controller gebaut, heute würde ich einen Wemos D1 pro mit externer Antenne nehmen.
Wenn die Zisterne im WLAN Gebiet ist.
Die Drucksensoren sollten so eine Art Siphon haben, dort etwas öl rein, sodass nie Wasserdampf zum Sensor gelangt, Sollen Die können, aber besser is…

Ich hatte bis Mitte letzten Jahres Ultraschallsensoren mit 0-10 Volt an einem Analogeingang von MDT dran. Dann ist mir das alles abgesoffen nach einem Rückstau, durch einen verstopften Überlauf…
Jetzt habe ich Sonden in jedem Tank von Elsner-70153-KNX-SO250 verbaut.

ja die Elsner sind OK, verbau ich auch öfter, da zB auch für Öltanks zugelassen.
Halt eine recht teure Lösung. Beim Öltank geht aber mE kaum was anderes.
Im Wasser sind mir die Druckmesser lieber, günstiger und bis jetzt verlässlich.
Geht mal einer kaputt, sind es halt etwa 50 Euro für den Sensor.
Und man kann die 2 Adern recht lang machen bei 4-20mA.

Cheers Seppm

Da alle nur von Drucksensoren schreiben, scheint wohl niemand Erfahrung mit Ultraschallsensoren in der Zisterne gemacht zu haben? Obwohl ich schon denke, dass das mancher auch mit Ultraschall macht.

Ich habe genau deinen Aufbau in Verwendung.
Das ganze läuft seit 3 Jahren (365 Tage im Jahr) ohne Probleme.
Ich habe den Ultraschallsensor in ein kleines Gehäuse eingebaut und abgedichtet.
Das Gehäuse habe ich dann mit einem Winkel an die Brunnenwand befestigt.
Aufgrund von Empfangsproblemen, habe ich die Sensorleitung etwas verlängert und den ESP8266 außerhalb des Brunnens montiert.

Peter

Bei mir ist es keine Zistere, sondern ein Öltank. An der Distanzmessung via Ultraschall mit einem HC-SR04 habe ich auch ewig herum gebastelt. Die Ergebnisse waren aber für meine Genauigkeitsansprüche unbrauchbar. Das liegt am Prinzip der Urtraschallmessung mit Laufzeitermittelung. Wenn die CPU (beim PI manchaml ganz schlimm, beim ESP8266 nicht so krass) gerade was anderes zu tun hat, erkennt sie das Echo verfälscht. Ich mache das ganze jetzt mit Laser (VL53L1X über I2C an Tasmota-ESP8266).

Das hat folgende Vorteile:

  • VL53L1X sendet und empfängt Laser und rechnet eigenständig die Distanz aus
  • Genauigkeit und Wertestreuung um Potenzen besser als bei Ultraschall
  • man kann ihn hinter eine dünne Glasscheibe packen und so vor Dämpfen schützen
  • Kosten VL53L1X + Wemosboard < ~20 €

Aktuell muss man dafür aber Tasmota selbst kompilieren, da der VL53L1X in keinem der vordefinerten Binary enthalten ist.

Gruss
Bernd

Bist du sicher?

Steht unter Supported Peripherals - Tasmota und damit sollte er Teil der sensors Binary sein.

Vielleicht nur der falsche Typ:
grafik

By default VL53L0X reads up to 1.2 meters.

Hallo Ralf,

bei Tasmota 9.0 war der VL53L1X noch nicht drin, musste daher selber kompilieren. Meine Öltanks sind leider höher als 1.2 Meter, somit musste ich den VL53L1X (schafft locker mehr als 2 Meter) nehmen und der war nicht in der sensors.bin. Ich prüfe es nochmal für die 11er und informiere hier.

Gruss
Bernd

Nachtrag: den VL53L1X haben sie wieder mal in ihrer Auflistung vergessen :-(, oder ich war zu dumm zum finden

https://github.com/arendst/Tasmota/blob/v11.0.0/BUILDS.md

Hallo Bernd,

ich bau für meinen Öltank auch gerade einen Sensor mit dem VL53L1x. Alles noch im Test in der Werkstatt. Wenn ich den Wemos restarte ist oft der Sensor weg. Bei wechselnden Lichtverhältnissen ist er manchmal auf 9999 gesprungen. Da wollte ich dann aus IPS ein restart Komando schicken, aber dann war der Sensor weg. wenn ich ihn dann vom Strom nehme und wieder anschliesse ist er wieder da.
kann man den Sensor aus der Konsole „starten“?
Und kannst du mir sagen, wie ich einen zweiten Sensor am gleichen Wemos anschliessen müsste und was ich in den Einstellungen ändern muss?

Gruß

Oliver

Hallo Oliver,

das mit der Distance 9999 hatte ich auch. Habe dann in Tasmota eine Rule definiert, die beim Wert 9999 einen Restart macht.

#54 VL53L1X 0x29	Time-of-flight (ToF) distance sensor
rule2 on VL53L1X#Distance==9999 do restart 1 endon
rule2 1

Für einen zweiten Sensor VL53 am selben ESP müsstest du ein Breakoutboard haben, wo man eine andere I2C-Adresse einstellen kann. Da scheint mir ein zusätzliches ESP8266 für ~3€ günstiger zu sein

Gruss
Bernd

Hallo Bernd,

das mit der Rule ist gut, werde ich noch machen. Das gleiche hab ich mit einem file_get_contents Befehl aus IPS gemacht. Mein „Problem“ ist aber, dass manchmal nach dem restart der VL53L1X im Wemos weg ist :frowning: .
Dann muss ich den Wemos vom Strom nehmen, danach ist der VL53L1X wieder da.

Gruß

Oliver

hast du den Rule Befehl gleich in die Bin Datei mit eingearbeitet oder über die Konsole?

Die BIN habe ich zwar über VSC erstellt, weil der VL53L1X nicht via default in der sensors.bin enthalten ist, die rule habe ich aber nachher direkt in der Console gesetzt. Ich habe in Symcon auch einen Zähler aufgesetzt, wie oft die 9999 auftaucht. Nachdem ich den VL53 in ein lichtdichtes Schraubgehäuse im Ölkeller gepackt habe, passierte dies aber nur 2 mal, vermutlich weil kein Fremdlicht mehr an den Sensor kommt. Kann mich aber während meiner Tests nicht daran erinnern, dass der ESP beim restart eingefroren wäre.

Kannst ja mal probieren, ob es ausreicht, nur den I2C-Driver neu zu starten

rule2 on VL53L1X#Distance==9999 do backlog I2cDriver53 0;I2cDriver53 1 endon

Gruss
Bernd

Könntest du diese hier bereitstellen?

Schreib mir 'ne PN mit Email-ADR, gib auch Deine Verschaltung an.