PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : 2 Atmegas verwenden oder doch alles in einem



moritz31
11.03.2014, 11:59
Hey Roboternetz Communnity :)

nach dem das ABI jetzt schon fast geschafft ist überleg ich gerade was ich nach der Schulzeit machen könnte bevor es an die UNI geht. Da ich schon immer mal gerne etwas mehr mit Microcontroller als simple Messungen (Wetterstation) oder LED-Geschichten bzw Servosteuerungen machen wollte kam ich auf die Idee einen kleinen Quadrocopter zu entwicklen.

Soweit so gut. Jedoch will ich auf dem Quadrocopter einiges an Sensorik unterbringen (Höhenmessung,Gyro,Temperatur,Luftdruck,GPS usw) da erschien es mir sinnvoll das ganze nicht auf einem Atmega aufzubauen, sondern ein Atmega zu benutzen um die Sensoren auszulesen, und ein Atmega um die ESC's anzusprechen. Jedoch würde ich auch gerne die Gyro Daten an den Motoratmega senden um das ganze bei keiner Steuereingabe ins Gleichgewicht zu bringen, jetzt meine Frage soll ich nun das ganze auf 2 Atmegas aufbauen oder doch eher in einem ?
Wie würdet ihr das ganze realisieren ? Bin ich vielleicht einfach auf dem falschen Weg ?

Würde mich über konstruktives Feedback freuen. (Als Atmega kommt vllt auch ein Arduino zum Einsatz, weiß ich noch nicht so genau).

Mfg
Moritz

PS: Sorry wenn ich das im Falschenthemenbereich hab bin mir nicht so sicher wohin damit.

Che Guevara
11.03.2014, 12:33
Hi,

also ich würde alles auf einem µC machen, dann sparst du dir die extra Kommunikation schonmal (ein Kopter sollte mit mind. 500Hz Regelfrequenz laufen).
Ich habe auch schon eine komplette Steuerung mit allem drum-und-dran entwickelt, als µC verwende ich einen ATXMega.
Vorteil:
- 16Bit Hardware Pwm
- 32MHz Takt
- DMA
- Event-System
- mehrere TWI, SPI & USART
- läuft mit 3V3 (die meisten Sensoren auch --> keine Levelshifter notwendig)

Einen Arduino würde ich nicht verwenden, der braucht einfach zu viel Platz. Hast du den schon Erfahrung mit selbstgelayouteten Platinen? Dann kannst du alles genau so machen, wie du willst.
Welche Sensoren willst du den verwenden (Typenbezeichnung)?
Als erstes würde ich mal nur mit dem Gyro anfangen, dann den Baro dazu. Kompass ist meistens etwas heikel, weil er sehr stark von den Motoren / Leitungen gestört wird (--> etwas Erfahrung ist nicht schlecht, um ihn an einem geeigneten Platz unterzubringen).
Welche Regler willst du verwenden? Ich hab die letzten Jahre gekaufte Regler (Turnigy-Plush) verwendet, bin jetzt erst auf eigene umgestiegen und möchte diese nicht mehr missen!!
Welche Größe / Gewicht / Anordnung hast du angepeilt? Am Anfang empfiehlt sich IMHO ein Quadrocopter mit 500 bis 1000g. Da kann dann auch bei einem Absturz nicht sooo viel passieren (--> auf die Dauer günstiger).

Gruß
Chris

moritz31
11.03.2014, 13:55
@Che Guevara
danke für die ausführliche antwort :) mit richtigen Platinen hab ich noch nicht so viel erfahrung, hab mir bis jetzt immer en kauderwelch auf lochraster zusammengelötet, wobei ich nun am überlegen bin ob ich es mal mit der Direkt-Toner-Methode versuche.

Für den Prototyp I ist erstmal nur eine Rechts simple konstruktion mit 4 günstigen motoren + regler geplant. Als Regler hatte ich auch viel über die Turning Push gelesen.
Darüber welche Sensoren ich genau verwende hab ich mir in anbetracht des ABI's noch net gemacht, hab erstmal grob überlegt was überhaupt benötigt wird.

Che Guevara
11.03.2014, 15:07
Hi,

also mit Lochraster brauchst du da nicht groß anfangen, das ist EMV technisch ein Alptraum. Es würde ja reichen, wenn du in der Lage bist, ein Layout zu fertigen, es gibt genügend günstige Anbieter, die dir deine Platine dann fertigen.
Die Sensoren würde ich mir aber relativ am Anfang aussuchen (also Gyro + ACC, evtl. als Kombi ala MPU60x0). Diese entscheiden denn dann auch mit darüber, welche Schnittstellen du am µC benötigst und dementsprechend, welche Pins du benötigst bzw. noch frei hast.
Hast du den schon Erfahrung in Sachen µC programmieren? Welche Sprache möchtest du verwenden?

Gruß
Chris

moritz31
11.03.2014, 15:12
jo den MPU6050 hatte ich mir schon überlegt für Gyro + ACC
platinen layout werde ich glaub ich noch schaffen wobei ich es gerne mal mit der besagten Direkt-Toner-Methode versuchen würde :)
Erfahrung mit mc's in programmierung hab ich wie oben beschrieben schon, als Sprache kam da entweder den Arduino kram oder C zum einsatz, wobei ich an C festhalten werde :)

Gruß Moritz

Che Guevara
11.03.2014, 16:41
Es ist ja egal, ob du die Platinen dann fertigen lassen willst oder selbst machst, ein Layout musst du erstellen.
Hast du den Erfahrung im Löten? Ein QFN-Chip ist nichts für Anfäger in Sachen SMD, mit etwas Übung gehts aber leicht von der Hand.

Gruß
Chris

moritz31
11.03.2014, 17:01
mit löten hab ich erfahrung :/ jedoch mit SMD teilen überhaupt nicht :( von daher weiß ich nicht ob ich das hinbekomme ^^

Peter(TOO)
12.03.2014, 01:53
Hallo Moritz,

Bei QFP, bzw. Fine Pitch, gibt es einen einfachen Trick:
1. Du lötest eine Zinnraupe über die ganze Reihe Anschlüsse, dabei hast du dann einen einzigen Kurzschluss.
2. Du nimmst das überschüssige Lot mit Lötsauglitze wieder weg.
Mit etwas Übung geht das dann recht flott.

1.27mm Pitch kann man mit einer feinen Spitze und 0.4mm Lot einzeln löten.

MfG Peter(TOO)

BMS
12.03.2014, 08:11
Hallo,
für viele Sensoren sind sog. Breakout-Boards vorhanden, wo der entsprechende SMD-Chip aufgelötet ist, meist mit notwendiger Außenbeschaltung (Abblockkondensatoren usw.). Die Signale werden üblicherweise auf Stiftleisten herausgeführt und können so gut "verbastelt" werden. Preislich liegen diese Breakout-Boards meist im Bereich 10...20 Euro. Erhältlich z.B. bei robotikhardware, watterott, pololu, ebay ....
Grüße, Bernhard

durchgebrannt
12.03.2014, 08:23
Sofern du etwas mehr Leistung haben möchtest und den Schritt zum ARM nicht scheußt, würde ich dir entweder einen Cortex M4 von TI oder ST empfehlen. Dabei sollte der von TI deine Anforderungen leicht erfüllen können. Ein wesentlicher Vorteil der ARMs ist, dass dese über eine FPU verfügen und dir so das Rechen erleichtern können.

--> einfaches Dev-Board für den TI ARM --> TIVA C Launchpad (12$ inclusive Versand)

Gruß Jannis

Che Guevara
12.03.2014, 10:34
Hi,

also die "Zinnraupenlösung" ist eigentlich eher was für TQFP u.ä., bei QFN sind die Anschlüsse unter dem Gehäuse. Es gibt aber sowohl auf youtube, als auch im Netz einige Tips & Tricks dazu.
BOBs sind keine schlechte Idee, brauchen jedoch etwas mehr Platz. Für den ersten Versuch sollte das aber vollkommen in Ordnung sein.
Eine FPU braucht man hierfür nicht (schadet aber auch nicht): Wer einwenig Programmieren kann, schafft es, komplett ohne floatingpoint auszukommen, man muss nur manchmal etwas mehr überlegen bzgl. Skalierung und Overflow der Variablen.

Gruß
Chris

moritz31
12.03.2014, 17:02
mhhh also diese QFN hören sich schon ziemlich schwer für mich zum löten an ....

mir würde es erstmal reichen mit 4PWM die 4 Motoren anzusteuern + die Werte vom Gyro zu bekommen, da reicht glaub ich schon bei weitem ein Atmega32, den gibt es ja auch als TQFP(miit der Raupe hab ich schon gesehen, denke das ich dass auch hinbekommen würde). Mit dem beschriebenen Ätzverfahren sollte es auch keine Probleme von wegen Leiterbahndicke geben oder ?