Ich habe ein set an Positions-Winkel (Elevation und Azimuth, mit denen man einen Positions-vektor in einem sphaerischen Koordinatensystem beschreibt), welche in Eulersche Winkel umgewandelt werden sollen.
Anbei eine Grafik der beiden Winkelsysteme.
Weiss jemand mit welchen Formeln ich von der einen Raepresentation in die andere wechseln kann?
Die Umrechnung ist im Falle eines Vektors einfacher, da die letzte Drehung um den Winkel Gamma bei den Euler-Winkeln wegfällt - eine Rotation im den Vektor selbst ändert ja nichts.
Nun gibt es verschiede Euler-Winkel, jenach der Reihenfolge der Achsen um die gedreht wird. In Deinem Fall ist die Reihenfolge ZXZ. Da nun die letzte Rotation um die (neue!) Z-Achse wegfällt, sind Elevation und Azimuth direkt mit alpha und beta korreliert. Also bis auf Subtraktion von 90 oder 180 oder ein Vorzeichenwechsel ist also wohl nicht nötig.
Die Umrechnung ist im Falle eines Vektors einfacher, da die letzte Drehung um den Winkel Gamma bei den Euler-Winkeln wegfällt - eine Rotation im den Vektor selbst ändert ja nichts.
Nun gibt es verschiede Euler-Winkel, jenach der Reihenfolge der Achsen um die gedreht wird. In Deinem Fall ist die Reihenfolge ZXZ. Da nun die letzte Rotation um die (neue!) Z-Achse wegfällt, sind Elevation und Azimuth direkt mit alpha und beta korreliert. Also bis auf Subtraktion von 90 oder 180 oder ein Vorzeichenwechsel ist also wohl nicht nötig.
Gruß, Jan
Hallo Jan. Das hatte ich mir auch gedacht, ist aber nicht so.
Elevation ist alpha, Azimuth ist aber nicht beta.
Ein Beispiel: wenn Elevation = 0 ist und man beta verstellt, bleibt der Winkel immer der selbe. Wenn elevation nicht null ist, dann rotiert die Z Achse um sich selbst wenn man beta verstellt.
Herzlichend Dank schon eimal, dass du dich mit meinem Problem befasst hast.
Indicates rotation about the Z axis of the sub-component reference frame by the azimuth angle, followed by rotation about the new Y axis by 90 degrees minus the elevation angle. Users familiar with Euler angle sequences will recognize this as a 323 rotation sequence where the first rotation is by the azimuth angle, the second rotation is 90 degrees minus the elevation angle, and the third rotation angle is zero.
Aber Google findet noch weit mehr zu "Euler angle Azimuth Elevation".
Herzlichen Dank fuer deine auskunftsreiche Antwort. Ich hab versucht dank deines Links und der recherche in Google etwas naeheres dazu zu finden, schaffe aber leider nicht schluessig zu werden.
Ich habe auch ein Simulations programm auf dem ich arbeite und nachvollziehen kann ob die Elevation und Azimuth Winkel, die ich mit Matlab ausrechne korrekt implementiert werden, aber leider nicht.
Ja, ich habe mich getaeuscht. Haengt davon ab, wie man die Winkel definiert (da ich die z-achse mit der x-achse im Simulations programm vertauscht hatte, aber das ist irrelevant).
Auch wenn ich ein normales x,y,z Korrdinatensystem definiere, scahffe ich es nicht einfach nur einen Vektor um PHI von der x-achse zur y-achse hin zu "verschieben" (azimuth) um ihn dann vom x,y-plane aus in richtung positive z-Werte zu "erheben" (elevation).
Geht einfach nicht, was auch immer ich mache dreht sich entweder auch die z-achse oder verschiebt sich x,y.
Ich sehe leider keine 1 zu 1 Korrespondenz und konnte diese nach recherchieren leider auch nicht finden.
Es gibt gar kein "normales x,y,z-Koordinatensystem". Alle Koordinatensysteme sind eine frei wählbare Parametrisierung des Raumes, sie können also so gelegt werden, wie es für die Berechnungen am geschicktesten ist. Bei Bedarf müssen die Achsen nicht mal senkrecht aufeinander stehen oder gerade sein.
Zitat:
Ich habe auch ein Simulations programm auf dem ich arbeite und nachvollziehen kann ob die Elevation und Azimuth Winkel, die ich mit Matlab ausrechne korrekt implementiert werden, aber leider nicht.
Ich kann diesem Satz nicht oder kaum folgen. Was genau "leider nicht"?! Es gibt in Matlab's FileExchange einige Beiträge zum Thema Euler-Winkel. Eine Suche dort würde sich also lohnen.
Für Azimuth und Elevation benötigst Du zwei einfache Rotationen. Zunächst um die Z-Achse, dann um die (neue!) y-Achse:
Die Rotationsmatrix Ry*Rz ist eine 3x3 Matrix, und man kann sie durch Euler-Winkel in jeder gewünschten Reihenfolge ausdrücken. Die WikiPedia-Seiten zum Thema "Euler Winkel" und "Rotationsmatrix" sind dazu stichhaltig.
Perfekt.
Ich hatte dabei einen Fehler gemacht, du hast ihn mir durch die korrekte Rotationsmatrix behoben.
Herzlichen Dank, sehr gut auch beschrieben, konnte ich sofort nachvollziehen,
Christian
Einstellungen und Berechtigungen
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.