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.
    • overfl0w
      overfl0w last edited by overfl0w

      So langsam steige ich durch alles durch. Man merkt Du hast da wirklich viel Arbeit und Zeit hineingesteckt. Danke dafür nochmal und dass Du das alles auch noch mit uns teilst. Leider verstehe ich nicht wie ich die erzeugte config.ini im Docker ablege bzw. wo?

      Das hier klappt leider nicht, warschl. ist die Syntax falsch?

      python ./wasseruhr.py docker run -p 3000:3000 --mount type=bind,source=/Container/Wasser/cfg,target=/config --mount type=bind,source=/Container/Wasser/log,target=/log
      

      LG
      Maurice

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

        @overfl0w Probier mal folgenden Syntax:

        sudo docker run -p 3000:3000 --mount type=bind,source=/Container/Wasser/cfg,target=/config --mount type=bind,source=/Container/Wasser/log,target=/log jomjol/wasserzaehler:DOCKER_TAG
        

        Du musst noch DOCKER_TAG ersetzen mit dem Docker-Container, den du verwendest.

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

          @jomjol

          Brachte leider kein Erfolg, siehe:
          Screenshot_5.png

          Muss ich das evtl. hierüber machen:

          033edfe1-0745-4b2d-8ef6-8881f3f73113-image.png

          LG
          Maurice

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

            Ist das das hier? https://www.qnap.com/de-de/how-to/tutorial/article/so-erzeugen-und-nutzen-sie-den-iscsi-zieldienst-auf-einem-qnap-turbo-nas/

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

              @overfl0w ich hatte den Container auf meinem QNAP laufen, denke ich kann dir weiterhelfen.
              Also, den Container hast du ja schon geladen, du musst aber noch 2 Ordner anlegen und diese unter SharedFolder eintragen.
              Wie auf dem zweiten Bild zu sehen, habe ich einfach unter Container einen Ordner "wasserzaehler" erstellt und darin dann die beiden Ordner log und config.
              In den config Ordner schiebst du dann deine Referenzbilder, config und den Neuralnets Ordner.
              Port so einstellen wie im Bild:

              Port.JPG
              Folders.JPG

              Dann sollte der Container laufen

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

                @coyote @jomjol vielen Dank euch beiden für eure Hilfe! Es scheint so als würde der Container nun laufen. Wenn ich eine Anfrage an den Container (http://192.168.23.2:3000/wasserzaehler.html) sende, passiert auch was im log vom Container:

                ----------------------------------------                                                                                                                                                                                                                    
                Start CutImage, AnalogReadout, DigitalReadout                                                                                                                                                                                                               
                ----------------------------------------                                                                                                                                                                                                                    
                Exception happened during processing of request from ('192.168.23.145', 50484)                                                                                                                                                                              
                Traceback (most recent call last):                                                                                                                                                                                                                          
                  File "/usr/local/lib/python3.7/socketserver.py", line 316, in _handle_request_noblock                                                                                                                                                                     
                    self.process_request(request, client_address)                                                                                                                                                                                                           
                  File "/usr/local/lib/python3.7/socketserver.py", line 347, in process_request                                                                                                                                                                             
                    self.finish_request(request, client_address)                                                                                                                                                                                                            
                  File "/usr/local/lib/python3.7/socketserver.py", line 360, in finish_request                                                                                                                                                                              
                    self.RequestHandlerClass(request, client_address, self)                                                                                                                                                                                                 
                  File "/usr/local/lib/python3.7/socketserver.py", line 720, in __init__                                                                                                                                                                                    
                    self.handle()                                                                                                                                                                                                                                           
                  File "/usr/local/lib/python3.7/http/server.py", line 426, in handle                                                                                                                                                                                       
                    self.handle_one_request()                                                                                                                                                                                                                               
                  File "/usr/local/lib/python3.7/http/server.py", line 414, in handle_one_request                                                                                                                                                                           
                    method()                                                                                                                                                                                                                                                
                  File "./wasseruhr.py", line 111, in do_GET                                                                                                                                                                                                                
                    result = wasserzaehler.getZaehlerstand(url, simple, usePrevalue, single)                                                                                                                                                                                
                  File "/lib/ZaehlerstandClass.py", line 156, in getZaehlerstand                                                                                                                                                                                            
                    resultcut = self.CutImage.Cut('./image_tmp/original.jpg')                                                                                                                                                                                               
                  File "/lib/CutImageClass.py", line 46, in Cut                                                                                                                                                                                                             
                    zeiger = self.cutZeiger(target)                                                                                                                                                                                                                         
                  File "/lib/CutImageClass.py", line 62, in cutZeiger                                                                                                                                                                                                       
                    cv2.imwrite(name, crop_img)                                                                                                                                                                                                                             
                cv2.error: OpenCV(4.2.0) /io/opencv/modules/imgcodecs/src/loadsave.cpp:715: error: (-215:Assertion failed) !_img.empty() in function 'imwrite' 
                

                Allerdings bekomme ich einen: ERR_CONNECTION_REFUSED im Browser.
                LG
                Maurice

                coyote J 2 Replies Last reply Reply Quote 0
                • coyote
                  coyote Most Active @overfl0w last edited by

                  @overfl0w die Ordner hast du aber auf dem QNAP angelegt und mit deiner config versehen? In deiner config steht die IP deiner Cam, ja?

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

                    @overfl0w Könnte eine typische Fehlermeldung sein, wenn deine in der Config.ini eingetrage ESP32-CAM nicht reagiert. Z.B. falche IP o.ä.

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

                      @jomjol @coyote Danke euch für die schnelle Rückmeldung. Sollte richtig sein.. Hier zwei Screenshots:

                      Screenshot_1.png
                      Screenshot_2.png
                      esp32.png

                      LG
                      Maurice

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

                        Ich habe mal alles neu gestartet.. jetzt bekomme ich Serverseitig:

                        fc7c36a5-86c4-4603-889f-eac1856b8a91-image.png

                        Also scheinbar hat der Container wirklich ein Problem mit dem ESP... Muss ich dem Container evtl. noch erlauben aufs LAN zuzugreifen? Oder ist der Delay zu groß bis das Bild am Container ankommt und dann nen Timeout auswirft? Wenn ich die URL aus der cfg aufrufe bekomme ich ein einwandfreies Bild.

                        LG und danke euch schonmal
                        Maurice

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

                          @overfl0w Hallo Maurice,
                          auf den ersten Blick sieht das alles gut aus. Die Fehlermeldung zeigt, dass die Abfrage des ESP32-CAM nicht funktioniert. Wenn sie von ausserhalb direkt klappt, dann kann es vielleicht an den Netzwerk-Setting von deinem Docker-Container liegen. Wie hast du ihn den eingestellt?
                          Bei mir läuft das Netzwerk des Containers als "bridged", so dass es vollen Zugriff auf mein lokales Netzwerk und damit auch die ESP32-CAM hat. Wenn du dort host oder none hast, könnte es Probleme geben.
                          Gruß,
                          jomjol

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

                            @jomjol ich habe gesehen, dass du einen OTA-Update Modus für die Esp32-Cam implementiert hast.
                            Wie kann man den (Befehlzeil?) per OTA updaten?

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

                              @Knallochse hier mal ein Auszug von @jomjol :

                              Zu OTA: ja - das funktioniert bei mir über die Arduino IDE. Leider bekomme ich keine direkte Bestätigung über die IDE und der Upload dauert eher lange (~1 Minute). Daher habe ich eine Versionsinfo eingebaut, damit ich sehe, ob das Update (=neue Versionsnummer) läuft. Die bekommst du, wenn du die IP ohne irgendeine URL aufrufst:

                              Folgende Settings in der IDE:
                              unnamed.png

                              Knallochse 1 Reply Last reply Reply Quote 1
                              • Knallochse
                                Knallochse @watcherkb last edited by

                                @watcherkb Das mit der Versionsinfo würde mich auch interessieren.
                                Toll wäre noch eine Info, wann die ESP-Cam das letzte mal einen Reset durchgeführt hat (Watchdog Info)

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

                                  @Atifan w_08_04_20_04_15_01.jpg

                                  Funktioniert eigentlich recht gut. Was bei meinem Bild. z.B. schlecht ist, sind die Reflektionen auf der 0

                                  Die 5.0 er Modelle bei den Digits funktionieren bei mir besser als die 4.x er.
                                  Die analogen sind aber schlechter, da hatte ich vorher nie Probleme.
                                  Da erkennt er aktuell oft eine Ecke des Zeigers als Zeiger,

                                  Knallochse Atifan 2 Replies Last reply Reply Quote 0
                                  • Knallochse
                                    Knallochse @sissiwup last edited by Knallochse

                                    @sissiwup Mein Zähler Schein ähnlich aufgebaut zu sein, und ich hatte mit den analogen Zeigern noch keine Probleme (bin auch auf 5.0)
                                    8932C5FB-CE94-4581-9193-F9EB365DA985.jpeg

                                    Vielleicht liegt es an den Plasikteilchen auf deinem Glas

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

                                      @jomjol Ich habe den Container nun auch mal auf "bridged" gestellt und diesem eine IP gegeben. Anschließend habe ich das USB-Kabel und das Netzteil getauscht vom ESP.

                                      Wenn ich nun mit Laptop vor dem ESP sitze und den Container aufrufe werden scheinbar 2 Fotos gemacht, da das Flashlight zwei mal aufleuchtet, d.h. der ESP ist vom Container aufrufbar.

                                      Hier nochmal ein Video und ein Screenshot vom Fehler beim Aufruf des Containers:
                                      3263b983-f864-403e-a9cc-204ab1cb6cd6-image.png
                                      IMG_0642.MOV

                                      Hier nochmal beim Direktaufruf:
                                      1586359961377-6f6482aa-bbca-4773-add5-e3276bff7b54-image.png

                                      @coyote Hat es auf Anhieb bei dir funktioniert?

                                      Liebe Grüße
                                      Maurice

                                      Knallochse coyote 2 Replies Last reply Reply Quote 0
                                      • Knallochse
                                        Knallochse @overfl0w last edited by

                                        @overfl0w benutzt du in einem anderen Container „Grafana“?

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

                                          @Knallochse
                                          Auf dem NAS läuft ein Ubuntu auf einer VM und Teamspeak als Container.. Grafana nicht.

                                          LG

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

                                            @overfl0w meine Vermutung war, das Port 3000 schon benutzt wird (Grafana hat Port 3000)
                                            Vielleicht hilft es ja, den Containerport umzuleiten (z. Bsp. 3000:1234)
                                            Musst dann beim aufrufen deinen Port in 1234 (Beispiel) benutzen

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            520
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

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