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

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Wasserzähler - Selfmade

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

      @jomjol keine Eile. Ist klar dass alles in der Freizeit passiert 😉
      Frage mich aber ob es auch ohne Docker geht, einfach auf einem Debian System z.B. ?

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

        @watcherkb Prinzipiell ja, habe es hier zur Programmierung ja auch auf einem Windows System zum Laufen gebracht. Leider ist die Installation von Tensorflow und tlw. auch OpenCV etwas tricky, insbesondere Tensorflow ist abhängig von den Prozessoren, da es Graphikkarten und erweiterte Befehlssätze (AVX, AVX2, ...) unterstützt und dass muss dann jeweils zum Prozessor passen.

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

          @jomjol ok bin jetzt ein Stück weiter. Habe jetzt alles auf Debian Template am Laufen. Jedenfalls bekomme ich schonmal folgendes auf der Seite angezeigt: Error - Problem during Imageload (file not exists or timeout)
          Musste ein paar Anpassungen an py-Script machen. Dann versuche ich mal die Camera anzuschließen und dann gehts weiter.

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

            Hi Gents,
            habe alles andere fertig 😳 Hoffe Ihr bekommt das mit dem Raspberry hin.....
            Liebe Grüße

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

              Ich hatte am Wochenende auch Tensorflow und OpenCV auf dem Raspi am laufen. Das waren erstmal die großen Hürden. Werde am Wochenende versuchen alles zusammen zu bauen und dann eine Anleitung für ein Raspberry Pi 3 zu posten.

              1 Reply Last reply Reply Quote 1
              • D
                daniel_iobroker last edited by

                So Leute. Heute ist mein esp32 auch gekommen. Werde morgen gleich mal schauen, was ich zusammenbringen werde.

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

                @jomjol kannst du uns schon verraten, was wir ungefähr machen müssten? Ich glaube mit dem docker kommen wir beim raspi nicht weiter oder?

                J W 2 Replies Last reply Reply Quote 0
                • J
                  jomjol @daniel_iobroker last edited by

                  @daniel_iobroker, @watcherkb, @pfried
                  Hallo zusammen,
                  ich habe jetzt einen Server auf einem Raspberry Pi3 am Laufen. Detailierte Installationsanleitung findet ihr in Github in einem speziellen Branch für den Raspberry:

                  https://github.com/jomjol/water-meter-system-complete/tree/Raspberry-V3

                  Es ist sicher nicht die eleganteste und leanste Installation, da ich erstmal etwas zum Laufen bringen wollte.

                  Achtung: ihr müsst auch den Code von dort verwenden, da ich eine kleine Änderung an einer der Libraries machen musste, führe ich einem der nächsten Releases dann zusammen.

                  Hoffe es klappt bei euch auch!

                  Beste Grüße,
                  jomjol

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

                    @jomjol
                    Danke für deinen Post.
                    Hab heute schon einiges geschafft. Gehäuse ist gedruckt, esp32-cam ist geflasht und funktioniert mit deiner Software.
                    Dann ging es an den pi. Hab den ganzen Tag über deinen Server zu laufen gebracht (python 3.5). Musste dann auch in der wasseruhr.py unten beim server was anpassen, da sich das ab python 3.6 geändert hat. Nach dem anpassen funktionierte der Server. Hab dann die IP com esp in der config eingetragen und wenn ich dann die Serveradresse aufgerufen habe, hat der esp32 ein Bild gemacht. Dann gab es aber einen Fehler mit dem Pfad. Irgendwie konnte der Server das aufgenommen Bild nicht finden.

                    Hab vorhin gesehen, dass du hier im Forum eine Anleitung für den Pi gemacht hast. Hab das auch gleich ausprobiert. Hatte hier wieder den gleichen Fehler, dass der Server nicht gestartet werden kann. Müsste jetzt wieder das gleiche in der wasseruhr.py umschreiben. Bin mir aber sicher, dass dann der gleiche Fehler kommen wird, wie bei mir vorhin.

                    Hier ein Ausschnitt davon

                    Instructions for updating:
                    Call initializer instance with the dtype argument instead of passing it to the constructor
                    Analog Model Init Done
                    Digital Model Init Done
                    Digital Model Init Done
                    Traceback (most recent call last):
                      File "wasseruhr.py", line 86, in <module>
                        with socketserver.TCPServer(("", PORT), SimpleHTTPRequestHandler) as httpd:
                    AttributeError: __exit__
                    

                    Jetzt zu meiner Frage. Welche python3 version hast du auf dem pi am laufen?

                    python3 --version
                    

                    Ich denke du wirst mindestens 3.6 haben oder?
                    Bei mir ist derzeit noch 3.5 installiert und wenn ich sudo apt-get install python3 ausführe, dann wird mir angezeigt, dass ich schon die neueste version habe.
                    Muss mal schauen, dass ich eine höhere Version installiert bekomme, dann werden die Fehler wohl erledigt sein.

                    BTW: das thingiverse file is super, passte perfekt bei mir 🙂 Danke dafür.

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

                      @daniel_iobroker Ich habe eine frisch installierte Raspbian Buster Lite Version. Dort ist Python 3.7 installiert (und 2.7).

                      cccb6bb8-4e30-40d4-91fe-a1dec6b262f8-grafik.png
                      Ich verwende Python 3.7

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

                        @jomjol
                        ok, habe ich mir gedacht. Ich hab das ganze auf meinem alten pi 3b ausprobiert, wo noch raspbian strech installiert ist. Hier ist python 3.5 drauf. Der Hintergrund ist, dass ich das zuerst auf dem test-raspi probieren möchte und wenn alles klappt, dann auf dem pi4 übertragen, auf dem das produktive system läuft.

                        Werde daher gleich mal auf raspbian buster updaten und dann probieren. Bin aber zuversichtlich, dass es klappen wird.

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

                          @jomjol
                          so, wie versprochen. Bin jetzt mit dem update fertig. Hab jetzt die gleiche python version wie du.

                          Server startet wie erwartet ohne Anpassung der wasseruhr.py Datei.
                          Natürlich habe ich deine Daten von Github geladen.

                          Wenn ich jetzt aber ein Bild über den server bzw. esp32 mache, habe ich wieder den gleichen Fehler wie gestern. Das Bild wird anscheinend nicht gespeichert oder der Pfad ist falsch.

                          Hier der log, wenn ich die Seite http://192.168.8.202:3000/wasserzaehler.html aufrufe:

                          Process Process-1:
                          Traceback (most recent call last):
                            File "/usr/lib/python3.7/multiprocessing/process.py", line 297, in _bootstrap
                              self.run()
                            File "/usr/lib/python3.7/multiprocessing/process.py", line 99, in run
                              self._target(*self._args, **self._kwargs)
                            File "/home/pi/wasserzaehler_neu/lib/LoadFileFromHTTPClass.py", line 48, in ReadURL
                              urllib.request.urlretrieve(url, target)
                            File "/usr/lib/python3.7/urllib/request.py", line 257, in urlretrieve
                              tfp = open(filename, 'wb')
                          FileNotFoundError: [Errno 2] No such file or directory: './image_tmp/original.jpg'
                          192.168.8.102 - - [02/Nov/2019 10:38:25] "GET /wasserzaehler.html HTTP/1.1" 200 
                          

                          Hattest du den Fehler auch?

                          BTW, in github hast du noch einen kleinen fehler. Das ausführen des Programms geht nur mit python3 wasseruhr.py anstelle von python3 wasserzaehler.py

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

                            @daniel_iobroker sagte in Wasserzähler - Selfmade:

                            original

                            Das Problem ist, das es das Bild in "./image_tmp/original.jpg" nicht gibt. Mir fallen zwei Ursachen spontan ein:

                            1. Der ESP32-CAM ist noch nicht richtig konfiguriert in der Config.ini
                            2. Das Verzeichnis ./image_tmp existiert nicht

                            Zu eins kannst du die URL hinter URLImageSource=... direkt in einem Brower testen. Dort sollte das Bild vom ESP32-CAM kommen.

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

                              @daniel_iobroker said in Wasserzähler - Selfmade:

                              Also in der URLImageSoure steht:http://192.168.8.122/capture_with_flashlight
                              Wenn ich diesen Pfad im Browser eingebe, dann kommt das Bild vom ESP32-CAM.

                              zu 2.: ich weiß gar nicht, wo das Verzeichnis sein soll? Muss ich dieses manuell erstellen?

                              Wenn ich über den Server das aktuelle Bild holen will, dann seh ich, dass der ESP32-CAM das Bild macht. Ob das gespeichert wird und vor allem wo kann ich nicht sagen.

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

                                @daniel_iobroker
                                Du musst die komplette Verzeichnisstruktur unter "code" anlegen, inkl. des leeren Verzeichnisses "image_tmp"

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

                                  @jomjol
                                  aaaah ok, jetzt klappt es.
                                  Den ganzen "Code" Ordner Inhalt hatte ich schon am pi, jedoch ist auf Github der leere Ordner image_tmp nicht vorhanden.
                                  Hab den jetzt erstellt und jetzt klappt es auch 🙂

                                  Werde jetzt mal die Konfiguration angehen.

                                  Danke 🙂

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

                                    @daniel_iobroker Ordner ist erstmal leer und wird von Github daher vermutlich nicht angelegt / synchonisiert. Jetzt passt es, ich habe einen Dummydatei hinterlegt.

                                    Danke für die Hinweise!

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

                                      @jomjol
                                      so die ersten Test sind auch schon da.
                                      Hab die config auf meine Wasseruhr angepasst.
                                      Leider ist das Bild etwas dunkel... kann man den weißabgleich anpassen? Wahrscheinlich nicht.

                                      Hier das Bild vom ESP32-CAM von der Uhr:
                                      capture.jpg

                                      Hier das roi:
                                      roi.jpg
                                      Nicht wundern, das Bild wurde um 90 Grad gedreht, daher die schwarzen Ränder

                                      Und das ist das Ergebnis:
                                      13N.3590 0013N 3590

                                      Die 5 wurde nicht erkannt und bei den analogen Zeigern bin ich bei Zeiger 1 um eine Stelle daneben, Zeiger 2 auch um eine Stelle, Zeiger 3 passt, Zeiger 4 wieder um eine Stelle daneben. Bei Zeiger 1 und 2 könnte ich mir vorstellen, dass es zu dunkel ist oder etwas unscharf?, aber bei Zeiger 4 sollte es eigentlich passen?

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

                                        @daniel_iobroker Erstmal super Ergebnis für den ersten Versuche!

                                        Hast du die Halterung in weis ausgedruck? Bei mir ist alles schwarz und daher das Bild selber etwas heller. Das könnte in der Tat ein Thema für die Erkennung sein. Vielleicht kannst du mit einer "Innenverkleidung" aus schwarzer Pappe/Papier etwas erreichen.
                                        Für die Zeiger liegt es vermutlich eher daran, dass es etwas unscharf ist (Insbesondere Zeiger1).
                                        Die "5" hätte er eigentlich erkennen müssen. Es scheint mir, dass sie noch leicht tiefer liegt, wie die anderen Ziffern. Vermutlich musst du nochmal an einen Alignmentstrukturen nachteachen. Es scheint, als ob das Bild noch 2-3 Grad gegen den Uhrzeigersinn gedreht werden müsste, damit die Ziffern auf einer Linie stehen.

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

                                          @jomjol
                                          Danke für deine Einschätzung.
                                          Ja die Halterung habe ich in weiß gedruckt - nachträglich gesehen nicht so schlau 😄

                                          Hab jetzt innen eine schwarze Folie angebracht und dann alles nochmal eingestellt und konfiguriert.

                                          Hier das neue Bild:
                                          capture.jpg

                                          Hier das neue roi:
                                          roi.jpg

                                          Hier das Ergebnis:
                                          135.3636 00135 3636

                                          Sieht glaub ich gut aus. Ich denke, die 4 bei den analogen Zeigern soll erst erscheinen, wenn der Zeiger mindestens diese Position erreicht hat. Hier geht es nicht darum, wo der Zeiger von der Position her näher drann ist oder?

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

                                            Hallo Gents,
                                            bei mir startet wasseruhr.py auch aber mit einen Haufen Warnings....
                                            Dann tut sich aber nichts, es wird kein Bild aufgenommen, obwohl im Browser http://192.168.10.130/capture_with_flashlight funktioniert

                                            a4a87270-3d2e-444a-966c-5fb88c11943c-image.png

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            590
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

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