Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. Füllstandsmessung per Pegelsonde.

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.3k

Füllstandsmessung per Pegelsonde.

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
604 Beiträge 63 Kommentatoren 201.7k Aufrufe 69 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • AtifanA Atifan

    @Superdad Alles klar wunderbar.
    Bei mir ist 0cm auch 0.035A.
    Hast du in der console den Befehl "Sensor13 11" eingegeben? Ja oder?

    100% genau auf den Milliliter bekommst du es nicht hin, aber bei mir entspricht 0.001A einer Wassersäule von 3,225cm, das sollte bei dir genauso sein, unabhängig vom Radius bzw. vom Durchmesser deiner Zisterne.

    Du musst halt schauen was für Behälter du hast und das Volumen berechnen. Hast du einen Zylinder oder ein Rechteck?
    Sage mir mal den Durchmesser bzw. Radius deiner Zisterne und die Höhe. Bzw. falls rechteckig die Länge und Breite.

    AtifanA Offline
    AtifanA Offline
    Atifan
    schrieb am zuletzt editiert von
    #274

    Bzw. am einfachsten Testen kannst du wenn du die Sonde ins Wasser lässt. 0,5m, 1m usw. und dann schaust wieviel mA dann angezeigt werden.
    Wenn du den Sondenkopf 1m ins Wasser steckst, sollte ein Wert von 0,066A angezeigt werden.
    Musst du einfach mal testen ob es so ist.

    S 1 Antwort Letzte Antwort
    0
    • AtifanA Atifan

      Bzw. am einfachsten Testen kannst du wenn du die Sonde ins Wasser lässt. 0,5m, 1m usw. und dann schaust wieviel mA dann angezeigt werden.
      Wenn du den Sondenkopf 1m ins Wasser steckst, sollte ein Wert von 0,066A angezeigt werden.
      Musst du einfach mal testen ob es so ist.

      S Offline
      S Offline
      Superdad
      schrieb am zuletzt editiert von
      #275

      @Atifan Ich habe einen Zylinder und Oberkante ist ebenfalls 3m.
      Ich versuche mal eine Gleichung in Blockly zu programmieren um dann die Ampere in cm umzurechnen.

      Ich hatte mich verschrieben.
      Bei mir ist 0,032A = 0cm.
      Also sollten 3m = 0,125A sein.
      Ausgegebener Wert x - 0,032A = Wert y
      Wert y : 0,001 = Wert z
      Wert z x 3,225 cm

      Das sollte dann die Füllhöhe ergeben.
      Nun muss ich das nur noch in Blockly einmeißeln. Zumindestens versuchen!

      CCU3

      iOBroker auf IntelNUC Proxmox

      AtifanA 1 Antwort Letzte Antwort
      0
      • S Superdad

        @Atifan Ich habe einen Zylinder und Oberkante ist ebenfalls 3m.
        Ich versuche mal eine Gleichung in Blockly zu programmieren um dann die Ampere in cm umzurechnen.

        Ich hatte mich verschrieben.
        Bei mir ist 0,032A = 0cm.
        Also sollten 3m = 0,125A sein.
        Ausgegebener Wert x - 0,032A = Wert y
        Wert y : 0,001 = Wert z
        Wert z x 3,225 cm

        Das sollte dann die Füllhöhe ergeben.
        Nun muss ich das nur noch in Blockly einmeißeln. Zumindestens versuchen!

        AtifanA Offline
        AtifanA Offline
        Atifan
        schrieb am zuletzt editiert von
        #276

        @Superdad
        Ja und für die Umrechnung in Liter

        PI * r * r * h ist das Volumen

        Hier ist mein Berechnungsscript. Bin kein Programmierer, von daher ist es bestimmt nicht perfekt :) Aber funktioniert.

        f359d74f-8799-49cc-9204-e644ca8bd13b-image.png

        S 1 Antwort Letzte Antwort
        1
        • S Offline
          S Offline
          Superdad
          schrieb am zuletzt editiert von Superdad
          #277

          Ist wohl doch nicht so einfach mit Blockly.
          Bekomme immer 0cm in der Debug Ausgabe.
          Mein Blockly:

          <xml xmlns="https://developers.google.com/blockly/xml">
            <variables>
              <variable id="HBB:E$N1C0DLXs9ur-so">summe x</variable>
              <variable id="2LGagD(oRPbeP[3^@)JR">summe y</variable>
            </variables>
            <block type="on_ext" id="RwS}U~yAI-qu:Gk4$)%l" x="-287" y="63">
              <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
              <field name="CONDITION">ne</field>
              <field name="ACK_CONDITION"></field>
              <value name="OID0">
                <shadow type="field_oid" id="|IayS%`5E.Mvqm0=O-?B">
                  <field name="oid">sonoff.0.Pegelsensor.INA219_Current</field>
                </shadow>
              </value>
              <statement name="STATEMENT">
                <block type="control" id="q@Mi%VefQh.AFUtC-r;u">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                  <field name="OID">0_userdata.0.Zisterne.Pegelsonde_Ampere</field>
                  <field name="WITH_DELAY">FALSE</field>
                  <value name="VALUE">
                    <block type="math_arithmetic" id="c]T.wZ6thXVU8CG5~xdi">
                      <field name="OP">MINUS</field>
                      <value name="A">
                        <shadow type="math_number" id="[YwQk07x*$_Bi1gf2S{j">
                          <field name="NUM">0</field>
                        </shadow>
                        <block type="get_value" id="ffYElRYvG*QYnRU$yT{H" inline="false">
                          <field name="ATTR">val</field>
                          <field name="OID">sonoff.0.Pegelsensor.INA219_Current</field>
                        </block>
                      </value>
                      <value name="B">
                        <shadow type="math_number" id=".dB4=_wCwIy5R?!47_nl">
                          <field name="NUM">0.033</field>
                        </shadow>
                      </value>
                    </block>
                  </value>
                  <next>
                    <block type="debug" id="Lb**=^$?1u(8-8d=M}Pf">
                      <field name="Severity">log</field>
                      <value name="TEXT">
                        <shadow type="text" id="1d8l7V5EwDIWv+(:f6Ot">
                          <field name="TEXT">test</field>
                        </shadow>
                        <block type="get_value" id="!t*GQque2E[6fh5`D7hF">
                          <field name="ATTR">val</field>
                          <field name="OID">0_userdata.0.Zisterne.Pegelsonde_Ampere</field>
                        </block>
                      </value>
                      <next>
                        <block type="controls_if" id="GwB=eYmk@fTnO@gd|*(M">
                          <value name="IF0">
                            <block type="logic_compare" id="Vv#b4x*pEgE-Beh8|S9E">
                              <field name="OP">GTE</field>
                              <value name="A">
                                <block type="get_value" id="G7ly?Fr~Tx|FF{+LdtYZ">
                                  <field name="ATTR">val</field>
                                  <field name="OID">0_userdata.0.Zisterne.Pegelsonde_Ampere</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="math_number" id="KCBlol`*kLBIK^VwZO#i">
                                  <field name="NUM">0</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="variables_set" id="U;wTU6,f+B0QQMulQYfC">
                              <field name="VAR" id="HBB:E$N1C0DLXs9ur-so">summe x</field>
                              <value name="VALUE">
                                <block type="math_arithmetic" id="D$oV;aI0?$g+{pg?w)ev">
                                  <field name="OP">DIVIDE</field>
                                  <value name="A">
                                    <shadow type="math_number" id="k$y_jvOv|F[-(_6~Xp|.">
                                      <field name="NUM">1</field>
                                    </shadow>
                                    <block type="get_value" id="By}9*y3j7jM{y1qH_44L">
                                      <field name="ATTR">val</field>
                                      <field name="OID">0_userdata.0.Zisterne.Pegelsonde_Ampere</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <shadow type="math_number" id="*{{lI83b5[v7w9j[3$Z4">
                                      <field name="NUM">0.001</field>
                                    </shadow>
                                  </value>
                                </block>
                              </value>
                              <next>
                                <block type="debug" id="caKu*$q`T,=GgVGilNf5">
                                  <field name="Severity">log</field>
                                  <value name="TEXT">
                                    <shadow type="text" id="hX[e+Tu+26A%bai}ND$r">
                                      <field name="TEXT">test</field>
                                    </shadow>
                                    <block type="variables_get" id="IUIT}R:q,uNOeBn%DmVN">
                                      <field name="VAR" id="HBB:E$N1C0DLXs9ur-so">summe x</field>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="variables_set" id=",_a/T!i#2s{:y,[,cB]W">
                                      <field name="VAR" id="2LGagD(oRPbeP[3^@)JR">summe y</field>
                                      <value name="VALUE">
                                        <block type="math_arithmetic" id="}KWq]Qdz6YPmC0)!n;KD">
                                          <field name="OP">MULTIPLY</field>
                                          <value name="A">
                                            <shadow type="math_number" id="zk=VLtPwvO^LCSR2{%}m">
                                              <field name="NUM">1</field>
                                            </shadow>
                                            <block type="variables_get" id="N;{SwNbiXof0k_?.g2+n">
                                              <field name="VAR" id="HBB:E$N1C0DLXs9ur-so">summe x</field>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <shadow type="math_number" id="tE5B=5BbT}P*T6[qG|n{">
                                              <field name="NUM">3.225</field>
                                            </shadow>
                                          </value>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="debug" id="IX|w+cYjuBA#;cUBYYl5">
                                          <field name="Severity">log</field>
                                          <value name="TEXT">
                                            <shadow type="text">
                                              <field name="TEXT">test</field>
                                            </shadow>
                                            <block type="variables_get" id="`Y(+l^CHW,dE`s6NOf9u">
                                              <field name="VAR" id="2LGagD(oRPbeP[3^@)JR">summe y</field>
                                            </block>
                                          </value>
                                          <next>
                                            <block type="controls_if" id=":xThwNel4kk,k`fj/D|h">
                                              <value name="IF0">
                                                <block type="logic_compare" id="`v#8[pVQ[?XA2n#hhwkh">
                                                  <field name="OP">GTE</field>
                                                  <value name="A">
                                                    <block type="get_value" id="9:)f*:hw[EtxP[d%@;Sq">
                                                      <field name="ATTR">val</field>
                                                      <field name="OID">0_userdata.0.Zisterne.Pegelsonde_Füllstand_cm</field>
                                                    </block>
                                                  </value>
                                                  <value name="B">
                                                    <block type="math_number" id="_))d-=4{.Hwg%[!qgB{w">
                                                      <field name="NUM">0</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <statement name="DO0">
                                                <block type="update" id="v~8v(Tejxk%B59p7D?7:">
                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                  <field name="OID">0_userdata.0.Zisterne.Pegelsonde_Füllstand_cm</field>
                                                  <field name="WITH_DELAY">FALSE</field>
                                                  <value name="VALUE">
                                                    <block type="variables_get" id="5qejMuwFbM~nc#wH2EZu">
                                                      <field name="VAR" id="2LGagD(oRPbeP[3^@)JR">summe y</field>
                                                    </block>
                                                  </value>
                                                  <next>
                                                    <block type="debug" id="|]=P@l9r)=CfpmFbKe4^">
                                                      <field name="Severity">log</field>
                                                      <value name="TEXT">
                                                        <shadow type="text" id="f5+Cz)_{CwfU$[`+E4IG">
                                                          <field name="TEXT">test</field>
                                                        </shadow>
                                                        <block type="get_value" id=":(96#NeBT9Q#(z$O$6kq">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">0_userdata.0.Zisterne.Pegelsonde_Füllstand_cm</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </next>
                                                </block>
                                              </statement>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </statement>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
          </xml>
          

          Pegelsensor_cm.jpg

          Mein Debug Output:

          12:18:52.060	info	javascript.0 (1563) Stop script script.js.Garten.Pegelsensor_Fuellhoehe_cm
          12:18:52.198	info	javascript.0 (1563) Start javascript script.js.Garten.Pegelsensor_Fuellhoehe_cm
          12:18:52.202	info	javascript.0 (1563) script.js.Garten.Pegelsensor_Fuellhoehe_cm: registered 1 subscription and 0 schedules
          12:19:03.832	info	javascript.0 (1563) script.js.Garten.Pegelsensor_Fuellhoehe_cm: 0
          12:19:03.832	info	javascript.0 (1563) script.js.Garten.Pegelsensor_Fuellhoehe_cm: 0
          12:19:03.832	info	javascript.0 (1563) script.js.Garten.Pegelsensor_Fuellhoehe_cm: 0
          

          CCU3

          iOBroker auf IntelNUC Proxmox

          1 Antwort Letzte Antwort
          0
          • AtifanA Atifan

            @Superdad
            Ja und für die Umrechnung in Liter

            PI * r * r * h ist das Volumen

            Hier ist mein Berechnungsscript. Bin kein Programmierer, von daher ist es bestimmt nicht perfekt :) Aber funktioniert.

            f359d74f-8799-49cc-9204-e644ca8bd13b-image.png

            S Offline
            S Offline
            Superdad
            schrieb am zuletzt editiert von
            #278

            @Atifan Habe jetzt dein Script für die Berechnung genommen und dann noch die Prozente ausgerechnet.
            Eingebaut ist es auch schon und funktioniert super!

            Vielen Dank noch einmal!

            CCU3

            iOBroker auf IntelNUC Proxmox

            1 Antwort Letzte Antwort
            0
            • EisbaeeerE Eisbaeeer

              @ElseKling Hi. Ähhm, links oben ist doch der "Strom zu Spannungskonverter" schon drin. Also ich sehe keinen Fehler, sollte so passen. Rechst oben sollte eben ein Step-Up Konverter von 5V auf 24V sein, da die Pegelsonde und der Konverter nur mit 24V richtig arbeiten.
              Gruß Eisbaeeeer

              E Offline
              E Offline
              ElseKling
              schrieb am zuletzt editiert von
              #279

              @Eisbaeeer heute kam endlich mein Strom2Spannungs-Converter. Entsprechend dem Bild angeschlossen. Leider liefert ESp-Easy keine Anzeige. Beim Messen ist mir aufgefallen, dass der Converter eine negative Spannung ausgibt. IMG_4226.jpg

              EisbaeeerE 1 Antwort Letzte Antwort
              0
              • E ElseKling

                @Eisbaeeer heute kam endlich mein Strom2Spannungs-Converter. Entsprechend dem Bild angeschlossen. Leider liefert ESp-Easy keine Anzeige. Beim Messen ist mir aufgefallen, dass der Converter eine negative Spannung ausgibt. IMG_4226.jpg

                EisbaeeerE Offline
                EisbaeeerE Offline
                Eisbaeeer
                Developer
                schrieb am zuletzt editiert von Eisbaeeer
                #280

                @ElseKling Warum ESPEasy? Meine Firmware basiert auf dem LAN Chip. Sorry, aber ich unterstütze kein ESPEasy. Da ist doch gerade Superdad und Atifan aktiv. Bei unserer Lösung ist kein Umrechnen nötig. Außerdem kann eine untere Grenze und vieles mehr direkt in iobroker über MQTT definiert werden. Falls Bedarf ist, kann ich das auch noch auf ESP8266 portieren. Gruß Eisbaeeer

                Kein support per PM. Bitte im Forum Fragen stellen!

                E 1 Antwort Letzte Antwort
                0
                • EisbaeeerE Eisbaeeer

                  @ElseKling Warum ESPEasy? Meine Firmware basiert auf dem LAN Chip. Sorry, aber ich unterstütze kein ESPEasy. Da ist doch gerade Superdad und Atifan aktiv. Bei unserer Lösung ist kein Umrechnen nötig. Außerdem kann eine untere Grenze und vieles mehr direkt in iobroker über MQTT definiert werden. Falls Bedarf ist, kann ich das auch noch auf ESP8266 portieren. Gruß Eisbaeeer

                  E Offline
                  E Offline
                  ElseKling
                  schrieb am zuletzt editiert von
                  #281

                  @Eisbaeeer
                  Ah sorry, aber die Auswertung des Signals ist wäre ja dann der zweite Schritt. Hier noch mal der Aufbau als Schema. Wieso habe ich am Ausgang des Spannungskonverters (grün zu GND) eine negative Spannung :thinking_face: ?
                  Die Sonde wird ja über den Konverter gespeißt oder braucht sie noch mal 24V?
                  fritzing-sonde.jpg

                  S 1 Antwort Letzte Antwort
                  0
                  • E ElseKling

                    @Eisbaeeer
                    Ah sorry, aber die Auswertung des Signals ist wäre ja dann der zweite Schritt. Hier noch mal der Aufbau als Schema. Wieso habe ich am Ausgang des Spannungskonverters (grün zu GND) eine negative Spannung :thinking_face: ?
                    Die Sonde wird ja über den Konverter gespeißt oder braucht sie noch mal 24V?
                    fritzing-sonde.jpg

                    S Offline
                    S Offline
                    Superdad
                    schrieb am zuletzt editiert von
                    #282

                    @ElseKling Muss denn nicht GRD auf Minus und Plus auf VCC?

                    CCU3

                    iOBroker auf IntelNUC Proxmox

                    E 1 Antwort Letzte Antwort
                    0
                    • S Superdad

                      @ElseKling Muss denn nicht GRD auf Minus und Plus auf VCC?

                      E Offline
                      E Offline
                      ElseKling
                      schrieb am zuletzt editiert von ElseKling
                      #283

                      @Superdad war ein Fehler im Diagram :slightly_frowning_face:
                      Die Sonde braucht doch Versorgungsspannung (24V), zusammen mit dem gemeinsamen GND klappt es jetzt. Am Wochenende werde ich mal kalibrieren. Und dann ein komplettes "Rezept" schreiben.
                      Sonde_Steckplatine4.jpg

                      S 1 Antwort Letzte Antwort
                      0
                      • E ElseKling

                        @Superdad war ein Fehler im Diagram :slightly_frowning_face:
                        Die Sonde braucht doch Versorgungsspannung (24V), zusammen mit dem gemeinsamen GND klappt es jetzt. Am Wochenende werde ich mal kalibrieren. Und dann ein komplettes "Rezept" schreiben.
                        Sonde_Steckplatine4.jpg

                        S Offline
                        S Offline
                        Superdad
                        schrieb am zuletzt editiert von
                        #284

                        @ElseKling Also der gleiche Fehler wie bei mir.

                        CCU3

                        iOBroker auf IntelNUC Proxmox

                        1 Antwort Letzte Antwort
                        0
                        • E ElseKling

                          Hallo zusammen,
                          die Lösung mit der Pegelsonde und MQTT wäre für mich genau die Lösung. Da sich hier die verschiedenen Ansätze vermischen (D1 mini, NodeMCU, Arduino Nano..) würde ich gerne eine Anleitung erstellen, die am Ende den Nachbau für alle Interssierten einfach in einem Ablauf ermöglicht. Im zweiten Schritt dann mit der Erweiterung des Displays.
                          Habe ich den Aufbau mit einem Node MCU so richtig verstanden oder muss der Strom-zu-Spannungs-Converter noch rein?
                          plan.jpg

                          E Offline
                          E Offline
                          ElseKling
                          schrieb am zuletzt editiert von ElseKling
                          #285

                          Wie versprochen hier das "Kochrezept".
                          Füllstandsmesser per Pegelsonde

                          Einleitung:
                          Um dem Wasserpegel meiner Zisterne zu messen und an meinen io-broker zu übermitteln habe ich lange im Netz gesucht und auf Dauer scheinen alle Lösungen mit Ultraschall-sensor nicht beständig zu sein. Am Ende habe ich den Thread (https://forum.iobroker.net/topic/16773) gefunden. Ich habe mich für den Weg mit dem NodeMCU und ESPEasy entschieden, da bei letzterem die MQTT-Einbindung und die Konfiguration per Weboberfläche sehr einfach ist. Dank also an alle Beteiligten im Thread, ich habe nur alle Infos zusammengefasst und eine Schritt-für-Schritt-Anleitung draus gebastelt.

                          Hardware:
                          • Pegelsonde (Level Transmitter Level Transducer Level Sensor)
                          Achtet bitte drauf eine zu nehemn deren maximaler Pegelstand auch Eurem entspricht. Ansonsten kann es zu starken Schwankungen führen.
                          z.B. https://www.aliexpress.com/item/32611346968.html?spm=a2g0s.9042311.0.0.2df14c4dDaJs7G
                          pegel.JPG

                          • NodeMCU (andere ESP8266 Module sollten auch gehen)
                          z.B. https://www.az-delivery.de/products/nodemcu
                          • Spannungswandler (Voltage Step Up Adjustable)
                          z.B. https://www.aliexpress.com/item/32833505298.html?spm=a2g0s.9042311.0.0.2df14c4dDaJs7G
                          Vup.jpg

                          • Strom zu Spannung Konverter (Current to Voltage Converter Signal Conversion Module)
                          z.B. https://www.aliexpress.com/item/4001108601098.html?spm=a2g0s.9042311.0.0.2df14c4dDaJs7G
                          C2V.jpg

                          • Optional Display (2-zeilig HD44780 1602 oder 4-zeilig HD44780 2004)
                          z.B. https://www.az-delivery.de/products/bundlelcd-schnittstelle?_pos=5&_sid=72565279b&_ss=r

                          Verkabelung:
                          Entsprechend der Skizze
                          Sonde_Steckplatine4.jpg

                          Mit optionalem Display:
                          Sonde-display_Steckplatine.png

                          Am Strom zu Spannung Konverter mit dem 2 Schrauben den Maximal- und Minimalwert einstellen. Der Minimalwert sollte über 0V liegen um zu erkennen, ob ein Fehler (Kabelbruch) vorliegt.
                          Sollte das Display nichts anzeigen, am Potentiometer auf der Rückseite den Kontrast kontrollieren.

                          Software:
                          Den ESP mit ESPEasy flashen und über die Weboberfläche konfigurieren.
                          Ich verwende 20111 – Mega vom Sep 29 2020 09:50:20 „ESP_Easy_mega_20200929_normal_ESP8266_4M1M“. Abweichende Versionen können Probleme machen.

                          MQTT-Client
                          s1.jpg
                          s2.jpg
                          A: IP-Adresse des MQTT-Servers
                          B: User / Passwort des MQTT-Servers

                          Devices
                          s4.jpg

                          Display
                          s5.jpg

                          A: I2C-Adresse, kann über Tools -> I2C Scan ermittelt werden
                          B: Größe des Displays;

                          s3.jpg
                          A: Anschluss pins des Displays

                          Analog Eingang
                          s6.jpg
                          A: Oversampling glättet den Eingang der Messung
                          B&C: 2Punktkalibrierung der Meßwerts. A=Messwert ohne Pegel B=Messwert Maximalpegel
                          In meinem Fall habe ich mich entschieden den Wert als 0%-100% zu nehmen, es wäre auch möglich die Höhe oder die Liter zu nehmen. Da ich eine quadratische Zisterne haben, sind alle Werte eh direkt proportional.

                          Umrechnung
                          s7.jpg
                          s8.jpg

                          Umrechnung der Prozent in Liter (bei mir 9500L maximal)

                          Allgemeine Tipps:

                          1. Kalibration
                            Zur Kalibrierung habe ich ein unten geschlossenes DN50 HT-Rohr genommen, so konnte ich verschiedene Pegelstände außerhalb der Zisterne simulieren. Das Rohr bekam dann einige Bohrungen und wurde am Ende in die Zisterne gehängt und die Sonde dann eingeführt, so dient es als Filter um die Sonde etwas vor Verunreinigungen zu schützen und die Wasseroberfläche im Rohr etwas zu beruhigen.

                          Updates:
                          26-05-2021: Ergänzung zum maximalen Pegelbereich der Sonde und zur ESP_Easy Version

                          Das Ganze als PDF: Füllstandsmesser per Pegelsonde2.pdf

                          R V E ? 4 Antworten Letzte Antwort
                          3
                          • E ElseKling

                            Wie versprochen hier das "Kochrezept".
                            Füllstandsmesser per Pegelsonde

                            Einleitung:
                            Um dem Wasserpegel meiner Zisterne zu messen und an meinen io-broker zu übermitteln habe ich lange im Netz gesucht und auf Dauer scheinen alle Lösungen mit Ultraschall-sensor nicht beständig zu sein. Am Ende habe ich den Thread (https://forum.iobroker.net/topic/16773) gefunden. Ich habe mich für den Weg mit dem NodeMCU und ESPEasy entschieden, da bei letzterem die MQTT-Einbindung und die Konfiguration per Weboberfläche sehr einfach ist. Dank also an alle Beteiligten im Thread, ich habe nur alle Infos zusammengefasst und eine Schritt-für-Schritt-Anleitung draus gebastelt.

                            Hardware:
                            • Pegelsonde (Level Transmitter Level Transducer Level Sensor)
                            Achtet bitte drauf eine zu nehemn deren maximaler Pegelstand auch Eurem entspricht. Ansonsten kann es zu starken Schwankungen führen.
                            z.B. https://www.aliexpress.com/item/32611346968.html?spm=a2g0s.9042311.0.0.2df14c4dDaJs7G
                            pegel.JPG

                            • NodeMCU (andere ESP8266 Module sollten auch gehen)
                            z.B. https://www.az-delivery.de/products/nodemcu
                            • Spannungswandler (Voltage Step Up Adjustable)
                            z.B. https://www.aliexpress.com/item/32833505298.html?spm=a2g0s.9042311.0.0.2df14c4dDaJs7G
                            Vup.jpg

                            • Strom zu Spannung Konverter (Current to Voltage Converter Signal Conversion Module)
                            z.B. https://www.aliexpress.com/item/4001108601098.html?spm=a2g0s.9042311.0.0.2df14c4dDaJs7G
                            C2V.jpg

                            • Optional Display (2-zeilig HD44780 1602 oder 4-zeilig HD44780 2004)
                            z.B. https://www.az-delivery.de/products/bundlelcd-schnittstelle?_pos=5&_sid=72565279b&_ss=r

                            Verkabelung:
                            Entsprechend der Skizze
                            Sonde_Steckplatine4.jpg

                            Mit optionalem Display:
                            Sonde-display_Steckplatine.png

                            Am Strom zu Spannung Konverter mit dem 2 Schrauben den Maximal- und Minimalwert einstellen. Der Minimalwert sollte über 0V liegen um zu erkennen, ob ein Fehler (Kabelbruch) vorliegt.
                            Sollte das Display nichts anzeigen, am Potentiometer auf der Rückseite den Kontrast kontrollieren.

                            Software:
                            Den ESP mit ESPEasy flashen und über die Weboberfläche konfigurieren.
                            Ich verwende 20111 – Mega vom Sep 29 2020 09:50:20 „ESP_Easy_mega_20200929_normal_ESP8266_4M1M“. Abweichende Versionen können Probleme machen.

                            MQTT-Client
                            s1.jpg
                            s2.jpg
                            A: IP-Adresse des MQTT-Servers
                            B: User / Passwort des MQTT-Servers

                            Devices
                            s4.jpg

                            Display
                            s5.jpg

                            A: I2C-Adresse, kann über Tools -> I2C Scan ermittelt werden
                            B: Größe des Displays;

                            s3.jpg
                            A: Anschluss pins des Displays

                            Analog Eingang
                            s6.jpg
                            A: Oversampling glättet den Eingang der Messung
                            B&C: 2Punktkalibrierung der Meßwerts. A=Messwert ohne Pegel B=Messwert Maximalpegel
                            In meinem Fall habe ich mich entschieden den Wert als 0%-100% zu nehmen, es wäre auch möglich die Höhe oder die Liter zu nehmen. Da ich eine quadratische Zisterne haben, sind alle Werte eh direkt proportional.

                            Umrechnung
                            s7.jpg
                            s8.jpg

                            Umrechnung der Prozent in Liter (bei mir 9500L maximal)

                            Allgemeine Tipps:

                            1. Kalibration
                              Zur Kalibrierung habe ich ein unten geschlossenes DN50 HT-Rohr genommen, so konnte ich verschiedene Pegelstände außerhalb der Zisterne simulieren. Das Rohr bekam dann einige Bohrungen und wurde am Ende in die Zisterne gehängt und die Sonde dann eingeführt, so dient es als Filter um die Sonde etwas vor Verunreinigungen zu schützen und die Wasseroberfläche im Rohr etwas zu beruhigen.

                            Updates:
                            26-05-2021: Ergänzung zum maximalen Pegelbereich der Sonde und zur ESP_Easy Version

                            Das Ganze als PDF: Füllstandsmesser per Pegelsonde2.pdf

                            R Offline
                            R Offline
                            Rand
                            schrieb am zuletzt editiert von
                            #286

                            Lässt sich eine der Lösungen hier eigentlich so erweitern/umbauen das ich das Board über Ethernet betreiben kann (PoE) und idealerweise noch einen (wasserfesten) Temperatursensor (oder 2) dran packen kann?

                            Nehme mal an ich bräuchte da mehr Spannungswandler (1x 48V auf 24V, einmal 24/48 auf Boardeingang [5V oder was auch immer], ggf auf 1 Wire, das wäre ja noch recht logisch. Dann müsste man wohl den Sketch so abändern das er auch die Temperaturwerte pollt und mit ausgibt...
                            Sollte ja eigentlich kein Hexenwerk sein hoffe ich :)

                            AtifanA 1 Antwort Letzte Antwort
                            0
                            • R Rand

                              Lässt sich eine der Lösungen hier eigentlich so erweitern/umbauen das ich das Board über Ethernet betreiben kann (PoE) und idealerweise noch einen (wasserfesten) Temperatursensor (oder 2) dran packen kann?

                              Nehme mal an ich bräuchte da mehr Spannungswandler (1x 48V auf 24V, einmal 24/48 auf Boardeingang [5V oder was auch immer], ggf auf 1 Wire, das wäre ja noch recht logisch. Dann müsste man wohl den Sketch so abändern das er auch die Temperaturwerte pollt und mit ausgibt...
                              Sollte ja eigentlich kein Hexenwerk sein hoffe ich :)

                              AtifanA Offline
                              AtifanA Offline
                              Atifan
                              schrieb am zuletzt editiert von
                              #287

                              @Rand Erweitern lässt sich das so auf jeden Fall. Problem ist halt nur die Software, entweder musst du sie selber schreiben oder jemand anders macht das. Mit Tasmota auf dem ESP kannst du z.B. schonmal direkt Temperatursensoren z.B. über 1Wire direkt mit anschließen, allerdings ist Tasmota für ESP8266, also WLAN. Wenn du einen Arduiono Uno oder so nutzen willst brauchst du andere Software. Aber funktionieren tut das auf jeden Fall, alles eine Sache der Software :)

                              R 1 Antwort Letzte Antwort
                              0
                              • AtifanA Atifan

                                @Rand Erweitern lässt sich das so auf jeden Fall. Problem ist halt nur die Software, entweder musst du sie selber schreiben oder jemand anders macht das. Mit Tasmota auf dem ESP kannst du z.B. schonmal direkt Temperatursensoren z.B. über 1Wire direkt mit anschließen, allerdings ist Tasmota für ESP8266, also WLAN. Wenn du einen Arduiono Uno oder so nutzen willst brauchst du andere Software. Aber funktionieren tut das auf jeden Fall, alles eine Sache der Software :)

                                R Offline
                                R Offline
                                Rand
                                schrieb am zuletzt editiert von
                                #288

                                @Atifan said in Füllstandsmessung per Pegelsonde.:

                                @Rand ... Aber funktionieren tut das auf jeden Fall, alles eine Sache der Software :)

                                Danke - genau das habe ich mir gedacht. Klingt nach einem Projekt für lange Winterabende :p

                                Welches Board wäre dafür am besten geeignet? Also Ethernet/PoE fähig (ggf mit {verfügbarem} shield) und genügend IO pins?

                                1 Antwort Letzte Antwort
                                0
                                • opossumO Offline
                                  opossumO Offline
                                  opossum
                                  schrieb am zuletzt editiert von
                                  #289

                                  Hallo, @Rand ,

                                  schau mal auf Seite 4 dieses Themas. @Eisbaeeer hat das mit einem Ethernetshield gemacht. Er hat auch seinen Sketch veröffentlicht.

                                  https://schlepper-petersdorf.jimdofree.com/

                                  R 1 Antwort Letzte Antwort
                                  0
                                  • opossumO opossum

                                    Hallo, @Rand ,

                                    schau mal auf Seite 4 dieses Themas. @Eisbaeeer hat das mit einem Ethernetshield gemacht. Er hat auch seinen Sketch veröffentlicht.

                                    R Offline
                                    R Offline
                                    Rand
                                    schrieb am zuletzt editiert von
                                    #290

                                    @opossum
                                    Ja danke, das hatte ich gesehen; ich wusste nur nicht ob ich da noch so einfach 1-Wire mit dranhängen kann :)

                                    EisbaeeerE 1 Antwort Letzte Antwort
                                    0
                                    • R Rand

                                      @opossum
                                      Ja danke, das hatte ich gesehen; ich wusste nur nicht ob ich da noch so einfach 1-Wire mit dranhängen kann :)

                                      EisbaeeerE Offline
                                      EisbaeeerE Offline
                                      Eisbaeeer
                                      Developer
                                      schrieb am zuletzt editiert von Eisbaeeer
                                      #291

                                      @Rand Hi. Das geht ohne weiteres. Allerdings nicht mehr mit dem Nano. Der hat zu wenig Flash und RAM. Die Ports sind hier nicht das Problem, da du nur einen Port für 1-wire benötigst. Das Programmlässt sich ziemlich einfach mit 1-wire ergänzen. Wenn du mehr als 2 Sensoren nutzen möchtest, solltest du dir überlegen, ob Parasite Modus eine Variante wäre. Ich habe schon ein größeres Projekt mit 1-wire umgesetzt. Wenn du Lust hast, kannst du mir ja mal schreiben, was du vorhast, oder einen separaten Thread aufmachen, falls du dein Projekt mit der Community teilen willst.

                                      Leider gibt es nicht viele PoE Boards und die sind noch dazu sehr teuer. Das wird dann wohl der schwierigere Teil.
                                      Gruß Eisbaeeer

                                      P.S.: Hier nochmal der Github Link zur Software. Falls du teile nutzen möchtest. Steht unter MIT Lizenz.
                                      https://github.com/Eisbaeeer/Arduino.Ethernet.Zisterne

                                      Kein support per PM. Bitte im Forum Fragen stellen!

                                      R 1 Antwort Letzte Antwort
                                      0
                                      • EisbaeeerE Eisbaeeer

                                        @Rand Hi. Das geht ohne weiteres. Allerdings nicht mehr mit dem Nano. Der hat zu wenig Flash und RAM. Die Ports sind hier nicht das Problem, da du nur einen Port für 1-wire benötigst. Das Programmlässt sich ziemlich einfach mit 1-wire ergänzen. Wenn du mehr als 2 Sensoren nutzen möchtest, solltest du dir überlegen, ob Parasite Modus eine Variante wäre. Ich habe schon ein größeres Projekt mit 1-wire umgesetzt. Wenn du Lust hast, kannst du mir ja mal schreiben, was du vorhast, oder einen separaten Thread aufmachen, falls du dein Projekt mit der Community teilen willst.

                                        Leider gibt es nicht viele PoE Boards und die sind noch dazu sehr teuer. Das wird dann wohl der schwierigere Teil.
                                        Gruß Eisbaeeer

                                        P.S.: Hier nochmal der Github Link zur Software. Falls du teile nutzen möchtest. Steht unter MIT Lizenz.
                                        https://github.com/Eisbaeeer/Arduino.Ethernet.Zisterne

                                        R Offline
                                        R Offline
                                        Rand
                                        schrieb am zuletzt editiert von
                                        #292

                                        @Eisbaeeer

                                        Super, danke.
                                        Ich wollte einfach erstmal nur die Pegelsonde der Zisterne um eine Temperaturmessung des Wassers und oder des Leitungsrohres erweitern - wir haben die Zisterne erst bekommen und ich habe keine Vorstellung davon ob sie im Winter frostgefährdet ist oder nicht, wie es mit der Leitung (bzw dem knapp unter der Erdoberfäche verlegten Rohr aussieht (Bodenfrost) usw.

                                        Mir ist ja am Ende egal welches Board, kenne mich da nur nicht so gut aus; im Zweifel kann ich auch einen alten RPi nehmen wenn ich da die Pegelsonde irgendwie dran bekomme...

                                        B 1 Antwort Letzte Antwort
                                        0
                                        • R Rand

                                          @Eisbaeeer

                                          Super, danke.
                                          Ich wollte einfach erstmal nur die Pegelsonde der Zisterne um eine Temperaturmessung des Wassers und oder des Leitungsrohres erweitern - wir haben die Zisterne erst bekommen und ich habe keine Vorstellung davon ob sie im Winter frostgefährdet ist oder nicht, wie es mit der Leitung (bzw dem knapp unter der Erdoberfäche verlegten Rohr aussieht (Bodenfrost) usw.

                                          Mir ist ja am Ende egal welches Board, kenne mich da nur nicht so gut aus; im Zweifel kann ich auch einen alten RPi nehmen wenn ich da die Pegelsonde irgendwie dran bekomme...

                                          B Offline
                                          B Offline
                                          Beowolf
                                          schrieb am zuletzt editiert von
                                          #293

                                          @Rand

                                          Nimm doch diese hier:

                                          https://www.amazon.de/gp/product/B075FV3PQR/ref=ppx_yo_dt_b_asin_title_o03_s00?ie=UTF8&psc=1

                                          Die werden direkt von der ESP Easy Mega Software unterstützt.

                                          Die Natur braucht nicht unseren Schutz, sie braucht unsere Abwesenheit.

                                          R 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          279

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe