Forum: Mikrocontroller und Digitale Elektronik Neigung aus Pitch und Roll berechnen


von Andy R. (johanneslqq)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,
Ich habe folgendes Problem, vielleicht kann mir einer von euch helfen.
Ich muss mit dem Gyroscope und Beschleunigungssensor die Neigungswinkel 
von einem Auto bestimmen. Ich habe die Neigungswerte Pitch und Roll, die 
die Neigung gegenüber der Vertikalen in y- und x-Richtung angeben. Diese 
Achsen stehen senkrecht aufeinander und liegen in der Horizontalebene. 
Ich möchte nun die Neigung des Autos bzw. der Sensorträger im Raum 
berechnen und komm da irgendwie nicht drauf.

Einfaches Beispiel: wenn ich das Auto nur um die y-Achse drehe, ändert 
sich nur der Pitch-Winkel und meine Neigung im Raum entspricht diesem 
Pitch-Wert. Gleiches gilt, wenn ich nur um die x-Achse drehe, entspricht 
meine Neigung dem Roll-Wert.

Problem: Drehe ich das Auto um die x- und die y-Achse seh ich keinen 
Stich mehr

wäre für Hilfe sehr dankbar!

Grüße

von Mike (Gast)


Lesenswert?

Andy R. schrieb:
> Problem: Drehe ich das Auto um die x- und die y-Achse seh ich keinen
> Stich mehr

Es kommt auf die Reihenfolge der Drehung drauf an und die ist 
Konventionssache.
http://de.wikipedia.org/wiki/Euler-Winkel

von Andy R. (johanneslqq)


Lesenswert?

danke für deine Antwort.ja ich verstehe die Euler Winkel. Meine Frage 
ist mit der berechneten Pitch und Roll kann ich die Neigungswinkel 
bestimmen?

von Dödel (Gast)


Lesenswert?

Leg durch den Urspungspunkt und die beiden Endpunkte der Vektoren eine 
Ebene.
Danach den Winkel zwischen Ebene und einer zur xy-Koordinatensystem 
planaren Ebene bestimmen. Details dazu kann man ergoolen.
Wahrscheinlich auch nicht der schnellste Weg, aber die erste Möglichkeit 
die mir in den Sinn kam

von Matthias (Gast)


Lesenswert?

Du könntest einen Komplementär-Filter verwenden, oder selbst was 
basteln...

Die Gyroskope aufintegriert ergeben den Winkel. Das Problem ist, dass 
durch Rauschen und Offset-Fehler, der Winkel stark wegdriftet. Um das zu 
verhindern, kann man den g-Vektor verwenden, den die 
Beschleunigungsmesser messen. Der Messwert ist aber nur gültig, wenn 
keine weiteren Beschleunigungen auf deine Sensorik wirken. Aber man kann 
ja nachrechnen ob beispielsweise der Betrag des g-Vektors "gültig" ist, 
die Drehraten nicht zu hoch sind oder so...

Für kleine Winkel kommt mittels trigonometrischen Gleichungen ein 
brauchbarer Winkel raus aus den Beschleunigungsmessern um die Gyros zu 
stützen/korrigieren. Vllt schafft man auch die Offsets in regelmäßigen 
Abständen zu berechnen.

LG

von uwe (Gast)


Lesenswert?

Ich verstehe Deine Frage nicht - wenn das Gyroskop schon die pitch und 
roll Winkel liefert, welchen Neigungswinkel brauchst Du dann noch??? 
Auch beim Flugzeug gibt es nur pitch, roll und yaw... Willst Du 
vielleicht daraus den Anstell- und Schiebewinkel bestimmen --> dann 
brauchst Du aber zusätzlich einen Windsensor!

von Affe Nedolf (Gast)


Lesenswert?

Machste das Kreuzprodukt deiner beiden Vektoren:
http://de.wikipedia.org/wiki/Kreuzprodukt

Dann haste die Normale auf deinen beiden Vektoren
Dann nimmste einen Vektor, der genau nach oben zeigt, z.B. xyz=>(0/0/1)
uns setzt ihn zusammen mit deinem Vektor oben in folgende Gleichung ein:
http://de.wikipedia.org/wiki/Schnittwinkel_(Geometrie)#Schnittwinkel_zweier_Fl.C3.A4chen

Dabei ist der obere Teil das Skalarprodukt beider Vektoren 
(x1*x2+y1*y2+z1*z2)
und der untere Teil das Produkt beider Vektorlängen.

Dann machste den Arcsinus aus dem erhaltenen Wert und voila haste dem 
Winkel der Autoebene bezüglich der Schwerkraftsnormalen

von Affe Nedolf (Gast)


Lesenswert?

Ups arccosinus, nix arcsinus, zuviel Bier

von Andy R. (johanneslqq)


Lesenswert?

vielleicht habe ich nicht gut erklärt. Für den Fall2 kann ich schon die 
pitch und roll meinem Sensor bestimmen.Mein Problem besteht nun darin, 
aus diesem beiden Winkeln(pitch und roll), den Winkel zwischen der 
"sensor-Ebene" zur "Nullebene" zu berechnen also alpha(siehe Bild).

Grüße

von Andy R. (johanneslqq)


Lesenswert?

Ich habe Acc und Gyro benutzt und mit einem KalmanFilter die beiden 
fusioniert.die pitch und roll habe ich ausgerechnet. Nun die Frage ist 
wie berechne ich mit den beiden Winkeln die Winkel zwischen der 
'sensor-ebene' und der 'Nullebene'.

Grüße

von Matthias (Gast)


Lesenswert?


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.