Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. Füllstandsmessung per Pegelsonde.

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Füllstandsmessung per Pegelsonde.

    This topic has been deleted. Only users with topic management privileges can see it.
    • draexler
      draexler @Eisbaeeer last edited by

      Hi, meine Zisterne ist nun voll. Aber mein Code funktioniert irgendwie nicht...

      Das sind meine Messreihen.

      # Spannungen nach Messreihe in Füllhöhe umrechnen          
            - calibrate_linear:
                - 0.0 -> 0.0
                - 0.28 -> 8
                - 0.69 -> 18
                - 1.00 -> 28
                - 1.35 -> 38
                - 1.70 -> 53
      

      Im Log kommt aber das raus:

      [14:59:26][D][ads1115:186]: 'Wasserstand Zisterne cm': Got Voltage=1.715875V
      [14:59:26][D][sensor:109]: 'Wasserstand Zisterne cm': Sending state 50.56017 cm with 1 decimals of accuracy
      

      Er sollte ja eigentlich mindest 53cm auswerfen?! Wo ist mein Denkfehler?

      Eisbaeeer M 2 Replies Last reply Reply Quote 0
      • Eisbaeeer
        Eisbaeeer Developer @draexler last edited by Eisbaeeer

        @draexler Homeassistant ist jetzt nicht mein Gebiet.
        Du solltest aber die ganze Config posten, dann kann dir sicher jemand sagen, ob es passen sollte bzw. was falsch ist. Hast du auch Filter gesetzt?
        Und hier ist auch noch der fehlende Link zum beschriebenen Projekt oben: nachbelichtet.com
        Grüße Lars

        draexler 1 Reply Last reply Reply Quote 0
        • draexler
          draexler @Eisbaeeer last edited by draexler

          @eisbaeeer Klar, sorry hier die Komplette YAML. Ich mache das ganze über ESPHOME.

          esphome:
            name: aussenbereich-zisterne
            friendly_name: aussenbereich-zisterne
          
          esp8266:
            board: d1_mini_pro
          
          # Enable logging
          logger:
          
          # Enable Home Assistant API
          api:
            password: !secret api_password
          
          # OTA
          ota:
            password: "1234"
          
          # Enable WIFI
          wifi:
            ssid: !secret wifi_ssid
            password: !secret wifi_password
            fast_connect: True
          
          # Enable fallback hotspot (captive portal) in case wifi connection fails
            ap:
              ssid: "aussenbereich-zisterne"
              password: "1234"
          
          ##############
          
          captive_portal:
          
          # i2c Bus auf D1 und D2 konfigurieren
          i2c:
            id: bus_a
            sda: D2
            scl: D1
            scan: True
          
          # ADC einrichten, ADDR-Pin ist auf VCC gelegt, daher Adresse 0x49
          ads1115:
            - address: 0x49
              id: ads1115_49
          
          # ADC Kanal A0 zur Messwerterfassung 
          sensor:
            - platform: ads1115
              multiplexer: 'A0_GND'
              gain: 4.096
              name: "Wasserstand Zisterne cm"
              update_interval: 2s
              unit_of_measurement: cm
              accuracy_decimals: 1
          
          # Messwerte glätten:
              filters:
                - sliding_window_moving_average:
                    window_size: 10
                    send_every: 10
          
          # Spannungen nach Messreihe in Füllhöhe umrechnen          
                - calibrate_linear:
                    - 0.0 -> 0.0
                    - 0.28 -> 8
                    - 0.69 -> 18
                    - 1.00 -> 28
                    - 1.35 -> 38
                    - 1.70 -> 53
          

          Im Log kommt aber das raus, obwohl er ja 1,715 misst.

          [14:59:26][D][ads1115:186]: 'Wasserstand Zisterne cm': Got Voltage=1.715875V
          [14:59:26][D][sensor:109]: 'Wasserstand Zisterne cm': Sending state 50.56017 cm with 1 decimals of accuracy
          
          draexler M 2 Replies Last reply Reply Quote 0
          • M
            michisa86888 last edited by

            Hallo zusammen,
            ich habe nun alles zusammengelötet und gestartet nach Anleitung @ElseKling
            Im ESPEASY Webinterface alles so eingestellt. Die Füllstandsanzeige funktioniert nun auch. Nur die Umrechnungsrule will nicht funktionieren.
            Gibt es da etwas neues im ESPeasy. Habe die neueste Mega geflasht. Es steht aber immer 0 Liter drin obwohl zurzeit die 100% erreicht sind.

            1 Reply Last reply Reply Quote 0
            • draexler
              draexler @draexler last edited by

              Niemand eine Idee? 😞 Will jetzt nicht mein Blockly manipulieren nur damit es passt. Hat ja sicher auch Auswirkung auf die restlichen Berechnungen.

              C 1 Reply Last reply Reply Quote 0
              • C
                caveman2009 @draexler last edited by

                Hi all,

                hilfe ich komme nicht weiter ... sorry

                ich habe die Schaltung wie von @ElseKling nachgebaut. Und Ziel ist die Spannungswerte ohne Umrechnung via MQTT zu senden. (Umrechnung kann ich dann in Node Red machen ..).
                Problem ist der Strom-Spannungs-Wandlermodul (von Amazon Eujgoov 0/4-20mA Signalumwandlungsplatine 0-3,3V/5V/10V Spannungssender) wird heiss und und beginnt zu "fiiepen".
                Ich bin mir sicher die Verschaltung ist korrekt, und ich habe die Spannung schon auf 15V reduziert ... es wird etwas langsamer heiss ...

                was mache ich falsch ? hat schon jemand das Problem ? ist das Bauteil womöglich defekt?

                Danke....

                1 Reply Last reply Reply Quote 0
                • M
                  muellerK @draexler last edited by

                  @draexler said in Füllstandsmessung per Pegelsonde.:

                  ESPHOME

                  Frage zu ESPHOME in Kombination mit dem D1_mini sowie dem ADS1115:

                  ESPHOME kompiliert den YAML-Code und beschreibt den D1_mini. Soweit verstanden.

                  Aber wie wird der ADS1115 "konfiguriert"?

                  Ferner frage ich mich, was die Adresse 0x49 zu bedeuten hat.
                  In welchen Fällen muss ich den ADS1115 auf 0x48 stellen, und in welchen Fällen auf 0x49?
                  Welchen Zweck erfüllen die unterschiedlichen Adressen?

                  draexler 1 Reply Last reply Reply Quote 0
                  • draexler
                    draexler @muellerK last edited by

                    @muellerk Ich habe das Projekt auch nur nachgebaut. Das mit dem dem 0x49 und 0x48 kann ich dir nicht erklären.

                    Aber im Endeffekt misst du ja nur die Spannung die an einen GPIO wieder ankommen und dieses Wert rechnest du im. Entweder direkt in der YAML oder halt im einen Skript (Blockly z.B.).

                    Natürlich muss du vorher das ganze Einmessen. ich habs in 10cm Schritten gemacht.

                    1 Reply Last reply Reply Quote 0
                    • M
                      muellerK @draexler last edited by muellerK

                      @draexler said in Füllstandsmessung per Pegelsonde.:

                      Er sollte ja eigentlich mindest 53cm auswerfen?! Wo ist mein Denkfehler?

                      Ich glaube, ich habe eine passende Antwort gefunden:

                      Zuerst sagst du, die Spannung 1.35 bekommt den Wert 38.
                      Anhand dieser Referenz entspricht die Spannung 1.715875 den Wert 48,2987037037037 (Dreisatz!)

                      Dann sagst du, die Spannung 1.70 bekommt den Wert 53.
                      Anhand dieser Referenz entspricht die Spannung 1.715875 den Wert 53,49492647058824 (Dreisatz!)

                      Wenn du nun die beiden Werte (mit den vielen Nachkommastellen) addierst, bekommst du den Wert 101,7936301742919.
                      Und wenn du diesen dann durch 2 teilst, um den Mittelwert zu bilden, dann kommt man auf den Wert 50,89681508714597, also fast genau den Wert, den auch dein Log ausgeworfen hat.

                      Die leichte Abweichung zu deinem Log-Wert 50.56017 hat wohl damit zu tun, da du noch weitere Referenzen angegeben hast.

                      Fazit: Es wird wohl immer ein "Mittelwert" gebildet.

                      1 Reply Last reply Reply Quote 0
                      • J
                        Jockelflo last edited by

                        Hallo,

                        ich habe unter https://www.thingiverse.com/thing:6177829 mal meine Variante geladen. Ist vllt. eine Hilfe für Leute die ESP easy verwenden möchten. Danke @saeft_2003 für dein Bild, das hat mir auch geholfen.

                        1 Reply Last reply Reply Quote 0
                        • R
                          rostnagel last edited by

                          grandios wie der Therad hier "ausgeartet" ist.

                          nach 5 Jahren melde ich mich mit einem Erfahrungsbericht 🙂

                          Das Setup war jetzt 5 Jahre im betrieb. vor paar wochen traten sehr starke schwankungen auf. Hab daraufhin eine neue sonde bestellt. Jetzt hab ich noch bessere messungen wie vorher 🙂

                          Bestellte sonde:
                          (https://de.aliexpress.com/item/1005002655746818.html?spm=a2g0o.order_list.order_list_main.5.73765c5fWq4ffG&gatewayAdapt=glo2deu)

                          Vorher:
                          pegel3.PNG

                          Nachher:
                          pegel.PNG

                          D 1 Reply Last reply Reply Quote 0
                          • Duese123
                            Duese123 last edited by

                            Hallo!

                            Gibt es denn Nachteile wenn man die Sensoren nimmt wo der Spannungsbereich gleich auf 3,3 oder 5 Volt ausgegeben wird?
                            Etwa in der Auflösung?

                            Man könnte so ja ohne "offene" Bauteile auskommen.

                            1 Reply Last reply Reply Quote 0
                            • F
                              FK757 @opossum last edited by

                              @opossum Hallo, Die View ist das dann nur der Tank ? Hab es mal Importiert finde das Widget nicht wie kann ich es finden? VG Frank

                              1 Reply Last reply Reply Quote 0
                              • A
                                Arni_Banone last edited by

                                Moin allerseits,
                                sehr spannendes Projekt.

                                Ich habe nicht alle Beiträge gelesen, anfangs (2019) gab es wohl Probleme mit Messwertschwankungen mit D1-Mini durch WLAN.

                                Kann mir einer einen Tipp geben, welche Lösung sich mit WLAN als tauglich herausgestellt hat?
                                D1-Mini, Raspi, Arduino, oder doch was Anderes?
                                Ich möchte die Daten gerne per MQTT an ioBroker schicken. Da bietet sich ESPEasy natürlich an.

                                Wird diese Lösung irgendwo im Thread beschrieben, idealerweise sogar mit einer Liste der benötigten Komponenten?

                                Ich danke euch.

                                S R 2 Replies Last reply Reply Quote 0
                                • S
                                  saeft_2003 Most Active @Arni_Banone last edited by

                                  @arni_banone

                                  ich verwende auch einen wemos mit tasmota der natürlich über wlan die Daten übermittelt und habe keine Messschankungen. Das ganze läuft bei mir schon 1,5-2 Jahre...

                                  1 Reply Last reply Reply Quote 1
                                  • R
                                    Ralf Topas @Arni_Banone last edited by Ralf Topas

                                    @arni_banone
                                    Hi,
                                    ich habe seit einem Jahr einen ESP32-Wroom DevKit an meinen Sonden (3 Stück in verschiedenen Zisternen / IBC Tanks) und spiele die in mein ioB ohne Probleme. Auf dem EPS läuft bei mir ebenfalls EspEasy mit einer individuellen, spezifischen Kalibrierung für jede Sonde.
                                    VG!

                                    1 Reply Last reply Reply Quote 1
                                    • A
                                      Arni_Banone last edited by Arni_Banone

                                      Moin, ich habe nun auch nach diesem oben genannten Schema meine Füllstandsanzeige aufgebaut.
                                      97efc137-5b10-4d8d-8709-1bba06403be8-image.png

                                      Verwendete Komponenten:
                                      ESP32 WROOM Development Kit V4
                                      1,8" TFT Display 128x160 ST7735 (war vorhanden)
                                      Netzteil: Vorhandenes 5V Steckernetzteil
                                      DC/DC converter 5V->24V
                                      I->U Converter: 0 mA ... 20 mA -> 0V ... 3.3V (wird noch angepasst)
                                      Sonde bis 1,7 m, da meine Zisterne nur 1,6m tief ist mit 4mA...20mA Signal

                                      Signale werden erfolgreich gelesen und auf dem Display angezeigt, sowie per MQTT an ioBroker gesendet. Soweit alles ok.

                                      Ich möchte nun den Display Button aktivieren, damit das TFT nicht einbrennt.
                                      Der Button funktioniert auch hardware-technisch. GPIO4 mit Input Pullup wird per Taster auf GND gezogen. PEgel sind 3,3V und 0V, passt.
                                      Jedoch funktioniert er nicht mehr, wenn mein Rules Skript läuft. Dieses sieht folgendermaßen aus und ich bin wirklich Amateur auf dem Gebiet:


                                      On System#Boot do
                                      //tftcmd,clear,black

                                      timerSet,1,1
                                      endon

                                      On Rules#Timer=1 do

                                      st7735,clear
                                      st7735,txtfull,5,15,2,Orange, Füllstand
                                      st7735,txtfull,5,40,2, Orange, Zisterne
                                      st7735,txtfull,5,65,2,[lvl_snsr#Analog]
                                      st7735,txtfull,80,65,2, Liter

                                      TaskValueSet 3,1,[lvl_snsr#Analog]/3000*100
                                      st7735,txtfull,5,90,2,[aux#pct]
                                      st7735,txtfull,80,90,2,%

                                      timerSet,1,2
                                      endon

                                      Wenn das Skript läuft, dann ist das Display dauerhaft an und flackert alle zwei Sekunden entsprechend dem Timer einmal kurz, bleibt aber an. Der Timer scheint es ständig zu aktivieren, sodass der Button overruled wird.
                                      Hat jemand eine Idee?

                                      Nachtrag:
                                      Habe nun die Berechnung und Ausgabe auch auf den Button-Trigger gelegt, sodass kein Timer mehr aktiv ist. Damit funktioniert es. Die Werte werden dann per Knopfdruck aktualisiert.


                                      On System#Boot do

                                      endon

                                      on Button#State do
                                      st7735,clear
                                      st7735,txtfull,5,15,2,Orange, Füllstand
                                      st7735,txtfull,5,40,2, Orange, Zisterne
                                      st7735,txtfull,5,65,2,[lvl_snsr#Analog]
                                      st7735,txtfull,80,65,2, Liter

                                      TaskValueSet 3,1,[lvl_snsr#Analog]/3000*100
                                      st7735,txtfull,5,90,2,[aux#pct]
                                      st7735,txtfull,80,90,2,%
                                      endon

                                      A 1 Reply Last reply Reply Quote 0
                                      • A
                                        Arni_Banone @Arni_Banone last edited by

                                        Nun läuft soweit alles, aber die Werte schwanken extrem.

                                        Habe die 5V mit einem 50µF Elko stabilisiert, das half aber nichts.
                                        Ich nutze ESP32 Wroom V4 mit externer Antenne.

                                        Kann es am Wlan liegen und müsste das besser werden, wenn ich die Antenne abschraube?

                                        Die Ausschläge sind mir doch etwas zu groß.
                                        Werte in Digits (Analog In) während der Entnahme von Wasser.
                                        b9fdca8b-f4e5-422c-8abe-8b6d846c065a-image.png

                                        E D 2 Replies Last reply Reply Quote 0
                                        • E
                                          ElseKling @Arni_Banone last edited by ElseKling

                                          @arni_banone bei mir kamen die Schwankungen daher, dass die Sonde für einen viel größeren Messbereich ausgelegt war. Dann führen kleinste Veränderungen zu einem größeren Rauschen. Mit der passenden Sonde passte es dann.

                                          A 1 Reply Last reply Reply Quote 0
                                          • A
                                            Arni_Banone @ElseKling last edited by

                                            @elsekling
                                            Okay. Ich habe die 0 m ... 1,7 m Sonde bestellt bei max. 1,63 m Wasserstand, das sollte also passen.
                                            Werde mal versuchen, den Analogeingang mit einem Kondensator zu bedämpfen und mal ein anderes Netzteil testen.
                                            Wenn ich die Antenne abschraube, dann wird der Wert nicht stabiler.

                                            Duese123 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            872
                                            Online

                                            31.7k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            63
                                            604
                                            156758
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo