Skip to content
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

Zähler zu früh #3028

Open
MBecke36 opened this issue Apr 10, 2024 · 13 comments
Open

Zähler zu früh #3028

MBecke36 opened this issue Apr 10, 2024 · 13 comments

Comments

@MBecke36
Copy link

MBecke36 commented Apr 10, 2024

Issue

Mein Zähler kommt viel zu früh.
Der Sprung ist 391,9980 auf 392,9992 obwohl ich nur eine Tasse Wasser genommen habe.

Was kann ich da machen?

IMG_20240409_100016_NR

[TakeImage]
;RawImagesLocation = /log/source
WaitBeforeTakingPicture = 10
;RawImagesRetention = 15
Demo = false
Brightness = -2
Contrast = 1
Saturation = -2
Sharpness = 2
LEDIntensity = 10
ImageQuality = 15
ImageSize = VGA
Zoom = false
ZoomMode = 0
ZoomOffsetX = 0
ZoomOffsetY = 0
Grayscale = false
Negative = false
Aec2 = true
AutoExposureLevel = 0
FixedExposure = false

[Alignment]
InitialRotate = -108.1
InitialMirror = false
SearchFieldX = 20
SearchFieldY = 20
AlignmentAlgo = default
FlipImageSize = true
/config/ref0.jpg 328 177
/config/ref1.jpg 11 275

[Digits]
Model = /config/dig-class100-0168_s2_q.tflite
CNNGoodThreshold = 0.5
;ROIImagesLocation = /log/digit
;ROIImagesRetention = 3
main.dig1 188 177 23 42 0
main.dig2 216 177 23 42 false
main.dig3 244 177 23 42 false
main.dig4 272 177 23 42 0
main.dig5 300 177 23 42 0

[Analog]
Model = /config/ana-class100_0171_s1_q.tflite
;ROIImagesLocation = /log/analog
;ROIImagesRetention = 3
main.ana1 309 275 76 76 false
main.ana2 258 352 76 76 false
main.ana3 167 360 76 76 false
main.ana4 103 293 76 76 false

[PostProcessing]
main.DecimalShift = 0
main.AnalogDigitalTransitionStart = 6
PreValueUse = true
PreValueAgeStartup = 720
main.AllowNegativeRates = false
main.MaxRateValue = 0.05
main.MaxRateType = AbsoluteChange
main.ExtendedResolution = true
main.IgnoreLeadingNaN = true
ErrorMessage = true
CheckDigitIncreaseConsistency = false

[MQTT]
Uri = mqtt://192.168.1.41:1883
MainTopic = watermeter
ClientID = watermeter
user = XXXXX
password = XXXXX
RetainMessages = false
HomeassistantDiscovery = false
;MeterType = other
;CACert = /config/certs/RootCA.pem
;ClientCert = /config/certs/client.pem.crt
;ClientKey = /config/certs/client.pem.key

;[InfluxDB]
;Uri = undefined
;Database = undefined
;user = undefined
;password = undefined
;main.Measurement = undefined
;main.Field =

;[InfluxDBv2]
;Uri = undefined
;Bucket = undefined
;Org = undefined
;Token = undefined
;main.Measurement = undefined
;main.Field = undefined

;[GPIO]
;IO0 = input disabled 10 false false
;IO1 = input disabled 10 false false
;IO3 = input disabled 10 false false
;IO4 = built-in-led disabled 10 false false
;IO12 = input-pullup disabled 10 false false
;IO13 = input-pullup disabled 10 false false
LEDType = WS2812
LEDNumbers = 2
LEDColor = 150 150 150

[AutoTimer]
AutoStart = true
Interval = 10

[DataLogging]
DataLogActive = true
DataFilesRetention = 3

[Debug]
LogLevel = 1
LogfilesRetention = 3

[System]
TimeZone = CET-1CEST,M3.5.0,M10.5.0/3
;TimeServer = pool.ntp.org
;Hostname = undefined
;RSSIThreshold = -75
CPUFrequency = 240
SetupMode = false

@SybexX
Copy link
Collaborator

SybexX commented Apr 10, 2024

Wie sind den deine Einstellungen? lade am besten deine config.ini hier hoch.
So auf die schnelle würde ich sagen das dein MaxRateValue zu hoch eingestellt ist.
https://jomjol.github.io/AI-on-the-edge-device-docs/Correction%20Algorithm/#maxratevalue-and-maxratetype

@MBecke36
Copy link
Author

Vielen Dank.
Hab die Config.ini oben angehängt.

@SybexX
Copy link
Collaborator

SybexX commented Apr 10, 2024

hast du den MaxRateValue Wert in dieser config.ini schon geändert oder war er vorher auch so?
Gibt es einen Grund wieso der Wert AnalogDigitalTransitionStart = 6 ist, den wenn dein Zähler mit der letzten DigitalStelle "normal" ist (#3027) , dann würde ich den Wert auf mindestens 9 stellen.
https://jomjol.github.io/AI-on-the-edge-device-docs/Watermeter-specific-analog---digital-transition/

@MBecke36
Copy link
Author

MBecke36 commented Apr 10, 2024

MaxRateValue hab ich heute erst so Gesetz, zum testen.
AnalogDigitalTransitionStart mit 9 geht gar nicht, 30 mal am Tag falsche Messung. Bei 6 nur noch 2-3 mal

@SybexX
Copy link
Collaborator

SybexX commented Apr 10, 2024

dieser Beiträge könnten dir eventuel auch was bringen: #3025 #2926
Bei MaxRateValue = 0.05 wirst du jedoch einen Fehler (Rate too high - Read:...) bekommen, der erst wieder verschwindet wenn der Zähler den falsch gelesenen Wert übersteigt^^

@MBecke36
Copy link
Author

Die MaxRateValue hab ich deaktiviert.
Die Änderung von #3025 habe ich gemacht und werde testen.

@SybexX
Copy link
Collaborator

SybexX commented Apr 10, 2024

probire mal die Firmware aus dem Beitrag #2926 mit aktiviertem MaxRateValue

@MBecke36
Copy link
Author

welche Version ist das?
ich Habe rollend (Commit: d6a1838+) drauf

@SybexX
Copy link
Collaborator

SybexX commented Apr 10, 2024

das aktuelle rolling mit zig Verbesserungen/Änderungen

@MBecke36
Copy link
Author

Versuchen Sie mal die Firmware aus dem Beitrag #2926 mit aktiviertem MaxRateValue

Das geht leider nicht kommt immer eine Viruswarnung.

@SybexX
Copy link
Collaborator

SybexX commented Apr 10, 2024

komisch, diese Dateien wurde ja von github.com Kompeliert und gezipt, daher dürfte da keine Viruswarnung kommen^^

@Slider0007
Copy link
Collaborator

@MBecke36:
Ich würde empfehlen, den Parameter AnalogDigitalTransitionStart wie folgt zu ermitteln:
--> Höchstwertigen Analogzeiger ablesen, wenn das niederwertigste Digit von x.7 auf x.8 wechselt und davon von ca. 0.5 abziehen. Welcher Wert ergibt sich?

Ich vermute, dein niederwertigstes Digit wechselt zu früh / zu schnell auf x.0. Ich würde versuchen, dies bewusst etwas hängend auszuführen, damit der Analogzeiger vorher über 0 kommt. Schiebe deshalb das ROI des niederwertigsten Digit minimal hoch.

@Duke194
Copy link

Duke194 commented Jul 3, 2024

Hallo Ich habe ein ähnliches Problem und hab mir ein paar Gedanken dazu gemacht. Ihr dürft mich gerne korrigieren wenn ich hier einen Gedankenfehler gemacht habe, aber müsste man nicht die Digitalisierten Werte immer mit floor abrunden?

Ich bin der Meinung, dass die Erkennung im Beispiel alles richtig erkennt, die Zahl jedoch sollte meiner Meinung nach 713.4284
sein, was sie auch wäre, wenn die Zahlen abgerundet werden würden. Das macht denke ich insofern Sinn, dass ja die Zahl dann "abgeschlossen" ist wenn sie mittig in die ROI gedreht ist. Teil mal gerne eure Gedanken dazu. Danke im voraus :)

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants