Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. Wasserzähler - Selfmade

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Wasserzähler - Selfmade

    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      jomjol @watcherkb last edited by

      @watcherkb Hallo Watcherkb,

      klar, gerne. Eine Hard Hardwareliste findest du auch auf Github, wo du den Code runterladen kannst:
      https://github.com/jomjol/water-meter-picture-provider

      hier ein Screenshot:
      72784dc1-d4ed-4df3-9eec-9378d8647e7b-grafik.png

      Aber warum willst du noch den ESP8266 nehmen? Ich würde dir die ESP32-CAM Variante mit internem Flash empfehlen. Kostet viel weniger und bedarf nur einer Stromversorgung und keiner externen LED.
      Ist auch viel billiger. Allein die ArduCam kostet ca. 25 EUR (Achtung nur mit JPEG-Chip kaufen!), einen ESP32-CAM mit OV2640 bekommst du für da 10 EUR oder 5$ aus CN.

      Beim Stromzähler verwende ich eine kommerzielle Lösung von Homematic. Technisch geht es aber auch mit diesem Setup, der Code ist bewußt sehr generisch gehalten und läßt sich gut anpassen.

      Gruß,
      Jomjol

      W 1 Reply Last reply Reply Quote 0
      • M
        mcchickents last edited by

        Guten Abend,

        wäre es noch möglich von den 3 Refernzbilder auch die Größe zu bestimmen in der config Datei. Ich habe mir heute eigene Bilder erstellt jedoch sind meine ein paar Pixel größer. Hat das Bild Referenz auch eine Bedeutung oder ist es nur zu Veranschaulichung im Verzeichnis.

        Gruß Julian

        J 1 Reply Last reply Reply Quote 0
        • J
          jomjol @mcchickents last edited by

          @mcchickents Die Größe der Referenzbilder ist beliebig und wird zur Berechnung nirgends benötigt. Wenn deine Bilder etwas größer oder kleiner sind, spielt das keine Rolle. Wichtig ist nur, dass die Koordinate der linken oberen Ecke genau der Stelle entspricht, an der du das Bild in deiner eigenen Referenz rausgeschnitten hast.
          Das Bild "Referencz" hat keine Bedeutung (mein eigenes Referenzbild) werde es in der nächsten Verion löschen.

          1 Reply Last reply Reply Quote 0
          • M
            mcchickents last edited by

            Hi Jomjol,

            habe ich so eingestellt zur Zeit funktioniert es ganz gut. Bei den Zeiger habe ich als noch eine Abweichung von max 1. Hab gestern und heute mal versucht das ganze zu loggen. Leider noch etwas erfolgslos^^. Mit dem simple api adapter habe ich es hinbekommen einen wert in eine selber erstelte Variable zu schreiben jedoch noch nicht die werte aus dem link http://192.168.2.13:3000/wasserzaehler.html.

            Dann habe ich mal etwas im blockly getestet leider will das aber auch nicht richtig laufen. Anbei mal ein Bild vielleicht hat ja jemand von euch eine Idee.
            Wasser pro.PNG

            I 1 Reply Last reply Reply Quote 0
            • W
              watcherkb @jomjol last edited by

              @jomjol Hi, sorry ich hatte wohl sagen sollen dass ich auf die ESP32 Variante setzen möchte. Deswegen die Frage nach der Hardwareliste. Was für ein Modul setzt du noch vor den ESP, also da wo das miniusb kabel steckt?

              coyote 1 Reply Last reply Reply Quote 0
              • coyote
                coyote Most Active @watcherkb last edited by

                @watcherkb das ist wohl ein Micro USB Breakout Modul, davon hab ich mir jetzt auch mal welche bestellt.

                J 1 Reply Last reply Reply Quote 0
                • J
                  jomjol @coyote last edited by

                  @coyote @watcherkb ja korrekt, ist ein micro usb Breakout-Board:

                  IMG_20190920_174935.jpg

                  Welches genau, kann ich euch nicht mehr sagen. Im Zweifelsfall müsst ihr die Löcher auf dem Inlay etwas anpassen. Dient nur der Stromversorgung. Zur Programmierung baue ich das Teil dann jeweils aus.

                  1 Reply Last reply Reply Quote 0
                  • I
                    intruder7 @mcchickents last edited by

                    @mcchickents
                    Am besten du nimmst den Parser Adapter. Da ist bereits alles drin.
                    Einstellungen siehst du im Bild.
                    Als RegEX nimmst du folgendes: "[N|0-9][N|0-9][N0-9][N|0-9][N|0-9]\D\d\d\d\d"
                    Den Inhalt der Anführungszeichen nehmen ohne jene welche. 😉
                    Dann hast du den Wert deines Zählers in den Objekten unter Parser und kannst ihn weiterverarbeiten, Loggen oder was auch immer

                    63136003-5735-4988-a0ff-26b8804185bf-image.png

                    J 1 Reply Last reply Reply Quote 0
                    • J
                      jomjol @intruder7 last edited by jomjol

                      Um das Thema mit dem "N" in den Griff zu bekommen, habe ich einen Algorithmus implementiert, der nun auch den letzten Wert mit berücksichtigt. Wenn die Ziffern auf einem Zwischenwert stehen, also "N" zurück liefern, dann wird kann der Algo prüfen, ob die Ziffer mit "N" vorher schonmal erkannt wurde und das N durch die gültige Ziffer ersetzten. Es werden auch Zehnerübergänge berücksichtigt. Also z.B.:

                      letzer gültiger Wert: 401.995
                      Rückgabe-Wert: 40N.015

                      Dann wir daraus: 402.015

                      Um das Feature zu nutzen muss bei der Abfrage des Wasserzaehler ein Parameter ergänzt werden:

                      .../wasserzaehler.html?usePreValue

                      Wenn Docker gerade neu gestaret wurde und noch keine Zahl ganz ohne "N" detektiert wurde, funktioniert es natürlich nicht. Dazu gibt es aber die Möglichkeit einen gültigen Zählerwert manuell zu setzen:

                      .../setPreValue.html?value=402.015

                      Das experimentelle Docker Image (jomjol/wasserzaehler:rolling) enthält dieses Feature.

                      Gruß,
                      jomjol

                      M 1 Reply Last reply Reply Quote 0
                      • M
                        mcchickents last edited by mcchickents

                        Hi jomjol,

                        hab die letzten Tage mal etwas anderes wie Wasserzähler gemacht.
                        Heute habe ich dein neuste update getestet.

                        Wenn ich den Wert Setzte erhalte ich folgende Antwort.
                        Last value set to: 00302.0398

                        Wenn ich jetzt den Parser wieder arbeiten lasse will das N in der 30N leider nicht verschwinden.
                        Anbei meine Praser Einstellungen. Config ini ist die alte.

                        Noch eine kurze Frage zu deinem "N Algo" kann der Algorithmus auch erkennen wenn die Zeiger Falsch detektiert worden sind. Ein Beispiel

                        Scan 1 302.0008
                        Scan 2 302.0009 richtig
                        Scan 3 302.0007 falsch

                        Sozusagen wenn die Zahl kleiner wird das dann dein Algo den Scann korrigiert?#

                        Gruß Julian

                        Ps. Echt geile arbeit von dir.

                        f7c82904-9347-40af-b99c-3c4eec7f7686-image.png

                        J 1 Reply Last reply Reply Quote 0
                        • coyote
                          coyote Most Active last edited by

                          Ich werde hier evtl diese Woche auch mal weiter machen. Musste die unterste Halterung etwas umkonstruieren, damit sie auf meine Uhr passt.
                          Ist aber jetzt alles erledigt, alle Teile sind gedruckt und das letzte Update installiert.
                          Jetzt muss ich nur mal noch Zeit finden um das Teil auf die Uhr zu bauen und einzurichten.
                          Hoffe das funktioniert überhaupt mit meiner Uhr...

                          1 Reply Last reply Reply Quote 0
                          • W
                            watcherkb last edited by

                            Bin mir immer noch unschlüssig ob ich diese Lösung favorisieren soll oder doch die von Stall.biz

                            Vorteil von @jomjol 's Variante mit dem ESP: es ist sehr günstig. Nachteil: falls die Stadtwerke vorbeikommt um den Zählerstand abzufragen, muss ich alles demontieren, mit der Folge, anschließend alles neu justieren zu müssen (oder?)

                            Vorteil Stall.biz: Zählerstand ist immer sichtbar. Nachteil: teurer, und muss immer abgedunkelt sein.

                            Wie sind eure Erfahrungen bisher?

                            J 1 Reply Last reply Reply Quote 0
                            • J
                              jomjol @mcchickents last edited by jomjol

                              @mcchickents Hi Julian,
                              zu 1) komisch, dass dein Parser immer noch das "N" anzeigt, den eigentlich sollte der Wasserzaehler kein N mehr liefern. Hast du ihn im Browser mal direkt abgefragt und geschaut, was er liefert?
                              Du musst natürlich "setPreValue" jedesmal aufrufen, wenn du den Docker neu startest, da der Wert nur in einer Variable ist und bei Neustart leer ist. Alternativ kannst du ihn auch so starten und warten, bis er mal alle Ziffern erkannt hat.

                              zu 2) falsche Werte (z.B. Zählerstand kleiner, wie vorher) erkennt der Algo noch nicht. Momentan mache ich das beim Übertrag in die DB in einem anderen Script. Aber gute Idee, könnte man auch dort als Plauscheck implementieren.

                              Gruß,
                              jomjol

                              P.S.: was wäre im Fall eines inkonsiten Auslesewertes die "vernünftige" Rückgabe: 1) Fehlermeldung (z.B. inconsistent value) oder 2) lieber den alten Wert, damit die DB-Abfrage kein Fehlerhandling braucht?

                              J 1 Reply Last reply Reply Quote 0
                              • J
                                jomjol @watcherkb last edited by

                                @watcherkb Meine Rückmeldung insbesondere zu "Demontage":
                                Die Halterung ist einfach nur auf die Wasseruhr aufgesteckt und kann bei mir ohne jedes Werkzeug jederzeit abgenommen werden - geht natürlich nur bei ebener Wasseruhr.

                                Eine extra Justage ist nicht notwendig. Das Aufsetzen mit Augenmass reicht völlig aus, da die Bildverarbeitung kleinere Winkelfehler durch Verdrehen durch das Ausrichten des Bilders anhand der Referenzmarken vollautomatisch korrigiert.

                                Eine Idee, um den Zähler zu auch immer sichtbar zu haben, wäre ein Fenster/Aussparung in der Halterung - Platz wäre genug. Müsste man einfach mal ausprobieren, ob es die Beleuchtung zu sehr stört.

                                Meine Meinung ist natürlich etwas gefärbt 😊

                                1 Reply Last reply Reply Quote 0
                                • J
                                  jomjol @jomjol last edited by

                                  @jomjol habe gerade noch einen Fehler im Algo für den PreValue gefunden (Typumwandlung, falls 0-Übergang). Erklärt zwar deinen Fehler nicht - dennoch neue Version für den Docker hochgeladen.

                                  1 Reply Last reply Reply Quote 0
                                  • M
                                    mcchickents last edited by

                                    Werde ich heute Abend ausprobieren.

                                    Kannst du mir noch Verraten wie du die Daten im Iobroker weiter verarbeitest? Schön wäre ja. Einzelne DB mit den Werten. Ich probiere heute Abend mal das in Blockly zu realisieren.

                                    Wasserverbrauch_aktuell (letzte 5min)
                                    Wasserverbrauch_letzte Stunde
                                    Wasserverbrauch_heute
                                    Wasserverbrauch_gestern
                                    Wasserverbrauch_Woche
                                    Wasserverbrauch_letzte Woche
                                    Wasserverbrauch_Monat
                                    Wasserverbrauch_letzter Monat
                                    Wasserverbrauch_Jahr
                                    Wasserverbrauch_gesamt

                                    1 Reply Last reply Reply Quote 0
                                    • coyote
                                      coyote Most Active last edited by

                                      @jomjol bräuchte jetzt leider auch noch etwas Hilfe.
                                      Irgendwas stimmt mit dem Bild noch nicht, so brauche ich gar nicht weiter einzurichten.
                                      Schau mal bitte, das ROI Bild ist komplett verzerrt, aber das SourceImage ist doch eigentlich ok oder nicht? Auflösung 800x600, die config habe ich schon etwas angepasst, habe mir 3 Punkte ausgeschnitten und eingetragen. Punkte sind: m³, PN16 und 30°C

                                      config.ini

                                      SourceImage_2019-09-25_20-27-12.jpg Roi.JPG

                                      1 Reply Last reply Reply Quote 0
                                      • M
                                        mcchickents last edited by

                                        Hi das hatte ich auch schon. Start mal den Docker Container neu.

                                        coyote 1 Reply Last reply Reply Quote 0
                                        • coyote
                                          coyote Most Active @mcchickents last edited by

                                          @mcchickents das hab ich gestern leider schon mehrmals gemacht. Kann es vllt auch am Winkel liegen? Dass wollte ich nachher mal probieren, da einen anderen Winkel in der Config anzugeben

                                          1 Reply Last reply Reply Quote 0
                                          • M
                                            mcchickents last edited by

                                            Ok nimm mal die 0,001 als Referenz dann wird das Dreieck größer.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.1k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            how-to wasser wasserzähler
                                            48
                                            1089
                                            310486
                                            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