-
Notifications
You must be signed in to change notification settings - Fork 586
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Zahlenüberlauf #40
Comments
Hi Martin, hatte ich vor ein paar Wochen schon als Feature Request eingetütet und jomjol hat mit meinen Beispielbildern der Zahlen vom Gas sowie Stromzähler das CNN weiter trainiert und bisher läuft die erkennung für Wasser/Gas/Strom seit einer Woche Problemlos. Siehe #37 |
Sehr schön! Danke! |
Meine Tür musste auch weichen ;). |
Hallo Martin,
Letzerer sollte eigentlich solche Inkonsistenzen prüfen und beseitigen. Kann natürlich sein, dass die Implementierung auch nicht einen Fehler enthält. Gruß, |
Ich habe noch die Version von 03.11. im Einsatz und hatte den Parameter auf False stehen. Viele Grüße, |
Die neue Version vom 08.11 mit aktiviertem Parameter korrigiert den Wert auch nicht - vielleicht liegt's ja wirklich daran, daß der Parameter erst nach dem Zählerüberlauf aktiviert wurde... Gruss, |
Hallo Martin, |
Die prevalue.ini sieht derzeit so aus: und die config.ini so: [Alignment] [Digits] [Analog] [PostProcessing] [MQTT] [AutoTimer] [Debug] [Ende] Den Prevalue hatte ich ganz zu Beginn mal gesetzt (auf 534.6 in etwa) und dann nicht mehr angerührt... Allerdings erkennt die SW derzeit den "5"er an Position 5 nicht - ich vermute, daß die Zacken am rechten Rand stören. |
Sieht erstmal sehr vernünftig aus. Ich würde nur den Wert |
Hallo jomjol, |
Hallo jomjol, |
Hallo Martin, |
Zu dem noch nicht funktionierenden Zählerüberlauf: Ich habe jetzt den PreValueAgeStartup von 1/2 auf 2 Tage erhöht. Mal den nächsten Überlauf abwarten... |
Leuchtet dein LED-Streifen dauerhaft? Und geht die LED am ESP zusätzlich an, oder hast du das abgeschaltet? |
Ich verwende den LED-Streifen nicht mehr, sondern nur die interne Flash-Light. Die Flash-LED (und früher auch die LEDs) schalte ich immer ca. 5 Sekunden vor der Bildaufnahme ein, damit die Kamera den automatisch die Belichtungsparameter einstellt. |
Danke, dass die Kamera das in den 5 Sekunden adaptiert wusste ich nicht. Die 5 Sekunden habe ich durch deine Standardeinstellung auch, aber trotzdem die Reflexion. Beim Wasserzähler geht es, beim Gaszähler blendet es zu sehr. |
@stan23 Dauerhaft hab ich mir für Strom/Gaszähler ein Gehäuse gedruckt, an dessen Innenwänden ringsum der LED Streifen klebt um möglichst indeirekt zu beleuchten und Reflexionen eher im äußeren Bildausschnitt zu haben. Für die LED hab ich im Gehäuse kein Loch ausgespart, somit fürs Bildaufnehmen inaktiv. |
Hallo jomjol, |
Hallo zusammen, das ist mir momentan echt ein Rätsel. Ich hatte heute auch einen Nulldurchang und bei mir lief es reibungslos (lasst euch von dem Kommentar nicht irritieren, der ist von meinem Parser und nur ein Zeichen, dass alles ohne Modifikation war: 2020-11-20_11-10-01 38.9700 - - M3 direkt umgewandelt (keine N) Bei einen Nulldurchgang von Anfang November hatte ich auch das von euch berichtete Verhalten: 2020-11-05_12-30-01 34.9977 - - M3 direkt umgewandelt (keine N) Habe auch nochmal den Code gescreent und mir ist erstmal nichts noch weiteres aufgefallen. Bin ratlos - Gruß, |
Hallo jomjol, wenn der Sprung von z.B. 536.9xxx auf 537.0xxx nicht funktioniert, dann konnte ich zumindest mit dem Setzen eines neuen Pre-Values von 537.0000 wieder auf korrektes Verhalten kommen. Kann ich beim Compilieren ein Debugging einschalten - am besten Logging in eine Datei? BTW: Die aktuellen Werte im Postprocessing lauten: Viele Grüße, |
Der einzige Unterschied, der mir auffällt, ist, dass bei mir im Zusammenhang mit dem Nulldurchgang auch vorher schon immer ein N an der letzten Stelle ist (ist ja bei der Art Zähler sozusagen systembedingt). Wenn ich Deine Logs richtig lese, dann ist das bei Dir nicht der Fall (keine N). |
An der Stelle gibt es kein weiteres Debugging sind auch nicht so viele Zeilen Code. Wenn du Muse hast, kannst du dir die ja mal anschauen - vielleicht findest du den Knoten in meinem Hirn. Leider aber vielleicht nicht ganz einfach nachvollziehbar. Du findest die Verarbeitung in der Funktion Ich muss auf den nächsten Nulldurchgang warten - passiert heute aber nicht mehr. Wenn bei dir die letzte Zimmer immer ein N ist, dann funktioniert der Algo natürlicht nicht richtig. |
Ich schau’s mir mal an. Ich habe natürlich nicht immer N‘s aber eben vor und nach dem Nulldurchgang ;) |
Ich habe mir den Code jetzt mal angeschaut, und aus meiner Sicht ist der von uns hier beschriebene Fall noch nicht berücksichtigt. Hier mal ein Beispiel, was, soweit ich es verstehe, aktuell passiert: PreValue = 354.995 Es müsste eine Prüfung geben, die nach dem Ersetzen der Ns schaut, ob bei den Nachkommastellen ein großer Unterschied zwischen PreValue und neuem Wert ist (den minimalen Unterschied für die Korrektur könnte man ja auch als Parameter in die Konfig packen). Wenn der Unterschied entsprechend groß ist, geht man von einem Nulldurchgang aus, und erhöht den korrigierten Ganzzahlteil um 1. |
Hi Eki, Gruß, |
Ich muss auch mal was zum Überlauf schreiben. Aber erst mal vielen Dank an dich Jomjol eine wirklich gute Arbeit. Bei meinem Zähler erfolgt der Überlauf erst nach so ca 400 Litern. das heißt: Ich würde den Überlauf wie folgt behandel. bei einem Zählerstand von etwa xxx,9xxx einen Flag setzen "vor Überlauf" Zur Info mein System CheckDigitIncreaseConsistency = True |
Dein Vorschlag funktioniert so ähnlich bis +/-300 Liter. Damit fällst du gerade so raus. Idee dahinter ist, dass ich nicht bis auf +/-500 gehen kann, weil dann eigentlich immer die Korrektur anspricht und die Ziffern nie wirklich gezählt werden würden. Es gab mal eine Implementierung, wo die Ziffern eigentlich immer errechnet wurden, aber dann hast du das Problem, dass sich ein Fehler nie von selbst korrigiert. Eine optimale Lösung habe ich da auch noch nicht. |
@eki1503 |
Ich habe jetzt mal ein Update mit der neuen Version gemacht, werde berichten (kann aber etwas dauern bis der nächste Nulldurchgang kommt) |
Ich habe jetzt auch mal die neue FW hochgeladen (die vorcompilierte). Bei mir brauchts aber auch einige Tage bis zum nächsten Nulldurchgang... |
Habe die neue Firmware installiert... hatte aber gerade einen Überlauf, es dauert noch was bis zum nächsten, werde berichten. Danke |
Bei mir war jetzt ein Nulldurchgang und das hat mit der neuen Version perfekt geklappt. Danke @jomjol!! |
Thema gelöst! |
Ich hatte jetzt auch einen Nulldurchgang und die Zählung lief bestens weiter. |
Hallo das ist ja ein echt tolles Porjekt.... |
Genügt DIr da nicht die Literanzeige? Die löst auch auf Zehntel auf! |
Ich möchte eine tropfende Leckage finden. Da bewegt sich fast nichts.
Die Frage ist ob man das erkennen kann ? wenn das kleinste Mengenrädchen sich in einer Minute nur 1-2 mm bewegt.
An dem mini Rädchen stehen leider keine Zahlen dran die man erkennen könnte …
Und mit der 0,1l Anzeige weiß man halt nicht ob gerade jmd. ein glas Wasser gezogen hat.
Mein Vater arbeitet gerade an einer Lösung bei der er 2cm³ / min finden kann. Ziemlich aufwendig und Oldschool.
Da ist die Kamera eine ziemlich coole Lösung.
Hintergrund ist dass man nicht erst etliche Liter Wasser in der Wand haben möchte bevor man es erkennt.
Übrigens geben die Hersteller und Installateure keine Garantie auf diese exorbitant teuren Gerätschaften.
Viele Grüße
Andrea
Gesendet von Mail für Windows
Von: Paul Fried
Gesendet: Donnerstag, 23. September 2021 13:10
An: jomjol/AI-on-the-edge-device
Cc: SilentBob83; Comment
Betreff: Re: [jomjol/AI-on-the-edge-device] Zahlenüberlauf(#40)
Genügt DIr da nicht die Literanzeige? Die löst auch auf Zehntel auf!
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
|
Grundsätzlich löst das Ganze immer soweit auf, wie Du definierst (also bei mir sind das 4 analoge "Rädchen" und das kleinste löst auf 1/10 Liter auf). Nur das kleinste Rädchen zu überwachen macht keinen Sinn, da Du von der Größenordnung nur ca. alle paar Minuten (< 2 macht nach meiner Erfahrung keinen Sinn) ein Bild machen kannst und auch bei kleinem Leck das Rädchen sich dann ja möglicherweise mehrmals gedreht hat. Wenn Du den absoluten Wert überwachst, bekommst Du alle paar Minuten einen absoluten Messwert (in meinem Fall auf 0.1 Liter genau). Daraus könnte man dann, allerdings nur wenn in der Zeit keine anderen Verbräuche stattgefunden haben, ermitteln, dass das Ganze z. B. nie ganz auf Null geht. |
Ich verwende genau diesen Mechanismus und steuere damit ein Magnetventil bei Leckerkennung an. Die angeführten 2 min sind sehr sportlich, ein ESP braucht laut meinen Messungen immer über drei Minuten und was dazu kommt, das kleine Rädchen hat auch keinen Indikator, aber das Hauptgegenargument ist, dass der ESP für jeden Durchlauf circa 3 Minuten braucht. In 3 Minuten fließt eh schon viel Wasser bei einem Leck .... |
Nicht wenn es nur ganz wenig tropft.
Ich glaub des Rätsels Lösung ist die Camera + Drucksensor.
Druckabfall + Menge > X Liter -> Rohrbruch (X = z.B. 200l – Badewanne)
Druckabfall + Menge < X Liter alles i.O. Normaler Verbrauch
Mini leck:
Kein Druckabfall und Menge ändert sich ….
Oder ?
Gesendet von Mail für Windows
Von: Paul Fried
Gesendet: Donnerstag, 23. September 2021 15:56
An: jomjol/AI-on-the-edge-device
Cc: SilentBob83; Comment
Betreff: Re: [jomjol/AI-on-the-edge-device] Zahlenüberlauf(#40)
Ich verwende genau diesen Mechanismus und steuere damit ein Magnetventil bei Leckerkennung an. Die angeführten 2 min sind sehr sportlich, ein ESP braucht laut meinen Messungen immer über drei Minuten und was dazu kommt, das kleine Rädchen hat auch keinen Indikator, aber das Hauptgegenargument ist, dass der ESP für jeden Durchlauf circa 3 Minuten braucht. In 3 Minuten fließt eh schon viel Wasser bei einem Leck ....
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.
|
Hallo jomjol,
tolles Projekt, das Du da auf die Beine gestellt hast! Musste ich gleich nachbauen und funktioniert auch soweit prima!
Nun hat meine Wasseruhr den Wechsel auf den nächsten Kubikmeter vollzogen, allerdings ist die Ziffer noch nicht vollständig zu sehen, so daß sie als NaN erkannt wird und durch den bisherigen Wert ersetzt wird. Die Zeiger sind aber bereits von der 9999 wieder zur 0000 weitergelaufen, so daß der Gesamtwert nun zu niedrig ist und der aktuelle Wert damit nicht ausgegeben wird.
Siehe auch Bild anbei.
Muß ich noch was berücksichtigen in der Konfiguration, oder fehlt da noch etwas Logik im Programm?
BTW: die Software macht noch mehrmals pro Tag Restarts (bei geöffneter Web-Seite) - aber ich glaube, das weißt Du schon...
Noch eine Frage: Ließe sich das Projekt auch für einen Stromzähler verwenden?
Vielen Dank nochmals für die tolle Software und Projekt!
Martin
The text was updated successfully, but these errors were encountered: