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

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    Wasserzähler - Selfmade

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

      Die Ausschnitte müssen schon verdammt genau positioniert werden, damit er die Zahlen (meistens) gut erkennt.

      Um Zählerstände zu finden, die nicht korrekt sind, nutze ich folgendes SQL (id wieder ersetzen):

      SELECT * FROM `ts_string` t where id =2372 and val > (select min(v.val) from ts_string v where id=2372 and v.ts>t.ts) order by ts
      

      PS: Falls ihr nicht in string sondern in number speichert, dann ts_string durch ts_number ersetzen.

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

        Hallo,

        eine Frage zur Ausrichtung und Auflösung:

        Bildschirmfoto 2020-01-04 um 16.17.54.png
        Ich arbeite mit 800x600. Die Kamera habe ich auf dem Kopf stehen, da dann keine Schatten auf die Zeiger fallen (habe die ESP32 mit "Blitz").

        Habt ihr bessere Erfahrungen mit anderen Auflösungen gemacht?

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

          @sissiwup 800x600 ist völlig ausreichend. Analogen Zeiger sehen auch gut aus. Ich würde dir empfehlen, die digitalen Ziffern etwas größer auszuschneiden (mehr Rand). Das CNN ist mit deutlich mehr Rand (10-20%) trainiert.

          sissiwup 1 Reply Last reply Reply Quote 0
          • B
            Brati @sissiwup last edited by

            @sissiwup

            So, nach gefühlt 24h lesen läuft der Docker Container und ist über Port 3000 erreichbar. Jetzt muss ich noch die Bibliotheken für den ino Sketch in Ordnung bringen und dann könnte es laufen puh...

            Kann man den Wert eigentlich später über die simpleapi Schnittstelle direkt in IoBroker schreiben oder bleibt es beim parsen der HTML Seite?

            Grüße Brati

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

              @jomjol sagte in Wasserzähler - Selfmade:

              @sissiwup 800x600 ist völlig ausreichend. Analogen Zeiger sehen auch gut aus. Ich würde dir empfehlen, die digitalen Ziffern etwas größer auszuschneiden (mehr Rand). Das CNN ist mit deutlich mehr Rand (10-20%) trainiert.

              Hallo,

              habe das grade probiert. Bei mir hatten die Ziffern 40x60

              Habe sie auf 42x75 umgestellt.

              Die 2. "0" erkennt er dann als 6 und die "3" als 9.
              Vlt. stört der schwarze Rand-Schatten.

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

                @Brati
                Hallo,

                ich nutze eine Java-Skript zum Aufruf und gleich zum speichern:
                IP des Webservers: 192.168.1.13 - anpassen
                Variable: vWasserzaehler - ggf. anpassen. Keine Umlaute!

                Das Skript ist leicht abgewandelt das von @pfried (thx)

                createState('javascript.0.vWasserzaehler',"");
                 
                schedule('*/10 * * * *', function () {
                 
                var url = "http://192.168.1.13:3000/wasserzaehler.html?usePreValue";
                var req = require('request');
                req(url, function(error, response, body) {
                    if (body){
                        log("Body OK","info");
                        setState("javascript.0.vWasserzaehler",body.slice(0, 8));
                    }
                    else
                    {
                        log("Body fehlerhaft","warn");
                    }
                })
                });
                
                1 Reply Last reply Reply Quote 1
                • J
                  jomjol @sissiwup last edited by

                  @sissiwup Wenn du mir von jeder Ziffer (0, 1 ... 9) jeweils ca 3-4 Bilder schickst, kann ich sie in das Training von der Bilderkennung mit aufnehmen. Das sollte deinProblem lösen

                  sissiwup 1 Reply Last reply Reply Quote 0
                  • E
                    ecki945 last edited by

                    Ich habe heut morgen, nach erfolgreicher Justage der Kamera und Anpassung der config Datei mein System auch zum Laufen gebracht. ![alt text](dc5694fa-7aa7-49ce-832b-782b80b73fde-grafik.png image url)

                    Mit dem Parser Adapter habe ich nun einen Datenpunkt in IoBroker und kann die Daten aufzeichnen.

                    Bin gespannt wie stabil der Dockercontainer in meinem LXC Proxmox Container läuft.

                    Vielen Dank für die Untersützung.

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

                      @ecki945 Gute Idee mit dem Kleber gegen Reflexionen!

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

                        @sissiwup Schau Dir nochmals das Bild bei Dir an, es kommt mir vor, dass das Bild "schräg" ist. Das ist mir passiert, als ich die Referenzpunkte nicht genau gesetzt hatte. Mein Bild sieht jetzt so aus:

                        98039b18-be11-4fc0-82e8-10d902ba89a4-image.png

                        PS.: Nochwas für alle, die Probleme mit dem "anlaufen" (Kondenswasser) des Wasserzähler haben. Habe vieles ausprobiert und auch einen Ventilator in das Gehäuse eingebaut, der verschlimmert aber die Sache noch. Ich verwende nun Wasser, welches ich auf das Schauglass aufbringe. Das hält nun schon sehr lange, da mein Zähler in einem dunklen, kalten Schacht installiert ist.

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

                          @jomjol sagte in Wasserzähler - Selfmade:

                          @sissiwup Wenn du mir von jeder Ziffer (0, 1 ... 9) jeweils ca 3-4 Bilder schickst, kann ich sie in das Training von der Bilderkennung mit aufnehmen. Das sollte deinProblem lösen

                          Hallo,
                          Schön wäre es, wenn er die Bilder unterschiedlicher Ziffern automatisch sammelt. Dauert ja doch ein paar Tage, bis alle Ziffern mal dran waren, wenn man nicht grade einen Gatenteich befüllt.

                          Dann könnte man auch ein eigenes Modell speziell für die eigenen Verhältnisse erstellen.

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

                            @sissiwup Hallo sissiwup,
                            das tut das Programm auch schon. Du kannst es in der Config.ini aktivieren, indem du die Kommentierung vor der Zeile LogImageLocation entfernst, dann findest du die Bilder im entsprechenden log Verzeichnis:

                            [Digital_Digit]
                            names=ziffer1, ziffer2, ziffer3, ziffer4, ziffer5
                            Modelfile=./config/neuralnets/Train_CNN_Digital-Readout_Version_4.1.0.h5
                            LogImageLocation=./log/digital_digit
                            #LogNames=ziffer4, ziffer5
                            

                            Wenn du nur die letzten Ziffern mitloggen willst, da sich die anderen eh nicht ändern, es sei den du versorgst ein ganzes Dorf, kann du über den Parameter LogNames noch festlegen, dass nur Bilder der aufgezählten Ziffern geloggt werden. Die Namen müssen zu den Bezeichnungen deiner ROIs passen.
                            Ziffern, die nicht zugeordnet werden konnten ("N") finden sich in "NAN".
                            Gruß,
                            jomjol

                            sissiwup 1 Reply Last reply Reply Quote 1
                            • sissiwup
                              sissiwup @jomjol last edited by sissiwup

                              @jomjol sagte in Wasserzähler - Selfmade:

                              @sissiwup Hallo sissiwup,
                              das tut das Programm auch schon. Du kannst es in der Config.ini aktivieren, indem du die Kommentierung vor der Zeile LogImageLocation entfernst, dann findest du die Bilder im entsprechenden log Verzeichnis:

                              [Digital_Digit]
                              names=ziffer1, ziffer2, ziffer3, ziffer4, ziffer5
                              Modelfile=./config/neuralnets/Train_CNN_Digital-Readout_Version_4.1.0.h5
                              LogImageLocation=./log/digital_digit
                              #LogNames=ziffer4, ziffer5
                              

                              Wenn du nur die letzten Ziffern mitloggen willst, da sich die anderen eh nicht ändern, es sei den du versorgst ein ganzes Dorf, kann du über den Parameter LogNames noch festlegen, dass nur Bilder der aufgezählten Ziffern geloggt werden. Die Namen müssen zu den Bezeichnungen deiner ROIs passen.
                              Ziffern, die nicht zugeordnet werden konnten ("N") finden sich in "NAN".
                              Gruß,
                              jomjol

                              Super, Danke. Probiere ich aus.

                              1 Reply Last reply Reply Quote 0
                              • E
                                ecki945 last edited by

                                Eine Frage zur Ausgabeinternetseite vom Dockercontainer. Habe aktuell die Ausgabe:

                                fe5f6bab-7f7e-4744-a8ab-a29057e20d3a-grafik.png

                                Der Wert 106.0934 passt eigentlich. Jedoch hat der Parser Adapter Probleme den Wert zu empfangen. Wo kann die "Internetseite" im Docker Container angepasst werden, dass der Parser Adapter es leichter hat, den aktuellen Wert zu finden?

                                sissiwup 1 Reply Last reply Reply Quote 0
                                • sissiwup
                                  sissiwup @ecki945 last edited by

                                  @ecki945 sagte in Wasserzähler - Selfmade:

                                  Eine Frage zur Ausgabeinternetseite vom Dockercontainer. Habe aktuell die Ausgabe:

                                  fe5f6bab-7f7e-4744-a8ab-a29057e20d3a-grafik.png

                                  Der Wert 106.0934 passt eigentlich. Jedoch hat der Parser Adapter Probleme den Wert zu empfangen. Wo kann die "Internetseite" im Docker Container angepasst werden, dass der Parser Adapter es leichter hat, den aktuellen Wert zu finden?

                                  Hallo,

                                  was für einen Aufruf nutzt du?
                                  Hast du "?usePreValue" am Ende dran?

                                  Bei mir hat der Parser-Adapter leider den ESP zum Absturz gebracht. Seit dem nutze ich das o.g. Skript. Das läuft jetzt stabil.

                                  1 Reply Last reply Reply Quote 0
                                  • E
                                    ecki945 last edited by

                                    Guten Morgen

                                    @sissiwup Ich rufe den Parser mit URL: http://192.168.178.61:3000/wasserzaehler.html auf.

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

                                      @jomjol
                                      Guten Morgen, ich hätte eine Frage bzgl der Auswertung: es kommt ja doch relativ oft vor, dass die Ziffer 5 wechselt. Bei meiner Wasseruhr startet der Wechsel circa 50 Liter vorher (also z.B. bei 422,9500 und die Erkennung funktioniert wieder circa 10 Liter nach dem Wechsel (also bei z.B. 423,0100). Dazwischen kommt das N bei der Auswertung der Ziffer 5 (z.B. 42N,9990). Könnte man nicht in diesem Bereich, also von xxxxx,09500 bis xxxxx,0100 dieses N automatisch mit dem "richtigen" Wert ersetzen? Also 422,9999 und dann weiter mit 423.0000 ....
                                      Den Bereich könnte man dann vielleicht in der config.ini einstellbar machen (Liter vorher / Liter nachher) da wahrscheinlich jede Wasseruhr anders ist.
                                      Aber vielleicht gibt es bereits einen einfacheren Weg?
                                      Liebe Grüße
                                      Paul

                                      1 Reply Last reply Reply Quote 0
                                      • sissiwup
                                        sissiwup @ecki945 last edited by sissiwup

                                        @ecki945 sagte in Wasserzähler - Selfmade:

                                        Guten Morgen

                                        @sissiwup Ich rufe den Parser mit URL: http://192.168.178.61:3000/wasserzaehler.html auf.

                                        Hallo,
                                        Dann nutze doch
                                        http://192.168.178.61:3000/wasserzaehler.html?usePrevalue

                                        Das ist genau dafür gemacht, das er die Ziffern korrigiert.

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

                                          @jomjol Hi jomjol,
                                          ich komme nochmals auf die ZaehlerstandClass.py zurück. Ich habe in der config.ini in der Sektion:

                                          51ed74d4-f7b2-4625-90ce-3c89eed9662d-image.png

                                          stehen. Trotzdem gibt es negative Sprünge als auch Werte die > 100 Liter auseinander liegen....

                                          cc0d7096-a5e3-4233-a71f-a517fac5fdd1-image.png

                                          Oder mache ich was mit dem Parser falsch?

                                          db5686d2-15a3-467e-8487-9d015bc19719-image.png

                                          c4a43517-7d1e-458f-8ed2-8ab29d44c009-image.png
                                          RegEX = [N|0-9][N|0-9][N|0-9][N|0-9][N|0-9]\D\d\d\d\d

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

                                            @pfried Hallo pfried,
                                            auf den ersten Blick sehe ich keinen Fehler und eigentlich dürftest du keine negativen Werte haben. Zwei Fragen dazu:

                                            1. Hast du den Server nach Änderung der Config.ini neu gestartet?
                                            2. usePreValue funktioniert nur, wenn auch mindestens einmal ein vollständiger Wert (also ohne "N") gelesen wurde. Alternativ kannst du den WErt auch mit /setPreValue?value=406.1187 setzen.

                                            Beste Grüße, jomjol

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            899
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

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