NEWS
Wasserzähler - Selfmade
-
Hi hört sich wie immer super an. ich warte Erstmal
-
@mcchickents, @intruder7
Kurzer Zwischenstand zu meinen Versuchen mit der ESP32-CAM mit OV2640-Modul:Ich habe eine Halterung für die Kamera entworfen und gedruckt. Wenn man die Flash-LED freihält, dann reicht diese völlig zur Beleuchtung aus --> zusätzliche LED-Beleuchtung könnte man sich sparen.
ABER: das OV2640-Modul ist ein Fix-Focus Modul, welches laut Spec erst ab ca. 60cm scharf ist und das merkt man auch. Meine Experimente zeigen, dass man bei meiner OV2640 mindestens 20cm weg bleiben muss, um grob scharf zu werden. Selbst dann ist das Bild nicht vollständig scharf und wenn ich noch weiter weg gehe, werden die Ziffern und Zeiger sehr klein für die Erkennungsalgorithmen. Hier ein Beispielbild:
Um noch ein bisschen mehr aus der Kamera rauszuholen, habe ich die Software für den ESP32-CAM nochmal erweitert. Jetzt kann man über URL-Parameter die Bildgröße einstellen (size=VGA, XVGA, ...) und auch die JPEG-Kompressionsqualität (quality=0 (best) ... quality=63 (worst).
Code ist auf Github in der aktuellen Version hochgeladen (V2.1.0 - https://github.com/jomjol/water-meter-picture-provider/tree/master/ESP32-CAM_Server-GitHub) - aber nur für die ESP32-CAM Version.Ich hänge noch 3 Bilder von der 3D-gedruckten Halterung an. Die will ich aber noch nicht in Thingiverse veröffentlichen, da ich noch keine Lösung für das Schärfeproblem habe:
Falls jemand eine gute Idee für eine Optik zur Einstellung des Fokus hat, bin ich um jeden Ratschlag dankbar. Eigentlich die letzte Hürde für eine wirklich günstige Gesamtlösung.
Beste Grüße,
jomjol -
@jomjol danke dass du dir die Mühe machst und uns über die Fortschritte informierst. Keine Ahnung ob das funktionieren könnte, aber evtl. würde eine Linse vor dem Objektiv helfen? Nur mal so bisschen rumgesponnen.
60cm sind schon zu viel. Das wird bei mir z.B. garnicht gehen, da die Wasseruhr nicht nach oben sondern zur Seite zeigt. Also kein Platz.Mach weiter so, respekt!
-
Was für ein Turm! g
Schade, dass das Kamera-Modul so eine eingeschränkte Optik hat.
Vielleicht kann man was mit einer Sammellinse als Vorbau erreichen.Oder besser: Das Modul ersetzen - evtl. mit so etwas:
Mit der Fisheye-Variante sollte man ziemlich nah ran können - hab aber keine Ahnung ob die optische Verzerrung ein Problem fürs OCR bedeutet. Für den Fall könnte man die JPGs mit einem Programm aber wieder entzerren.
-
@ReverZ Danke für den Tip. Habe gestern soetwas ähnliches bestellt. Braucht aber 4 Wochen - aber alles hier in DE war mir zu teuer
-
@mcchickents, @intruder7, @ReverZ @watcherkb Lösung !!!!
Heureka - ich habe gerade eine einfache Lösung für das Problem der fehlenden Tiefenschärfe gefundenIch habe an der OV2640 den Sigellack (siehe rote Markierung im Bild) für das Objektiv "vorsichtig" abgekratzt. Dann kann man den oberen Teil drehen und so die Fokusebene verschieben. Eine Vierteldrehung gegen den Uhrzeigersinn hat bei meinem Exemplar ausgereicht, um den Nahbereich scharf zu stellen.
Dann kann ich wieder viel näher ran und bekomme das gewohnte Bild:
Der Turm ist dann auch wieder "normal" hoch (13cm gesamt, 11,5cm über Oberfläche Wasseruhr):
Werde jetzt erstmal 'nen Kaffee trinken und dann übers Wochenende mein System auf die neue Kamera umstellen. Wenn es stabil läuft, gibt es natürlich die 3D-Druck Anteilung etc. ... auf Thingiverse, Github und Docker.
Wenn das alles so funktioniert, sinkt der Materialeinsatz für die Wasseruhr im Wesentlichen mit der ESP32-CAM und den Druckkosten auf 5 - 15 EUR, je nachdem wo ich es bestelle.
Beste Grüße und schönes Wochenende,
jomjol -
Sauber! Immer auf der Suche nach kostengünstigen Lösungen.
Entferne noch deine Zählernummer von dem Foto, falls dir das wichtig ist (bisher hast du das so gehandhabt). -
Apropos "Turm"...
Bei uns kommt 1x jährlich jemand zum manuellen Ablesen des Zählerstands.
Dazu muss der Aufbau mit der Kamera ja abgenommen werden.
Muss das denn danach wieder neu justiert werden, damit die Kameraachse nicht leicht verdreht ist? -
Einfach nur Geil wenn ich noch was beitragen kann melde dich einfach. Solid Works ist vorhanden^^
-
@umbm nein - leichte Verdrehungen werden durch das Fine Alignment über die Referenz-Strukturen automatisch ausgeglichen. Handjustage auf dieselbe Position ist völlig ausreichend.
-
Danke für die Info.
Das Kamera-Modul ist schon hier und wenn mein laufendes Projekt (LoRa2MQTT) fertig ist, ist dieses das nächste für den Herbst/Winter.Tolle Arbeit!
-
Neue Hardware für ESP32-CAM mit OV2640 ist auf GitHub veröffentlicht
--> deutlich einfacher und günstiger
https://www.thingiverse.com/thing:3860911 -
@jomjol Druckt bin gespannt wie es diesmal funktioniert. Eine frage wieso benötigt man zwei Tubuse in verschiedenen höhen?
Gruß Julian
-
@mcchickents Hallo Julian,
du kannst auch einen konstruieren und gleich auf die richtige Höhe Stellen. So konnte ich 2,5cm Schritten die Höhe einstellen. Ich weiss auch nicht, ob die manuelle Verstellung des Fokus am der OV2640 die gleiche Fokushöhe ergibt. Vielleicht kannst du ja noch ein bisschen näher ran und noch größere Bilder nehmen.
Hast du an der OV2640 schon das Objektiv verdreht. Ich hatte bei mir Sorge, dass sie dabei kaputt geht und deswegen gleich noch eine auf Vorrat bestellt (3$ aus CN), war aber nicht nötig.
Gruß,
jomjol -
So guten Abend,
gerade mal einen Test gemacht mit dem 25mm Aufbau selbst das bekommt man mit der super Camera scharf gestellt. Der Bildausschnitt ist dann aber etwas zu klein
Gruß Julian
Ps An der Linse kann man ganz locker 1 Umdrehung drehen^^
-
Es wird ja immer besser Freut mich dass es so gut voran geht. Vielleicht komme ich nächste Woche auch mal dazu weiter zu testen.
Ich habe mir mal meinen Wasserzähler angesehen, der sieht etwas anders aus als eurer. Ich habe kein schwarzes Zählrad, meines ist silber mit einem Dreieck drin.So etwa:
Was muss denn dann angepasst werden?
-
@coyote Du musst dir zuerst drei eigene Refenzen suchen und anpassen. Hier könntest du z.B.: "m3", "PIP" und "x.001" wählen. Und dann die Position der Ziffern und Zeiger teachen.
Habe mal ein PDF geschrieben, wie ich es gemacht habe - ist aber noch ein Draft und daher nur hier als Anhang und noch nicht in der GitHub-Beschreibung.
Alignment_procedure_draft.pdf -
Habe beim Teachen der neuen Bilder festgestellt, dass die analogen Zeiger recht sensitiv auf die Größe des Ausschnitts reagieren.
Würde gerne das Neuronale Netz mit einem Zoom_Faktor teachen, aber der verzerrt das Bild. Kennt jemand in Keras/Tensorflow, wie man einen ImageDataGenerator mit Zoom aber festen Aspekverhältnis erzeugt? -
Guten Morgen,
Mechanik ist installiert, Camera ist halbwegs fokussiert. Bilder werden aufgenommen^^
Soweit so gut. Leider erkennt er bei mir die 0 sowie die 3 Falsch. Anbei ein Bild und die Zahlen Ausgabe.Wie kann man jetzt die Zahlen anpassen?
77801.2074 77801 2074
-
@mcchickents Hast du die Referenzen und die Position angepasst?
Hier mal ein Draft, wie ich es mache: Alignment_procedure_draft.pdfDu kannst mir aber auch mal dein Config-Verzeichnis und 1 oder 2 Beispielbilder schicken.
Gruß,
jomjol