Forum: Mikrocontroller und Digitale Elektronik Projektumfeld für Quadcopter mit 2 Kameras


von Sören K. (burnersk)


Lesenswert?

Hallo,

ich plane für mich selber einen Quadcopter mit zwei Kameras.
Nun bin ich dabei, das Projektumfeld festzulegen und stehe bei der 
Frage, welchen Prozessor.

Angesehen habe ich mir schon ATmega128RFA1 mit brutto 250 KiBit/s 
Übertragungsrate. Nur reicht das für zwei Kamerasignale und zwei 
Steuerkanäle?
Ich kann mir eine Mindestauflösung für die Kameras momentan nicht 
errechnen.

Welche Prozessoren mit eingebauter Drahtlosverbindung gibt es denn noch?

Viele Grüße,




ATmega128RFA1: 
http://www.atmel.com/dyn/products/product_card.asp?part_id=4692
Projektvorlage: http://ardrone.parrot.com/parrot-ar-drone/de/

von klasse (Gast)


Lesenswert?

na das ist doch simpel:

320px x 240px x 10 frames/s = 768kb/s dann weißte so ziemlich genau wo 
hier deine Grenzen liegen, ohne Kompression geht da fast nichts, oder du 
überträgst deine Cam daten anders...

von klasse (Gast)


Lesenswert?

meine natürlich 768bit/s

von Sören K. (burnersk)


Lesenswert?

klasse schrieb:
> na das ist doch simpel:
>
> 320px x 240px x 10 frames/s = 768kb/s dann weißte so ziemlich genau wo
> hier deine Grenzen liegen, ohne Kompression geht da fast nichts, oder du
> überträgst deine Cam daten anders...

Jo,
aber kann man bei 320x240 noch gut was erkennen? Und ich glaube 20 
Frames sollten es schon sein.

OK, der Atmel fällt weg. Gibt es noch Prozessoren mit eingebautem WLAN?

von klasse (Gast)


Lesenswert?

10 frames sind schon sportlich und bei der Auflösung ist sowie schon 
lange Schluss für den AVR, von daher stellt sich die Frage nicht mehr 
nach der Erkennbarkeit.

von U.R. Schmitt (Gast)


Lesenswert?

Sören K. schrieb:
> Jo,
> aber kann man bei 320x240 noch gut was erkennen? Und ich glaube 20
> Frames sollten es schon sein.

Bevor Du deinen Übertragungskanal und die Signalverarbeitungshardware 
spezifizierst solltest Du erst mal wissen was Du an Daten hast.
 2 Kameras mit X mal Y Pixel und Z Frames pro Sekunde. Das in F 
Graustufen oder in Farbe mit G Bit Farbauflösung pro Pixel.

So jetzt sage uns mal die Werte:
X=?
Y=?
Z=?
F=?
G=?

Das ist als wenn Du noch nicht weisst ob Du ein Mountain-Bike, Downhill 
oder Rennrad willst aber schon die Ritzelsätze dazu kaufst ....

von U.R. Schmitt (Gast)


Lesenswert?

Hast Du denn schon den Quadrocopter und fliegt der schon wie er soll?

von Sören K. (burnersk)


Lesenswert?

U.R. Schmitt schrieb:
> So jetzt sage uns mal die Werte:
> X=?
> Y=?
> Z=?
> F=?
> G=?
>

Ich schätze mal das die folgenden Daten mindestwerte seien sollten:
X=320px
Y=240px
Z=16fps
F=4bit ( graustufen )

Könnt mich gerne verbessern. Habe keine Erfahrung darin.

von Uwe N. (ex-aetzer)


Lesenswert?

Hallo Sören,

die Rechnung von "klasse" geht nicht auf. Er geht von einem S/W-Bild 
aus.
Auch dessen Nachtrag ist lustig: 768 Bit pro Sekunde bei 10 Frames 
bedeutet einen Spitzen-Komprimierer !

Ich komme auf etwa 1.7Mbyte/s bei 10 Frames und 18Bit Farbe 
(unkomprimiert). Bin aber auch kein Rechenkünstler ;-)


> Gibt es noch Prozessoren mit eingebautem WLAN?

Hier wirst du ein entsprechendes Modul verwenden müssen, das gibts AFAIK 
nicht im selben Gehäuse wie der Controller.


Gruss Uwe

von Karl H. (kbuchegg)


Lesenswert?

Sören K. schrieb:

> Könnt mich gerne verbessern. Habe keine Erfahrung darin.

Wenn du eine Videokamera hast, würde ich dir empfehlen damit mal 
rauszugehen und ein paar Aufnahmen zu machen. Eventuell vom Fahrrad aus 
oder vom Auto (langsam fahren). Vielleicht findet sich auch wo ein 
Aufzug mit Sicht nach aussen.

Ziel ist es, möglichst realistisch ein Video zu drehen, dass 
Bildinhaltmässig möglichst dem entspricht, was du mit deinem Kopter zu 
Gesicht bekommen wirst.

Wenn du das Video hast, dann jagst du es durch diverse 
Videobearbeitungssoftware durch und lässt es dir zb auf 320*240 Pixel 
umrechnen.

Dann kannst du beurteilen, wie sinnvoll es ist, mit einer derartigen 
Briefmarke navigieren zu wollen.

Sinn der Sache ist es, noch ehe die eigentliche Arbeit losgeht, 
abschätzen zu können, was du an Bildinformation tatsächlich brauchst, 
womit du rechnen kannst, wie sinnvoll das ganze ist und wo die Grenzen 
in der Benutzbarkeit liegen werden.
Wenn du diese 'Erfahrung' dann hast, kannst du auch viel besser 
einschätzen welche Kameraanforderungen und damit auch welche 
Anforderungen du an die Übertragung hast.

von klasse (Gast)


Lesenswert?

Uwe N. schrieb:
> die Rechnung von "klasse" geht nicht auf. Er geht von einem S/W-Bild
> aus.
> Auch dessen Nachtrag ist lustig: 768 Bit pro Sekunde bei 10 Frames
> bedeutet einen Spitzen-Komprimierer !

Warum geht die nicht auf?
Ich habe mit minimalsten Anforderungen (S/W,minimal Auflösung, minimal 
Frames) schon bewiesen, dass ein AVR dafür nicht geeignet ist, 
demzufolge müsste man komprimieren, was fürn AVR dann wohl erst recht zu 
viele wäre...
Jeder normal Desktop System wäre logischerweise unterfordert...eine AVR 
wohl eher nicht;-)

Wo ist jetzt genau Dein Problem?

von U.R. Schmitt (Gast)


Lesenswert?

Sören K. schrieb:
> X=320px
> Y=240px
> Z=16fps
> F=4bit

Dann ist deine unkomprimierte Netto Datenrate ganz einfach
X  Y  Z * F = 4915200 Bit pro Sekunde oder etwas mehr als 600 KByte/s

Abgesehen von dem was Karl Heinz oben gesagt hat.

Ohne deine Bastellust und Euphorie abwürgen zu wollen, was hast Du denn 
schon gemacht in Richtung Quadrocopter?
Fliegt der schon? Hast Du ihn schon mal mit eigener Software 
gesteuert/vom PC ferngesteuert.
Wenn das GUT funktioniert, dann käme die nächsten logischen Schritte:
-Kamera als Nutzlast
-Bilder auf PC übertragen
-Bilder im Copter verarbeiten
-Kamera zur Steuerung nutzen

von Uwe N. (ex-aetzer)


Lesenswert?

klasse schrieb:
> meine natürlich 768bit/s

Damit wäre ein AVR sicherlich nicht überfordert. Kommt dir dieser Wert 
nicht selbst ein wenig zu klein vor ?

von Karl H. (kbuchegg)


Lesenswert?

U.R. Schmitt schrieb:

> Abgesehen von dem was Karl Heinz oben gesagt hat.

Mir gings eigentlich darum, dass er sich selbst ein Bild davon macht, 
was von einem Briefmarkenvideo 320*240 zu erwarten ist. Um aktiv danach 
fliegen zu können, ist das IMHO unbrauchbar.

Glauben tut dir das keiner. Also muss er es selber sehen.

von flo (Gast)


Lesenswert?

Hallo,
woher hast du den atmega? was kostet der?
mfg flo

von klasse (Gast)


Lesenswert?

Sören K. schrieb:
> 320px x 240px x 10 frames/s = 768kb/s

Uwe N. schrieb:
> klasse schrieb:
>> meine natürlich 768bit/s
>
> Damit wäre ein AVR sicherlich nicht überfordert. Kommt dir dieser Wert
> nicht selbst ein wenig zu klein vor ?

Na dann habe ich dann wohl das "k" vergessen, wollte nur Byte in Bit 
ändern, da ist das wohl untergegangen...ups

von Sören K. (burnersk)


Lesenswert?

U.R. Schmitt schrieb:
> Ohne deine Bastellust und Euphorie abwürgen zu wollen, was hast Du denn
> schon gemacht in Richtung Quadrocopter?

Es ist erst mal nur das Projektumfeld und noch nichts gekauft etc..
Erst muss erst mal das Feld abgesteckt werden bevor gegraben werden kann 
;)

In Sachen Robotik hab ich schon zwei Projekte absolviert. Auch mit 
Gelenken, also Vergleichbar mit Koordination von vier Rotoren.


Karl heinz Buchegger schrieb:
> Mir gings eigentlich darum, dass er sich selbst ein Bild davon macht,
> was von einem Briefmarkenvideo 320*240 zu erwarten ist. Um aktiv danach
> fliegen zu können, ist das IMHO unbrauchbar.

Es geht ja ums "danach fliegen". Und ich weiß nicht, was ich mindestens 
haben muss für eine Auflösung. Btw. Graustufen reich völlig. SW ist ein 
no-go.


flo schrieb:
> woher hast du den atmega? was kostet der?

ich habe den atmega noch nicht und keine ahnung was er kostet. hatte 
eben nur versucht mich im vorfeld um mögliche plattform-kandidaten zu 
erkundigen.
> http://www.atmel.com/dyn/products/product_card.asp?part_id=4692

von Karl H. (kbuchegg)


Lesenswert?

Sören K. schrieb:

> In Sachen Robotik hab ich schon zwei Projekte absolviert. Auch mit
> Gelenken, also Vergleichbar mit Koordination von vier Rotoren.

Das du dich da mal nicht täuscht

>> Mir gings eigentlich darum, dass er sich selbst ein Bild davon macht,
>> was von einem Briefmarkenvideo 320*240 zu erwarten ist. Um aktiv danach
>> fliegen zu können, ist das IMHO unbrauchbar.
>
> Es geht ja ums "danach fliegen". Und ich weiß nicht, was ich mindestens
> haben muss für eine Auflösung. Btw. Graustufen reich völlig. SW ist ein
> no-go.

Genau deswegen hätte ich den Feldversuch vorgeschlagen.


Übrigens bin ich auch der Meinung du solltest erst mal lernen, einen 
Kopter konventionell mit Fernsteuerung zu beherrschen. Denn: Im Notfall 
musst du in der Lage sein, dem OnBoard-µC den Saft abzudrehen und das 
Teil händisch runter zu bringen. Und zwar aus jeder Fluglage heraus! 
Sonst wird das nämlich ein ganz kurzes, teures Vergnügen.

von Sören K. (burnersk)


Lesenswert?

Karl heinz Buchegger schrieb:
> Übrigens bin ich auch der Meinung du solltest erst mal lernen, einen
> Kopter konventionell mit Fernsteuerung zu beherrschen. Denn: Im Notfall
> musst du in der Lage sein, dem OnBoard-µC den Saft abzudrehen und das
> Teil händisch runter zu bringen. Und zwar aus jeder Fluglage heraus!
> Sonst wird das nämlich ein ganz kurzes, teures Vergnügen.

Ganz deiner Meinung. Aber die ersten Flugstunden (mind 10 fehlerfreie) 
mit dem Projekt, sollte es dazu kommen, werden sowieso angebunden 
(maximal 5 cm hoehe) über einer schaumstoffplatte sein.
Ich habe aus meinem ersten Robotik Projekt gelernt^^ Im zweiten war er 
schon mal nach oben hin "angeschallt".

@all, wenn ihr noch Anmerkungen habt, auf was man noch Achten sollte 
immer her. Auch wenn es sich nach "pille-palle" anhört.
Ein Fachindiot wie meiner seiner denkt meißtens nur an die 
kompliziertesten Fälle^^ (Keine Ironie/Sarkasmus!)

von U.R. Schmitt (Gast)


Lesenswert?

Sören K. schrieb:
> Es geht ja ums "danach fliegen". Und ich weiß nicht, was ich mindestens
> haben muss für eine Auflösung. Btw. Graustufen reich völlig. SW ist ein
> no-go.

Meinst Du daß Du via Fernsteuerung fliegst und quasi durch das, das die 
Kameras an Bildern liefern via Fernsteuerung steuerst. Ohne den Copter 
direkt zu sehen?
Und was machst Du wenn du nach einem Windstoß nur noch blau (grau) 
siehst?

Warum willst Du schon den Prozessor festlegen mit dem du (was 
eigentlich) auf dem Copter mit den Bildern machen willst wenn Du noch 
nicht mal einen Copter hast.
Mach doch einen Schritt nach dem anderen. (Meine Meinung)

von U.R. Schmitt (Gast)


Lesenswert?

Sören K. schrieb:
> Erst muss erst mal das Feld abgesteckt werden bevor gegraben werden kann
> ;)

Schon, aber es macht doch keinen Sinn die Küche auszusuchen bevor der 
Bauplatz ausgegraben ist.

von Sören K. (burnersk)


Lesenswert?

U.R. Schmitt schrieb:
> Meinst Du daß Du via Fernsteuerung fliegst und quasi durch das, das die
> Kameras an Bildern liefern via Fernsteuerung steuerst. Ohne den Copter
> direkt zu sehen?

jo, aber bis das passiert (ohne Sichtverbindung fliegen) hat bin ich 
Experte auf dem Gebiet KI-Steuerung xD
Ne im Ernst: Man sollte die Kameras auch schon zum Navigieren nutzen 
können, was aber nicht heißt, dass man diese auch dafür nutzen muss.

> Warum willst Du schon den Prozessor festlegen mit dem du (was
> eigentlich) auf dem Copter mit den Bildern machen willst wenn Du noch
> nicht mal einen Copter hast.
> Mach doch einen Schritt nach dem anderen. (Meine Meinung)

Weil das, meiner Meinung nach, eines der wenigen wichtigsten Komponenten 
ist. Neben der zuverlässigen Verbindungen natürlich.
Wenn ich keinen µC finde, brauche ich mit dem Projekt gar nicht 
anfangen. Ein dummer Quadcopter ohne Steuerungsmöglichkeit mit 4 
Motoren an einer Batterie bringt herzlich wenig.
Außedem kann man vom µC auch gut auf die erforderlichen 
Komponenten/Design schießen und Kosten einschätzen.

von Simon K. (simon) Benutzerseite


Lesenswert?

Willst du einen Mikrocontroller für Alles benutzen? Dann geh *in 
Richtung* ARM7.

Bei mir hat es etwa 1Jahr gedauert, von erste Pläne bis fliegender 
Quadrokopter. Die Betonung liegt auf "fliegend". Er hat nämlich noch 
genügend Krankheiten. Er zittert noch bei Windböen, Parameter sind noch 
hard-wired und können nicht verändert werden etc, pp.
Ich habe etwa 5-6 Jahre AVR Erfahrung und habe zwei ATxmega Prozessoren 
benutzt (Regelung, Motorsteuerung).

Alleine, bis ich die BLDC Ansteuerung funktionsfähig hatte, sind schon 
ein paar Monate ins Land gegangen.
Warum baust du nicht erst mal einen Quadrokopter, der auch fliegt? Das 
ist schon ne große Herausforderung, wie ich finde.
Das Projekt hat bei mir (Wie gesagt, er kann "so gerade" fliegen) 60 .h 
und .c Dateien (!).

Von Analoger Schnittstelle, Inertial Measurement Unit, Lageregler, 
Mixer, PPM Signale Einlesen (Fernsteuerung), Motoransteuerung, ganz 
kleine Kommandozeile via UART, Mathefunktionen bis Systemfunktionen.

Nur als kleiner Überblick. Vielleicht hilft es ja.

von Sören K. (burnersk)


Lesenswert?

Simon K. schrieb:
> Willst du einen Mikrocontroller für Alles benutzen? Dann geh *in
> Richtung* ARM7.

Jo, werde ich mir mal anschauen.


> Warum baust du nicht erst mal einen Quadrokopter, der auch fliegt? Das
> ist schon ne große Herausforderung, wie ich finde.

das ist ja auch eine Herausforderung. Aber wenn ich den Quadrokopter nun 
"einfach" baue, wird das mit der cam nichts. Bis zu 200 Euro habe ich 
eingeplant. Und wenn ich nach dem funktionierenden Quadrokopter einen 
neuen mit cam bauen muss sprengt das wohl das Budget.


Ich habe btw. mit einer Entwicklungszeit von bis zu zwei Jahren geplant. 
Für die Basisvariante.

von Sören K. (burnersk)


Lesenswert?

Simon K. schrieb:
> Willst du einen Mikrocontroller für Alles benutzen? Dann geh *in
> Richtung* ARM7.

hmm, irgentwie bin ich gerade zu blind oder zu blöd zum Suchen. Am 
Beispiel vom ARM Cortex-M0. Wo kann man den kaufen? Wie sind da die 
Preise?

von Simon K. (simon) Benutzerseite


Lesenswert?

Sören K. schrieb:
> das ist ja auch eine Herausforderung. Aber wenn ich den Quadrokopter nun
> "einfach" baue, wird das mit der cam nichts.

Wieso nicht?

> Bis zu 200 Euro habe ich
> eingeplant. Und wenn ich nach dem funktionierenden Quadrokopter einen
> neuen mit cam bauen muss sprengt das wohl das Budget.

200€? Vergiss es.

Alleine 4 Motoren und eine (gebrauchte) 4 Kanal Funkfernsteuerung kostet 
schon 200€. Da hast du noch nicht mal mit dem Quadrokopter angefangen.

@Sören: ein ARM Cortex-M0 ist erst mal nur ein Prozessortyp. Du musst 
dich bei gängigen Herstellern nach Bauteilen erkundigen (NXP, Atmel, ?).

von Sören K. (burnersk)


Lesenswert?

Simon K. schrieb:
> 200€? Vergiss es.
>
> Alleine 4 Motoren und eine (gebrauchte) 4 Kanal Funkfernsteuerung kostet
> schon 200€. Da hast du noch nicht mal mit dem Quadrokopter angefangen.

Funkfernsteuerung nicht inklusive.


Simon K. schrieb:
> @Sören: ein ARM Cortex-M0 ist erst mal nur ein Prozessortyp. Du musst
> dich bei gängigen Herstellern nach Bauteilen erkundigen (NXP, Atmel, ?).

Atmel hat Cortex-M0 Cores? OK, ich bin da ja auch nur im Bereich 8Bit 
ATmegaXXX unterwegs. Hmm "ARM-Based" im Menü, mir bis jetzt noch nicht 
aufgefallen bei Atmel^^

von ... (Gast)


Lesenswert?

http://www.heise.de/newsticker/meldung/iPhone-Flugdrohne-im-Handel-erhaeltlich-1060823.html

Ok, kostet wohl 299,- und der Bastelspaß geht natürlich auch flöten.

von Sören K. (burnersk)


Lesenswert?

... schrieb:
> 
http://www.heise.de/newsticker/meldung/iPhone-Flugdrohne-im-Handel-erhaeltlich-1060823.html
>
> Ok, kostet wohl 299,- und der Bastelspaß geht natürlich auch flöten.

Uuuuund... es ist ein iPhone! Für micht ein no-go :P Aber über Geschmack 
lässt sich streiten - nicht hier^^

von ... (Gast)


Lesenswert?

Aber da hast du schon mal einen Anhaltspunkt für den Prozessor:
"Die Signalverarbeitung übernimmt ein ARM9-Prozessor (468 MHz)."

von Arc N. (arc)


Lesenswert?

Sören K. schrieb:
> ... schrieb:
>>
> 
http://www.heise.de/newsticker/meldung/iPhone-Flugdrohne-im-Handel-erhaeltlich-1060823.html
>>
>> Ok, kostet wohl 299,- und der Bastelspaß geht natürlich auch flöten.
>
> Uuuuund... es ist ein iPhone! Für micht ein no-go :P Aber über Geschmack
> lässt sich streiten - nicht hier^^

Es ist kein iPhone das suggeriert nur die Überschrift von Heise (bzw. 
gibt es zur Steuerung z.Z. nur eine App für's iPhone),
Das API ist offen: https://projects.ardrone.org/wiki/ardrone-api/Wiki 
bzw. http://ardrone.parrot.com/parrot-ar-drone/dev/developers

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
Noch kein Account? Hier anmelden.