NEWS
Wasserzähler - Version 2 - all-in-device
-
@mischmaster Du hast ein Problem mit der Kamera. Das erkennst du irgendwo eher im ersten Drittel:
[0;31mE (4089) camera: Detected camera not supported. [0m [0;31mE (4089) camera: Camera probe failed with error 0x20004 [0m [0;31mE (4089) server_part_camera: Camera Init Failed [0m
Das hat mit der Konfiguration nichts zu tun. Unterstützt wird nur die OV2640. Falls das bei dir passt, dann erstmal den Stecker prüfen, ansonsten ist sie vielleicht einfach defekt.
-
@exitus auch eine ungewöhnliche aber funktionierende Lösung
Momentan arbeite ich bezüglich der Reflexionen an einer Möglichkeit, externe LEDs anzusteuern. Das wäre dann sogar die Helligkeit einstellbar. Dauert noch ein bisschen.
-
@d0m1n1qu3 Schräck nutzt auch nichts, solange die LED nahe an der Bildachse liegt. Ich arbeite gerade an einem Upgrade, mit welchem man dann externe LEDs ansteuern kann. Die kannst du dann beliebig anbringen.
-
@jomjol bei meinem stromzähler erkennt es die zahlen nicht immer richtig warum kann das sein.Gaszähler und wasserzähler läuft besser.
[MakeImage]
LogImageLocation = /log/source
WaitBeforeTakingPicture = 5
LogfileRetentionInDays = 7
Brightness = 1
;Contrast = 0
;Saturation = 0
ImageQuality = 5
ImageSize = VGA
FixedExposure = true[Alignment]
InitialRotate = 180
InitialMirror = false
SearchFieldX = 20
SearchFieldY = 20
AlignmentAlgo = default
FlipImageSize = false
/config/ref0.jpg 279 232
/config/ref1.jpg 196 25[Digits]
Model = /config/dig1210s2q.tflite
;LogImageLocation = /log/digit
;LogfileRetentionInDays = 3
ModelInputSize = 20 32
;ExtendedResolution =
main.dig1 143 285 36 65
main.dig2 188 285 36 65
main.dig3 233 280 36 65
main.dig4 273 280 40 72
main.dig5 315 277 41 74
main.dig6 359 275 45 81;[Analog]
Model = /config/ana0700s1lq.tflite
;LogImageLocation = /log/analog
;LogfileRetentionInDays = 3
ModelInputSize = 32 32
ExtendedResolution = true[PostProcessing]
main.DecimalShift = 0
PreValueUse = true
PreValueAgeStartup = 720
AllowNegativeRates = false
main.MaxRateValue = 5
ErrorMessage = true
CheckDigitIncreaseConsistency = true
;IgnoreLeadingNaN =[MQTT]
Uri = mqtt://192.168.10.100:1689
MainTopic = stromzaehler
ClientID = strom
user = xxxxxx
password = xxxxxx
;[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[AutoTimer]
AutoStart = true
Intervall = 4.85[Debug]
Logfile = false
LogfileRetentionInDays = 3[System]
TimeZone = CET-1CEST,M3.5.0,M10.5.0/3
;TimeServer = undefined
;AutoAdjustSummertime = false
;Hostname = undefined
;SetupMode = false -
- Deine ROIs sind insbesondere bei den letzten Ziffern viel zu groß. Als Orientierung gibt es 2 Rechtecke. Das innere soll genau um die Ziffern gehen, dann ist der Rand okay.
- Der Kontrast ist relativ schwach, dass könnte auch zu Problemem führen --> mal an der Beleuchtung noch etwas optimieren.
-
Flasht hier jemand über Windows via flash download tool?
Habe es in der Version 3.8.8 (ältere finde ich leider nicht zum Testen) und bekomme folgende Fehlermeldungen:File "path_panel.py", line 926, in OnButton_BinPath1Button File "path_panel_method.py", line 64, in set_file_path UnicodeDecodeError: 'gb2312' codec can't decode bytes in position 10-11: illegal multibyte sequence
Schon beim Auswählen der Flashdateien via dem "..." Button - aber auch wenn ich den Pfad manuell angebe, kommt dieser Fehler beim Flashen.
Flashversuch via Ardiuno Uno und auch mit USB FTDI Adapter.Kennt jemand das Problem und hat evtl Abhilfe?
Danke im Voraus!
-
@baeri evtl. den Pfad so anpassen dass dort keine Leerzeichen sind. z.B. c:\temp
-
Hallo Jomjol
Meine etwas spezielle Nummer 3 von meinem Wasserzähler scheint jetzt doch nicht so beliebt zu sein
In 90% der Fälle erkennt er eine 5. Könntest du diese Bilder in die nächste Runde mit aufnehmen? Habe schwarze und rote Ziffern:Besten Dank!
Michael -
@michaeljoos Mache ich!
-
@jomjol
Hallo,
Ich habe 4 esp am laufen allen laufen super , habe mir gedacht bestell dir noch 3 aus China sind auch angekommen .Mein Problem Flaschen alles klappt wunderbar aber es möchte einfach nicht Booten habe ich evtl. Falsch bestellt??
-
@exitus Auf den ersten Blick nicht. Was zeigt den die serielle Schnittstelle beim Booten?
-
@jomjol wie kann ich es herausfinden, muss ich es nach dem flashen angeschlossen lassen???
-
@exitus Du musst die serielle Schnittstelle (COMx) während des Bootvorgangs mitlesen (z.B. mit Putty, Arduino oder irgendeinem anderen Schnittstellenprogramm).
-
@jomjol hier von arduino ist in einer schleife
Re-enable cpu cache. 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 [0;32mI (30) boot: ESP-IDF 3.40100.200827 2nd stage bootloader[0m [0;32mI (31) boot: compile time 18:56:57[0m [0;32mI (31) boot: chip revision: 1[0m [0;32mI (34) boot_comm: chip revision: 1, min. bootloader chip revision: 0[0m [0;32mI (41) boot.esp32: SPI Speed : 40MHz[0m [0;32mI (46) boot.esp32: SPI Mode : DIO[0m [0;32mI (51) boot.esp32: SPI Flash Size : 4MB[0m [0;32mI (55) boot: Enabling RNG early entropy source...[0m [0;32mI (61) boot: Partition Table:[0m [0;32mI (64) boot: ## Label Usage Type ST Offset Length[0m [0;32mI (71) boot: 0 nvs WiFi data 01 02 00009000 00004000[0m [0;32mI (79) boot: 1 otadata OTA data 01 00 0000d000 00002000[0m [0;32mI (86) boot: 2 phy_init RF data 01 01 0000f000 00001000[0m [0;32mI (94) boot: 3 ota_0 OTA app 00 10 00010000 001db000[0m [0;32mI (101) boot: 4 ota_1 OTA app 00 11 001f0000 001db000[0m [0;32mI (109) boot: End of partition table[0m [0;32mI (113) boot_comm: chip revision: 1, min. application chip revision: 0[0m [0;32mI (120) esp_image: segment 0: paddr=0x00010020 vaddr=0x3f400020 size=0x51048 (331848) map[0m [0;32mI (273) esp_image: segment 1: paddr=0x00061070 vaddr=0x3ffb0000 size=0x0504c ( 20556) load[0m [0;32mI (283) esp_image: segment 2: paddr=0x000660c4 vaddr=0x40080000 size=0x00404 ( 1028) load[0m [0;32mI (284) esp_image: segment 3: paddr=0x000664d0 vaddr=0x40080404 size=0x09b48 ( 39752) load[0m [0;32mI (310) esp_image: segment 4: paddr=0x00070020 vaddr=0x400d0020 size=0x122ec8 (1191624) map[0m [0;32mI (826) esp_image: segment 5: paddr=0x00192ef0 vaddr=0x40089f4c size=0x12c68 ( 76904) load[0m [0;32mI (880) boot: Loaded app from partition at offset 0x10000[0m [0;32mI (880) boot: Disabling RNG early entropy source...[0m [0;32mI (881) psram: This chip is ESP32-D0WD[0m [0;31mE (885) cpu_start: Failed to init external RAM![0m abort() was called at PC 0x40081dcf on core 0 ELF file SHA256: 49d2944a34ee25eb Backtrace: 0x4008cfb0:0x3ffe3c00 0x4008d3e1:0x3ffe3c20 0x40081dcf:0x3ffe3c40 0x4007931a:0x3ffe3c80 |<-CORRUPTED Re-enable cpu cache. 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 [0;32mI (30) boot: ESP-IDF 3.40100.200827 2nd stage bootloader[0m [0;32mI (31) boot: compile time 18:56:57[0m [0;32mI (31) boot: chip revision: 1[0m [0;32mI (34) boot_comm: chip revision: 1, min. bootloader chip revision: 0[0m [0;32mI (41) boot.esp32: SPI Speed : 40MHz[0m [0;32mI (46) boot.esp32: SPI Mode : DIO[0m [0;32mI (51) boot.esp32: SPI Flash Size : 4MB[0m [0;32mI (55) boot: Enabling RNG early entropy source...[0m [0;32mI (61) boot: Partition Table:[0m [0;32mI (64) boot: ## Label Usage Type ST Offset Length[0m [0;32mI (71) boot: 0 nvs WiFi data 01 02 00009000 00004000[0m [0;32mI (79) boot: 1 otadata OTA data 01 00 0000d000 00002000[0m [0;32mI (86) boot: 2 phy_init RF data 01 01 0000f000 00001000[0m [0;32mI (94) boot: 3 ota_0 OTA app 00 10 00010000 001db000[0m [0;32mI (101) boot: 4 ota_1 OTA app 00 11 001f0000 001db000[0m [0;32mI (109) boot: End of partition table[0m [0;32mI (113) boot_comm: chip revision: 1, min. application chip revision: 0[0m [0;32mI (120) esp_image: segment 0: paddr=0x00010020 vaddr=0x3f400020 size=0x51048 (331848) map[0m [0;32mI (273) esp_image: segment 1: paddr=0x00061070 vaddr=0x3ffb0000 size=0x0504c ( 20556) load[0m [0;32mI (283) esp_image: segment 2: paddr=0x000660c4 vaddr=0x40080000 size=0x00404 ( 1028) load[0m [0;32mI (284) esp_image: segment 3: paddr=0x000664d0 vaddr=0x40080404 size=0x09b48 ( 39752) load[0m [0;32mI (310) esp_image: segment 4: paddr=0x00070020 vaddr=0x400d0020 size=0x122ec8 (1191624) map[0m [0;32mI (826) esp_image: segment 5: paddr=0x00192ef0 vaddr=0x40089f4c size=0x12c68 ( 76904) load[0m [0;32mI (880) boot: Loaded app from partition at offset 0x10000[0m [0;32mI (880) boot: Disabling RNG early entropy source...[0m [0;32mI (881) psram: This chip is ESP32-D0WD[0m [0;31mE (885) cpu_start: Failed to init external RAM![0m abort() was called at PC 0x40081dcf on core 0 ELF file SHA256: 49d2944a34ee25eb Backtrace: 0x4008cfb0:0x3ffe3c00 0x4008d3e1:0x3ffe3c20 0x40081dcf:0x3ffe3c40 0x4007931a:0x3ffe3c80 |<-CORRUPTED Re-enable cpu cache. Rebooting... ets Jun 8 2016 00:22:57
hier vom flasch vorgang
*************************** START **************************** START TIME: 202110021457 CONNECT BAUD: 115200 *************************** START **************************** START TIME: 202110021457 CONNECT BAUD: 115200 com port closed set state: ESP_DL_SYNC serial port opened ----------- baud:115200 root baud:115200 ------------- ===============BAUD : 115200===============CALL DEVICE SYNC connecting... chip sync ok mac l: 0xd677e1dcL mac h: 0x7a4ceb crc_cal: 122 crc_read: 122 crc_test: 0 ESP32 MAC CRC OK get mac res: 1 get flash id : 0x0016405e manufacturer_id: 0x5e device_id: 0x4016 SET FLASH PARAMS Wrote 25264 bytes (15169 compressed) at 0x00001000 in 0.2 seconds (effective 962.4 kbit/s)... Hash of data verified. Wrote 3072 bytes (128 compressed) at 0x00008000 in 0.0 seconds (effective 1638.4 kbit/s)... Hash of data verified. Wrote 1661824 bytes (991064 compressed) at 0x00010000 in 16.1 seconds (effective 826.3 kbit/s)... Hash of data verified. Leaving... com closed Use time: 21 s Download result: PASS *************************** END ****************************
-
@exitus sagte in Wasserzähler - Version 2 - all-in-device:
ESP32-D0WD
Das Problem tritt ja schon auf, bevor meine Software richtig startet. Es sieht so aus, als ob der das PSRAM nicht initalisieren kann:
[0;31mE (885) cpu_start: Failed to init external RAM![0m
An dieser Stelle sollte folgendes passieren:
␛[0;32mI (775) boot: Loaded app from partition at offset 0x10000␛[0m ␛[0;32mI (776) boot: Disabling RNG early entropy source...␛[0m ␛[0;32mI (787) psram: This chip is ESP32-D0WD␛[0m ␛[0;32mI (788) spiram: Found 64MBit SPI RAM device␛[0m ␛[0;32mI (788) spiram: SPI RAM mode: flash 40m sram 40m␛[0m ␛[0;32mI (793) spiram: PSRAM initialized, cache is in low/high (2-core) mode.␛[0m ␛[0;32mI (800) cpu_start: Pro cpu up.␛[0m
Entweder hat dein Modul kein PSRAM oder vielleicht ist es defekt. PSRAM ist aber zwingend notwendig, da die neuronalen Netze und die Bildverarbeitung ohne die 4 MB zusätzlichen Speicher nicht möglich sind.
-
@jomjol ich habe 3 bestellt alle gleich
ibetyouibetyou
€ 6,63 35% Rabatt | ESP32 CAM Entwicklungen Bord mit OV2640 Kamera Modul 66 Grad WIFI Bluetooth Download Modul KIT ESP32-CAM 2MP
https://a.aliexpress.com/_mrt5Tl0 -
@exitus Laut dem Link hat es alles, was du brauchst. Du kannst mal versuchen, ein anderes Programm zu flashen, erstmal ohne und dann mit PSRAM.
-
bisher hatte ich hier nur sporadisch mitgelesen weil es mir an Phantasie fehlte das Ganze ohne 3D Drucker zu realisieren.
Irgendwo oben hat mich das Bild einer Blechdose auf dem Wasserzähler aufgeweckt.Der Versuchsaufbau mit einer Lolli - Kunstoffdose klappte auf anhieb, hatte echt Spaß gemacht. Vielen Dank auch von mir für das erstklassige Projekt.
Aber - gut es wurde vor einigen Wochen angekündigt - gestern Nachmittag klingelte der Monteur des Wasseranbieters und baute uns einen neuen Zähler ein. Und damit will es nicht mehr so einfach,
Da die letzte Ziffer meist gekippt ist und zudem noch mittig einen Strich haben werde ich erstmal mit 1-2 Nachkommastellen weitermachen.
Meine Frage wäre aber, weshalb die 4 hier als 5 erkannt wird. Kann ich hier noch etwas optimieren?
-
@senior1418 Klick mal obern auf "Recognition", dann siehst du was wirklich erkannt wurde. Ansonsten könnte es auch sein, dass da im Training noch etwas nicht ganz passt. Du kannst mir Trainingsdaten erzeugen (mit den Logfiles) und je Ziffer 2-3 Beispiele schicken (nicht mehr! ) Dann nehme ich die ins nächste Training.
-
@jomjol was kann ich den nehmen wie mache es nur die Firmware flashen.
Ich habe auch Tasmota versucht es bootet aber kein Kamera Bild . Habe noch mit arduino Gesichtserkennung drauf gepack bootet auch aber auch kein Bild. Etwas ist faul aber was