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 @pfried last edited by

      @pfried Sieht schonmal gut aus!

      Deine Referenzen müssten passen. Anstatt des BM könntest du auch "x0,001" über dem mittleren Zeiger nehmen, dann hättest du ein noch etwas größeres Dreieck.
      initial_rotation_angle sollte eigentlich einen Einfluss zumindest auf das Bild "rot.jpg" haben (Drehung von org.jpg nach rot.jpg).

      Weiterhin viel Erfolg!

      1 Reply Last reply Reply Quote 0
      • pfried
        pfried last edited by

        @jomjol Welches Programm verwendest Du zum Ausschneiden und vermessen?

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

          @pfried Ich verwende GIMP, geht aber mit jedem anderen auch.

          Hatte vergessen auf die Koordinaten zu antworten: (0,0) ist oben links.

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

            @mcchickents Hast Du für Blockly jetzt eine Letztversion die Du vielleicht mit mir teilen möchtest? Thx!

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

              @daniel_iobroker sagte in Wasserzähler - Selfmade:

              @watcherkb was musstest du denn im python Script ändern?

              Das sind die letzten 3 Zeilen in der Datei:

              httpd = socketserver.TCPServer(("", PORT), SimpleHTTPRequestHandler)
              print("Wasserzaehler is serving at port", PORT)
              httpd.serve_forever()
              

              Bin nun auch endlich soweit dass ich Bilder bekomme. Bei mir wird es wohl platztechnisch sehr eng, da hab ich nur 8-9cm Platz für die Camera. Wenn alles fest installiert ist gehe ich an die Bearbeitung der Bilder.

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

                wenn ich mir eure Bilder so anschaue dann glaube ich fast dass ich mit meinem Zähler Probleme haben werde. Er hat noch eine Scheibe oben drauf mit großem Abstand, daher reflektiert alles.
                Der schwarze Aufkleber in der Mitte hat etwas gegen das reflektieren geholfen. Ich schau mal ob es damit klappt.
                51880caa-34a3-48ff-aa37-a4e2d3150615-image.png

                EDIT:

                So sieht das Ergebnis nun aus. Hmm...ich denke ich muss die Camera besser ausrichten, damit der Schatten nicht so extrem ist. Den Weißen runden Rand außen muss ich wohl auch noch mit schwarz abkleben. Sonst fällt mir nichts mehr ein.

                6NNNN.5779 6NNNN 5779

                bf3e98d8-a13f-4e9e-8d72-a207cdefd262-image.png

                1 Reply Last reply Reply Quote 0
                • pfried
                  pfried last edited by

                  @jomjol Habe nun das System zwei Tage laufen lassen:

                  rot.jpg
                  Ergibt 00400 9779 😟
                  zeiger1.jpg -> 9
                  zeiger2.jpg -> 7
                  zeiger3.jpg -> 7
                  zeiger4.jpg -> 9
                  ziffer1.jpg -> Abwechselnd N oder 0 (siehe Screenshot unten)
                  ziffer2.jpg -> immer 0
                  ziffer3.jpg -> immer 4
                  ziffer4.jpg -> immer 0
                  ziffer5.jpg -> immer 0

                  Was kann ich da noch optimieren? Vielen Dank und liebe Grüße, Paul

                  Anbei noch ein Screenshot aus dem ioBroker

                  1477ddaa-3b9b-4b57-9cdf-867da8218bc2-image.png

                  Knallochse J 2 Replies Last reply Reply Quote 0
                  • pfried
                    pfried last edited by

                    Noch eine Frage dazu: jetzt kommt folgender Wert:
                    f8cb3a06-9449-45b0-be10-f2a8faf24972-image.png
                    400.5251 stimmt, aber wird nicht genommen, da 400.9779 einmal falsch erkannt wurde. Ich habe keinen Pre Valve Wert gesetzt.

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

                      @pfried das ist wohl die neue Logik dass der Zählerstand niemals kleiner werden darf. Dadurch dass der Stand 400.9779 größer ist (auch wenn er falsch interpretiert wurde), ist jetzt dein richtiger Wert falsch (weil kleiner). Probier mal mit http://deineIP:3000/setPreValue.html?value=00400.5251 den alten richtigen Wert zu setzen.

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

                        @jomjol wie kann ich sicher sein dass ich die aktuellste Version von dir habe bzw. was muss ich tun um den neuen Stand zu bekommen? Achtung ich verwende nicht dein Docker-Image...

                        Wollte nämlich vorhin den Anfangsstand über http://192.168.1.38:3000/setPreValue.html?value=00089.8694 setzen, bekomme aber als Antwort: Die Website ist nicht erreichbar

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

                          @watcherkb Danke für Deine Aufklärung. Ich habe darauf nochmals in die config.ini geschaut, da kann man auch negative Werte zulassen, damit korrigiert der Wasserzähler auch nach unten, aber jetzt hupfen die Werte lustig rauf und runter .....
                          Eine Frage an Dich, kennst Du Dich mit dem Parser aus? Wenn ja, wie kann ich zu einer Zahl kommen? Jetzt bekomme ich mit:
                          [N|0-9][N|0-9][N|0-9][N|0-9][N|0-9]\D\d\d\d\d
                          Immer einen Wert z.b.: 00400 5515
                          Also ohne ein Komma dazwischen.
                          Liebe Grüße
                          Paul

                          W 1 Reply Last reply Reply Quote 0
                          • Knallochse
                            Knallochse @pfried last edited by

                            @pfried deine 5 Zahlen (m3) sehen anders aus als die von @jomjol aber ähnlich den meinen. Ich sammle schon ein Stück (0,1,2,3,4,8,9) habe ich schon. Sobald ich alle Zahlen zusammen habe, schicke ich die Grafiken jomjol und hoffe, dass dann die Erkennung besser klappt. Die analogen Zeiger werden bei mir recht gut erkannt.

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

                              @pfried kenne mich nicht aus, aber schau mal hier. Da wird es per Blockly umgerechnet.
                              https://forum.iobroker.net/topic/23577/wasserzähler-selfmade/230

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

                                @watcherkb Meinst Du das Programm was in dem Beitrag angeführt wird. Wenn Ja, wo setzt man das ein?

                                W 1 Reply Last reply Reply Quote 0
                                • pfried
                                  pfried @Knallochse last edited by

                                  @Knallochse Ok, versuche die Zahlen 5, 6 und 7 zu bekommen. Wir haben in unserer Straße alle dieselben Wasserzähler.

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

                                    @pfried das musst du im Blockly importieren (nur den Inhalt der txt).

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

                                      @pfried, @watcherkb
                                      Hallo Paul, hallo watcherkb,

                                      die Zeiger eurer Wasseruhr sehen anders aus, wie bei mir. Damit ist klar, dass die neuronale Bilderkennung damit erstmal nicht zurecht kommt, da sie darauf nicht trainiert ist. D.h. man muss das neuronale Netz darauf trainieren. Wenn ihr Background in Python und Keras/Tensorflow habt, dann könnt ihr das selber tun. Dazu müsst ihr pro Zeiger ca. 100 Bilder mit dem richtigen Wert labeln, möglichst gleich verteilt auf die unterschiedlichen Werte (ja es ist Arbeit!):

                                      Die Anleitung findet ihr hier:

                                      • https://github.com/jomjol/neural-network-analog-needle-readout
                                      • https://github.com/jomjol/neural-network-analog-needle-readout/tree/master/Train-CNN_Analog-Needle-Readout
                                      • https://github.com/jomjol/neural-network-analog-needle-readout/blob/master/Train-CNN_Analog-Needle-Readout/CNN_Version2.md

                                      Ich kann euch da unterstützen und das Training in meinem System probieren, wenn ihr mir die Bilder von den Zeigern schickt.

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

                                        @watcherkb Die aktuelle Version ist bei mir eigentlich nur im Docker mit der Version "rolling", da ich es so in meinem System direkt verwende. Den letzen veröffentlichten Code findest du aber jeweils in Github:

                                        • https://github.com/jomjol/water-meter-system-complete/tree/master/code

                                        setPreValue ist dort eigentlich auch implementiert. Lass mal die "0" am Anfang weg (... value=89.8694).

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

                                          @jomjol ok danke für die Aufklärung.
                                          Ich habe mir nochmal den mster angeschaut und keine Unterschiede zu meinem Stand gefunden. Trotzdem kann ich setPreValue nicht ausführen. Gleicher Fehler.

                                          Ich habe aber alles nochmal neu ausgerichtet und eingestellt. Erkennung ist schon besser geworden. Ich beobachte weiter.

                                          Hab ich das richtig verstanden dass ich die neuen Werte nur über den Parser-Adapter triggern kann oder habe ich irgendwas übersehen? Würde z.B. alle 5 Minuten auswerten lassen.

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

                                            @watcherkb Kommisch mit dem setPreValue. Muss ich nochmal schauen, ob der hochgeladene Code tatsächlich der letzte Stand ist.

                                            Ja und du hast Recht, das Timming wird über die Abfrage selbst, also z.B. Parser-Adapter getriggert.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            959
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

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