Forum: Mikrocontroller und Digitale Elektronik Driftkompensation von Quadrocopter mit Magnetsensor


von Max (Gast)


Lesenswert?

Hallo an alle,

Wie allgemein bekannt, driftet ein MEMS Gyro mit der Zeit recht 
ordentlich. Pitch und Roll lassen sich mit einem Beschleunigungssensor 
und einem Kalmanfilter relativ leicht kompensieren, Yaw aber leider 
nicht.
Ich habe, was die Driftkompensation des YAW-Winkels mit Hilfe eines 
Magnetsensors betrifft, viel recherchiert. Es gibt mehrere Methoden 
sowohl Soft- als auch Hard-Iron Effekte auszugleichen, aber soweit ich 
das verstanden habe, gilt dass nur für Störfelder die sich zum Zeitpunkt 
der Kalibrierung auch in Messreichweite befinden. Da der Quadro 
allerdings hauptsächlich Indoor eingesetzt wird, kommen ständig neue 
Störfelder hinzu.

Gibt es Filtermodelle bei denen das mit einkalkuliert wird?

Vielen Dank im Voraus!

von Moritz (Gast)


Lesenswert?

Bei meinem Quadcopter (kommerzielle Regelung) hält sich dieser Drift 
sehr in Grenzen, bzw. ist kaum wahrnehmbar. Um Yaw dreht er sich 
praktisch gar nicht. Nick/Roll sind eine gefühlte Ewigkeit stabil. 
Selbst bei kräftigerem (gleichmäßigem)  Wind kann ich den Copter in 
einem festen Winkel gegen den Wind stellen. Irgendwann muss ich halt 
eingreifen, klar - denn ich bin und bleibe der Pilot.

von Max (Gast)


Lesenswert?

Erklärtes Ziel des Projektes ist aber die Verwendung von Low-Cost 
Komponenten, d.h. im Falle der IMU etwa 35-40$. Da sind dann Acc,Gyro 
und Magnetsensor drauf. Von daher muss die fehlende Genauigkeit mit 
Gehirnschmalz ausgeglichen werden! ;-)

Trotzdem danke für dein Feedback!

von Moritz (Gast)


Lesenswert?

Für 20$ bekommst du eine FC mit Gyro, Acc und Magnetsensor und sogar der 
Controller ist schon drauf incl. Kleinkram wie Spannungsregler und was 
man noch so braucht. Da kannst du dann eine fertige Firmware z.B. 
Multiwii draufmachen. Besser und billiger bekommst du es nicht hin.
Wenn du ALLES selber machen willst würde ich ohne den Schnickschnack wie 
ACC und Magneto anfangen. Fliegen tut das dann schonmal (ich fliege 
sowieso meistens Gyro.only).

von Max (Gast)


Lesenswert?

Der Quadro fliegt wunderbar. Alles selber gemacht. Ich will jetzt nur 
den Yaw-Drift kompensieren. Dabei ist das Problem weniger der Flug mit 
FB sondern der Autonome Flug. Es sind mehrer Anwendungen implementiert 
wie zB. Objekterkennung und Co. Was ich damit sagen will ist, dass das 
Hauptaugenmerk auf dem Autonomen Flug liegt und da sind die 3° Drift die 
nach etwa 5-10min entstehen durch aus problematisch, gerade beim 
Anwenden von Graphen-Algorithmen wie Tiefen- oder Breitensuche.

Ich muss dazu sagen, dass ich bereits eine passable Lösung entwickelt 
habe, allerdings möchte ich meinen Ansatz mit Ideen anderer vergleichen 
um meine Lösung besser einordnen zu können.

von Moritz (Gast)


Lesenswert?

Respekt, da bist du schon ganz schön weit gekommen. Klinke mich hier 
(als normaler RC-Pilot) mal aus um die wahren Experten zu Wort kommen zu 
lassen :)

von Max (Gast)


Lesenswert?

Bevor ich mich hier mit fremden Federn schmücke, muss ich dazu sagen, 
dass an dem Projekt verschiedene Leute arbeiten und gearbeitet haben.

Hat sonst eventuell jemand einen Ansatz der in die Richtung geht?

von Wonderbra (Gast)


Lesenswert?

Max schrieb:

> Der Quadro fliegt wunderbar. Alles selber gemacht. Ich will jetzt nur
> den Yaw-Drift kompensieren. Dabei ist das Problem weniger der Flug mit
> FB sondern der Autonome Flug. Es sind mehrer Anwendungen implementiert
> wie zB. Objekterkennung und Co. Was ich damit sagen will ist, dass das
> Hauptaugenmerk auf dem Autonomen Flug liegt und da sind die 3° Drift die
> nach etwa 5-10min entstehen durch aus problematisch, gerade beim
> Anwenden von Graphen-Algorithmen wie Tiefen- oder Breitensuche.
>
> Ich muss dazu sagen, dass ich bereits eine passable Lösung entwickelt
> habe, allerdings möchte ich meinen Ansatz mit Ideen anderer vergleichen
> um meine Lösung besser einordnen zu können.

Mich wundert, dass ein Genie hier Fragen stellst.

von je. (Gast)


Lesenswert?

Wenn man den copter also per tiefen-, resp breitensuche ein gebiet 
absuchen laesst kommt man immerwieder an vorherigen punkten vorbei. dann 
wuerd ich den magnetsensor an disen Punkten nochmals messen.

von Max (Gast)


Lesenswert?

Wonderbra schrieb:
> Mich wundert, dass ein Genie hier Fragen stellst.

Wer hat denn behauptet, ich sei ein Genie?!

von Max (Gast)


Lesenswert?

je. schrieb:
> Wenn man den copter also per tiefen-, resp breitensuche ein gebiet
> absuchen laesst kommt man immerwieder an vorherigen punkten vorbei. dann
> wuerd ich den magnetsensor an disen Punkten nochmals messen.

Das mit der Graphensuche war nur ein Beispiel. Es geht mir primär um 
eine Driftkompensation des Yaw-Winkels unabhängig von der Aufgabe, die 
der Quadro gerade verrichtet. Im Endeffekt, kann man sich den 
Quadrocopter auch ganz weg denken, denn es geht mir ja erstmal mehr um 
den Filter, die Implementierung im konkreten Fall ist dann eine andere 
Geschichte.

Es wäre echt schön, wenn sich noch mal jemand dazu äußern würde und mir 
vielleicht einen Ansatz zeigt, wie andere das Problem gelöst haben.
Bei Interesse, kann ich auch mal meine Idee vorstellen.

Danke...

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.