Hallo,
ich habe mir erst kürzlich ein Breakout Board für den ATXMega64A3 gemacht, der Unterschied zum ATXMega32A4 sollte nicht allzu groß sein.
Bis jetzt habe ich folgendes in Bascom ausprobiert:
- Event System
- DMA
- PWM
- PWM einlesen ohne CPU
- TWI
- UART
- ADC
- DAC
Funktioniert alles bestens, wenn man erst mal ein bisschen drin ist
Allerdings muss man ersteinmal die ganzen Optionen zum Einstellen verstanden haben (bsp: DMA), um hier etwas sinnvolles zu entlocken.
Programmiert habe ich mit einem ATAVRISP mk2, das einbinden in Bascom war ganz einfach, aber dazu gibts auch in der HELP Datei einige Hinweise.
Gruß
Chris
Das klingt doch alles sehr vielversprechend... @Matthias: Du hast doch den direkten Vergleich zwischen adxrs und mpu. Merkst du keine Unterschiede? Beim Gain irgendwelche unterschieldichen einstellungen?
@Chris: Dann können wir ja evtl. auf deine Xmega Erfahrungen zurückgreifen... :-D
Viele Grüße, William
-> http://william.thielicke.org/
Vom Gefühl her würde ich sagen rauscht der MPU mehr. Wirkte anfänglich unruhig. Die PID Werte musste ich auf über die Hälfte reduzieren.
Das kann ich über Messwerte belegen!
Ich kann zwar noch keine Absolutwerte liefern (dazu bräuchte ich eine GUI, die ich selbst programmieren kann, also in Basic und ohne OO), aber qualitative Signale kann ich euch zeigen:
Ich habe hier das niederwertige Byte des Y-ACC-Sensors nach Excel verfrachtet. Der Sensor liefert 16bit-Werte.
Die Werte lese ich so schnell aus, wie das Programm auf dem Atmel das hergibt. Dehalb kommen immer 4mal die gleichen Werte (was man in dieser Darstellung nicht sieht). Das Bild zeigt 2000 Werte und nahezu der volle Wertebereich des unteren Bytes der Sensorwerte wird ausgenutzt. Wohl gemerkt bei ruhig auf dem Tisch liegenden Copter.
Die gleichen Signale kommen auch aus dem auf dem sNQ Shorty verbauten MPU-6050 raus, Willas Software kann damit aber anscheinend umgehen, zumindest der Stretcho (identischer Hardwareaufbau, identische Software) flog damit ja prima.
Also meine "Erfahrung" würde ich gerne mit euch teilenWürde mir riesig Spaß machen, da mal etwas mitzuarbeiten.
Also rein theoretisch könnte man mein Board schon als IMUGuide verwenden, allerdings ist es ziemlich groß und jeder einzelne Pin ist extra herausgeführt. Aber testen sollte man damit die komplette Hardware können
Was man aber noch testen müsste:
- vertragen die ESCs die 3V3 vom AVR
- laufen die ESCs auch noch mit 500Hz (PWM), ansonsten würde man nur auf 250Hz kommen, was doch etwas wenig ist...
Gruß
Chris
Hi Chris!
Kann man dein Breakout-Board schon als GUIDE missbrauchen?
Dann würde ich mir das Enflechten sparen können. Ich habe zwar schon angefangen, das Schaltbild ist soweit fertig, aber da müsst ihr nochmal drüber schauen.
Das klingt wirklich super. Ich war nur von den technischen Daten her, ohne was getestet zu haben, der Meinung, dass dieser Chip ideal für eine GUIDE geeignet ist.
- Die Erzeugung der 6 PPM-Signale (ja, PWM... aber zur Unterscheidung gegenüber den echten PWM-Signalen, die wir für die Bürstenmotoren benötigt haben) sollte problemfrei möglich sein, so dass Willa seine I²C-PWM-Umsetzer in den wohlverdienten Ruhestand setzen kann.
- UARTs hat das Teil ebenfalls zur Genüge, so dass auch jede Menge Sensoren zusätzlich zu dem Satellit-Empfänger angeschlossen werden können.
- Mehrere Hardware-I²C-Ports, einer für den/die Sensor/en, einer für die Motorsteuerung, falls Willa daran festhalten will.
- 32 MHz Oszillator intern -> Dampf genug, außerdem den externen Oszi eingespart
- läuft mit 3,3 V -> keine Probleme mit der I²C-Komm zum Sensor.
Aber Achtung wegen der Kopplung zur GUI -> Spannungsbegrenzer und Längswiderstände (z.B. blaue LEDs) vorsehen.
Nochmal Achtung: Verstehen die normalen ESCs (die mit mehr als einer LiPo-Zelle arbeiten) die 3,3 V-Signale?
Die Programmierung über PDI erfordert einen anderen Programmer (als ich bisher verwendet habe), den gibt es aber an allen Ecken für 30 €uronen von DIAMEX (DIAMEX ALL AVR).
Lesezeichen