NEWS
Wasserzähler - Version 2 - all-in-device
-
So, wie auf Github versprochen, hier nun weitere Forschung.
Ich wollte nur mal kurz eine Meinung einholen.
Es gibt bei mir kaum ein Ergebnis beim einlesen.
Die Reflektionen auf meinem Wasserzähler sind Hölle.
Ich hänge mal ein akutelles Foto an, von diesem wird selten ein Änderung erkannt.
Nun meine Frage: Sind das zu starke Reflektionen auf den Zahlen?
Ich habe schon extra den Analogen Drehzeiger weggelassen, da dort keine Ziffern erkennbar waren.Ich hatte schon versucht mit schwarzen Textilstreifen etwas den Blitz der ESP32 LED zu zähmen, aber weißes Milimeterpapier scheint besser zu funktionieren.
-
Sieht nicht so schlecht aus bei der Erkennung, aber ich bekomme einfach keinen Wert geliefert.
Verwende seit gestern 8.0.5 durch OTA, vorher frisch geflasht mit 8.0.4 falls das was ausmachen sollte.Pre-Value habe ich eben wieder auf 635.165 korrigiert. Damit sollte es eigentlich klappen.
-
@developnoob sagte in Wasserzähler - Version 2 - all-in-device:
Sieht nicht so schlecht aus bei der Erkennung, aber ich bekomme einfach keinen Wert geliefert.
Verwende seit gestern 8.0.5 durch OTA, vorher frisch geflasht mit 8.0.4 falls das was ausmachen sollte.Pre-Value habe ich eben wieder auf 635.165 korrigiert. Damit sollte es eigentlich klappen.
Da deine Ziffern unten an der Kante hängen, werden sie als Not-A-Number erkannt. Eines der Kriterium für korrekt erkannte Ziffern ist, dass sie nicht den unteren oder oberen Rand berühren. Ich fürchte, da ist dein Zähler nur mit erheblichem Aufwand (eigens dafür trainiertes Netz) auslesbar.
-
@jomjol
Also meinst du das auch ein umpositionieren oder etwas näher mit der Kamera ran nicht
wirklich helfen wird?Aktuell habe ich von deiner Vorlage den 5cm Ring plus einen 1cm Ring in Verwendung.
Bei dem 2cm und 5cm Ring waren die Zahlen schwer zu erkennen.Werde vielleicht einfach mal den 5cm Ring nehmen, schlechter als jetzt kann es ja nicht mehr werden .
Gruß developnoob.
-
@developnoob Leider nein, bei deinem Zähler sind die Zahlen nicht vollständig im Bild. Wenn das nicht von der Kamera kommt, sondern so auch darauf aussieht, dann sieht es eher schlecht aus
-
@jomjol
Also mit 5cm Abstand und etwas gedrehter Kamera scheint der Algo ab und an Werte zu erkennen, soweit so gut!Es hat aber den anschein, dass die Drehung nicht immer funktioniert.
Zumindest in der letzten Stunde haben die Bilder selten das "Alignment" hinbekommen.
Habe schon die Bilder für das erkennen mehrfach "ausgetauscht", andere markante Punkte genommen und auch mal den Erkennungsmodus auf "HighAccurity" gesetzt.Was mir aufgefallen ist:
Wenn ich die Alignment Marker ändere scheinen diese0 zumindest auf den angezeigten Bildern bei mir, erst nach einem Reboot eingezeichnet zu werden.Ich sammle mal ein paar Bilder und werde die dann heute Abend hochladen, vielleicht mache ich auch was Grundlegendes falsch. Ist ja nicht auszuschließen
-
@developnoob
Also wenn ich den Marker verändere bekomme ich folgendes in den Logfiles:2021-08-04T17:04:41: download_get_handler 2021-08-04T17:04:45: File is locked: /sdcard/img_tmp/ref_zw.jpg - wait for 1 2021-08-04T17:04:46: File is locked: /sdcard/img_tmp/ref_zw_org.jpg - wait for 1 2021-08-04T17:04:48: download_get_handler
Dann erscheinen die geänderten Marker auch nicht in den neuen Recognition Bilder.
Aber nach einem Neustart sind in den Recognition die geänderten Marker wirksam.Nebenbei, nun geht die Erkennung auch bei fast jedem Versuch.
Hier hat es mal nicht so gut geklappt. Aber da ich in den MQTT Nachrichten nachvollziehen kann das die Zahlen in etwas so hoch gehen wie ich es durch den Verbrauch erwartet hätte geht es nun.Soweit so gut. Obwohl die Zahlen immer noch am unteren Rand sind, tauchen Sie ja auch mal im richtigen Spot zur Erkennung auf.
-
@jomjol Hallo. Heute haben sie meinen Wasserzähler gewechselt und deshalb habe ich gleich aufgerüstet. Nach dem Upgrade wird mqtt jedoch nicht mehr gesendet, aber in den Einstellungen scheint alles richtig eingestellt zu sein. Kannst du bitte etwas aus dem Log lesen, was passiert ist? Danke.
2021-08-17T19:57:11: =============================================================================================
2021-08-17T19:57:11: =================================== Main Started ============================================
2021-08-17T19:57:11: =============================================================================================
2021-08-17T19:57:15: Time zone set to CET-1CEST
2021-08-17T19:57:15: task_autodoFlow - next round - Round #1
2021-08-17T19:57:15: FlowControll.doFlow - ClassFlowMakeImage
2021-08-17T19:57:25: FlowControll.doFlow - ClassFlowAlignment
2021-08-17T19:57:46: FlowControll.doFlow - ClassFlowDigit
2021-08-17T19:58:09: download_get_handler
2021-08-17T19:58:10: download_get_handler
2021-08-17T19:58:13: FlowControll.doFlow - ClassFlowAnalog
2021-08-17T19:58:28: FlowControll.doFlow - ClassFlowPostProcessing
2021-08-17T19:58:28: FlowControll.doFlow - ClassFlowMQTT
2021-08-17T19:58:28: task_autodoFlow - round done
2021-08-17T19:58:28: CPU Temperature: 53.3
2021-08-17T20:01:51: download_get_handler
2021-08-17T20:01:53: download_get_handler
2021-08-17T20:02:06: task_autodoFlow - next round - Round #2
2021-08-17T20:02:06: FlowControll.doFlow - ClassFlowMakeImage
2021-08-17T20:02:17: FlowControll.doFlow - ClassFlowAlignment
2021-08-17T20:02:36: FlowControll.doFlow - ClassFlowDigit
2021-08-17T20:03:02: FlowControll.doFlow - ClassFlowAnalog
2021-08-17T20:03:17: FlowControll.doFlow - ClassFlowPostProcessing
2021-08-17T20:03:17: FlowControll.doFlow - ClassFlowMQTT
2021-08-17T20:03:17: task_autodoFlow - round done
2021-08-17T20:03:17: CPU Temperature: 53.3
2021-08-17T20:04:28: download_get_handler
2021-08-17T20:06:57: task_autodoFlow - next round - Round #3
2021-08-17T20:06:57: FlowControll.doFlow - ClassFlowMakeImage
2021-08-17T20:07:07: FlowControll.doFlow - ClassFlowAlignment
2021-08-17T20:07:26: FlowControll.doFlow - ClassFlowDigit
2021-08-17T20:07:52: FlowControll.doFlow - ClassFlowAnalog
2021-08-17T20:08:07: FlowControll.doFlow - ClassFlowPostProcessing
2021-08-17T20:08:07: FlowControll.doFlow - ClassFlowMQTT
2021-08-17T20:08:07: task_autodoFlow - round done
2021-08-17T20:08:07: CPU Temperature: 53.3
2021-08-17T20:10:45: download_get_handler
2021-08-17T20:10:47: download_get_handler -
Vor dem Upgrade sah das Protokoll so aus.
2021-08-17T13:44:53: task_autodoFlow - next round - Round #2590
2021-08-17T13:44:53: FlowControll.doFlow - ClassFlowMakeImage
2021-08-17T13:45:06: FlowControll.doFlow - ClassFlowAlignment
2021-08-17T13:45:26: FlowControll.doFlow - ClassFlowDigit
2021-08-17T13:45:36: FlowControll.doFlow - ClassFlowAnalog
2021-08-17T13:45:41: FlowControll.doFlow - ClassFlowPostProcessing
2021-08-17T13:45:41: FlowControll.doFlow - ClassFlowMQTT
2021-08-17T13:45:41: sent publish successful in MQTTPublish, msg_id=15845, watermeter/readout/connection, connected
2021-08-17T13:45:41: sent publish successful in MQTTPublish, msg_id=8925, watermeter/readout/uptime, 753485
2021-08-17T13:45:41: sent publish successful in MQTTPublish, msg_id=53499, watermeter/readout/freeMem, 2991192
2021-08-17T13:45:41: sent publish successful in MQTTPublish, msg_id=34620, watermeter/readout/value, 715.3917
2021-08-17T13:45:41: sent publish successful in MQTTPublish, msg_id=4158, watermeter/readout/error, no error
2021-08-17T13:45:41: sent publish successful in MQTTPublish, msg_id=665, watermeter/readout/rate, 0.000164
2021-08-17T13:45:41: sent publish successful in MQTTPublish, msg_id=24780, watermeter/readout/timestamp, 2021-08-17T13:45:02
2021-08-17T13:45:41: sent publish successful in MQTTPublish, msg_id=50126, watermeter/readout/json, {"value":715.3917,"error":"no error","rate":0.000164,"timestamp":"2021-08-17T13:45:02"}
2021-08-17T13:45:41: task_autodoFlow - round done -
@jezinka Update von welcher Version hast du den gemacht? Schau mal in dein MQTT broker. Es gab mal eine Änderung in der Datenstruktur. Vielleicht heißen deine Einträge jetzt einfach anders.
-
@jomjol 8.0.5 oder 7.1.2 aber letztes mal musste ich nur mqtt ändern. Es ist weniger als ein Monat her.
-
Ansonsten dachte ich, dass mqtt auch bei einer anderen Datenstruktur senden und im Protokoll sehen sollte, aber das Protokoll auf mqtt ist leer.
das ist die mqtt-Einstellung
[MQTT]
Uri = mqtt: //10.10.20.11: 1883
; Hauptthema =
ClientID = Wasser
user = mqttuser
Passwort = mqttpassword -
@jezinka
Hauptthema
ist ungewöhnlich. Meine MQTT sieht wie folgt aus:[MQTT] Uri = mqtt://aaa.bbb.ccc.ddd:1883 MainTopic = wasserzaehler ClientID = wasser ;user = USERNAME ;password = PASSWORD
-
@jomjol Dieses Hauptthema war ein Übersetzungsfehler von Google. Jetzt habe ich also das Hauptthema ausgefüllt und es scheint sich bereits richtig zu verhalten. Zuerst fror es ein und startete immer wieder neu. Wahrscheinlich störte ihn der gefüllte Wert. In der Vorgängerversion war dies jedoch kein Problem. Zumal es bereits funktioniert. Danke für Ihre Hilfe !
2021-08-17T20:45:29: =============================================================================================
2021-08-17T20:45:29: =================================== Main Started ============================================
2021-08-17T20:45:29: =============================================================================================
2021-08-17T20:45:33: Time zone set to CET-1CEST
2021-08-17T20:45:33: task_autodoFlow - next round - Round #1
2021-08-17T20:45:33: FlowControll.doFlow - ClassFlowMakeImage
2021-08-17T20:45:45: FlowControll.doFlow - ClassFlowAlignment
2021-08-17T20:46:04: FlowControll.doFlow - ClassFlowDigit
2021-08-17T20:46:31: FlowControll.doFlow - ClassFlowAnalog
2021-08-17T20:46:46: FlowControll.doFlow - ClassFlowPostProcessing
2021-08-17T20:46:46: FlowControll.doFlow - ClassFlowMQTT
2021-08-17T20:46:47: sent publish successful in MQTTPublish, msg_id=600, watermeter/connection, connected
2021-08-17T20:46:47: sent publish successful in MQTTPublish, msg_id=23981, watermeter/uptime, 78
2021-08-17T20:46:47: sent publish successful in MQTTPublish, msg_id=8775, watermeter/freeMem, 2986444
2021-08-17T20:46:47: sent publish successful in MQTTPublish, msg_id=52043, watermeter/value, 0.2314
2021-08-17T20:46:47: sent publish successful in MQTTPublish, msg_id=36114, watermeter/error, no error
2021-08-17T20:46:47: sent publish successful in MQTTPublish, msg_id=3472, watermeter/rate, 0.000157
2021-08-17T20:46:47: sent publish successful in MQTTPublish, msg_id=46553, watermeter/timestamp, 2021-08-17T20:45:42
2021-08-17T20:46:47: sent publish successful in MQTTPublish, msg_id=6605, watermeter/json, {"value":0.2314,"error":"no error","rate":0.000157,"timestamp":"2021-08-17T20:45:42"}
2021-08-17T20:46:47: task_autodoFlow - round done
2021-08-17T20:46:47: CPU Temperature: 59.4
2021-08-17T20:47:51: download_get_handler
2021-08-17T20:48:22: download_get_handler
2021-08-17T20:48:30: download_get_handler -
Nachdem das System nun vier Wochen ohne Probleme durchlief, habe ich seit gestern eine Dauer-reboot-Schleife:
[MQTT] abort() was called at PC 0x40153923 on core 0 ELF file SHA256: d625d782fdb447c4 Backtrace: 0x4008cd78:0x3fff9560 0x4008d1a9:0x3fff9580 0x40153923:0x3fff95a0 0x4015396a:0x3fff95c0 0x40153a77:0x3fff95e0 0x40162cc7:0x3fff9600 0x4018f162:0x3fff9620 0x40191ca6:0x3fff9660 0x4019297d:0x3fff9c50 0x4018b21e:0x3fff9d00 0x400f0d4a:0x3fffa180 0x400f0f9f:0x3fffa1c0 Rebooting... ets Jun 8 2016 00:22:57 rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) configsip: 0, SPIWP:0xee clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 mode:DIO, clock div:2 load:0x3fff0030,len:4 load:0x3fff0034,len:7248 ho 0 tail 12 room 4 load:0x40078000,len:13856 load:0x40080400,len:4052 entry 0x40080688 I (31) boot: ESP-IDF 3.40100.200827 2nd stage bootloader I (31) boot: compile time 10:16:06 I (31) boot: chip revision: 1 I (34) boot_comm: chip revision: 1, min. bootloader chip revision: 0 I (41) boot.esp32: SPI Speed : 40MHz I (46) boot.esp32: SPI Mode : DIO I (51) boot.esp32: SPI Flash Size : 4MB I (55) boot: Enabling RNG early entropy source... I (61) boot: Partition Table: I (64) boot: ## Label Usage Type ST Offset Length I (71) boot: 0 nvs WiFi data 01 02 00009000 00004000 I (79) boot: 1 otadata OTA data 01 00 0000d000 00002000 I (86) boot: 2 phy_init RF data 01 01 0000f000 00001000 I (94) boot: 3 ota_0 OTA app 00 10 00010000 001db000 I (101) boot: 4 ota_1 OTA app 00 11 001f0000 001db000 I (109) boot: End of partition table I (113) boot_comm: chip revision: 1, min. application chip revision: 0 I (120) esp_image: segment 0: paddr=0x00010020 vaddr=0x3f400020 size=0x507c0 (329664) map I (272) esp_image: segment 1: paddr=0x000607e8 vaddr=0x3ffb0000 size=0x05038 ( 20536) load I (282) esp_image: segment 2: paddr=0x00065828 vaddr=0x40080000 size=0x00404 ( 1028) load I (283) esp_image: segment 3: paddr=0x00065c34 vaddr=0x40080404 size=0x0a3e4 ( 41956) load I (310) esp_image: segment 4: paddr=0x00070020 vaddr=0x400d0020 size=0x14f8a8 (1374376) map I (905) esp_image: segment 5: paddr=0x001bf8d0 vaddr=0x4008a7e8 size=0x12194 ( 74132) load I (958) boot: Loaded app from partition at offset 0x10000 I (958) boot: Disabling RNG early entropy source... I (959) psram: This chip is ESP32-D0WD I (963) spiram: Found 64MBit SPI RAM device I (968) spiram: SPI RAM mode: flash 40m sram 40m I (973) spiram: PSRAM initialized, cache is in low/high (2-core) mode. I (980) cpu_start: Pro cpu up. I (984) cpu_start: Application information: I (989) cpu_start: Project name: esp32cam-server-only I (995) cpu_start: App version: 0.0.9.3 I (1000) cpu_start: Compile time: Jul 25 2021 18:09:35 I (1006) cpu_start: ELF file SHA256: d625d782fdb447c4... I (1012) cpu_start: ESP-IDF: 3.40100.200827 I (1018) cpu_start: Starting app cpu, entry point is 0x40081ad8 I (1009) cpu_start: App cpu up. I (1916) spiram: SPI SRAM memory test OK I (1916) heap_init: Initializing. RAM available for dynamic allocation: I (1916) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM I (1922) heap_init: At 3FFC29D0 len 0001D630 (117 KiB): DRAM I (1929) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM I (1935) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM I (1942) heap_init: At 4009C97C len 00003684 (13 KiB): IRAM I (1948) cpu_start: Pro cpu start user code I (1953) spiram: Adding pool of 4096K of external SPI memory to heap allocator I (1978) spi_flash: detected chip: generic I (1979) spi_flash: flash io: dio I (1979) cpu_start: Starting scheduler on PRO CPU. I (0) cpu_start: Starting scheduler on APP CPU. I (1987) spiram: Reserving pool of 32K of internal memory for DMA/internal allocations Do Reset Camera I (1997) gpio: GPIO[32]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 Init Camera I (4007) gpio: GPIO[5]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 I (4007) gpio: GPIO[18]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 I (4007) gpio: GPIO[19]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 I (4017) gpio: GPIO[21]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 I (4027) gpio: GPIO[22]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 I (4037) gpio: GPIO[23]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 I (4047) gpio: GPIO[25]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 I (4057) gpio: GPIO[34]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 I (4067) gpio: GPIO[35]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 I (4077) gpio: GPIO[36]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 I (4087) gpio: GPIO[39]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 I (4097) sccb: pin_sda 26 pin_scl 27 I (4097) gpio: GPIO[32]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 I (4247) camera: Detected OV2640 camera I (4257) camera: Allocating 1 frame buffers (150 KB total) I (4267) camera: Allocating 150 KB frame buffer in OnBoard RAM I (4867) main: Using SDMMC peripheral Name: 00000 Type: SDHC/SDXC Speed: 20 MHz Size: 15208MB I (4907) server_ota: Start CheckOTAUpdateCheck ... Start CheckOTAUpdateCheck ... I (4917) server_ota: SHA-256 for the partition table: : 9d4a2809ae90fb20709a8ca3dd3ac3462e1e73286bcd31b689060c91de06fa3a I (4977) server_ota: SHA-256 for bootloader: : 8677ca5aab674ba732c280f0c34b595fce09e670bf8282c4147250de215bf674 I (5677) server_ota: SHA-256 for current firmware: : 96b6dc9fddcfb5775935a1c42d8adbe2938758f34a84a784278d4a09f4052572 CheckOTAUpdate Partition: ESP_OK open config file /sdcard/wlan.ini in mode r file loaded WLan: FRITZ!Box Fon WLAN 7390, Hostename: watermeter I (5737) wifi:wifi driver task: 3ffd9cb0, prio:23, stack:6656, core=0 I (5737) system_api: Base MAC address is not set, read default base MAC address from BLK0 of EFUSE I (5737) system_api: Base MAC address is not set, read default base MAC address from BLK0 of EFUSE I (5767) wifi:wifi firmware version: 3ea4c76 I (5767) wifi:config NVS flash: enabled I (5767) wifi:config nano formating: disabled I (5767) wifi:Init dynamic tx buffer num: 32 I (5777) wifi:Init data frame dynamic rx buffer num: 32 I (5777) wifi:Init management frame dynamic rx buffer num: 32 I (5787) wifi:Init management short buffer num: 32 I (5787) wifi:Init static tx buffer num: 16 I (5797) wifi:Init static rx buffer size: 1600 I (5797) wifi:Init static rx buffer num: 10 I (5797) wifi:Init dynamic rx buffer num: 32 I (5897) phy: phy_version: 4180, cb3948e, Sep 12 2019, 16:39:13, 0, 0 I (5897) wifi:mode : sta (24:6f:28:af:18:a8) I (5897) BLINK: Blinken - start I (5907) wifi station: wifi_init_sta finished. I (6027) wifi:new:<1,1>, old:<1,0>, ap:<255,255>, sta:<1,1>, prof:6 I (6027) wifi:state: init -> auth (b0) I (6037) wifi:state: auth -> assoc (0) I (6047) wifi:state: assoc -> run (10) I (6057) wifi:connected with FRITZ!Box Fon WLAN 7390, aid = 4, channel 1, 40U, bssid = 9c:c7:a6:fa:3a:04 I (6057) wifi:security: WPA2-PSK, phy: bgn, rssi: -27 I (6067) wifi:pm start, type: 1 I (6107) BLINK: Blinken - done I (6117) wifi:AP's beacon interval = 102400 us, DTIM period = 1 I (6717) esp_netif_handlers: sta ip: 192.168.3.14, mask: 255.255.255.0, gw: 192.168.3.1 I (6717) wifi station: got ip:192.168.3.14 I (6717) BLINK: Blinken - start I (6727) wifi station: connected to ap SSID:FRITZ!Box Fon WLAN 7390 password: main: sleep for : 200ms I (8737) sntp: Time is not set yet. Connecting to WiFi and getting time over NTP. I (8737) sntp: Initializing SNTP I (8737) sntp: Waiting for system time to be set... (1/10) TimeZone set to CET-1CEST,M3.5.0,M10.5.0/3 Logfile opened: /sdcard/log/message/log_2021-08-18.txt I (10747) sntp: The current date/time in Berlin is: Wed Aug 18 18:49:09 2021 I (10747) sntp: The current date/time in Berlin is: 2021-08-18_18:49 timeist 20210818-184909 Logfile opened: /sdcard/log/message/log_2021-08-18.txt Logfile opened: /sdcard/log/message/log_2021-08-18.txt Logfile opened: /sdcard/log/message/log_2021-08-18.txt time 20210818-184909 main: sleep for : 200ms I (12787) server-main: Starting server on port: '80' I (12787) server-main: Registering URI handlers I (12787) server_tflite: server_part_camera - Registering URI handlers I (12787) server_ota: server_ota - Registering URI handlers I (12797) server_GPIO: start GpioHandler I (12797) server_GPIO: register GPIO Uri I (12807) server_GPIO: server_GPIO - Registering URI handlers vor reg server main vor dotautostart task_autodoFlow: start open config file /sdcard/config/config.ini in mode r [MakeImage] Start ReadParameter ;LogImageLocation = /log/source WaitBeforeTakingPicture = 5 ;LogfileRetentionInDays = 15 ;Brightness = -2 ;Contrast = 0 ;Saturation = 0 ImageQuality = 5 ImageSize = VGA FixedExposure = true [Alignment] I (16727) BLINK: Blinken - done Start ReadParameter InitialRotate = 170 InitialMirror = false SearchFieldX = 20 SearchFieldY = 20 ;AlignmentAlgo = default ;FlipImageSize = false /config/ref0.jpg 269 20 /config/ref1.jpg 462 370 [Digits] 2021-08-14T10:50:09 Start ReadParameter aktparamgraph: [Digits] Name Digit: Model = /config/dig0820s2q.tflite ;LogImageLocation = /log/digit ;LogfileRetentionInDays = 3 ModelInputSize = 20 32 main.dig1 244 80 33 60 GetDIGIT - digit main - roi dig1 main.dig2 282 82 33 60 GetDIGIT - digit main - roi dig2 main.dig3 320 82 34 60 GetDIGIT - digit main - roi dig3 [Analog] Start ReadParameter Model = /config/ana0700s1lq.tflite ;LogImageLocation = /log/analog ;LogfileRetentionInDays = 3 ModelInputSize = 32 32 ExtendedResolution = false main.ana1 387 145 123 123 GetANALOG - ANALOG main - roi ana1 main.ana3 346 255 115 115 GetANALOG - ANALOG main - roi ana3 main.ana4 244 300 112 112 GetANALOG - ANALOG main - roi ana4 main.ana2 127 252 118 118 GetANALOG - ANALOG main - roi ana2 [PostProcessing] Start ReadParameter Anzahl NUMBERS: 1 - DIGITS: 1, ANALOG: 1 Number main, Anz DIG: 3, Anz ANA 4 main.DecimalShift = 0 PreValueUse = true PreValueAgeStartup = 720 AllowNegativeRates = true main.MaxRateValue = 0.1 ErrorMessage = true CheckDigitIncreaseConsistency = false [MQTT] abort() was called at PC 0x40153923 on core 0 ELF file SHA256: d625d782fdb447c4 Backtrace: 0x4008cd78:0x3fff9560 0x4008d1a9:0x3fff9580 0x40153923:0x3fff95a0 0x4015396a:0x3fff95c0 0x40153a77:0x3fff95e0 0x40162cc7:0x3fff9600 0x4018f162:0x3fff9620 0x40191ca6:0x3fff9660 0x4019297d:0x3fff9c50 0x4018b21e:0x3fff9d00 0x400f0d4a:0x3fffa180 0x400f0f9f:0x3fffa1c0 Rebooting... ets Jun 8 2016 00:22:57 rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) configsip: 0, SPIWP:0xee clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 mode:DIO, clock div:2 load:0x3fff0030,len:4 load:0x3fff0034,len:7248 ho 0 tail 12 room 4 load:0x40078000,len:13856 load:0x40080400,len:4052 entry 0x40080688 I (31) boot: ESP-IDF 3.40100.200827 2nd stage bootloader
-
Also bei mir läuft das System stabil.
Allerdings muss ich nach jedem Durchlauf eines m³ (von 305,... auf 306,... usw) die Pre-Value neu setzen.
Letzter Stand des Zählers waren 306,9969 m³, beim nächsten Durchlauf waren es 307,0008 m³ und die Software hängt im "rate too high" Error, obwohl maxRateValue auf 0,3 steht.
Das kann ich mir nicht erklären.
Hatte das jetzt bei drei Durchläufen eines vollen m³.
-
@rene_hm sagte in Wasserzähler - Version 2 - all-in-device:
Dauer-reboot-Schleife
Ursache war wohl die SD-Karte. Es gab zwar keinen Fehler, sie konnte normal gelesen und geschrieben werde. Ich habe alle Daten kopiert, Karte neu formatiert und Daten wieder zurück kopiert. Seitdem läuft das System wieder... seltsam...
-
@feinfinger sagte in Wasserzähler - Version 2 - all-in-device:
Allerdings muss ich nach jedem Durchlauf eines m³ (von 305,... auf 306,... usw) die Pre-Value neu setzen.
Das habe ich auch manchmal. Bei mir ist das Problem, dass sich die letzte Stelle nicht sprunghaft ändert, sondern langsam. Das führt dazu, dass diese Stelle dann ein NaN liefert, weil sie nicht erkannt wird und das führt dann bei mir zu dem "rate too high" Fehler. Ich ignoriere das, weil sich das nach kurzer Zeit automatisch wieder korrigiert (wenn die letzte Stelle wieder erkannt wird)
-
Kann man hier auch Improvisieren ? Habe aktuell keine 3D Druck Möglichkeit. Oder verschickt jemand ? Ich benötige 3 Stück.
-
@chrisxy
Meine erste Version war eine -P/r/i/n/g/e/l/s- Dose entsprechen bearbeitet zusammen mit einem Pflanztopfring zum anbringen an den Wasserzähler. Funktionierte perfekt.Die P***box hatte sogar den Vorteil der reflektierenden Wände was mit dem abkleben der LED-Leuchte zu einem nahezu Reflextionsfreien Uhrglas führte.
Gruß
DerDani