Euler Winkel und Drehmatrix < Abbildungen < Lineare Algebra < Hochschule < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 21:50 Do 11.07.2013 | Autor: | Bombay87 |
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt
Hallo zusammen, aktuell bin ich mit der Drehung von Koordinatensystemen beschäftigt, da ich dies für eine Robotersteuerung benötige. Ich muss ein Koordinatensystem zunächst um die Z-Achse 45°, dann um die Y-Achse 90° und erneut um die Z-Achse -45° drehen. Hierbei setzte ich in den folgenden Rechnungen α = 45°, β = 90° und γ = -45.
Nun meine erste Frage: Sind diese 3 Winkel nun meine Eulerwinkel ?
Nach Aufstellung meiner 3 Rotationsmatrizen multipliziere ich diese gemäß Y-Konvention der Euler Winkel und erhalte allgemein folgendes:
[mm] \begin{Bmatrix}
-sinα*sinγ + cosα*cosβ*cosγ & cosα*sinγ+sinα*cosβ*cosγ & -sinβ*cosγ \\
-sinα*sinγ- cosα*cosβ*sinγ & cosα*cosγ-sinα*cosβ *sinγ & sinβ*sinγ \\
cosα*sinβ & sinα*sinβ & cosβ
\end{Bmatrix}
[/mm]
Dies Matrix beschreibt doch dann die gesamte Drehung des Koordinatensystems, sehe ich das richtig?
Nun habe ich mit Hilfe der Atan2-Funktion mir aus dieser Matrix die einzelnen Winkel α , β und γ berechnen lassen und komme auf α = -45°, β = 45° und γ = 90°. Dies sind für meine technische Anwendung auch die richtigen Werte.
Meine Fragen hierzu lauten nun:
1.Was genau macht die Atan2-Funktion?
2.Beschreiben meine neuen Winkel α, β und γ nun die einzelnen Drehungen um Z Y X ? Und wie werden diesen nun bezeichnet? Sind es immer noch Euler Winkel?
|
|
|
|
Hallo, ich antworte das ersta mal auf eine Frage und tue mal mein bestes, deinen Anforderungen zu genügen bzw hoffe keinen Fehler zu machen.
Zu allererst:
Warum musst du zweimal um die z-Achse drehen?
Wichtig ist festzustellen, ob du um raumfeste Achsen drehen willst, oder um konsekutive(d.h. bereits gedrehte) Achsen. Die entstehende Drehmatrix unterscheidet sich in ihrer Drehsequenz.
Allgemein beschreibt eine Rotationsmatrix R die Orientierung eines Körperfesten Referenzkoodinatenystems {A} zu einem Körperfesten Koordinatensystem {B}.
(ohne Translation - beschrieben durch den Pos.Vektor [mm] p_{B,org} [/mm] --> R und [mm] p_{B,org} [/mm] ergeben den Frame, allgemeine Beschreibung eines KO im Raum)
Sie wird dabei durch drei Winkeldrehungen [mm] \alpha, \beta, \gamma [/mm] (um x-, y- und z-Achse)und ihre Drehsequenz beschrieben.
> Nun meine erste Frage: Sind diese 3 Winkel nun meine
> Eulerwinkel ?
Deine drei angenommenen Winkel sind nicht deine Eulerwinkel, wegen der zweiten Drehung um z.
AN der Stelle muss ich aber sagen, das ich mich mit einer zweiten Drehung um die gleich Achse noch nie auseinaandergesetzt habe. Wüsste aber nicht, warum sich eine Rotatiosnmatrix nicht auch so beschreiben lassen sollte. Die Eulerwinkel sind allerdings den andere, die du invers(s.u.) nochmal berehcnen müsstest, falls du SIe benötigst.
Vlt weiß dazu noch jmnd anderes mehr.
> Dies Matrix beschreibt doch dann die gesamte Drehung des
> Koordinatensystems, sehe ich das richtig?
Richtig
> 1.Was genau macht die Atan2-Funktion?
Mithilfe der ATAN2-Funktion kannst du ein inverses PRoblem lösen, d.h. du bestimmst die Drehwinkel aus der Rotationsmatrix:
[mm] ATAN2(y,x)=\begin{cases} arctan(\bruch{y}{x}), & x>0 \\ sgn(y)*\bruch{\pi}{2}, & x=0, y\not=0 \\ 0, & x=0, y=0 \\ sgn(y)*(arctan(|\bruch{x}{y}|)+\bruch{\pi}{2}), & x<0, y\not=0 \\ \pi, & x<0, y=0 \end{cases}
[/mm]
zu
[mm] \alpha=ATAN2(r_{32},r_{33})
[/mm]
[mm] \beta=ATAN2(-r_{31},\wurzel{r_{11}^{2}+r_{21}^{2}})
[/mm]
[mm] \gamma=ATAN2(r_{21},r_{11})
[/mm]
Die Funktion ist vielen höheren Programmiersprachen aber bereits vorhanden.
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 12:50 Fr 12.07.2013 | Autor: | Bombay87 |
Erst einmal vielen Dank für die ausführliche Antwort. Mein Problem ist, dass ich mein Koordinatensystem genau so verdrehen muss. Ich habe mich dabei an den Artikel von Wikipedia zu den Eulerwinkel (http://de.wikipedia.org/wiki/Eulersche_Winkel) gehalten. Dort ist in der Y-Konvention genau mein Fall, Drehung um Z, dann Y und wieder Z dargestellt. Dort steht halt das die Drehung um drei Winkel, welche die Euler Winkel sind dargestellt wird. Daher dachte ich das meine 3 Drehwinkel auch meine Eulerwinkel sind. Habe ich denn dann überhaupt Euler-Winkel wenn ich deiner Aussage folge? Bzw sind dann die aus der finalen Drehmatrix berechneten Winkel meine Euler Winkel? Ich muss meinen Rechenvorgang leider ein wenig intensiver Beschreiben bzw. muss das ganze zumindestens annähernd verstehen, da ich diesen in meiner Bachelorarbeit unterbringen muss.
Besten Dank noch einmal!
|
|
|
|
|
HAllo Bombay,
dem Wikipedia Artikel folgend ist also eine Bildung einer Rotatiosnmatrix genau so möglich oder sogar üblich. Beschrieben ist sie dabei auch durch ihre 3 Elementaren Drehungen um die konsekutiven Achsen. Also Drehung um Z, dann um Y' und dann um Z'' (Beachte das Y' und Z'' "neue" Achsen darstellen)
Die Eulerwinkel werden dort als
> "Satz unabhängiger Variabler, mit denen die Orientierung..."
Scheint also egal, um welche Achse es sich dabei handelt, solange du deine Rotatiosnmatrix korrekt bildest. Das wusste ich nicht. Bitte entschuldige meine Falschaussage. (Habe mit Robotik wenig zutun, daher hat mir bisher die Konvention [mm] \alpha [/mm] für x-Achse, [mm] \beta [/mm] für y-Achse und [mm] \gamma [/mm] für z-Achse ausgereicht)
Zur Beschreibung und zum Verstehen des ganzen könnte ich dir eine pdf von unserem Lehrstuhl für Automatisierungstechnik über Steuerungen von Robotersystemen anbieten, die mir sehr geholfen hat.
Da ich aber nicht Urheber der pdf bin würde ich sie per PN oder MAil schicken wollen und nicht öffentlich machen.
PS: wenn du Bachelor schreibst hast du aber die Angabe Math. Background nicht ganz korrekt beantwortet ;D
Viele Grüße
Flo
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 10:16 So 14.07.2013 | Autor: | Bombay87 |
Hallo Flo,
über die PDF Datei wäre ich sehr dankbar. Bitte schicke Sie mir doch an robomathe@yahoo.de ;)Vlt werd ich daraus schlauer :)
Gruß
Bombay
|
|
|
|