NEWS
Wasserzähler - Version 2 - all-in-device
Wasserzähler - Version 2 - all-in-device
-
@andreas_z sagte in Wasserzähler - Version 2 - all-in-device:
timestamp
Danke für den Hinweis - habe gerade einen Patch hochgeladen (v10.0.1)
@jomjol
Der Dank geht an Apollo77
Ich habe aber noch einen weiteren Parse-Fehler bei Neg-Read:mqtt.1 2021-12-31 14:14:53.026 warn Cannot parse "gaszaehler/main/json": {"value":,"raw":"18010.06","error":"Neg. Rate - Read: 18010.06 - Raw: 18010.06 - Pre: 18010.94 ","rate":"","timestamp":""} mqtt.1 2021-12-31 14:10:02.039 warn Cannot parse "gaszaehler/main/json": {"value":,"raw":"18010.05","error":"Neg. Rate - Read: 18010.05 - Raw: 18010.05 - Pre: 18010.94 ","rate":"","timestamp":""} mqtt.1 2021-12-31 14:00:20.035 warn Cannot parse "gaszaehler/main/json": {"value":,"raw":"18010.03","error":"Neg. Rate - Read: 18010.03 - Raw: 18010.03 - Pre: 18010.93 ","rate":"","timestamp":""} -
Moin, ich habe das Projekt jetzt auch einige Tage an einem Gaszähler laufen. Ein Gehäuse hab ich mir ausgedruckt aber leider die Spiegelungen mit der internen LED nicht in den Griff bekommen. Also flugs einen WS2812 Strip bestellt, 2 davon abgeschnitten und links und recht oben in den Ecke eingesetzt - Spiegelung nun vernachlässigbar.
Erkennung funktioniert meistens, aber ich sehe, daß manchmal die Bilder nicht korrekt weiß sind sondern mal blau, mal grün sind, irgendwie funktioniert die Ansteuerung des WS2812 nicht immer sauber.
Hat da schon jemand Erfahrungen gemacht? -
@jomjol
Der Dank geht an Apollo77
Ich habe aber noch einen weiteren Parse-Fehler bei Neg-Read:mqtt.1 2021-12-31 14:14:53.026 warn Cannot parse "gaszaehler/main/json": {"value":,"raw":"18010.06","error":"Neg. Rate - Read: 18010.06 - Raw: 18010.06 - Pre: 18010.94 ","rate":"","timestamp":""} mqtt.1 2021-12-31 14:10:02.039 warn Cannot parse "gaszaehler/main/json": {"value":,"raw":"18010.05","error":"Neg. Rate - Read: 18010.05 - Raw: 18010.05 - Pre: 18010.94 ","rate":"","timestamp":""} mqtt.1 2021-12-31 14:00:20.035 warn Cannot parse "gaszaehler/main/json": {"value":,"raw":"18010.03","error":"Neg. Rate - Read: 18010.03 - Raw: 18010.03 - Pre: 18010.93 ","rate":"","timestamp":""}@andreas_z sagte in Wasserzähler - Version 2 - all-in-device:
@jomjol
Der Dank geht an Apollo77
Ich habe aber noch einen weiteren Parse-Fehler bei Neg-Read:mqtt.1 2021-12-31 14:14:53.026 warn Cannot parse "gaszaehler/main/json": {"value":,"raw":"18010.06","error":"Neg. Rate - Read: 18010.06 - Raw: 18010.06 - Pre: 18010.94 ","rate":"","timestamp":""} mqtt.1 2021-12-31 14:10:02.039 warn Cannot parse "gaszaehler/main/json": {"value":,"raw":"18010.05","error":"Neg. Rate - Read: 18010.05 - Raw: 18010.05 - Pre: 18010.94 ","rate":"","timestamp":""} mqtt.1 2021-12-31 14:00:20.035 warn Cannot parse "gaszaehler/main/json": {"value":,"raw":"18010.03","error":"Neg. Rate - Read: 18010.03 - Raw: 18010.03 - Pre: 18010.93 ","rate":"","timestamp":""}Danke für den Hinweis - Version 10.0.2 beseitigt auch diesen Bug.
-
-
@steffi
Das Problem mit Spiegelung konnte ich mit Hilfe der "Einleger aus 3D Drucker" in Griff bekommen.

-
@michmein
Mein Wasserzähler sieht genauso aus wie der auf deinem Bild. Ich würde deine Lösung gerne übernehmen. Hast du den Ausschnitt für den weißen Deckel "von Hand" reingeschnitten oder das stl-File des Wasseruhr-Adapters modifiziert? -
@jomjol
Ich hätte da noch einen weiteren Interessanten Fehler:mqtt.1 2022-01-02 21:36:56.202 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 19:44:17.605 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 18:41:14.522 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 18:36:23.759 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 18:31:32.678 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 18:26:41.703 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 18:21:23.913 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 18:16:32.771 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 18:11:41.903 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 18:06:50.754 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 18:01:59.758 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:57:09.044 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:52:17.754 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:47:26.849 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:42:35.905 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:37:12.179 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:32:21.008 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:27:29.951 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:22:39.043 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:17:48.147 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:12:56.814 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:08:05.759 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:03:15.105 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:58:24.006 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:53:33.176 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:43:06.194 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:38:15.114 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:33:24.050 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:28:33.292 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:23:42.145 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:18:51.085 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:14:00.206 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:09:09.302 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:04:18.218 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 15:44:54.267 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 15:40:03.161 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 15:35:12.249 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 15:30:21.306 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 15:25:30.239 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 15:20:39.243 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 14:46:57.126 info send2Server mqtt.1.awtrix.notify[awtrix/notify] mqtt.1 2022-01-02 14:46:52.131 info send2Server mqtt.1.awtrix.notify[awtrix/notify] mqtt.1 2022-01-02 14:07:25.489 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 09:48:52.413 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 08:45:49.740 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 05:48:51.180 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 05:11:43.492 info send2Server mqtt.1.awtrix.customapp[awtrix/customapp] mqtt.1 2022-01-02 05:01:43.493 info send2Server mqtt.1.awtrix.customapp[awtrix/customapp] mqtt.1 2022-01-02 03:12:04.256 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 03:07:13.467 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 02:47:49.248 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 02:42:58.285 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string"Mal darfs "number" sein und dann wieder "string". Kein Reboot in dem Zeitraum laut Log
-
@jomjol
Ich hätte da noch einen weiteren Interessanten Fehler:mqtt.1 2022-01-02 21:36:56.202 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 19:44:17.605 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 18:41:14.522 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 18:36:23.759 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 18:31:32.678 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 18:26:41.703 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 18:21:23.913 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 18:16:32.771 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 18:11:41.903 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 18:06:50.754 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 18:01:59.758 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:57:09.044 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:52:17.754 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:47:26.849 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:42:35.905 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:37:12.179 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:32:21.008 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:27:29.951 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:22:39.043 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:17:48.147 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:12:56.814 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:08:05.759 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 17:03:15.105 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:58:24.006 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:53:33.176 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:43:06.194 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:38:15.114 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:33:24.050 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:28:33.292 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:23:42.145 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:18:51.085 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:14:00.206 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:09:09.302 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 16:04:18.218 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 15:44:54.267 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 15:40:03.161 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 15:35:12.249 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 15:30:21.306 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 15:25:30.239 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 15:20:39.243 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "string" but received type "number" mqtt.1 2022-01-02 14:46:57.126 info send2Server mqtt.1.awtrix.notify[awtrix/notify] mqtt.1 2022-01-02 14:46:52.131 info send2Server mqtt.1.awtrix.notify[awtrix/notify] mqtt.1 2022-01-02 14:07:25.489 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 09:48:52.413 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 08:45:49.740 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 05:48:51.180 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 05:11:43.492 info send2Server mqtt.1.awtrix.customapp[awtrix/customapp] mqtt.1 2022-01-02 05:01:43.493 info send2Server mqtt.1.awtrix.customapp[awtrix/customapp] mqtt.1 2022-01-02 03:12:04.256 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 03:07:13.467 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 02:47:49.248 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string" mqtt.1 2022-01-02 02:42:58.285 info State value to set for "mqtt.1.gaszaehler.main.raw" has to be type "number" but received type "string"Mal darfs "number" sein und dann wieder "string". Kein Reboot in dem Zeitraum laut Log
@alexho sagte in Wasserzähler - Version 2 - all-in-device:
@steffi
Das Problem mit Spiegelung konnte ich mit Hilfe der "Einleger aus 3D Drucker" in Griff bekommen.

Das Problem kommt daher, dass seit Version 10 bei einem fehlerhaften Wert kein Value übertragen wird, sondern ein leerer String: "". Wenn jemand eine bessere Idee hat, bitte gerne melden. Das scheint bei mehrerer zu Verwirrung zu führen.
-
@jomjol
Hallo und gesundes neues Jahr.
Ich hab zum Jahreswechsel meinen Gas und Wasserzähler von 6.4 auf 10.2 upgedatet.
Wasser läuft soweit prima aber Gas macht mir die 6 und 9 Probleme.

Du hast mir damals die dig0840s1q.tflite dafür gebaut. Die hab ich jetzt auch probiert aber er erkennt mir die 9 an der dritten Stelle immer wieder mal als 0 obwohl die sich ja gar nicht ändert. An der 5 und 6 Stelle erkennt er die 6 und 9 bisher ganz gut. Anbei die Ziffern 5, 6 und 9.
9_dig3_20220103-105110.zip
Hab jetzt auch schon mit der Größe gespielt aber nach mehreren richtigen kommt immer wieder die 0.
Was genau macht eigentlich der Eintrag "ModelInputSize = 20 32" kann man da ev. was tun?
Die Größe der Zahlen beim Konfigurieren ist dx 60 dy 107
Anbei auch meine Config.ini config.ini
Freu mich schon auf deine Antwort
LG Horst -
@jomjol Erstmal, geiles Projekt!
@all
Ich hätte zwei Fragen zu dem Projekt, neben der normalen Wasseruhr würde ich gerne meine Warmwasserzähler tracken.-
Ich hab schon gesehen, dass nicht unbedingt 4 Analogzeiger zum errechnen des Zählerstandes notwendig sind, Frage ob der Wasserzähler im Bild funktioniert, ich gehe da aktuell davon aus.
-
Wie man ebenfalls auf dem Bild erkennt hab ich im Heizkreisverteiler nur 7-8 cm Platz, die Linse wäre dann nur ca. 5cm von der Uhr weg. Krieg ich das scharf, reicht der Winkel vom Objektiv und ist die Bilderkennung darauf angewiesen die volle Rundung der Uhr zu erkennen?

-
-
@steffi
Das Problem mit Spiegelung konnte ich mit Hilfe der "Einleger aus 3D Drucker" in Griff bekommen.

-
@jomjol Erstmal, geiles Projekt!
@all
Ich hätte zwei Fragen zu dem Projekt, neben der normalen Wasseruhr würde ich gerne meine Warmwasserzähler tracken.-
Ich hab schon gesehen, dass nicht unbedingt 4 Analogzeiger zum errechnen des Zählerstandes notwendig sind, Frage ob der Wasserzähler im Bild funktioniert, ich gehe da aktuell davon aus.
-
Wie man ebenfalls auf dem Bild erkennt hab ich im Heizkreisverteiler nur 7-8 cm Platz, die Linse wäre dann nur ca. 5cm von der Uhr weg. Krieg ich das scharf, reicht der Winkel vom Objektiv und ist die Bilderkennung darauf angewiesen die volle Rundung der Uhr zu erkennen?

@fanatikz said in Wasserzähler - Version 2 - all-in-device:
Ich hab schon gesehen, dass nicht unbedingt 4 Analogzeiger zum errechnen des Zählerstandes notwendig sind, Frage ob der Wasserzähler im Bild funktioniert, ich gehe da aktuell davon aus.
Ja, der geht. Du musst den Parameter DecimalShift = -3 setzen.
Wie man ebenfalls auf dem Bild erkennt hab ich im Heizkreisverteiler nur 7-8 cm Platz, die Linse wäre dann nur ca. 5cm von der Uhr weg. Krieg ich das scharf, reicht der Winkel vom Objektiv und ist die Bilderkennung darauf angewiesen die volle Rundung der Uhr zu erkennen?
Die volle Rundung ist nicht nötig. Wenn Du das Bild nicht scharf bekommst oder die kurze Entfernung zu starke Verzerrung erzeugt, versuch's mit einem Spiegel.
-
-
@fanatikz said in Wasserzähler - Version 2 - all-in-device:
Ich hab schon gesehen, dass nicht unbedingt 4 Analogzeiger zum errechnen des Zählerstandes notwendig sind, Frage ob der Wasserzähler im Bild funktioniert, ich gehe da aktuell davon aus.
Ja, der geht. Du musst den Parameter DecimalShift = -3 setzen.
Wie man ebenfalls auf dem Bild erkennt hab ich im Heizkreisverteiler nur 7-8 cm Platz, die Linse wäre dann nur ca. 5cm von der Uhr weg. Krieg ich das scharf, reicht der Winkel vom Objektiv und ist die Bilderkennung darauf angewiesen die volle Rundung der Uhr zu erkennen?
Die volle Rundung ist nicht nötig. Wenn Du das Bild nicht scharf bekommst oder die kurze Entfernung zu starke Verzerrung erzeugt, versuch's mit einem Spiegel.
@rupert-s sagte in Wasserzähler - Version 2 - all-in-device:
@fanatikz said in Wasserzähler - Version 2 - all-in-device:
Ich hab schon gesehen, dass nicht unbedingt 4 Analogzeiger zum errechnen des Zählerstandes notwendig sind, Frage ob der Wasserzähler im Bild funktioniert, ich gehe da aktuell davon aus.
Ja, der geht. Du musst den Parameter DecimalShift = -3 setzen.
Bist du dir hier sicher?
Es geht ja bei DecimalShift und die digitalen Ziffern?
Bei der Beschreibung zu DecimalShif steht: Shift the digit separator within the digital digits (positiv and negativ)Ich habe bei mir in den analogen ROI's einfach nur 3 angelegt und somit auch nur 3 Kreise um die analogen Zeiger gemacht. Bisher klappt das gut.
Bei DecimalShift steht bei mir 0
-
@wusa Normalerweise müsste er dort ein "N" anzeigen, da es zwischen beiden Ziffern liegt. Dann kann der Algo das kompensieren. Hier hat er dennoch eine Ziffer erkannt. Das wird mit einer der nächsten Versionen besser, dort können dann auch Zwischenwerte (mit Nachkomma) erkannt werden.
Erstmal vielen Dank für deine tolle Arbeit. Schätze ich wirklich sehr!
Ich hätte aber nochmal eine Frage zu den Werten.
Habe die neuste Version geflasht über das OTA Update:

Und hier gleich das Bild mit den Zählerständen.

Die analogen Zeiger werden richtig ausgelesen (der letzte Zeiger würde zwar schon auf der 4 stehen, aber das ist nicht so schlimm), allerdings, wird oben schon 310 erkannt. Ist zwar grundsätzlich von der Erkennung richtig, aber dennoch Logik mäßig falsch. Es sind nämlich 309.953
Heißt ich habe noch knapp 50 Liter bis wirklich 310 richtig wäre. Ich weiß das ist jetzt ein blödes Beispiel, aber das passiert auch, wenn es noch ungefähr 200 Liter sind.Kann hier von meiner Seite aus in der Config was verbessert werden?
Oder ist hier die Programmierlogik gefragt?Danke
-
@jomjol
Hallo und gesundes neues Jahr.
Ich hab zum Jahreswechsel meinen Gas und Wasserzähler von 6.4 auf 10.2 upgedatet.
Wasser läuft soweit prima aber Gas macht mir die 6 und 9 Probleme.

Du hast mir damals die dig0840s1q.tflite dafür gebaut. Die hab ich jetzt auch probiert aber er erkennt mir die 9 an der dritten Stelle immer wieder mal als 0 obwohl die sich ja gar nicht ändert. An der 5 und 6 Stelle erkennt er die 6 und 9 bisher ganz gut. Anbei die Ziffern 5, 6 und 9.
9_dig3_20220103-105110.zip
Hab jetzt auch schon mit der Größe gespielt aber nach mehreren richtigen kommt immer wieder die 0.
Was genau macht eigentlich der Eintrag "ModelInputSize = 20 32" kann man da ev. was tun?
Die Größe der Zahlen beim Konfigurieren ist dx 60 dy 107
Anbei auch meine Config.ini config.ini
Freu mich schon auf deine Antwort
LG Horst -
@fanatikz said in Wasserzähler - Version 2 - all-in-device:
Ich hab schon gesehen, dass nicht unbedingt 4 Analogzeiger zum errechnen des Zählerstandes notwendig sind, Frage ob der Wasserzähler im Bild funktioniert, ich gehe da aktuell davon aus.
Ja, der geht. Du musst den Parameter DecimalShift = -3 setzen.
Wie man ebenfalls auf dem Bild erkennt hab ich im Heizkreisverteiler nur 7-8 cm Platz, die Linse wäre dann nur ca. 5cm von der Uhr weg. Krieg ich das scharf, reicht der Winkel vom Objektiv und ist die Bilderkennung darauf angewiesen die volle Rundung der Uhr zu erkennen?
Die volle Rundung ist nicht nötig. Wenn Du das Bild nicht scharf bekommst oder die kurze Entfernung zu starke Verzerrung erzeugt, versuch's mit einem Spiegel.
-
@rupert-s sagte in Wasserzähler - Version 2 - all-in-device:
@fanatikz said in Wasserzähler - Version 2 - all-in-device:
Ich hab schon gesehen, dass nicht unbedingt 4 Analogzeiger zum errechnen des Zählerstandes notwendig sind, Frage ob der Wasserzähler im Bild funktioniert, ich gehe da aktuell davon aus.
Ja, der geht. Du musst den Parameter DecimalShift = -3 setzen.
Bist du dir hier sicher?
Es geht ja bei DecimalShift und die digitalen Ziffern?
Bei der Beschreibung zu DecimalShif steht: Shift the digit separator within the digital digits (positiv and negativ)Ich habe bei mir in den analogen ROI's einfach nur 3 angelegt und somit auch nur 3 Kreise um die analogen Zeiger gemacht. Bisher klappt das gut.
Bei DecimalShift steht bei mir 0
@wusa sagte in Wasserzähler - Version 2 - all-in-device:
@rupert-s sagte in Wasserzähler - Version 2 - all-in-device:
@fanatikz said in Wasserzähler - Version 2 - all-in-device:
Ich hab schon gesehen, dass nicht unbedingt 4 Analogzeiger zum errechnen des Zählerstandes notwendig sind, Frage ob der Wasserzähler im Bild funktioniert, ich gehe da aktuell davon aus.
Ja, der geht. Du musst den Parameter DecimalShift = -3 setzen.
Bist du dir hier sicher?
Es geht ja bei DecimalShift und die digitalen Ziffern?
Bei der Beschreibung zu DecimalShif steht: Shift the digit separator within the digital digits (positiv and negativ)Ich habe bei mir in den analogen ROI's einfach nur 3 angelegt und somit auch nur 3 Kreise um die analogen Zeiger gemacht. Bisher klappt das gut.
Bei DecimalShift steht bei mir 0
Mit DecimalShift ist das so:
Das Komma liegt immer zwischen den analogen und digitalen Ziffern. Relativ dazu kann es über den Parameter verschoben werden. Wenn es keine analogen Zeiger gibt, dann ist die Zahl erstmal ohne Ziffern und kann dann über DecimalShift entsprechend verschoben werden. -
Erstmal vielen Dank für deine tolle Arbeit. Schätze ich wirklich sehr!
Ich hätte aber nochmal eine Frage zu den Werten.
Habe die neuste Version geflasht über das OTA Update:

Und hier gleich das Bild mit den Zählerständen.

Die analogen Zeiger werden richtig ausgelesen (der letzte Zeiger würde zwar schon auf der 4 stehen, aber das ist nicht so schlimm), allerdings, wird oben schon 310 erkannt. Ist zwar grundsätzlich von der Erkennung richtig, aber dennoch Logik mäßig falsch. Es sind nämlich 309.953
Heißt ich habe noch knapp 50 Liter bis wirklich 310 richtig wäre. Ich weiß das ist jetzt ein blödes Beispiel, aber das passiert auch, wenn es noch ungefähr 200 Liter sind.Kann hier von meiner Seite aus in der Config was verbessert werden?
Oder ist hier die Programmierlogik gefragt?Danke
@wusa sagte in Wasserzähler - Version 2 - all-in-device:
Erstmal vielen Dank für deine tolle Arbeit. Schätze ich wirklich sehr!
Ich hätte aber nochmal eine Frage zu den Werten.
Habe die neuste Version geflasht über das OTA Update:

Und hier gleich das Bild mit den Zählerständen.

Die analogen Zeiger werden richtig ausgelesen (der letzte Zeiger würde zwar schon auf der 4 stehen, aber das ist nicht so schlimm), allerdings, wird oben schon 310 erkannt. Ist zwar grundsätzlich von der Erkennung richtig, aber dennoch Logik mäßig falsch. Es sind nämlich 309.953
Heißt ich habe noch knapp 50 Liter bis wirklich 310 richtig wäre. Ich weiß das ist jetzt ein blödes Beispiel, aber das passiert auch, wenn es noch ungefähr 200 Liter sind.Kann hier von meiner Seite aus in der Config was verbessert werden?
Oder ist hier die Programmierlogik gefragt?Danke
Dafür gibt es im Expertenmodus den Parameter:

Der übernimmt genau diese Konistenzprüfung. Nachdem du ihn aktiviert hast, kann du über SetPrevalue den richtigen Wert setzen. -
@rupert-s sagte in Wasserzähler - Version 2 - all-in-device:
@fanatikz said in Wasserzähler - Version 2 - all-in-device:
Ich hab schon gesehen, dass nicht unbedingt 4 Analogzeiger zum errechnen des Zählerstandes notwendig sind, Frage ob der Wasserzähler im Bild funktioniert, ich gehe da aktuell davon aus.
Ja, der geht. Du musst den Parameter DecimalShift = -3 setzen.
Bist du dir hier sicher?
Es geht ja bei DecimalShift und die digitalen Ziffern?
Bei der Beschreibung zu DecimalShif steht: Shift the digit separator within the digital digits (positiv and negativ)Ich habe bei mir in den analogen ROI's einfach nur 3 angelegt und somit auch nur 3 Kreise um die analogen Zeiger gemacht. Bisher klappt das gut.
Bei DecimalShift steht bei mir 0




