NEWS
Wasserzähler - Version 2 - all-in-device
-
Stimmt. Da hast du recht.
Habe deine Settings per c&p eingefügt als du sie gepostst hast.
Gestern abend hatte ich noch einmal eine "Falschmeldung".
Hab dann die Digits alle im ganzen noch ein wenig verschoben.
Nach dem reboot hat er es dann richtig erkannt.Denke, jetzt habe ich es.
Edit
Was mir aufgefallen ist. Auf dem Bild denkt man, dass um die Referenzmarken noch was Luft ist. In dem abgespeicherten Referenzbildern schneidet es auf den Pixel genau die Buchstaben an. -
Hey,
hab jetzt wieder, dass er einem qm zu viel ausliest.
Hast du noch einen Tip für mich?
Die Konfiguration ist wie oben, nur mit deinen Anpassungen.Die Marker und Ausrichtung der Digits sehen wie folgt aus beim falsch eingelesen Zählerstand:
-
@david-g , spiel bitte noch mit den Einstellungen rum, die 4 wurde noch nicht erreicht, d.h. dann sollte normal noch die 3 zur Berechnung heran gezogen werden. Wenn dann dort irgendwann NaN steht, einfach ignorieren. Das berechnet dann die Software selbst. Der korrekte Wert sollte dann in der Value erscheinen. Das ist immer bei Zahlenwechsel.
...und ändere mal dein Model in folgendes:
btw. das C hat noch Luft nach unten 1-2 Pixel nach oben 1 Pixel. Das einfassen der Marker ist besonders wichtig sonst verschiebt sich das Bild evtl. 2 Pixel nach unten oder 1 Pixel nach oben und wird Schief. Die Erfahrung habe ich selber schon gemacht
-
Die Digits habe ich umgestellt und das C was angepasst.
Für die analogen Zeiger habe ich den entsprechenden Eintrag nicht gefunden.
Nach dem reboot hat er die 3 richtig erkannt.Ich beobachte es weiter.
P. S.
Was macht die Referenz?
Falls das Bild was verwackelt zum nachjustieren? -
@david-g , verstehe dein letzten Absatz nicht. Wenn man das Gehäuse verdreht oder gegen kommt, sodas es sich verschiebt, passt die Referenz nicht mehr (logisch). Darum sollte es so fest wie möglich montiert werden. Nicht das jeder mit dem Arxxxx gegen kommt und verschiebt.
Das ist nicht Sinn der Sache. Oder du machst die Referenz öfters neu, soll welche geben dié Spaß dran haben....btw...wenn deine Analogen passen, dann kannst du das so belassen.
-
Die Frage mit der Referenz war eher aus Interesse warum man die braucht.
Die Koordinaten wo die Software welche Zahl findet gibt man ja genau ein. Und die bleiben ja auch gleich, wenn man nicht an der Kamera wackelt.
Deshalb dachte ich die Referenz wären so eine Art Fixpunkt zum nachkorrigieren, da sich die Zahlen logischerweise regelmäßig ändern.
Aber das ist ja alles so ausgefuchst (und cool ), da hat es schon einen Sinn
-
@bananajoe said in Wasserzähler - Version 2 - all-in-device:
RFID Platine
welche hast du da genau vorliegen?
-
@david-g sagte in Wasserzähler - Version 2 - all-in-device:
@esp8266
Deshalb dachte ich die Referenz wären so eine Art Fixpunkt zum nachkorrigieren, da sich die Zahlen logischerweise regelmäßig ändern.Die Referenz dient als Vergleich für die aufgenommenen Folgebilder. Wichtig ist dabei, das die Zahlen in den ausgerichteten ROI`s in den vorgegebenen Bereichen richtig erkannt werden können. Auch dient die Referenz für die Helligkeit und Kontrast Einstellung nur so kann alles Optimal zusammen arbeiten.
-
@esp8266
Ah, das klingt plausibel.
So weit hab ich nicht gedacht.
Gibt ja noch mehr Faktoren die variabel sind, wie eben ggf die Belichtung des Bildes. -
Also ich habe nun Mal probehalber einen pn532 mit tasmota eingerichtet.
Finden /lesen tut er am Gerät nichts.Wie hast du es dir denn gedacht?
-
Re: Wasserzähler - Version 2 - all-in-device
Hallo zusammen,ich bin neu hier in diesem Forum Thema. Zunächst einmal möchte ich mich für das super Projekt und den vielen Anregungen, die ich hier bekommen habe, bedanken.
Nach anfänglichen Problemen mit der Hardware (ESP32CAM-MB) und meiner Ubuntu Desktop Version (22.04 LTS), was den Flash Vorgang betraf, läuft das Setup nun einigermaßen gut. Bis zu Zählerstand von 399m³ ==> 400m³.
Aktuell kann ich den digitalen Zähler nicht dazu bewegen, mir anstatt 399m³ 400m³ zu liefern. Die Ermittlung der analogen Stände funktioniert allerdings einwandfrei (s. Screenshot).
Ich habe die Standard Kamera gegen ein Weitwinkel 60° oder 66° getauscht und komme dadurch näher an die Zähleroberfläche heran. Problem ist, die Reflexion der LED, die dadurch auch intensiver ausfällt. Momentan habe ich ein weißes Papier großflächig bis zu Objektiv der Kamera eingeklebt und die ESP32-CAM so justiert, dass die Reflexion ca. mittig auf der Oberfläche des Zählers erscheint. Die Reflexion ist dadurch geringer geworden, aber noch deutlich zu sehen.
Auch wenn es gegen die Prinzipien des AI Projektes verstößt, kann man den digitalen Zählerstand nicht fix vorgeben und die Fortschreibung durch die analogen Zähler und Addition von 1 auf den Stand des digitalen Zählers erreichen? Oder was spricht dagegen?
Gibt es Tipps, was ich noch an den Einstellungen oder anderen Dingen machen kann, damit der digitale Zählerstand korrekt erkannt wird?
Vielen Dank für eure Unterstützung im Voraus und viele Grüße in die Runde.
TopGoal
-
@topgoal sagte in Digital Zähler wollen nicht von 399 auf 400m³ wechseln:
kann ich den digitalen Zähler nicht dazu bewegen, mir anstatt 399m³ 400m³ zu liefern. Die Ermittlung der analogen Stände funktioniert allerdings einwandfrei (s. Screenshot).
was ist daran Digital?
die 4 ist im unteren Bereich abgeschnitten und wird wahrscheinlich nicht erkannt.
hast du mal manuell den Wert eingegeben?
-
-
@david-g
Ok. Die digitalen Marken habe ich nochmals nachgebessert. Die 400m³ werden jetzt erkannt. Danke für die Unterstützung.
LG TopGoal -
Laut dem Foto sehe ich für die Zukunft aber noch mehr Probleme, wenn ich mir mal nur so die Marker an sehe. Das wird nie Stabil laufen. Auch fehlt es dem Bild an Kontrast. Scheinbar wird sich die Wiki nicht genauer angesehen bzw. durchzulesen. Überfliegen kann jeder und dann kommt es zu solchen Fragen....die eigentlich alle in der Wiki beantwortet sind.
-
@esp8266
Leider war die Erkennung der 400m³ nur von kurzer Dauer. Beim 2. Durchlauf wurden mir wieder 1000 Liter Wasser geschenkt .Ich habe ein OTA Update auf V 13.0.1 durchgeführt. Musste ich zweimal machen, hat aber beim 2. Versuch funktioniert. Nach dem Reboot wurden wieder 400m³ erkannt. Beim nächsten Durchlauf wieder 399m³.
Digitalzähler: 0.0 3.9 10.0 9.7
Analogzähler: korrekt (s.u.)!Am Setup der Config habe ich bisher nur indirekt (via UI) etwas geändert. Was den Kontrast angeht, muss ich mal sehen, wie ich den besser hin bekomme. Die Analogzähler sind Herstellerseitig z.B. in grau gedruckt nicht, wie bei Anderen, in sattem Schwarz. Die 4 und die darauf folgende 0 stehen ja wirklich etwas schief im Stall. Und ich rechne nicht damit, dass die sich in absehbarer Zeit gerade einreihen werden. Die unterschiedliche Ausleuchtung kommt von meinem eingeklebten Papier, das ich testweise wieder entfernen werde. Ich befürchte, dass sich dann die erhöhte Reflexion negativ auswirkt.
Mal sehen wie es wird. Ich melde mich wieder.
Nochmals Danke für die sachdienlichen Hinweise.
VG TopGoalNachtrag:
Nachtrag aus V 13.0.1: ====================== Added data logging in /log/data - One day per file and each measurement is on one line Format: csv - comma separated Content: time, name-of-number, raw-value, return-value, pre-value, change-rate, change-absolute, error-text, cnn-digital, cnn-analog 2022-11-29T20:17:27,main,0400.3106,400.3106,400.3106,0.000084,0.0061,no error,0.0,3.9,10.0,9.8,2.8,0.9,0.6,6.4 2022-11-29T20:22:18,main,0400.3106,400.3106,400.3106,0.000000,0.0000,no error,0.0,3.9,10.0,9.8,2.8,0.9,0.6,6.4 2022-11-29T20:22:18,main,0399.3106,,400.3106,,0.0000,Neg. Rate - Read: - Raw: 0399.3106 - Pre: 400.3106 ,0.0,3.9,10.0,9.8,2.8,0.9,0.6,6.4 2022-11-29T20:22:18,main,0399.3106,,400.3106,,0.0000,Neg. Rate - Read: - Raw: 0399.3106 - Pre: 400.3106 ,0.0,3.9,10.0,9.7,2.7,0.9,0.6,6.4 2022-11-29T20:22:18,main,0399.3106,,400.3106,,0.0000,Neg. Rate - Read: - Raw: 0399.3106 - Pre: 400.3106 ,0.0,3.9,10.0,9.8,2.7,0.9,0.6,6.5 2022-11-29T20:22:18,main,0399.2106,,400.3106,,0.0000,Neg. Rate - Read: - Raw: 0399.2106 - Pre: 400.3106 ,0.0,3.9,10.0,9.8,2.6,0.9,0.6,6.5 2022-11-29T20:22:18,main,0399.3106,,400.3106,,0.0000,Neg. Rate - Read: - Raw: 0399.3106 - Pre: 400.3106 ,0.0,3.9,10.0,9.8,2.8,0.9,0.6,6.5 2022-11-29T20:22:18,main,0399.3106,,400.3106,,0.0000,Neg. Rate - Read: - Raw: 0399.3106 - Pre: 400.3106 ,0.0,3.9,10.0,9.8,2.7,0.9,0.6,6.5 2022-11-29T20:56:15,main,0400.3114,400.3114,400.3114,0.000024,0.0008,no error,0.0,3.9,10.0,9.8,2.8,1.0,1.4,4.6 2022-11-29T20:56:15,main,0399.2114,,400.3114,,0.0008,Neg. Rate - Read: - Raw: 0399.2114 - Pre: 400.3114 ,0.0,3.9,10.0,9.8,2.6,1.0,1.4,4.6 2022-11-29T20:56:15,main,0399.3136,,400.3114,,0.0008,Neg. Rate - Read: - Raw: 0399.3136 - Pre: 400.3114 ,0.0,3.9,10.0,9.7,2.7,1.2,3.6,6.8
-
@jomjol Darf ich freundlich nochmal auf mein Problem aufmerksam machen? Ich vermute das ist im Thread etwas untergegangen. Danke schonmal...
-
-
@josh sagte in Wasserzähler - Version 2 - all-in-device:
Hallo zusammen!
Bei mir läuft der Wasserzähler mit der ESP32CAM seit einiger Zeit problemlos. Klasse Projekt.
Nun ist bei mir der Gaszähler in der Nähe des Wasserzählers. Da bietet es sich an mittels Reedkontakt diesen auch noch "anzuzapfen". Dazu habe ich den Reedkontakt an GPIO13 angeschlossen und diesen als Eingang mit Pullupwiderstand eingerichtet. Dazu soll der Zustand über MQTT geschrieben werden. Ein entsprechenden Blockyscript ist auch schon geschrieben.
Der High-Zustand wird auch nach einem Reboot gemeldet, aber wenn nun der Reedkontakt schaltet, bekommen ich per MQTT keine Meldung, dass der Eingang auf LOW gezogen wurde. Auf dem Eingang messe ich 3.1xV, was bestätigt, dass die Config mit Pullup-Widerstand funktioniert. Schaltet der Reedkontakt ist auch wirklich 0V an dem Pin.
Hier die GPIO-Section aus der Config:
[GPIO] ;IO0 = input disabled 10 false false ;IO1 = input disabled 10 false false ;IO3 = input-pullup disabled 10 false false IO4 = built-in-led disabled 10 true false flashlight ;IO12 = input-pullup disabled 10 false false IO13 = input-pullup disabled 0 true false gaszaehler LEDType = WS2812 LEDNumbers = 2 LEDColor = 150 150 150
Und das gleich nochmal als Bild:
Jetzt stellt sich mir die Frage, ob das beides (Wasser- + Gaszähler) überhaupt überhaupt mit dem Projekt umsetzbar ist. Hat das so schon jmd ans Laufen bekommen?
Bin für jede Idee/Unterstützung dankbar
Gruß Josh
EDIT: Hier installierte Firmwareversion: master - v11.2.0 - 2022-08-28
Danke nochmals für den Hinweis. Die GPIO-Nutzung für andere Zwecke ist eigentlich ein Feature, was ein User mal für seine eigene Zwecke integriert hat und nicht Kern des Hauptprogramms ist (daher auch im Expertenmodus). Ich werde daran aktuell nicht weiter arbeiten.
Im Allgemeinen würde ich aber empfehlen für weitere Aufgaben eher nochmal 10 EUR in einen weiteren ESP32 zu investieren und dort dann die anderen Aufgaben zu lösen, denn mit AI-on-the-Edge ist das ESP32CAM Modul schon ziemlich ausgelastet. -
@jomjol , ich glaube ein D1 Mini würde für sowas auch reichen, bzw ein NodeMCU mit mehr Ports oder ein D1 Mini Pro mit ext. Antennenanschluß. Wesentlich billiger.....