Beschleunigungssensor

Gast #2671581
Immer fleißig in festem Zeittakt aufaddieren. Und das für jede 
Integration ein mal. Das Driftverhalten und die Genauigkeit vieler 
Sensoren reicht aber nicht aus, um darüber zu zuverlässigen Wegstrecken 
zu kommen.
#2671600
Quaternionen sind nur eine andere Darstellungsmöglichkeit für 
Rotationen. Die haben im Gegensatz zu den "normalen" Eulerwinkeln den 
Vorteil, dass es keine Singularitäten gibt. Da du 2D sagst (sprich kein 
Flugzeug/Heli...), wird das für dich nicht relevant sein.

Eine kontinuierliche Integration entsprich einer diskreten Summation, 
sprich hier musste einfach nur immer a*deltaT^2 aufaddieren. Dein deltaT 
sollte konstant sein, also per Timer im µC erzeugen.

Du musst die aufintegrierte Position von Zeit zu Zeit mit einem anderen 
(absoluten) Sensor stützen, wie z.B. GPS. Das Geheimnis liegt dann 
natürlich darin, wie du die zwei Messungen (bzw Vorhersage und Messung) 
miteinander verheiratest, Stichwort Sensordatenfusion (z.B. mit 
Kalmanfilter und Konsorten). Das ist dann je nach Kenntnisstand u.U. 
nicht mehr wirklich trivial.

Die Position von was willst du überhaupt schätzen? Auto, Boot, 
Modellauto, indoor/outdoor, Genauigkeitsanforderungen...
#2671704
Tim S. schrieb:

> Wir haben ein 9-DOF
> Sensorboard auf diesen angebracht und versuchen die Lage des Kopters zu
> ermitteln.

Lage oder Position? Die Fluglage wird durch die Euler-Winkel beschrieben 
(oder eben Quaternionen). Da ihr ein 9-DOF-Board habt, dürften die schon 
irgendwo rausfallen.

Die Position lässt sich zuverlässig (und vor allem über einen längeren 
Zeitraum) nur unter Zuhilfenahme von GPS oder ähnliche Verfahren 
ermitteln. Eine numerische Trägheitsnavigation/Odometrie wird kaum 
ausreichend genaue Ergebnisse liefern, um anschließend als Regelgröße 
fungieren zu können (ich unterstelle jetzt mal, dass ihr die Position 
nicht nur zum Selbstzweck ermitteln wollt).

Selbst theoretisch (also ohne Messrauschen und Rechteckfehler beim 
Integrieren) reichen die Messwerte des Beschleunigungssensors alleine 
nicht aus, um bei einem Fluggerät die Position zu ermitteln. Die 
Freiheitsgrade sind nämlich gekoppelt: aufgrund der Fliehkraft messen 
die Sensoren auch Rotationen des Geräts. Diese Messfehler können aber 
nur dann korrekt herausgerechnet werden, wenn die Drehrate bekannt ist 
(dafür sorgt der Kreisel) und der Abstand des Sensors vom Drehzentrum.

Ums kurz zu machen: um die Position des Geräts zu regeln, solltet ihr 
noch einen GPS-Empfänger einbauen.

Falls ihr vorhabt, das Gerät im Schwebeflug über einer bestimmten Stelle 
zu halten, ist die beste Lösung wohl immer noch die nach unten 
gerichtete Videokamera, die über Bildauswerte-Verfahren die 
Geschwindigkeit über Grund ermittelt.

Christian

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.