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

      Hallo,

      nochmal ein Tipp zur Ausrichtung der analogen Zeiger:

      roi.jpg

      Es ist nicht wichtig den Kreis genau um die Ziffern zu legen.
      Das Kreuz sollte genau auf der Achse des Zeigers sein.
      Auf dem Bild sieht man, dass durch die nahe Kamera da einiges an Verzerrung entsteht.

      @jomjol Zum Ausrichten wäre es besser ein Kreuz in die Quadrate zu zeichnen. Der Kreis hilft nicht so sehr.

      W J 2 Replies Last reply Reply Quote 0
      • Atifan
        Atifan last edited by Atifan

        Hi. Ansich funktioniert die Erkennung bei mir wunderbar. Außer wenn eine digitale Ziffer wechselt, dann gibt es Probleme.
        Hatte heute den Fall.
        Zähler 381,6961
        Die Ziffer 1 von "381" ist dann schon nicht mehr richtig sichtbar, sondern steht schon fast auf 2.
        Bis dahin funktioniert die Fehlerkorrektur.
        Jetzt kommt aber der Punkt wo die Ziffer umspringt auf 2.
        Dann hätte ich kurzzeitig 382.xxxx.
        Geloggt wird dann auch dieser Wert.
        Dann springen die Nachkommastellen auf 0 und der neue Wert ist kleiner als der vorherige.
        Dann wird solange nicht geloggt, bis die Nachkommastellen wieder stimmen.
        Ich hoffe ihr versteht was ich meine.
        Das Problem hatte ich schon mehrmals.
        Ich habe jetzt in der config eingestellt, dass ein Rückwärtssprung erlaubt ist.
        Hoffe nur das beeinflusst dann nicht meine Logging-Werte falsch.

        Hier ein Screenshot mit den geloggten Werten. Dort erkennt man schön den Wechsel, wo auf einmal die Vorkommastelle um 1 erhöht wird, die Nachkommastellen aber noch nicht auf 0 sind.

        d7c8aa78-2ac2-43af-9eb0-8910dff7d448-image.png

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

          @sissiwup ich habe dein Script im Einsatz und habe es eigentlich so verstanden, dass damit auch keine kleineren Zählerstände entstehen oder sehe ich das falsch?
          Hier mal die History Tabelle, die zeigt, dass doch kleinere Zählerstände geloggt werden und ich glaube deshalb funktioniert auch der Datenpunkt in Sourceanalytix nicht.
          Anbei noch das Script dazu:

          createState('javascript.0.Wasserzaehler.Stand',"");
          createState('javascript.0.Wasserzaehler.Log',"");
          
           
          schedule('*/10 * * * *', function () {
           
          if (isNaN(Number(getState('javascript.0.Wasserzaehler.Stand').val))) {
              log("Set NaN!!!!","warn");
          } else {
              var url = "http://192.168.66.38:3000/setPreValue?value="+getState('javascript.0.Wasserzaehler.Stand').val;
           
              request(url, function(error, response, body) {
                  if (body){
                      log("Set OK:"+ body,"info");
                  }
                  else
                  {
                      log("Set fehlerhaft:" +url+"->"+ body,"warn");
                  }
              })
          }
           
          var url = "http://192.168.66.38:3000/wasserzaehler.html?usePreValue";
           
          request(url, function(error, response, body) {
              if (body){
                  var count=String(body.match(/^[0-9.N]+/));
                  var err=body.search("Error");
                  var org=count;
                  if (err>=0) {
                      org= String(body.match(/[0-9.N]+$/));
                      var oar = org.split(".");
                      var last = String(getState('javascript.0.Wasserzaehler.Stand').val);
                      var lar= last.split(".");
                      var calc = lar[0]+"."+oar[1];
                      if (Number(calc)<Number(last) && (Number("0."+oar[1])<0.1) && (Number("0."+lar[1])>0.9)){
                          	calc=(String(Number(lar[0])+1))+"."+oar[1];
                        }
                        log("Body Calc:"+calc,"info");
                        count=calc;
                  }
                  if (isNaN(Number(count))) {
                      log("Body OK/NaN:"+body,"warn");
                  } else {
                      log("Body OK:"+body+"->" + count,"info");
                      setState("javascript.0.Wasserzaehler.Stand",count);
                  }
                  setState("javascript.0.Wasserzaehler.Log",String(body));
              }
              else
              {
                  log("Body fehlerhaft:" +url+"->"+ body,"warn");
              } 
          }) 
          }); 
          

          Wasser_tabelle.JPG

          Den Tip zur Ausrichtung der Analogen Zeiger werde ich mal noch testen.

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

            @Atifan Dieses Verhalten sollte aber durch den Aufruf mit: xxx.xxx.xxxx.xxx:3000/wasserzaehler.html?usepreValue
            nicht passieren......

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

              @sissiwup danke für den Tip. Habe ähnlichen Zähler wie du und noch Probleme mit den Zeigern. Werde das mal probieren.

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

                @pfried sagte in Wasserzähler - Selfmade:

                @Atifan Dieses Verhalten sollte aber durch den Aufruf mit: xxx.xxx.xxxx.xxx:3000/wasserzaehler.html?usepreValue
                nicht passieren......

                Hi, ist aber passiert. Ich nute ja das usepreValue. Das funktioniert ja auch. usepreValue bewirkt ja nur, dass solange ein "alter" Wert genommen wird, bis die Ziffer wieder lesbar ist und eine plausible Zahl ergibt. usepreValue verhindert aber nicht, dass falsche Werte geschrieben werden.
                Im Grunde genommen funktioniert die Bildauswertung ja auch richtig. Das Problem ist, dass die Nachkommastellen erst 0000 erreichen, nachdem die digitalen Ziffern umgseprungen sind.

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

                  @sissiwup ich habe in der Mitte so ein kleines Kreuz. Meinst du, dass ich es größer machen soll?

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

                    @Atifan, @pfried Das Problem wird in der Tat nicht durch den Algo abgefangen! Denn bisher war es eigentlich immer so, dass die neuen Ziffer erst lesbar, wenn die Nachkomma schon wieder bei "0" waren.
                    Bei den Nachkommastellen läßt sich das abfangen, da es Zwischenwerte und ich quasi eine "Fuzzy"-Logik mit Berücksichtigung der nächsten Ziffer vorliegt. Das geht aber bei den digitalen Ziffern nicht so einfach.

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

                      Hi, ja glaube ich. Ist bestimmt auch nicht so einfach zur "beheben". Aber ich bin so eig. zufrieden, es funktioniert ja. Einzige ist halt, dass ab und zu evtl. mal ein falscher Wert angezeigt wird mit einer Abweichung von max. 1m³. Denke da kann man mit leben 🙂 Der Wert wird ja auch wieder automatisch korrigiert, daher ist die Chance dass man gerade danach schaut und man dann einen falschen Wert angezeigt bekommt auch relativ gering 🙂

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

                        @jomjol
                        Hallo,

                        Ja, genau,
                        Ich würde das komplett durchziehen.

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

                          Kann es sein, dass der Server nen Memoryleak hat? Bei mir war der Webserver nicht mehr erreichbar, da habe ich den Server mal neu gestartet.
                          Dabei it mir aufgefallen, dass der Speicherverbrauch langsam immer weiter angestiegen ist bis auf über 6GB. Nach dem Reboot wieder bei 700-800 MB.

                          64b28a34-69f0-4966-9ec9-8f71c38d7850-image.png

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

                            @Atifan Guten Morgen, das Memory Leak sitzt in der Tensorflow Biblothek und ist weiter oben von jomjol beschrieben. Abhilfe: alle 3 - 6 Stunden den Docker mit .... sudo docker container restart [ID]..... neu starten.
                            https://github.com/tensorflow/tensorflow/issues/33009

                            MProx created this issue in tensorflow/tensorflow

                            closed Memory leak #33009

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

                              Ah ok Danke, dann ist es ja bekannt und wird evtl. irgendwann gefixt 🙂

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

                                @Atifan mich würden deine Proxmox-Settings zu dem Docker-Container interessieren. Bei mir hat es immer ein Problem mit Speicher zu klein gegeben beim ersten Pull des Docker-Containers.
                                Welches OS hast du genommen und welche Hardwaresettings?

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

                                  Habe eine 10GB Partition. Darauf Debian 10.2.0.
                                  Habe dem dann 8 Cores und 8GB RAM genehmigt 🙂
                                  Im Moment ist der RAM-Verbrauch aber nur bei 1,4GB.
                                  Es dauert schon paar Tage bis der RAM auf 6GB oder höher ist.

                                  1832d3cd-b619-494d-8cd6-c6a6e36bb22d-image.png

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

                                    @Atifan ok, und in dieser VM dann Docker? Nach welcher Anleitung bist du denn vorgegangen?

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

                                      Ja auf der VM habe ich dann Docker installiert.
                                      Ich bin aber leider nicht mehr sicher wie ich das genau gemacht habe.
                                      Ich glaub nach der Anleitung hier: https://docs.docker.com/install/linux/docker-ce/debian/
                                      Ich hatte aber glaube ich irgendwelche kleinere Probleme wo ein Befehl nicht funktionierte.
                                      Habe dann in einem Linux-Discord Hilfe bekommen und dann hats funktioniert.

                                      Wenn dann Docker installiert ist dann hier nach der Anleitung das Docker-Image installieren: https://hub.docker.com/r/jomjol/wasserzaehler

                                      1 Reply Last reply Reply Quote 1
                                      • Atifan
                                        Atifan last edited by

                                        Das Memoryleak verschlingt ungefähr ca. 50MB/h.
                                        Lasse jetzt duch nen cronjob jede Nacht rebooten:
                                        0 0 * * * root docker container restart b6c4d6ccc8b3

                                        1 Reply Last reply Reply Quote 0
                                        • C
                                          C1500 last edited by

                                          Servus

                                          Nachdem ich den Fokus noch mal nachstellen wollte, hab ich mir dabei die Kamera geschrottet.
                                          Also noch einen ESP32-CAM bestellt
                                          Und schwups ist auch bei diesem die Linse in 20 Teile zerfallen.

                                          Um jetzt nicht noch mehr ESP32-CAM rum liegen zu haben wollte ich mal Fragen ob einer eine Bezugsquelle für die Kamera einzeln hat.

                                          Also wo bekommt man die Kamera auch einzeln zu einem guten Preis?

                                          Gruß C1500

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

                                            @C1500 guck mal bei Aliexpress, da gibt es die Cameras auch einzeln.

                                            ea01a234-bb83-4864-b754-d335a4133803-image.png

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            791
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

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