Forum: Projekte & Code Der letzte Füllstandmesser


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Chr. M. (snowfly)



Lesenswert?

Hallo Forum,

wie einige andere hier auch habe ich schon seit einer Weile versucht
meinen Öltank brauchbar abzufragen, jetzt habe ich eine Lösung
für mein Problem gefunden und mal ein wenig gebastelt.

Kurzbeschreibung:
esp8266
vl53l1x optischer Sensor
5110 Nokia Display
(Verdrahtungsplan im Sourcecode)

Ich weiß gar nicht was ich schreiben soll, die Bilder sollten
das meiste beantworten.
In der Auswertung über 2 Tage sieht man recht schön die
Temperaturausdehnung

Features:
-AP-Mode für Erstkonfiguration
-MQTT
-vl53l1x(bis ca. 2m)  und vl53l0x (bis ca.1m)
-5110 Nokia Display (relativ einfach zu ändern)
-Tankabmessung per Browser einstellbar


Wenn Jemand noch die Webdarstellung verschönern will
oder das ganze auf GitHub hochladen will - nur zu.

von Chr. M. (snowfly)


Angehängte Dateien:

Lesenswert?

Die 3-D Druck Teile habe ich vergessen anzuhängen.

PS: für die die genau hinsehen -> die Brücke ist inzwischen umgelötet

: Bearbeitet durch User
von Harry (Gast)


Lesenswert?

Oh, very gut. Welchen Sensor verwendest Du, oder steht's im File?

von OssiFant (Gast)


Lesenswert?

Harry schrieb:
> Oh, very gut. Welchen Sensor verwendest Du, oder steht's im File?

Sieht nach Ultraschall aus - mal sehen, wie lange die Sensoren "leben" 
:-)
Ich habe da keinerlei Erfahrung - aber Öldämpfe könnten problematisch 
sein.

Hier im Forum gibt es sicher Erfahrungswerte - Die Suche dürfte helfen.

von Alter Sack (Gast)


Lesenswert?

OssiFant schrieb:
> Sieht nach Ultraschall aus - mal sehen, wie lange die Sensoren "leben"
> :-)

Nein, daß sind Laser Abstandssensoren vom Typ VL53L1X

siehe hier: #include <VL53L1X.h>

Übrigens, ich habe von jemand gehört der diesen Sensor für 
Wasserstandsmessung eingesetzt hatte, daß das Wasser ab und zu nicht 
zuverlässig reflektieren soll. Als Abhilfe montierte eine kleine 
Styropor Scheibe an einen gestrafften Faden der analog mit dem 
Flüssigkeitsniveau mitschwamm.

von Chr. M. (snowfly)


Lesenswert?

OssiFant schrieb:
> Sieht nach Ultraschall aus - mal sehen, wie lange die Sensoren "leben"
> :-)

Hab ich doch geschrieben. ;)
Optischer Sensor, der vl53l_x misst die Laufzeit des Lichts
daher war es auch ganz einfach ein Uhrenglas vor den Sensor zu setzen.
(siehe Bild, das durchsichtige flache Teil ist eine Glasscheibe)
Wenn die verdreckt ist kann ich einfach drüberwischen.
https://de.aliexpress.com/wholesale?catId=0&initiative_id=AS_20190609120639&SearchText=vl53l1x
https://www.st.com/en/imaging-and-photonics-solutions/vl53l1x.html

Der Füllstandmesser ist komplet getrennt vom Inhalt des Tanks
nicht mal das PLA hat Kontakt zu den Öldämpfen.

EDIT: Hat noch jemand einen Tip für einen Kleber der resistent gegen
Öl/Benzin(-Dämpfe)ist?
UHU-Por vermutlich nicht ;)
Ich habe noch eine Metallklemme unter die Glasscheibe geschoben,
selbst bei Klebstoffversagen bleibt die wo sie ist.

Ahh, noch was: das Displaygehäuse ist von thingiverse.com

: Bearbeitet durch User
von Markus W (Gast)


Lesenswert?

...EDIT: Hat noch jemand einen Tip für einen Kleber der resistent gegen
Öl/Benzin(-Dämpfe)ist?...

Hallo

Ich nutze immer gerne den JB Auto Weld 2-Komponentenkleber. Verpackung 
sieht zwar aus wie aus einer amerikanischen Teleshopping-Sendung, hat 
bei meinen KFZ-Reparaturen aber schon Wunder bewirkt.
Unter anderem habe ich damit ein Vergaserteil (Gewindehülse) geklebt. 
Die Klebestelle ist dauerhaft im Benzin eingetaucht! Hält jetzt seit ca. 
6 Monaten.

von Olaf (Gast)


Lesenswert?

> EDIT: Hat noch jemand einen Tip für einen Kleber der resistent gegen
> Öl/Benzin(-Dämpfe)ist?

Es gibt diverse Dichtmassen aus dem Automobilbereich mit denen man 
Getriebe oder Motorteile abdichtet. Die kleben, bleiben aber noch leicht 
elastisch.

Olaf

von Udo S. (urschmitt)


Lesenswert?

Jegliche Kleber mit denen Pass oder Reparaturhülsen (z.B. für 
Wellendichtringe aka. Simmerringe) für Wellen in Motoren verklebt 
werden.
Die halten auch 120°C heisses Motoröl aus.
Ansonsten sollte sich hier was geeignetes finden:
https://www.klebstoffbank.de/Loctite-Klebstoff---Kleber/?language=de

von Udo S. (urschmitt)


Lesenswert?

Übrigens:
Danke für das schöne Projekt.

:-)

von Chr. M. (snowfly)


Lesenswert?

Ich bin schon sehr verwundert dass noch keiner gejammert hat
das ich bald explodieren werde, scheint nicht soo schlecht
geworden zu sein. :)


Ein Sicherheits"feature" liefere ich auch gleich mit:
Über die Serielle werden beim Reset eure WiFi-credentials
ausgegeben.
Wer das nicht will muss es ändern. ;)
Das ist irgendwo in IotWebConfig eingebaut.

von Olaf (Gast)


Lesenswert?

> Ein Sicherheits"feature" liefere ich auch gleich mit:

Also wir haben schon vorausgesetzt das du gleich das Atexzertifikat 
online stellst. :-D

von my2ct (Gast)


Lesenswert?

OssiFant schrieb:
> Sieht nach Ultraschall aus - mal sehen, wie lange die Sensoren "leben"
> :-)

Chr. M. schrieb:
> vl53l1x optischer Sensor

Wer lesen kann, ist klar im Vorteil

von TK (Gast)


Lesenswert?

Hallo,

schönes Projekt und gelungene Umsetzung. Wollte sowas auch schon lange 
mal gemacht haben - hat aber immer an der Zeit gehapert und davor, den 
Öltank von oben "aufzubohren".
Kannst Du vielleicht mal ein Foto im eingebauten Zustand machen?
Wie ist das Modul denn an den Tank geflanscht?
Das ganze müsste ja dann auch für eine Zisterne funktionieren (eben mit 
einer reflektierenden Oberfläche ala Styroporscheibe). Meine werte ich 
mit einem Differenzdrucksensor aus - da finde ich die TOF Auswertung 
eleganter, zumal ich den VL53L0X auch schon im Einsatz habe.
Wenn ich mir Dein Diagramm mit dem erfassten Füllstand ansehe und dort 
Sprünge von über 100l sehe, frage ich mich gerade, was das für die 
Füllstandhöhe bei Deinem Tank ausmacht (wahrscheinlich nur 1-2cm)?

Gruß
TK

von Chr. M. (snowfly)


Lesenswert?

> Kannst Du vielleicht mal ein Foto im eingebauten Zustand machen?
> Wie ist das Modul denn an den Tank geflanscht?
Im Tank war schon ein Anschluß mit Gewinde für den alten 
Füllstandmesser.
Also habe ich einfach den alten rausgeschraubt und den neuen rein.
Wenn ich mir die Bilder auf Google so anschaue scheint ein 1" oder 3/4" 
Anschluß standard zu sein.

> Sprünge von über 100l sehe, frage ich mich gerade, was das für die
> Füllstandhöhe bei Deinem Tank ausmacht (wahrscheinlich nur 1-2cm)?
Ich war auch überrascht das es so gut funktioniert.
1mm Füllhöhe sind 6,75l
Wen man im Code die Filterung auch auf das 200fache stellt
würde die grüne Linie rauskommen, spontane Sprünge sind ja
bei Heizöltanks nicht zu erwarten.

> mit einer reflektierenden Oberfläche ala Styroporscheibe
Ein Ölfilm würde wohl auch gehen. ;)
Es hängt wohl auch vom Fremdlicht ab, Wasser ist ja gerne
in durchscheinenden Behältern, vielleicht lässt sich da was machen.

von MaWin (Gast)


Lesenswert?

OssiFant schrieb:
> Sieht nach Ultraschall aus - mal sehen, wie lange die Sensoren "leben"
> :-)

Chr. M. schrieb:
> vl53l1x optischer Sensor

von Mario (Gast)


Lesenswert?


von Chr. M. (snowfly)


Lesenswert?

> https://www.oilfox.io

kein vergleich.

MQTT      <-->  Cloudzwang
Optisch   <-->  Ultraschall
anpassbar <-->  as it is
gebastelt <-->  gekauft
20€       <-->  xxx€

Aber eine ESP32 Version mit BLE, E-Ink und Akku/Solar wäre ein
schönes Winterprojekt.

von bernte (Gast)


Lesenswert?

ja ok da kann man nur applaudieren
gut gemacht


irgend wo hab ich doch auch noch alles rumliegen bis auf den sensor und 
den esp
hhmm mal nachschauen


achtung spoiler
du fliegst bald in die luft ;-)

von Dora (Gast)


Lesenswert?

Danke für das Teilen dieses coolen Projekts!
Ich hab nicht ganz mitbekommen, wie die Stromversorgung vorgesehen ist. 
Wird das Ganze am Netz oder an der Powerbank betrieben?

Ich frage weil bei einigen Breakoutboards auch die Leitung "XSHUT" 
herausgeführt wird. Damit ist es möglich, den Sensor quasi abzuschalten 
und ihn wieder zu aktivieren, wenn der ESP beispielsweise aus dem Deep 
Sleep aufwacht und messen will. Dies nur als Hinweis für alle, die die 
Lösung batteriebetrieben benötigen und eine lange Laufzeit erreichen 
wollen.

BTW: Für welchen Stutzendurchmesser (3/4", 1", usw.) wurde das Gehäuse 
entworfen?

von Amateur (Gast)


Lesenswert?

>In der Auswertung über 2 Tage sieht man recht schön die
>Temperaturausdehnung
Bist Du Dir da sicher?

Öltanks stehen üblicherweise im Keller. Selbst, wenn die Temperatur, im 
Tagesverlauf, minimal schwankt, sollte sich das nicht gleich auf die 
Öltemperatur auswirken. Da geht es nämlich um eine relativ große Masse, 
die dazu auch noch schlecht Wärmeleitend ist.

Ein Tipp zur Erhöhung der Messgenauigkeit: Temperatur messen.  Die 
Korrekturfaktoren findest Du im Physikbuch oder im Eternit.

von Chr. M. (snowfly)


Angehängte Dateien:

Lesenswert?

@Dora:
Stromversorgung läuft über ein Netzteil.
Selbst die grosse PowerBank ist nach 2-3Tagen leer.

Wenn ich mal viiel Zeit und Lust habe bau ich eine Version
mit esp32 und E-Ink Display, dann geht Batteriversorgung
(evtl. sogar Solar)
Vieleicht fühlt sich auch jemand anderer berufen. ;)

Das Gehäuse ist für 1"


@Amateur
>Bist Du Dir da sicher?
Inzwischen nicht mehr,
Die Messkurven korrelieren schon irgendwie aber ein System konnte ich 
nicht ausmachen.
Der Tank selbst ändert ja auch die Größe und Luftdruck spielt evtl. auch
eine Rolle.

Für einen Heizöltank ist die Genauigkeit ausreichen
und ich kann es ja beliebig 'geraderechnen' :)

von Alter Sack (Gast)


Lesenswert?

Chr. M. schrieb:
> Ich bin schon sehr verwundert dass noch keiner gejammert hat
> das ich bald explodieren werde, scheint nicht soo schlecht
> geworden zu sein. :)

Dem komme ich hier nach:-)
>
> Ein Sicherheits"feature" liefere ich auch gleich mit:
> Über die Serielle werden beim Reset eure WiFi-credentials
> ausgegeben.
> Wer das nicht will muss es ändern. ;)
> Das ist irgendwo in IotWebConfig eingebaut.

Ich möchte behaupten, daß Explosionsgefahr überhaupt kein Thema ist, 
weil, um nämlich eine explosive Atmosphäre im Tank zu haben, sich das 
Verhältnis Dämpfe zu Sauerstoff Gehalt innerhalb eines bestimmten Rahmen 
bewegen muß (0.6-7.5%) . Siehe hier:
http://www.globalp.com/documents/files/SDS%20No%202%20Fuel%20Oil%20Final.pdf

Man spricht hier von LEL = Lower Explosive Limit und UEL - Upper 
explosive Limit. In diesem Fall müßte sich das Luft/Öl Gemisch zwischen 
0.6 bis 7.5% bewegen um sich im gefährlichen Bereich zu befinden.

https://opus4.kobv.de/opus4-bam/frontdoor/deliver/index/docId/41830/file/Schroeder++Calculation+of+Flammability+Limits.pdf

Da aber anzunehmen ist, daß die Öldämpfe den freien Luftraum im Öltank 
sättigen und sich also weit vom potenziellen Explosionsbereich bewegen, 
besteht also überhaupt keine  Explosionsgefahr. Im KFZ Benzin Tank ist 
es ja genauso. Sonst hätte sich früher niemand getraut, ein offenes Poti 
für die Füllstandanzeige oder elektrische Benzinpumpe im Tank zu 
betreiben.

*) https://www.shopcross.com/lel-lower-explosive-limit

von Tek (Gast)


Lesenswert?

Chr. M. schrieb:
> Inzwischen nicht mehr,
> Die Messkurven korrelieren schon irgendwie aber ein System konnte ich
> nicht ausmachen.
> Der Tank selbst ändert ja auch die Größe und Luftdruck spielt evtl. auch
> eine Rolle.

Sieh aber schon nach einer Temperaturabhängigkeit aus, hängt halt etwas 
hinterher. Womöglich ist aber nicht die Temperatur des Öl´s sondern die 
des Sensors die Ursache. Die Temperatur im Tankraum wäre noch 
interessant.

von Sebastian S. (amateur)


Lesenswert?

Noch was zur Kontrolle:

Die Ausdehnungskoeffizienten kannst Du Dir aus dem Internet fischen. Die 
Öltemperatur sagt Dir ein 08/15 Datenlogger der außen auf den Tank 
gepappt (einfaches Klebeband) wird und unter ein wenig Styropor 
versteckt liegt.

Wenn Du mal kein Öl entnimmst sollte auch keine Änderung auftreten. 
Also: Sommer plus ein- zwei Tage außerhalb der Wohnung; oder kein 
Warmwasser entnehmen und schon bist Du schlauer.

Nutzt Du einen zweiten Temperaturlogger, so kannst Du erstens 
feststellen, wie gering die Temperaturänderungen unten im Keller sind 
und zweitens wie wenig sich das auf die Öltemperatur auswirkt.

Nix ist nämlich eine recht gute Referenz.

von F. F. (foldi)


Lesenswert?

Amateur schrieb:
> Bist Du Dir da sicher?

Das ist gewaltig. Man glaubt das kaum.
Hatte irgendwann einmal eine Formel dafür.
Wollte wissen wie viel sich Hydrauliköl ausdehnt.
Ausgegangen von 30 Grad Temperaturunterschied (habe mir das als 
Faustformel gemerkt), dehnt sich das Öl auf 2 Liter/10 Liter aus.

Wir haben in kleinen Fahrzeugen immer wieder, dass das Öl überläuft. 
Irgendwann dachte ich, na komm, den Schluck kippste noch rein. Dann war 
es tierisch heiß und ich musste nochmal hin, Öl absaugen und alles 
sauber machen.
Das übt, selbst nach 30 Jahren noch.

von Marc E. (mahwe)


Lesenswert?

Jetzt fehlt.noch wer der sich mit Handy Apps auskennt und ne App 
schreibt die automatisch einen benachrichtigt das es sich lohnt zu 
tanken ?.
Dann kommt das ganze auch ins Auto?.
Dann meldet sich das Auto automatisch Tank mich Tank mich.
Und sucht automatisch noch denn günstigsten Anbieter.
Saubere Arbeit haste gut gemacht?.

von Ralf W. (Gast)


Angehängte Dateien:

Lesenswert?

Hi
@snowfly tolles Projekt. Bin gerade hierauf gestoßen und evaluiere für 
eine Füllstandsmessung von IBC Regenwassertanks eine Lösung. Die Tanks 
werden über die Fallrohre des Dachs automatisch befüllt bis im voll 
Zustand der Zulauf überläuft und dann direkt in den Kanal leitet. Somit 
kommt es gelegentlich vor, dass ein Sensor nass wird. Bleibt für 
Ultraschall nur der JSN-SR04T und der hat ~20cm Mindesabstand. Ein Rohr 
für die Messung inkl. 20cm Überstand gefällt mir irgendwie nicht so, 
insbesondere da der Sensor mich schon geärgert hat. Nun bin ich auf die 
VL53L1X bzw. VL53L0X gestoßen. Die Sensoren werden auch mit einer 
kleinen Abdeckung angeboten und hoffe diese so in ein Gehäuseloch 
verkleben zu können, dass er wasserdicht ist.
Hat damit jemand Erfahrung?

Wie sind Deine Erfahrungen oder Gründe warum Du einen VL53L1X einsetzt 
und keinen VL53L0X? Für ein IBC Tank mit ca. 1,2m Höhe hätte ich jetzt 
zum VL53L0X gegriffen.

Hoffe in diesem Fall, dass das Regenwasser nicht zu sauber ist und er 
zuverlässig messen kann.

Als Host würde ich gerne einen D1 mini ESP8266 oder D1 mini ESp32 
einsetzen und dies mit ESPEASY. Leider ist das PlugIn VL53L0X nicht per 
standard enthalten 
(https://github.com/letscontrolit/ESPEasyPluginPlayground/blob/master/_P133_VL53L0X.ino) 
und ich muß noch lernen, wie man dies einbinden kann. Wenn es denn ein 
VL53L1X sein muß, sehe ich hier derzeit keinen Ansatz und frage mich ob 
Deine VL53L1X.h hier schon ein großer Teil der Lösung sein kann?

Vielen Dank für Euer Feedback vorab.

von Fart (Gast)


Lesenswert?

Warum keine kapazitive Messung ala Giesomat Sensor?

von Ralf (Gast)


Angehängte Dateien:

Lesenswert?

Du meinst so etwas(anbei)?
Hatte es für recht aufwendig empfunden durch den 24V Boost Converter und 
4-20mA Konverter wobei dann auf 0-1V beim Esp8266 für den analog Input 
gewandelt werden müsste. Das Verhältnis Messbereich zu Messgenauigkeit 
hab ich nicht im Detail betrachtet aber erschien mir auch dann im 
Verhältnis zum Aufwand/Preis nicht besonders lohnenswert.

von Chr. M. (snowfly)


Lesenswert?

Ralf W. schrieb:
> Wie sind Deine Erfahrungen oder Gründe warum Du einen VL53L1X einsetzt
> und keinen VL53L0X?
Weil mein Tank ca.1,6m hoch ist und die Messgenauigkeit stark nachlässt 
mit entfernung.
Das Programm unterstützt beide.

> Die Sensoren werden auch mit einer
> kleinen Abdeckung angeboten und hoffe diese so in ein Gehäuseloch
> verkleben zu können, dass er wasserdicht ist.
Das habe ich mir einfach gemacht und ein Uhrenglas davor gebaut.

ESPEASY + VL53L0x hab ich mir auch angesehen, habs aber nicht zum laufen 
bekommen und recht schnell aufgegeben weil ich mit der Doku nicht 
klarkam.

> Deine VL53L1X.h
Die Libary ist nicht von mir, ich benutz die auch nur.

Verstehe nicht ganz...
entweder du bastelst ESPeasy zurecht mit L0x oder du kannst
meien code nehmen und zwischen L0x und L1x wählen.

von Ralf W. (Gast)


Lesenswert?

Danke, das hilft mir schon mal sehr um etwas mehr zu verstehen und 
einzuschätzen. Habe jetzt erst einmal einen VL53L0X bestellt und 
versuche mit ESPEasy "mein Glück" ob ich das gebastelt bekomme, dass es, 
wenn auch für kleinere Entfernungen, funktioniert. Danach den Piloten in 
die Praxis umsetzen geht immer noch. Bin halt kein Programmierer und muß 
mir das alles anlesen und irgendwie ertüffteln("YouTube Wissen"), 
deswegen vielleicht manche Frage was seltsam.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.