NEWS
Wasserzähler - Selfmade
-
@jomjol Also ich habe deine Dockerversionen mit dem Bridge_Netzwerk erstellt. Dabei habe ich mehrere Container mit verschiedene Ports (+1) benutzt. Dadurch lässt sich die Auswertung der Daten in IoBroker gut anpassen. Ob man nun den Parser Adapter, oder das Script von @sissiwup nutz oder mein Blockly, so kann mann einfach zwischen den verschiedenen Docker Versionen wechseln (auch der Lite-version). Ich sehe hier kein Problem mit der Abwärtskompatibilität, da die Daten in den verschiedenen Versionen gleich ausgegeben werden.
Der Arbeitsspeicherbedarf mit der Lite_Version schein aber wesentlich besser zu sein
Zusammenfassend möchte ich sagen, dass dein Projekt bei mir funktioniert. Das ist nicht selbstverständlich. Ich habe schon andere "Bastelobjekte" unternommen, und musste kapitulieren. Aber ich experimentiere gern.
-
@jomjol Bei mir gibt die Lite Version exakt dasselbe aus wie die Full Version!
EDIT: Dachte der Container raspi-rolling-lite läuft, habe aber eine falsche Abfrage gemacht. Sorry!
Der Container raspi-rolling-lite läuft auf meinem RB3+ nicht. Er reseted wiederkehrend. -
@jomjol Frage zu der Bilderkennung: was ist wichtiger, das die roten Zeiger genau in der Mitte sind, oder die Ziffernbeschriftungsscheibe genau zentriert? Beispiel Zeiger1, ganz rechts:
-
@pfried Ich bin mir selber nicht ganz sicher. Der Zeiger ist aber wichtiger, wie die Ziffern, den letztlich enthält er die Informationen.
-
@pfried Kannst du mal schauen, ob du eine Fehlermeldung aus dem Log-File bekommst? Ich habe den Container auch auf einen Raspi3 getestet und er hat funktioniert.
Wichtig ist aber, dass du die Config.ini anpasst und die CNN-Netzwerkinfos als tflite-Dateien zur Verfügung stellst. -
@jomjol wollte gerade auf meiner QNAP in Docker die Lite Version mal testen, bekomme den Container aber gar nicht erst gestartet.
0.0 Start Init Zaehlerstand Traceback (most recent call last): File "./wasseruhr.py", line 120, in <module> wasserzaehler = lib.ZaehlerstandClass.Zaehlerstand() File "/lib/ZaehlerstandClass.py", line 47, in __init__ self.readAnalogNeedle = lib.UseAnalogCounterCNNClass.UseAnalogCounterCNN(model_file, in_dx, in_dy, log_Image, LogNames) File "/lib/UseAnalogCounterCNNClass.py", line 38, in __init__ for i in range(in_numberclasses): NameError: name 'in_numberclasses' is not defined
-
@jomjol So jetzt funktioniert es mit dem Docker Container. Die Auswertung hat immer noch das Problem mit den Zeigern:
Erkannt wird:
Also 29.8965 statt 29.8929
Lasse jetzt mal die Lite Version laufen. Wenn ich was testen soll lasse es mich bitte wissen.
-
@jomjol da es nicht funktioniert hat die Lite Version auf dem QNAP in der Container Station zu installieren, habe ich dann heute die Lite Version auf meinem NUC im Container installiert. Lief soweit alles durch und sieht bisher gut aus, Erkennung klappt bisher einwandfrei.
-
@coyote Ist ein bisschen strange - den bei mir lief es auch, aber dein Screenshot mit der Fehlermeldung hat mich noch auf zwei Fehler beim erzeugen der jpg-Logs geführt.
Ein Update für die lite-Version habe ich gerade hochgeladen - Docker-Build läuft - Version 7.0.1 - lite.Danke für deine Rückmeldung - hat sehr geholfen.
Beste Grüße,
jomjol -
@jomjol Habe gerade geupdatet. Versionsinfo passt
Version 7.0.1 - lite (2020-04-27)
Keine Fehler beim Starten des Containers auf meiner Synology 918+
-
@jomjol werde die Zahlen für dich aufzeichen und dann wenn ich alles habe dir dann zukommen lassen.
Momentan habe ich aber noch damit zu kämpfen das der ESP sich immer wieder Abschaltet. Gibt es eine Deep Sleep modus??
gruß -
@hugo1215 sagte in Wasserzähler - Selfmade:
@jomjol werde die Zahlen für dich aufzeichen und dann wenn ich alles habe dir dann zukommen lassen.
Momentan habe ich aber noch damit zu kämpfen das der ESP sich immer wieder Abschaltet. Gibt es eine Deep Sleep modus??
grußDas Problem hatten hier einige... jomjol hat eine rolling-Version gebaut.. da gibt es keine Probleme mehr...
https://github.com/jomjol/water-meter-picture-provider/tree/rolling
Ich hatte mir vorher einen eigenen Watchdog gebaut, der die Steckdose resettet hatte, wenn kein ping mehr kam.. .jetzt ist seit 3 Wochen kein einziger Ausfall mehr gewesen..
-
@mameier1234 Ich habe die Rolling jetzt in die Master gemerged.
-
mal eine frage wie habt ihr das mit der Spiegelung des Lichtes gemacht. Die Onboard LED ist so Mega hell das ich immer eine Spiegelung mit im Bild habe somit ist das Bild überbelichtet und es werden die Zahlen nicht Sauber erkannt. Habe schon versucht mit Papier eine Art Filter zu basteln aber irgendwie ohne erfolg.
Gruß -
Ich hab bei mir an dem Punkt wo das Licht reflektiert wird etwas Mattes hingeklebt (schwarzer Filzgleiter)
-
Hi
sehr geiles Projekt das du da auf die Beine gestellt hast.
Hab das natürlich gleich nachgebaut und mich 3 tage damit beschäftigt.Mittels eines Blockly werte ich nur die Dezimalzahlen (ohne ganze m³) aus und erhöhe auch die ganze Zahl m³
Da ich gerade meinen Pool fülle, aktualisiere ich alle 1min. den Stand der Uhr.
Wie man im Bild erkennen kann, sind die ersten 300l bei jedem angefangenen m³ linear, danach gibts aber Probleme.
![alt text](image url)
Habe die Zeiger (884) per Debug jetzt gespeichert und bereis klassifiziert.
Bin nach deiner Anleitung in Github vorgegangen und wollte das Set selbst anlernen.
Leider habe ich aber in Jupyter diverse Fehler beim erstellen des h5 file.Dürfte ich dir meine Zeiger senden damit du sie bei dir durch den Trainingalgo jagst und dann das neue Trainingfile zur verfügung stellst?
Wenn Ja, wie kann ich dir die zukommen lassen?Anbei noch ein Bild meiner Uhr.
Sind wie Reflektionen vlt. zu stark? -
@muerzi Ich kann die Zeiger gerne mit ins Anlernen aufnehmen, dann haben auch alle etwas davon. Ich brauche sie aber ein bisschen vorsortiert. Du kannst mir die Bilder entweder per Mail schicken (Schicke mir deine Mail-Adresse per PM, dann antworte ich) oder das Archiv irgendwo zum Download bereitstellen.
Bitte aber die Klassifizierung der Bilder im Filenahme selbst vornehmen. Ich brauche den Anzeigewert des Zeigers mit einer Nachkommastelle am Anfang des Filenames (z.B. "5.5_Zeiger.jpg"). Das wäre ein Zeiger der genau zwischen 5 & 6 steht.Beste Grüße,
jomjol -
Hallo,
ich muss euch allen eine großes Lob und besten Dank aussprechen, ein wirklich super Sache die ihr hier gemacht habet. Und vor allem mal super dokumentiert. Ich habe den Wasserzähler nun auch seit gestern auf einem Pi 4 am laufen. Leider habe ich die Lite Version zu spät gelesen und habe die normale Version installiert.
Frage: besitzt die Lite noch das memory leakage ?Ich habe ebenfalls Probleme mit der ESP32 CAM. Nach einer gewissen zeit bekomme ich keine Bilder mehr gesendet.
Beim Aufrufhttp://192.168.xxx.xxx/capture_with_flashlight
bekomme ich immer nur ein Timeout, aber der Aufruf ohne Paramterhttp://192.168.xxx.xxx
gibt aber eine Antwort zurückHello from ESP32-CAM! Version: 2.3.1 Flash-Light is on GPIO4 - recommended illumination! WS2812b-LED Strip is on GPIO2 - if connected Watchdog enabled with 120s
somit ist die ES32Cam nicht offline.
Was mich wundert ist das die Version 2.3.1 angezeigt wird obwohl ich die 2.4.0 heruntergeladen habe. In der "JomjolGitESP32CAM-Server-Class.cpp" steht noch 2.3.1 drin
Macht weiter so und bleibt Gesund
-
@Stev8176 Hallo Stev8176,
das mit der Versionsnummer ist eine Schlampigkeit von mir
Die Lite sollte das Memory Leak nicht mehr haben, aber ich habe noch keine RM dazu. Wenn du neu einsteigst, wäre ein Start mit Lite sicher besser. Ich werde das in Zukunft bevorzugen, sobald ich es stabil einige Zeit am Laufen habe. Spätestens mit einer neuen Tensorflowversion gibt es dann kein Zurück mehr. Denn die werde ich nicht selbst kompilierne, falls Tflite verfügbar ist. -
@jomjol Hi Jomjol,
vielen dank für die schnelle Antwort.dann werde ich mal auf Lite umsteigen. Kann ich meine Config.ini übernehme und nur die zwei Endungen .h5 gegen .tflite austauschen ?
ansonsten
docker run -d --name wasser -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-lite
richtig?
Und wie hat ihr das Problem mit nicht mehr funktionierenden Capture bei der ESP32Cam gelöst? ein Ping geht leiser bei mir immer . Gibt es ein Befehl für den Reset?
Wo muss ich eine feste IP-Adresse eintragen? wäre mir lieberDanke