AI-on-the-edge-device
AI-on-the-edge-device copied to clipboard
Kombination von "too early transition" und gelegentlichen Reboots fuehrt zu "negative rate error".
The Problem
Hallo - hier ist ein Wasserzaehler verbaut, der sehr schnell umspringt.
Ich habe schon laenger herumoptimiert und die besten Ergebnisse bekomme ich mit: "Digit ROI Processing model" = "dig-class11_1500_s2.tflite" "Analog/Digital Transition Start" = "6" "Allow Negative Rates" = "No" "Maximum Rate Value" = "0,05" "Maximum Rate Type" = RateChange"
Damit habe ich die "too early transition" einigermassen im Griff - ab digit 5 (manchmal auch schon 4), aber ab und zu bootet sich der ESP. Ist der Zaehlerstand dann nicht im Bereich der "early transition" (also digits 0,1,2,3) --> wird "NaN" erkannt und es funktioniert dann alles. Ist der Zaehlerstand dann im Bereich der "early transition" (also digits 4,5,6,7,8,9) --> wird nicht "NaN", sondern die schon umgesprungene und damit einwandfrei lesbare Ziffer erkannt. --> wegen "Maximum Rate Value" = "0,05" wird das als ein zu hoher Wert eingestuft ("rate too high") und per MQTT nicht gemeldet. --> erst wenn nach dem Nulldurchgang der Ziffer manuell rebootet oder der "previous value" entsprechend gesetzt wird, werden wieder Werte per MQTT gemeldet.
Meine Vermutung ist, dass der "previous value" den Reboot nicht ueberlebt und somit die zu frueh umgesprungene Digit als gueltig angesehen wird.
Der "error negative rate" auf dem Screenshot kommt von der bescheuerten analogen vierten Dezimalstelle und stoert nicht weiter. Ich sollte den aber wohl komplett rausnehmen.
Version
Release: v15.4.0 (Commit: 74d4f20)
Logfile
Gelegentliche Eintraege nach einem Reboot - kommt typisch 1-3x nacheinander, danach funktioniert alles fuer einige Tage
[0d00h00m18s] 2024-01-03T12:37:35 <WRN> [MAIN] Initialization completed with non-critical errors!
[0d00h00m32s] 2024-01-03T12:37:50 <ERR> [CAM] EnableAutoExposure: Capture Failed. Check camera module and/or proper electrical connection
[0d00h00m33s] 2024-01-03T12:37:51 <INF> [LOGFILE] Set log level to WARNING
[0d00h00m43s] 2024-01-03T12:38:01 <ERR> [CAM] is not working anymore (CaptureToBasisImage) - most probably caused by a hardware problem (instablility, ...). System will reboot.
[0d00h00m43s] 2024-01-03T12:38:01 <WRN> [OTA] Reboot in 5sec
Hier sieht man die Fehlerkennung - da hatte ich "previous value" manuell gesetzt:
[0d00h00m14s] 2024-01-03T12:39:58 <INF> [MAIN] Initialization completed successfully
[0d00h00m21s] 2024-01-03T12:40:05 <INF> [LOGFILE] Set log level to WARNING
--> [0d00h00m42s] 2024-01-03T12:40:26 <ERR> [POSTPROC] default: Raw: 08N9.0478, Value: , Status: Neg. Rate - Read: - Raw: 08N9.0478 - Pre: 849.9985
--> [0d01h18m17s] 2024-01-03T13:58:01 <ERR> [POSTPROC] default: Raw: 08N9.0521, Value: , Status: Neg. Rate - Read: - Raw: 08N9.0521 - Pre: 849.0522
[0d01h23m08s] 2024-01-03T14:02:52 <ERR> [POSTPROC] default: Raw: 08N9.0521, Value: , Status: Neg. Rate - Read: - Raw: 08N9.0521 - Pre: 849.0522
Expected Behavior
No response
Screenshots
Additional Context
No response
Ich hab wahrscheinlich grad selber die Loesung hier gefunden: Der "previous value" ueberlebt bei mir dann wahrscheinlich doch - wie er soll - die Reboots, aber ab und zu dauern die zulange und dann wird er verworfen. In der "expert config" gibt es den Parameter "prevalueagestartup" - der stand auf dem default Wert "720". Ich hab den jetzt mal hochgesetzt.
Problem "negative rate": Bis jetzt noch kein Reboot - Uptime: 7d 00h 21m 29s (Round: 2083) - und somit noch keine Bestaetigung. Problem "too early transition": Das ist leider immer noch offen. Obwohl das Device durchlaeuft, laesst es sich von dem Umspringen der Digit verwirren. Statt einen NaN Wert einzusetzen, meint er die Digit richtig erkannt zu haben.