PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Kameraansteuerung mit AtMega128



robofan1
23.01.2012, 20:41
Hallo Forum!

als relativer Roboterlaie wollte ich fragen, wie ich eine Kamera mit meinem Pro Bot128 verbinden und mit dessen Mikrocontroller(AtMega128) ansteuern kann. Welche Kameras werden denn allgemein für meinen Mikrocontroller geeignet.

masasibe
23.01.2012, 20:52
Hallo robofan1,

Was willst du denn mit der Kamera machen?
Soll das Kamerabild irgendwohin weitergeleitet und zum Beispiel auf einem Bildschirm ausgeben
werden oder soll der ATmel das Kamerabild selbst auswerten?

Beides denke ich ist ziemlich schwierig mit einem ATmega zu realisieren.
Eine Kameraauswertung benötigt gute Programmierkenntnisse um effektive
Algorithmen zu entwerfen und man wird bestimmt sehr viel Entwicklungszeit darin
investieren müssen.

Kampi
23.01.2012, 21:10
Schau mal was hältst du den davon:

http://www.watterott.com/de/JPEG-Trigger1?xb9b67=3jercgh2bbv5tv4med4qvep3a1

robofan1
24.01.2012, 14:40
Danke für die Antworten.
@masasibe: Der AtMega soll das Bild allein auswerten. Die Kamera sollte z.B. zur Objekterkennung dienen.

Kampi
24.01.2012, 15:02
Ich hab eine Elektorzeitschrift da haben sie eine Bilderkennung mittels PIC gemacht. Das Problem war folgendes, dass das Bild nicht sonderlich groß war (glaube 8x8 Pixel) und das der PIC damit schon komplett(!) ausgelastet war. Also mit einem einfachen ATMega wirst du da denke ich nicht weit kommen.....

masasibe
24.01.2012, 17:21
Ich denke, dass das wahrscheinlich nur etwas für einen ARM ist, aber wie gesagt halt Programmiermäßig sicher anspruchsvoll!

Kampi
24.01.2012, 17:38
Ein ARM muss es denk ich nicht direkt sein. Je nachdem wie groß das Bild ist und wie oft es in einer bestimmten Zeit neu aufgenommen wird kannst du das vielleicht auch schon mit einem dsPIC o.ä. realisieren. Ansonsten hilft wie oben nur gesagt ein ARM, DSP oder FPGA.
Falls du interesse hast kannst du dir das ja mal anschauen....da siehst du was du mit einem FPGA alles machen kannst ;)

http://thomaspfeifer.net/fpga_dsp_bildverarbeitung.htm

robofan1
24.01.2012, 18:31
Na ja, die Sache ist die: Ich habe ein Buch speziell für diesen Roboter und da gibt es ein Kapitel, wo eine Erweiterung mit der CMU CAM beschrieben wird. Buch: (Das (http://www.conrad.de/ce/de/product/909381/BUCH-PRO-BOT-128-SELBST-BAUEN/SHOP_AREA_14748&promotionareaSearchDetail=005) hier ist das Buch). Ich wollte hier aber noch mal nachfragen. Wenn es aber im Buch beschrieben wird, dann müsste es doch eigentlich auch mit einem AtMega128 gehen.

o.g.1985
24.01.2012, 18:39
Hi
Hir hab ich was für dich --> RP6 Kamera - Mitmach-Projekt

http://www.rn-wissen.de/index.php/RP6_Kamera_-_Mitmach-Projekt

Auszug aus dem Artike:
Der Aufbau wird so universell wie möglich sein, d.h. eine Auswertung der Kamera kann sowohl mit der Software von radbruch mit dem RP6 erfolgen (schon in Phase 1!), als auch mit der RP6Control M32. Auch an die CCPro M128 wurde hardwaremäßig gedacht,- ob man mit ihr auch eine Video-Auswertung hinbekommt, habe ich nicht probiert.

MFG Oliver G

robofan1
24.01.2012, 18:55
Das klingt ja super! Danke an alle erst mal.

radbruch
24.01.2012, 19:43
Hallo

Das ist ja mein Lieblingskind: Die Kamera am AVR. Um es kurz zusammenzufassen: Der übertaktete ADC sampelt die analogen Kamerasignale so schnell, dass der AVR die Syncs im Signal findet. So kann der AVR ohne weitere Beschaltung die Daten der Kamera auswerten (von den 50 Ohm abgesehen). Spitze der Entwicklung ist wohl mein probot mit einem Mega8 der die Servoimpulse indirekt mit der Bildfrequenz der Kamera erzeugt:
https://www.roboternetz.de/community/threads/43885-ProBot-mit-asuro-Mega8?p=519240&viewfull=1#post519240

Das funktioniert beim Mega32 und beim Mega8 mit 8MHz gut. Ein m32 mit seinem 16MHz-Mega32 kann es auch, soweit ich mich erinnere. Möglicherweise kann beim Mega128 der ADC nicht so gnadenlos ausgereizt werden. Da würde dann die allerneuste Erkenntniss weiterhelfen:

https://www.roboternetz.de/community/threads/29906-Minimall%C3%B6sung-Kamera-f%C3%BCr-den-RP6?p=520992&viewfull=1#post520992

Das kann der Mega128 auf jeden Fall, unabhänging von der Übertaktung des ADC.

Gruß

mic

o.g.1985
25.01.2012, 06:15
@radbruch (https://www.roboternetz.de/community/members/25333-radbruch)

Hi ich würde das auch gerne nachbaun, ich wollte wissen ob du das Platinen layout auch als Ätzversion hast. Dann würde ich versuch das mal mit SMD aufzubaun. ( Hab aber noch nie mit SMD gearbeitet ) :)
Denn ich muss auf jedes Gramm bei meine RP6 schaun. Denn ich hab auf der Wanne einen aufbau aus PVC Hartschaumplatten gemacht. Und ich weiss nicht wie schwer der ganze RP6 maximal sein darf !

MFG Oliver G

Chypsylon
25.01.2012, 15:50
Na ja, die Sache ist die: Ich habe ein Buch speziell für diesen Roboter und da gibt es ein Kapitel, wo eine Erweiterung mit der CMU CAM beschrieben wird. Buch: (Das (http://www.conrad.de/ce/de/product/909381/BUCH-PRO-BOT-128-SELBST-BAUEN/SHOP_AREA_14748&promotionareaSearchDetail=005) hier ist das Buch). Ich wollte hier aber noch mal nachfragen. Wenn es aber im Buch beschrieben wird, dann müsste es doch eigentlich auch mit einem AtMega128 gehen.

Bei der CMU-Cam erfolgt die gesamte Kameraansteuerung und Bildverarbeitung auf einem externen Prozessor auf der Kameraplatine und dein atmega sendet nur mehr die steuersignale. Deswegen ist sie im Vergleich relativ einfach zu bedienen aber der Preis ist auch ganz schön happig...

robofan1
25.01.2012, 19:44
Hallo Forum!

Ich habe eine neue Idee! Wenn mein AtMega128 es nicht schafft, die Daten der Kamera auszuwerten, könnte ich es doch wie bei der CMU CAM machen. Ich baue einen Parallax SX28AC/DP-G (http://de.farnell.com/jsp/displayProduct.jsp?sku=1263902&CMP=e-2072-00001000&gross_price=true) davor, der die Kameradaten auswertet, sodass der AtMega128 sozusagen nur die Steuerbefehle gibt, wie Chypsylon es ja bereits bei der CMU CAM beschrieben hatte. Würde das gehen?