Hallo zusammen, im Rahmen einer Studienarbeit an einer Universität möchte ich eine Kamera in ein Modellflugzeug einbauen. Diese Kamera soll während dem Flug selbstätig Fotos schiessen und diese Speichern. Ich bin dabei auf zwei verschiedene Ansätze gestossen: 1. Ein kleines Digital-Kamera-Modul, dass mit einem Steuereingang ein Foto schiesst und es JEPG komprimiert an den Ausgang weitergibt. Dort müssten diese Daten von einem Microcontrollen in Empfang genommen werden und an einen Speicherchip weitergeleitet werden. Da ich bis jetzt noch nie mit einem Microcontroller gearbeitet habe, weiss ich nicht so recht wie man solch eine Sache systematisch angeht. Kann mir jemand villeicht einen Tipp geben ob die Sache überhaupt in angemessener zeit lösbar ist, was für einen Microcontrolle man nehmen könnte (es gibt so viele!!!) und ob die Speicherung in einem Chip (evtl. SD-Karte) sehr kompliziert ist. Ich würde mich freuen wenn mir jemand ein paar Hinweise geben könnte! Link der Kamera: http://www.intertec-components.de/common/db/pdf/visuals/ITM-C-328.pdf 2. Ich habe auch daran gedacht eine handelsüblich Digitalkamera zu kaufen und zu versuchen diese fernzusteuern. Es gibt da ein paar Projekte mit Canon Kameras in dieser Richtung die vom PC aus angesteuert werden. (Link: http://forum.ebv4linux.de/viewtopic.php?t=338) Allerdings kann ich keinen PC in das Flugzeug einbauen. Deshalb interresiert mich ob man solche eine Steuerung auch von einem Micorcontroller übernehmen kann? Dankbar für jede Antwort, Gruss Uli
Man nehme ein handelsübliches Servo (5 Euro bei Conrad o.ä.) und montiere es so, dass der Hebel den Auslöser betätigen kann. Fertig ist das Diplom. Canon bietet für seine Kameras ein SDK an. Ob man dazu auch die Sources bekommt, die man dann auf den Controller übertragen müsste, bezweifle ich aber. (Fragen kostet nichts...) Mit einem Mikrocontroller eine Digital-Kamera zu steuern, erfordert einen USB-Host-Controller.
Hi! Also da fehlen noch ein paar wichtige Angaben, z.B: Welche Auflösung die Bilder haben sollen, wieviele Bilder aufgezeichnet werden sollen in welcher Geschwindigkeit.... Als Anhaltspunkt: Hier im Forum gibts welche, die haben die SE MCA25 Kamera angesteuert, schafft glaub ich 640*480 Bildpunkte und lässt sich mit einem AVR seriell auslesen. In der Codesammlung findest du Librarys, wie du mit einem AVR eine MMC Karte ansteuerst und beschreibst. ciao Fasti
>Allerdings kann ich keinen PC in das Flugzeug einbauen.
DILNET-PC... die haben eine ziemlich geringe Grösse (DIL40 etwa).
Der Vorschlag von Fasti ist auch eins-A.
Worin genau besteht jetzt die akademische Leistung? 1. Handelsübl. Kamera, zeitgesteuert auslösen (oder abhängig wovon?). 2. Nimm Kameramodul, und realisiere Speicherung auf (irgendein)Medium. Was ist denn nun die Aufgabe? ts
Das einfachste dürfte sein, eine fertige Digitalkamera zu nehmen. Dann hast Du die Speicherlösung gleich mitgekauft. Manche Digitalkameras haben einen Stecker, über den eine Kabelfernbedienung angeschlossen werden kann. Darüber kann man dann auslösen. Minolta hat es sich mal recht einfach gemacht: Einfach drei Drähte kurzschließen und - Klick. Casio hat ein serielles Protokoll für die Kabelauslösung. Das kann man z.B. mit einem AtTiny (AVR) emulieren. Bei Interesse suche ich mal die Links dazu. Was studierst Du? Kannst Du programmieren? Sebastian ps: Solche Projekte gibt es schon. z.B. http://members.aol.com/mred1908/TwinStar.html
Die MCA-25 hat wie gesagt 640x480 und einen eingebauten Speicher. Die seltenere MCA-30 hat sogar einen doppelt so großen Speicher. Gibt es bei eb*y für wenige (1..4) Euro. Suche den Thread von Ssss Ssss Simon Schulz, dort steht über beide Kameras, auch weiterführende Beschreibungen. Suche in http://www.mikrocontroller.net/forum/list-1-1.html rechts oben ist ein Feld "Im Betreff suchen:", dort gibst Du MCA-25 ein. Wenn die Speichergröße zu klein ist, eine MMC dranhängen. Beschreibungen dazu gibt es etliche hier im Forum. Anderer Ansatz: Einige Canon-Kameras kann man statt über USB auch mit RS232 ansteuern, auch das Auslösen. Man braucht also nur einen ganz kleinen µC.
Hallo Also wenn dein Ziel einfach nur das Schiessen von Flugbildern ist, dann würde ich eine handelsübliche Digicam nehmen und die mit einem Servo auslösen. Das ist einfach, kompakt und funktioniert garantiert. Das einzige, was du hier entwickeln musst, ist ein geeigneter Mechanismus, um das Servo anzusteuern. Im einfachsten Fall geschieht dies mit einem Knopf an der Fernsteuerung, möglich wäre aber auch eine etwas 'automatischere' Lösung mit einem Mikrocontroller - dürfte problemlos hinzukriegen sein. Eine Eigenbau-Lösung ist wesentlich schwieriger, da mindestens folgende Probleme gelöst werden müssen a) Auslesen der Kamera b) Speichern der Bilder c) Übertragen der Bilder an einen PC o.ä. Dran kann man sich heftig die Finger verbrennen, für eine Diplomarbeit wohl nicht gerade das ideale ;-) Natürlich kommst du kaum drumherum, wenn die Bilder z.B. bereits im Flug ausgewertet werden sollen oder wenn dein Projekt 'Entwicklung eines Kamerasystems für Flugaufnahmen' lautet ;-) Gruss Michael
Hi! Ich würd einfach eine MCA25, einen atmega8 (oder 32) und eine 512MB MMC Karte nehmen. Pro Bild hast du dann etwa 60KByte (640x480 JPEG). Kannst mindestens alle 6s ein Bild machen. Evtl auch alle 2s (müsste man mal testen). Aufwand dafür ist sehr gering, mca lib gibts bei mir auf der seite (avr.auctionant.de) und mmc ansteuerung inkl fat gibts zb von ulrich radig. Das ganze nur zusammenpacken und schon biste fast fertig :) Wenn du dann noch eine 2gb mmc Karte nimmst kannst du vieeeeeele Bilder machen :) Bye, Simon
Hallo Das mit der MCA25 hört sich sehr interessant an. Wohl ein möglicher Nachfolger, sollte sich meine Gameboy-Cam doch als etwas zu schwach erweisen ;-) Die Daten werden doch auch Pixelweise ausgegeben? Gruss Michael
Hallo alle zusammen, Wow, erstmal vielen Dank für die vielen und sehr schnellen Antworten. Da die Frage aufgekommen ist, ich studiere Elektrotechnik und Programmieren kann ich auch einigermassen. Ein paar Details mehr zum Projekt. Bei dem Flugzeug handelt es sich um ein relativ grosses selbstgebautes Flugmodell, dass mit Hilfe eines Autopiloten selbständig durch die Gegend fliegen soll bzw. das auch schon macht. An bestimmten GPS Positionen soll nun der Autopilot ein Signal an einen Mikrokontroller senden der dann die Aufnahme und Speicherung eines Fotos übernimmt. Meine Aufgabe ist es dieses Kamerasystem zu entwerfen. Dabei baue ich erstmal nur ein einfaches System, später wird es wohl ein System mit On-Board Bildverarbeitung und auswertung sein. Später sollen z.B. bei Flug über Wäldern anhand des Frequenzspektrums die Art von Bäumen bestimmt werden (Kiefern, Kastanien etc.) Ich hatte auch schon an die Idee gedacht den Auslöser einer handelsüblichen Kamera mechanisch zu betätigen oder elektrisch kurz zu schliessen. Aber die Sache gefällt mir nicht so gut, weil selbsgebastelte Rahmen etc. immer relativ fehleranfällig sind (starke Vibrationen während dem Flug). Ausserdem sollte meine Studienarbeit etwas mit Elektronik zu tun haben :-) Die Idee von Sssss finde ich da schon recht gut (Danke für den Tipp). Allerdings hat die MCA25 eine sehr geringe Auflösung. Für einen ersten Versuch wird es wohl gehen aber später sollte man auf Fotos aus 80 Meter Höhe auch noch was erkennen können. Kennt jemand evtl. noch eine andere Kamera die evtl. im Megapixel-Bereich liegt? Also danke für die vielen Tipps, wenn jemand noch was einfällt, immer her damit. Grüsse Uli
>Die Daten werden doch auch Pixelweise ausgegeben? Nein, du bekommst den jpeg stream byteweise (mit ein paar kontrollbytes zwischendrin) >Kennt jemand evtl. noch eine andere Kamera die evtl. im >Megapixel-Bereich liegt? Nimm eine Digicam ;) Alles andere läuft auf einen FPGA mit ordentlich schnellem SRAM usw hinaus (mache gerade sowas für meine Diplomarbeit. Sind zwar nur 4 cams in VGA Auflösung aber auch das ist von der Datenrate her schon weit jenseits dessen was man noch sinnvoll mit einem kleinen uC machen kann. da läuft ohne fpga gar nichts) Rechne einfach mal nach: 640x480x3Byte (rgb888) und das zb bei 30fps :-X Was mich aber interessiert: Wo darf man denn so ein Flugobjekt fliegen lassen ? Das ist doch 100%ig verboten... Bye, Simon
Die C-328 macht ja nun auch nicht die sagenhafte Auflösung! schön klein ist sie allerdings, das muss man zugeben. Leider ist das serielle Interface etwas "zickig", selbst die mitgelieferte Beispielapplikation gibt öfter mal auf mit "Start Frame error" oder "Start preview error" odersowas. Man kann der Cam dann ein Reset schicken; grosartig beeindrucken lässt sie sich davon allerdings nicht. Strom trennen, eine Rauchen gehen, Strom anlegen hilft dann aber. Wenns einmal läuft, kommen in etwa die gleichen Streams raus, wie aus der MCA25: Blocknummer, Länge des Blocks, die Nutzdaten und eine Checksumme am Ende. Nimmt man diese Zusatzinfos am Ende raus, hat man ein ganz normales jpg-Bildchen. Die Auflösung und die Komprimierung lassen sich vorab seriell vorgeben. Interessant ist ein Mitschnitt der seriellen Kommunikation der Beispielapplikation. Hier werden auch Befehle übertragen, die NICHT im Befehlssatz dokumentiert sind, wobei mir aber bisher niemend sagen konnte, was diese Befehle im einzelnen bewirken. Herr Sander nicht (wo ich meine her habe) und auch kein Mitarbeiter von Intertec. Leider steht den klinen Abmaßen der Kamera der hohe Stromverbrauch von fast 100mA im Wege. Speziell dann, wenn man nur 12Volt zur Verfügung hat. Auch ein kleiner DC/DC Wandler ist größer, als das Kameramodul... Linearregler im Sot223 wird jedenfalls richtig "warm" :-gg-: Viel Grüße AxelR. Nimm ne digiCam, odr so einen kleinen Memostick, gibt es mit Kamera und intergrierter 2GB-Karte. macht alle 0.1Sekunde ein JPG. Wird, glaube ich, auch in D angeboten. kommmt original aus Israel (voher sonst). musst Du mal bei den Detektivausrüstern suchen.
Jede halbwegs bessere Digitalkamera hat ein Stativgewinde. Damit kannst Du sie mechanisch ohne gebastelten Rahmen am Flugzeug festschrauben. Dann, wie ich oben beschrieben habe, suchst Du Dir eine, die man fernbedienen kann. Statt der Fernbedienung nimmst Du einen AVR/PIC/sowas. Ist zwar als Fake enttarnt, aber trotzdem eine für Dich sicherlich interessante Diskussion: http://www.mikrocontroller.net/forum/read-7-177540.html#new Gruß, Sebastian
http://www.ssv-embedded.de/ >http://www.mikrocontroller.net/forum/read-7-177540.html#new Darauf hab ich gewartet... ;)
Ich hatte keine Lust, nach dem Link zu gucken. (War ja auch nur eine nette Anmerkung, und keine bösgemeinte Kritik.)
Ok, danke für die Antworten, ich habe beschlossen das ganze erstmal mit einer kleinen Kamera auszuprobieren. Das heisst ich würde das ganze so angehen wie es sssssss vorgeschlagen hat. Da mein Laptop nur USB Ausgang hat sollte der COntroller über USB angeschlossen werden können. Was für HArd/Software brauche ich den insgesamt? 1. AVR-Entwicklungsplatine für USB 2. AVR ATmega16 16MHz 3. USB-Kabel 4. MMC- SPeicherkarte 5. Kleine Kamera evtl. die MCA-25 oder eine andere 6. Lötkolben, widerstände etc. 7. In System Programmer? Funktioniert der auch mit der USB-Platine oder brauche ich da was anderes? Fehlt hier noch etwas? Was für Software brauche ich denn? Empfehlt ihr eher C oder Assmbler? Bin wie gesagt noch totaler Anfänger und das ganze wird mein Jungfern-Microcontroller Projekt :-) Gruss Uli
Hallo Axel Rühl, grade heute bin ich auf die ITM C328 gestoßen. Ich bin grade drauf und dran so ein Teil zu bestellen. Die Kamera soll als 'Auge' für einen Bluetooth gesteuerten Roboter dienen. Die Bandbreite ist sehr beschränkt, daher hört sich das mit der C328 sehr verlockend an. Wo Du das Modul ja anscheinend schonmal am Laufen hattest, hast Du einen Peilwert wieviel JPGs/s in geringster Auflösung oder im Preview rauskommen? Die Datenblatt Angaben sind ja doch eher dünn. Gruß Christian Zieme
gehört eigentlich zu meinen Aufgaben, genau solche "Peilwerte" zu dokumentieren (auweia). nun, habe ich nicht gemacht... aus dem GEdächtnis: bei 80x60 ist es flüssig ab 180x240 ruckelts schon (8fps) und bei 640x480 bekommst Du 0.2Bilder/Sekunde. Erwarte bitte keine Wunder - die Quali ist nicht soo doll, die Dokumentatzion ist schlicht mangelhaft (siehe oben ->Mitschnitt angesagt) Die Beispielapplikation ist weder dokumentiert, noch ist die JPG-"Rückgewinnung", also das sichtbarmachen der Rohdaten erklärt, obwohl eine DLL dem Programm beiliegt. Ziemlich blöd also; zusammengefasst gesagt. Viele Grüße AxelR.
Danke für die schnelle Antwort, ich werde das Modul dann wohl bestellen. Für meine Zwecke reicht die kleine Auflösung aus. Ich habe nur befürchtet, dass man da eventuell nur 1fps oder weniger rausbekommt. Die entscheidenden Tipps zum Mitschneiden stehen ja schon oben :-) Aus Traces schlau werden, debuggen etc. ohne Doku ist ja auch mein Tagesgeschäft. Das gleiche Modul habe ich übrigens unter dem Namen UCAM100 bei roundsolutions.de gefunden. Ich werde mal da noch nachfragen, ob die weitergehende Infos haben. Gruß Christian Zieme
als Prozessormodul wäre das ARM Board hier aus dem Shop doch sicher nicht schlecht: http://shop.mikrocontroller.net/csc_article_details.php?saArticle[ID]=75 USB und MMC Sockel sind schon onBoard, ausserdem hat der ARM mehr Resourcen.
"ausserdem hat der ARM mehr Resourcen." in diesem Fall nicht nötig, es kommt bereits ein fertiges JPG als serieller Datenstrom raus (von den CRCs und Blockzählern mal abgesehen) Wer aber bisher mit ARM gearbeitet hat, dem kann man das Board sicher empfehlen.
pass aber auch auf die Abmasse und das Gewicht auf. Was bringt dir eine Kamera wo alles was du brauchst kannst aber 1.5 Kg wiegt. PS:*abo*
Hallo, ich hatte bisher nur eine mechanische lösung des problems, was dann aber zu umständlich ist... digikam, 2 servos und ein fallschirm in einem behälter unter dem rumpf... alles muss abgeworfen werden damit das flugzeug landen kann. jetzt würde ich gerne videoaufnahmen machen, wofür mir dann eine lösung überelektronik doch praktikabler erscheint. ist es möglich das ich ein cameramodul irgentwie mit einem usb-speicherstick verbinde? leider habe ich keine ahnung wie man einen mikrocontroller programmiert... mfg DA
>ist es möglich das ich ein cameramodul irgentwie mit einem >usb-speicherstick verbinde? Pattex... >leider habe ich keine ahnung wie man einen mikrocontroller >programmiert... Um einen USB-Stick an ein Kamera-Modul anschliessen zu können, braucht man einen USB-Host-Controller (Hardware) und den USB-Stack (Software). Gehen könnte das alles...
http://www.beyondlogic.org/usbnutshell/ aber bevor du nen usb-host implementierst, wuerde ich eher zu sd/mmc-karten raten. fuer nen usb-host wuerdest du hier im forum viel anerkennung ernten. das ist naemlich alles andere als trivial und so richtig hat sich da glaub ich noch keiner rangetraut.
SD- (und MMC-)Karten werden zwar inzwischen von Panasonic zur Speicherung von Videos benutzt, aber ich bezweifle, dass ein "normalsterblicher" Bastler, Videos auf einer solchen speichern kann. Die meisten (alle?) SD-Karten-Projekte arbeiten im SPI-Modus (der zur MMC kompatibel ist), der aber wohl eher zu langsam ist, um Videos zu speichern. Die Kommunikation mit einer Flash-Karte ist relative trivial (wurde schon mehrfach realisiert). Video ist aber ne Klasse anstrengender...
hab ich was ueberlesen? ich dachte es geht um bilder und nicht um video? wenn ich von der mca-25 ausgehe, dann sollte es doch selbst mit der schlechtesten spi-implementation moeglich sein 0.2 Bilder/sec zu speichern. da kann man die bits ja fast von hand in den flash meisseln...
Gerade bei Video erscheint mir der Ansatz mit einer herkömmlichen Digitalkamera sinnvoller - die macht alles, was nötig ist und schreibt das Resultat gleich fix und fertig auf eine SD- oder sonstwas-Karte. Das kann auch 'ne 100 EUR-Billigknipse, man muss bloß aufpassen, daß man nicht eine erwischt, bei der die Filmlänge durch was anderes als die Speicherkartengröße beschränkt ist.
@Alex: >jetzt würde ich gerne videoaufnahmen machen >hab ich was ueberlesen? Scheint so... Ich meine auf der Cebit oder eher der Hannover-Messe auf dem Stand von DILNETPC (SSV Embedded Systems) eine Videolösung gesehen zu haben... Wenn da nichts anderes (ausser Linux halt) drauf läuft, dann könnte man damit Videos aufzeichnen. Vielleicht gibt es ja noch irgendwo kleiner oder zumindest leistungsfähigere Boards.
tatsache, da hat sich jemand mit in den thread gemogelt. ok, video wird anspruchsvoller... aber dann wuerde ich erstmal klaeren, wo der videostream in entsprechender aufloesung und framerate herkommt und wie er in den controller kommt. wenn man dann erstmal die datenrate kennt, kann man sich nach ner moeglichkeit umsehen, wohin das ganze dann gespeichert werden soll. von usb-stick rate ich immernoch ab; mmc/sd kommt mit wenigen pins aus und cf waere zu ueberlegen, damit hab ich aber noch nicht gearbeitet.
Hi! Ich würde da der Einfachheit und Zuverlässigkeit halber einfach auf eine Speicherung der Daten im Flugzeug verzichten und stattdessen eine analoge Lösung anstreben. Schließlich ist ein Video digital in halbwegs passabler Qualität aufzuzeichnen und zu speichern nicht mehr so trivial und erfordert einiges an Rechenleistung, vor allem wen der Videostream zur Speicherung noch kodiert werden muss. Am ehesten würde ich hier eine gute Webcam mal ausschlachten probieren und das ganze dann an einen ARM pappen. Am einfachsten wäre sicher so eine "analoge" Kamera mit 2.4GHz Funkübertragungssystem zu nehmen. Die Reichweite in der Luft kann man sicher mit einer guten Antenne auf brauchbare Werte kriegen und halbwegs klein, leicht und sparsam wäre es auch. Die Aufzeichnung erfolgt dann halt am Boden mit entsprechender Hardware. Teuer ist es obendrein auch nicht. Hab bei Pollin so eine kleine Kamera mit Funkmodul für knapp 40€ gesehen. Braucht gerade mal 70mA bei 7,5 bis 12V. Mit der montierten Antenne bis 100m Reichweite im Freien ist zwar nicht berauschend, durch entsprechende Anpassung aber sicher verbesserbar. Und für 40€ ists auch mal egal wenn was schiefgeht. ciao Fasti
>Am einfachsten wäre sicher so eine "analoge" Kamera mit 2.4GHz >Funkübertragungssystem zu nehmen. Das Flugzeug bewegt sich... Da wird der Empfang nicht besser. Bevor man solchen Schnick-Schnack anfängt, sollte man sich überlegen, ob man nicht ne billige DV-Kamera erwirbt. Allerdings hat die dann wieder Probleme mit den Vibrationen. Bei einer Kauflösung gäbe es ja noch die Mini-Digital-Videokameras, die auf SD-Karten speichern. Die Bild-Qualität ist vermutlich nicht sooo prickelnd.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.