Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. Wasserzähler - Selfmade

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.6k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.9k

Wasserzähler - Selfmade

Geplant Angeheftet Gesperrt Verschoben Hardware
wasser wasserzählerhow-to
1.1k Beiträge 48 Kommentatoren 375.7k Aufrufe 72 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • W watcherkb

    @Radi
    Hiermit rotierst du das Bild
    [alignment]
    initial_rotation_angle=180

    Du musst dir aber für deinen Zähler die 3 markierten Bereiche aus deinem Zähler rauspicken und genauso konfigurieren. Jeder Zähler sieht anders aus. Deswegen musst du deine 3 Bereiche rauspicken, per Bildbearbeitung ausschneiden, speichern und die Position x,y in die ini eintragen. Damit erkennt das Programm deinen Zähler und diese Bereiche und rotiert das Bild entsprechend (solltest du irgendwann mal deine Camera verdreht haben musst du nichts mehr an der ini ändern). Also einmal Seite 2 durchgehen und bei dir anwenden.

    777cb467-def9-405f-9a41-5de9a3b8d82b-image.png

    R Offline
    R Offline
    Radi
    schrieb am zuletzt editiert von Radi
    #440

    @watcherkb Das habe ich soweit, glaube ich zumindest, verstanden. In meinem Post vom 30.11. habe ich ein Bild angehängt, das zeigt, wie das Kamerabild momentan aussieht. Habe gestern die Pfadzuweisung für die config.ini und das Logverzeichnis hinbekommen. Daraufhin mit dem initial_rotation_angle ein wenig geübt, aber kein vernünftiges Bild im ROI hinbekommen.
    Ich verstehe nicht, wieso das Bild im ROI gespiegelt ist und wie ich es normal bekomme.
    Ich glaube nicht das eine einfache Drehung reicht. Der User mikewolf hatte eine ähnliche Ausgangssituation , deshalb hatte ich die heutige Frage an ihn gestellt, bin natürlich für jede andere Unterstützung dankbar.

    Grüße
    Ralf

    1 Antwort Letzte Antwort
    0
    • W watcherkb

      @Radi
      Hiermit rotierst du das Bild
      [alignment]
      initial_rotation_angle=180

      Du musst dir aber für deinen Zähler die 3 markierten Bereiche aus deinem Zähler rauspicken und genauso konfigurieren. Jeder Zähler sieht anders aus. Deswegen musst du deine 3 Bereiche rauspicken, per Bildbearbeitung ausschneiden, speichern und die Position x,y in die ini eintragen. Damit erkennt das Programm deinen Zähler und diese Bereiche und rotiert das Bild entsprechend (solltest du irgendwann mal deine Camera verdreht haben musst du nichts mehr an der ini ändern). Also einmal Seite 2 durchgehen und bei dir anwenden.

      777cb467-def9-405f-9a41-5de9a3b8d82b-image.png

      R Offline
      R Offline
      Radi
      schrieb am zuletzt editiert von
      #441

      @watcherkb Tschuldigung, ist wohl heute doch nicht der Tag, wo das mit dem Lesen klappt. Dein letzter an mich gerichtete Satz war es wohl, der mir die richtige Richtung gibt . Hatte mich nur auf der ersten Seite festgebissen und die wichtigen Sachen übersehen oder besser noch gar nicht gelesen. Gelobe Besserung und werde das heute Abend mal ausprobieren.
      Ralf

      1 Antwort Letzte Antwort
      0
      • C Offline
        C Offline
        cybertron
        schrieb am zuletzt editiert von
        #442

        Ich habe heute mal die Wasseruhr freigeräumt und mit Erschrecken festgestellt, dass meine eine völlig andere Uhr ist, als die, welche hier immer auf allen Bildern zu sehen ist.

        canvas.png

        funktioniert das Ganze auch mit einer solchen Wasseruhr? oder bin ich der einzige hier, der einen solchen Exoten im Keller hängen hat?

        Gruss
        Silvio

        pfriedP J 2 Antworten Letzte Antwort
        0
        • C cybertron

          Ich habe heute mal die Wasseruhr freigeräumt und mit Erschrecken festgestellt, dass meine eine völlig andere Uhr ist, als die, welche hier immer auf allen Bildern zu sehen ist.

          canvas.png

          funktioniert das Ganze auch mit einer solchen Wasseruhr? oder bin ich der einzige hier, der einen solchen Exoten im Keller hängen hat?

          Gruss
          Silvio

          pfriedP Offline
          pfriedP Offline
          pfried
          schrieb am zuletzt editiert von pfried
          #443

          @cybertron Edit: siehe Post von jomjol weiter unten.

          1 Antwort Letzte Antwort
          0
          • J jomjol

            @pfried Hallo Paul,
            Timing hätte besser nicht sein können :blush: :+1:
            Ich konnte zwar noch immer keine Installation auf dem Raspberry hinbekommen ... ABER:

            Seit 1 Stunde gibt es ein Docker-Image, welches auf dem Docker meines Raspberry B3 ohne Probleme läuft!

            Hier findest du den Download: jomjol/wasserzaehler:raspi-rolling

            Ich bin super gespannt, ob das auch bei dir läuft!

            Beste Grüße,
            jomjol

            pfriedP Offline
            pfriedP Offline
            pfried
            schrieb am zuletzt editiert von
            #444

            @jomjol Kannst Du mir bitte nochmals auf die Sprünge helfen wie Du den Docker am Raspberry startest.
            Liebe Grüße
            Paul

            docker run -p 3000:3000 --mount type=bind,source=/volume/configpath,target=/config --mount type=bind,source=/volume/logpath,target=/log

            geht gar nicht wie oben beschrieben.
            Habe

            sudo docker run -p 3000:3000 jomjol/wasserzaehler:rasp-rolling -- mount ......etcetc
            versucht, da sagt Docker, dass er den mount Befehl nicht kennt.

            J 1 Antwort Letzte Antwort
            0
            • KnallochseK Offline
              KnallochseK Offline
              Knallochse
              schrieb am zuletzt editiert von Knallochse
              #445

              Ich habe leider das Problem, dass die Fehlerprüfung gar nicht mehr greift.
              Habe heute auch mehrfach den Docker Container recreatet (Synology DS918+ / rolling), was leider keinen Erfolg brachte.
              Gemerkt hatte ich es, als heute die Wasseruhr von 299 auf 300 m³ gewechselt hat.
              Da wurde NNN.0156 angezeigt. Es kahm aber kein Error.
              Mit der Version von Mitte November hatte die Fehlerprüfung noch funktioniert.
              Da mittlerweile die Erkennung wirklich gut funktioniert, ist mir leider nicht aufgefallen, seit wann genau die Fehlerprüfung nicht mehr geht.

              Aktuell sieht meine .ini so aus.

              [Imagesource]
              TimeoutLoadImage=30
              #IP durch die IP des ESP32 ersetzen!
              URLImageSource=http://192.168.178.71/capture_with_flashlight
              LogImageLocation=./log/source_image
              # Falls nur schlechte / fehlerhafte Bilder gelockt werden sollen, naechste Zeile Kommentar entfernen
              LogOnlyFalsePictures=True
              
              [ConsistencyCheck]
              Enabled=True
              AllowNegativeRates=False
              #Maximum Change of new to old value (+ or -)
              MaxRateValue=0.2
              
              #Return in Case of Error: Value = OldValue or NewValue
              #                         ErrorMessage = Return Text with problem (seperated by Tabstopp) if nothing, then no error message
              #                         Readout = Real Readout without corrections (NewValue)
              ErrorReturn=OldValue, ErrorMessage, Readout
              #ErrorReturn=OldValue, ErrorMessage
              #ErrorReturn=NewValue, ErrorMessage
              
              
              [alignment]
              initial_rotation_angle=358
              
              [alignment.ref0]
              image=./config/Ref_ZR_x99_y219.jpg
              pos_x=130
              pos_y=166
              
              [alignment.ref1]
              image=./config/Ref_m3_x512_y117.jpg
              pos_x=554
              pos_y=150
              
              [alignment.ref2]
              image=./config/Ref_x0_x301_y386.jpg
              pos_x=339
              pos_y=416
              
              [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=zeiger3, zeiger4
              
              [Analog_Counter]
              names=zeiger1, zeiger2, zeiger3, zeiger4
              Modelfile=./config/neuralnets/CNN_Analog-Readout_Version-4.0.1.h5
              #LogImageLocation=./log/analog_counter
              #LogNames=zeiger3, zeiger4
              
              [Analog_Counter.zeiger1]
              pos_x=524
              pos_y=258
              dx=120
              dy=120
              
              [Analog_Counter.zeiger2]
              pos_x=456
              pos_y=390
              dx=120
              dy=120
              
              [Analog_Counter.zeiger3]
              pos_x=330
              pos_y=446
              dx=120
              dy=120
              
              [Analog_Counter.zeiger4]
              pos_x=167
              pos_y=382
              dx=120
              dy=120
              
                  
              [Digital_Digit.ziffer1]
              pos_x=232
              pos_y=126
              dx=42
              dy=75
              
              [Digital_Digit.ziffer2]
              pos_x=292
              pos_y=126
              dx=42
              dy=75
              
              [Digital_Digit.ziffer3]
              pos_x=355
              pos_y=126
              dx=42
              dy=75
              
              [Digital_Digit.ziffer4]
              pos_x=417
              pos_y=126
              dx=42
              dy=75
              
              [Digital_Digit.ziffer5]
              pos_x=476
              pos_y=126
              dx=42
              dy=75
              
              

              HM&HMIP über 100 Geräte + IoBroker auf DS918+ uvm.

              pfriedP J 2 Antworten Letzte Antwort
              0
              • coyoteC Offline
                coyoteC Offline
                coyote
                Most Active
                schrieb am zuletzt editiert von
                #446

                Mal an alle die Verbindungsabbrüche des ESPs haben. Ich habe seit gut einer Woche den Parser Adapter abgeschaltet und frage die URL mit einem Script alle 10min ab, läuft bisher ohne Verbindungsabbrüche, liegt wohl wirklich am Parser Adapter, warum auch immer.

                pfriedP 1 Antwort Letzte Antwort
                0
                • C cybertron

                  Ich habe heute mal die Wasseruhr freigeräumt und mit Erschrecken festgestellt, dass meine eine völlig andere Uhr ist, als die, welche hier immer auf allen Bildern zu sehen ist.

                  canvas.png

                  funktioniert das Ganze auch mit einer solchen Wasseruhr? oder bin ich der einzige hier, der einen solchen Exoten im Keller hängen hat?

                  Gruss
                  Silvio

                  J Offline
                  J Offline
                  jomjol
                  schrieb am zuletzt editiert von
                  #447

                  @cybertron Grundsätzlich vom Prozess kann es auch damit funktionieren, aber dazu müssen:

                  1. Die Ziffern neu/zusätzlich trainert werden (Weiss auf Schwarz bzw. Rot)
                  2. Der Zeiger trainiert werden, da er komplett anders aussieht (falls 0.1l notwendig)

                  Für 1) braucht es von jeder Ziffer einige Bilder, sowohl von den Schwarzen, wie auch von den Roten.

                  Gruß,
                  jomjol

                  1 Antwort Letzte Antwort
                  0
                  • pfriedP pfried

                    @jomjol Kannst Du mir bitte nochmals auf die Sprünge helfen wie Du den Docker am Raspberry startest.
                    Liebe Grüße
                    Paul

                    docker run -p 3000:3000 --mount type=bind,source=/volume/configpath,target=/config --mount type=bind,source=/volume/logpath,target=/log

                    geht gar nicht wie oben beschrieben.
                    Habe

                    sudo docker run -p 3000:3000 jomjol/wasserzaehler:rasp-rolling -- mount ......etcetc
                    versucht, da sagt Docker, dass er den mount Befehl nicht kennt.

                    J Offline
                    J Offline
                    jomjol
                    schrieb am zuletzt editiert von jomjol
                    #448

                    @pfried Hallo Paul,
                    du musst zuerst die Verzeichnisse "log" und "config" anlegen und dann die richtigen absoluten Pfade bei source eintragen. Wenn ich es bei mir direkt unter dem Homeverzeichnis des Users "pi" mache funktioniert es folgendermassen:

                    mkdir log
                    mkdir config
                    docker run -p 3000:3000 --mount type=bind,source=/home/pi/config,target=/config --mount type=bind,source=/home/pi/log,target=/log jomjol/wasserzaehler:raspi-rolling
                    
                    

                    Gruß,
                    jomjol

                    pfriedP 2 Antworten Letzte Antwort
                    0
                    • coyoteC coyote

                      Mal an alle die Verbindungsabbrüche des ESPs haben. Ich habe seit gut einer Woche den Parser Adapter abgeschaltet und frage die URL mit einem Script alle 10min ab, läuft bisher ohne Verbindungsabbrüche, liegt wohl wirklich am Parser Adapter, warum auch immer.

                      pfriedP Offline
                      pfriedP Offline
                      pfried
                      schrieb am zuletzt editiert von
                      #449

                      @coyote Stellst Du uns das Script mit einer Anleitung bitte zur Verfügung?!

                      1 Antwort Letzte Antwort
                      0
                      • KnallochseK Knallochse

                        Ich habe leider das Problem, dass die Fehlerprüfung gar nicht mehr greift.
                        Habe heute auch mehrfach den Docker Container recreatet (Synology DS918+ / rolling), was leider keinen Erfolg brachte.
                        Gemerkt hatte ich es, als heute die Wasseruhr von 299 auf 300 m³ gewechselt hat.
                        Da wurde NNN.0156 angezeigt. Es kahm aber kein Error.
                        Mit der Version von Mitte November hatte die Fehlerprüfung noch funktioniert.
                        Da mittlerweile die Erkennung wirklich gut funktioniert, ist mir leider nicht aufgefallen, seit wann genau die Fehlerprüfung nicht mehr geht.

                        Aktuell sieht meine .ini so aus.

                        [Imagesource]
                        TimeoutLoadImage=30
                        #IP durch die IP des ESP32 ersetzen!
                        URLImageSource=http://192.168.178.71/capture_with_flashlight
                        LogImageLocation=./log/source_image
                        # Falls nur schlechte / fehlerhafte Bilder gelockt werden sollen, naechste Zeile Kommentar entfernen
                        LogOnlyFalsePictures=True
                        
                        [ConsistencyCheck]
                        Enabled=True
                        AllowNegativeRates=False
                        #Maximum Change of new to old value (+ or -)
                        MaxRateValue=0.2
                        
                        #Return in Case of Error: Value = OldValue or NewValue
                        #                         ErrorMessage = Return Text with problem (seperated by Tabstopp) if nothing, then no error message
                        #                         Readout = Real Readout without corrections (NewValue)
                        ErrorReturn=OldValue, ErrorMessage, Readout
                        #ErrorReturn=OldValue, ErrorMessage
                        #ErrorReturn=NewValue, ErrorMessage
                        
                        
                        [alignment]
                        initial_rotation_angle=358
                        
                        [alignment.ref0]
                        image=./config/Ref_ZR_x99_y219.jpg
                        pos_x=130
                        pos_y=166
                        
                        [alignment.ref1]
                        image=./config/Ref_m3_x512_y117.jpg
                        pos_x=554
                        pos_y=150
                        
                        [alignment.ref2]
                        image=./config/Ref_x0_x301_y386.jpg
                        pos_x=339
                        pos_y=416
                        
                        [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=zeiger3, zeiger4
                        
                        [Analog_Counter]
                        names=zeiger1, zeiger2, zeiger3, zeiger4
                        Modelfile=./config/neuralnets/CNN_Analog-Readout_Version-4.0.1.h5
                        #LogImageLocation=./log/analog_counter
                        #LogNames=zeiger3, zeiger4
                        
                        [Analog_Counter.zeiger1]
                        pos_x=524
                        pos_y=258
                        dx=120
                        dy=120
                        
                        [Analog_Counter.zeiger2]
                        pos_x=456
                        pos_y=390
                        dx=120
                        dy=120
                        
                        [Analog_Counter.zeiger3]
                        pos_x=330
                        pos_y=446
                        dx=120
                        dy=120
                        
                        [Analog_Counter.zeiger4]
                        pos_x=167
                        pos_y=382
                        dx=120
                        dy=120
                        
                            
                        [Digital_Digit.ziffer1]
                        pos_x=232
                        pos_y=126
                        dx=42
                        dy=75
                        
                        [Digital_Digit.ziffer2]
                        pos_x=292
                        pos_y=126
                        dx=42
                        dy=75
                        
                        [Digital_Digit.ziffer3]
                        pos_x=355
                        pos_y=126
                        dx=42
                        dy=75
                        
                        [Digital_Digit.ziffer4]
                        pos_x=417
                        pos_y=126
                        dx=42
                        dy=75
                        
                        [Digital_Digit.ziffer5]
                        pos_x=476
                        pos_y=126
                        dx=42
                        dy=75
                        
                        
                        pfriedP Offline
                        pfriedP Offline
                        pfried
                        schrieb am zuletzt editiert von
                        #450

                        @Knallochse Guten Morgen, habe dazu weiter oben gepostet. Check doch mal ob nicht statt Enable=True ConsistencyEnable=True in die Config.ini gehört.

                        KnallochseK 1 Antwort Letzte Antwort
                        0
                        • J jomjol

                          @pfried Hallo Paul,
                          du musst zuerst die Verzeichnisse "log" und "config" anlegen und dann die richtigen absoluten Pfade bei source eintragen. Wenn ich es bei mir direkt unter dem Homeverzeichnis des Users "pi" mache funktioniert es folgendermassen:

                          mkdir log
                          mkdir config
                          docker run -p 3000:3000 --mount type=bind,source=/home/pi/config,target=/config --mount type=bind,source=/home/pi/log,target=/log jomjol/wasserzaehler:raspi-rolling
                          
                          

                          Gruß,
                          jomjol

                          pfriedP Offline
                          pfriedP Offline
                          pfried
                          schrieb am zuletzt editiert von pfried
                          #451

                          @jomjol Hallo Jomjol, vielen Dank, funktioniert :+1: :blush: Frage: kann ich den Docker auch unter dem pm2 Tool laufen lassen, sodass nach einem Neustart der Docker automatisch gestartet wird?
                          Liebe Grüße
                          Paul

                          EDIT: So geht es:
                          pm2 start 'sudo docker run -p 3000:3000 --mount type=bind,source=/home/pi/config,target=/config --mount type=bind,source=/home/pi/log,target=/log jomjol/wasserzaehler:raspi-rolling'

                          1 Antwort Letzte Antwort
                          0
                          • J jomjol

                            @pfried Hallo Paul,
                            du musst zuerst die Verzeichnisse "log" und "config" anlegen und dann die richtigen absoluten Pfade bei source eintragen. Wenn ich es bei mir direkt unter dem Homeverzeichnis des Users "pi" mache funktioniert es folgendermassen:

                            mkdir log
                            mkdir config
                            docker run -p 3000:3000 --mount type=bind,source=/home/pi/config,target=/config --mount type=bind,source=/home/pi/log,target=/log jomjol/wasserzaehler:raspi-rolling
                            
                            

                            Gruß,
                            jomjol

                            pfriedP Offline
                            pfriedP Offline
                            pfried
                            schrieb am zuletzt editiert von
                            #452

                            @jomjol Ich leider nochmals. Bekomme nun über den Parser immer das Ergebnis: 411.8888 Das ROI Bild zeigt aber:

                            6277f56a-3ad6-47b0-8b98-f69331c6eae4-image.png

                            a3aba84b-c02a-4e40-9b06-b725f5691bd1-image.png

                            Mache ich da noch was falsch? Früher waren immer die Zeiger korrekt und die Ziffern falsch, jetzt ist es umgekehrt.
                            Liebe Grüße
                            Paul

                            1 Antwort Letzte Antwort
                            0
                            • C Offline
                              C Offline
                              C1500
                              schrieb am zuletzt editiert von
                              #453

                              Servus
                              Mal ne etwas andere Zwischenfrage
                              Wie habt ihr den Plastikdeckel von der Wasseruhr ab bekommen?
                              Wenn ich den drauf lasse und auf klappe passt das mit dem 3D-Druck nicht mehr.
                              Oder habt ihr da ein Stück aus dem gedruckten Ring raus geschnitten?
                              Gruß Peer

                              KnallochseK 1 Antwort Letzte Antwort
                              0
                              • C C1500

                                Servus
                                Mal ne etwas andere Zwischenfrage
                                Wie habt ihr den Plastikdeckel von der Wasseruhr ab bekommen?
                                Wenn ich den drauf lasse und auf klappe passt das mit dem 3D-Druck nicht mehr.
                                Oder habt ihr da ein Stück aus dem gedruckten Ring raus geschnitten?
                                Gruß Peer

                                KnallochseK Offline
                                KnallochseK Offline
                                Knallochse
                                schrieb am zuletzt editiert von
                                #454

                                @C1500 Ich habe einfach was rausgedremelt , da ich denke das die Wasserwerke was dagegen haben, wenn Mann mechanisch was an der Wasseruhr verändert.
                                Ist ja handwerklich auch keine große Sache

                                HM&HMIP über 100 Geräte + IoBroker auf DS918+ uvm.

                                1 Antwort Letzte Antwort
                                0
                                • pfriedP pfried

                                  @Knallochse Guten Morgen, habe dazu weiter oben gepostet. Check doch mal ob nicht statt Enable=True ConsistencyEnable=True in die Config.ini gehört.

                                  KnallochseK Offline
                                  KnallochseK Offline
                                  Knallochse
                                  schrieb am zuletzt editiert von
                                  #455

                                  @pfried sagte in Wasserzähler - Selfmade:

                                  @Knallochse Guten Morgen, habe dazu weiter oben gepostet. Check doch mal ob nicht statt Enable=True ConsistencyEnable=True in die Config.ini gehört.

                                  Danke für den Hinweis, habe die config.ini mal dahingehend geändert (probiert habe ich : ConsistencyEnable=True und ConsistencyCheckEnable=True , was aber keinen Effekt hatte. Wird weiterhin kein Fehler ausgegeben. Mal sehen, ob @jomjol noch eine Idee hat.

                                  HM&HMIP über 100 Geräte + IoBroker auf DS918+ uvm.

                                  1 Antwort Letzte Antwort
                                  0
                                  • KnallochseK Offline
                                    KnallochseK Offline
                                    Knallochse
                                    schrieb am zuletzt editiert von Knallochse
                                    #456

                                    Ich möchte einfach mal einen Gedanken zur Erkennung allgemein äußern.
                                    Braucht es die Erkennung der digitalen Zahlen überhaupt?
                                    Da bei mir die analogen Zeiger sehr zuverlässig erkannt werden, könnte man da nicht die m3-Zahlen rechnerisch erhöhten?
                                    Bei mir machen halt die digitalen Zahlen Probleme.
                                    Momentan sieht das Bild so aus:
                                    A9119AFD-CEF3-4E1D-B098-776D60A9C939.jpeg
                                    Erkannt wird: N00.1684 00N00 1684 (also die 3 nicht)

                                    HM&HMIP über 100 Geräte + IoBroker auf DS918+ uvm.

                                    coyoteC 1 Antwort Letzte Antwort
                                    0
                                    • KnallochseK Knallochse

                                      Ich möchte einfach mal einen Gedanken zur Erkennung allgemein äußern.
                                      Braucht es die Erkennung der digitalen Zahlen überhaupt?
                                      Da bei mir die analogen Zeiger sehr zuverlässig erkannt werden, könnte man da nicht die m3-Zahlen rechnerisch erhöhten?
                                      Bei mir machen halt die digitalen Zahlen Probleme.
                                      Momentan sieht das Bild so aus:
                                      A9119AFD-CEF3-4E1D-B098-776D60A9C939.jpeg
                                      Erkannt wird: N00.1684 00N00 1684 (also die 3 nicht)

                                      coyoteC Offline
                                      coyoteC Offline
                                      coyote
                                      Most Active
                                      schrieb am zuletzt editiert von
                                      #457

                                      @pfried na klar, ich bin jetzt nicht der Javascript Programmierer, aber es funktioniert ;-)
                                      Bei schedule sind 10 Minuten eingestellt.
                                      In der Klammer von body.slice können die Stellen noch angepasst werden, hier ist 0 (Anfang vom Array) und 8 (bis zur 8ten Stelle des Arrays). Könnt ihr anpassen, wie ihr es braucht.

                                      createState('javascript.0.Wasserzaehler.Stand',"");
                                      
                                      schedule('*/10 * * * *', function () {
                                      
                                      var url = "http://IP:3000/wasserzaehler.html?usePreValue";
                                      var req = require('request');
                                      req(url, function(error, response, body) {
                                          if (body){
                                          log("Body OK","warn");
                                         
                                          setState("javascript.0.Wasserzaehler.Stand",body.slice(0, 8));
                                          }
                                          else
                                          {log("Body fehlerhaft","warn");
                                         
                                          }
                                      })
                                      });
                                      
                                      1 Antwort Letzte Antwort
                                      0
                                      • KnallochseK Knallochse

                                        Ich habe leider das Problem, dass die Fehlerprüfung gar nicht mehr greift.
                                        Habe heute auch mehrfach den Docker Container recreatet (Synology DS918+ / rolling), was leider keinen Erfolg brachte.
                                        Gemerkt hatte ich es, als heute die Wasseruhr von 299 auf 300 m³ gewechselt hat.
                                        Da wurde NNN.0156 angezeigt. Es kahm aber kein Error.
                                        Mit der Version von Mitte November hatte die Fehlerprüfung noch funktioniert.
                                        Da mittlerweile die Erkennung wirklich gut funktioniert, ist mir leider nicht aufgefallen, seit wann genau die Fehlerprüfung nicht mehr geht.

                                        Aktuell sieht meine .ini so aus.

                                        [Imagesource]
                                        TimeoutLoadImage=30
                                        #IP durch die IP des ESP32 ersetzen!
                                        URLImageSource=http://192.168.178.71/capture_with_flashlight
                                        LogImageLocation=./log/source_image
                                        # Falls nur schlechte / fehlerhafte Bilder gelockt werden sollen, naechste Zeile Kommentar entfernen
                                        LogOnlyFalsePictures=True
                                        
                                        [ConsistencyCheck]
                                        Enabled=True
                                        AllowNegativeRates=False
                                        #Maximum Change of new to old value (+ or -)
                                        MaxRateValue=0.2
                                        
                                        #Return in Case of Error: Value = OldValue or NewValue
                                        #                         ErrorMessage = Return Text with problem (seperated by Tabstopp) if nothing, then no error message
                                        #                         Readout = Real Readout without corrections (NewValue)
                                        ErrorReturn=OldValue, ErrorMessage, Readout
                                        #ErrorReturn=OldValue, ErrorMessage
                                        #ErrorReturn=NewValue, ErrorMessage
                                        
                                        
                                        [alignment]
                                        initial_rotation_angle=358
                                        
                                        [alignment.ref0]
                                        image=./config/Ref_ZR_x99_y219.jpg
                                        pos_x=130
                                        pos_y=166
                                        
                                        [alignment.ref1]
                                        image=./config/Ref_m3_x512_y117.jpg
                                        pos_x=554
                                        pos_y=150
                                        
                                        [alignment.ref2]
                                        image=./config/Ref_x0_x301_y386.jpg
                                        pos_x=339
                                        pos_y=416
                                        
                                        [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=zeiger3, zeiger4
                                        
                                        [Analog_Counter]
                                        names=zeiger1, zeiger2, zeiger3, zeiger4
                                        Modelfile=./config/neuralnets/CNN_Analog-Readout_Version-4.0.1.h5
                                        #LogImageLocation=./log/analog_counter
                                        #LogNames=zeiger3, zeiger4
                                        
                                        [Analog_Counter.zeiger1]
                                        pos_x=524
                                        pos_y=258
                                        dx=120
                                        dy=120
                                        
                                        [Analog_Counter.zeiger2]
                                        pos_x=456
                                        pos_y=390
                                        dx=120
                                        dy=120
                                        
                                        [Analog_Counter.zeiger3]
                                        pos_x=330
                                        pos_y=446
                                        dx=120
                                        dy=120
                                        
                                        [Analog_Counter.zeiger4]
                                        pos_x=167
                                        pos_y=382
                                        dx=120
                                        dy=120
                                        
                                            
                                        [Digital_Digit.ziffer1]
                                        pos_x=232
                                        pos_y=126
                                        dx=42
                                        dy=75
                                        
                                        [Digital_Digit.ziffer2]
                                        pos_x=292
                                        pos_y=126
                                        dx=42
                                        dy=75
                                        
                                        [Digital_Digit.ziffer3]
                                        pos_x=355
                                        pos_y=126
                                        dx=42
                                        dy=75
                                        
                                        [Digital_Digit.ziffer4]
                                        pos_x=417
                                        pos_y=126
                                        dx=42
                                        dy=75
                                        
                                        [Digital_Digit.ziffer5]
                                        pos_x=476
                                        pos_y=126
                                        dx=42
                                        dy=75
                                        
                                        
                                        J Offline
                                        J Offline
                                        jomjol
                                        schrieb am zuletzt editiert von
                                        #458

                                        @Knallochse Habe mal gerade meine internen Logs geprüft. Bei mir hat die Fehlererkennung gestern noch angeschlagen (ErrorRateTooHigh).
                                        Hast du das Problem jetzt nur beim Übergang auf die nächsten Hunderter?
                                        NNN dürfte es eigentlich gar nicht geben, wenn du mit den Wasserzähler mit dem Parameter "usePreValue" aufrufst - das würde ich unbedingt empfehlen:

                                        /wasserzaehler.html?usePrevalue
                                        
                                        KnallochseK 1 Antwort Letzte Antwort
                                        0
                                        • J jomjol

                                          @Knallochse Habe mal gerade meine internen Logs geprüft. Bei mir hat die Fehlererkennung gestern noch angeschlagen (ErrorRateTooHigh).
                                          Hast du das Problem jetzt nur beim Übergang auf die nächsten Hunderter?
                                          NNN dürfte es eigentlich gar nicht geben, wenn du mit den Wasserzähler mit dem Parameter "usePreValue" aufrufst - das würde ich unbedingt empfehlen:

                                          /wasserzaehler.html?usePrevalue
                                          
                                          KnallochseK Offline
                                          KnallochseK Offline
                                          Knallochse
                                          schrieb am zuletzt editiert von
                                          #459

                                          @jomjol:

                                          /wasserzaehler.html?usePrevalue
                                          

                                          Dankeschön, damit geht die Fehlerprüfung 👍

                                          HM&HMIP über 100 Geräte + IoBroker auf DS918+ uvm.

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          816

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe