| |  | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Ansys | | |  | Neues Rechenzentrum für weltweite Simulationen bei Dätwyler, eine Pressemitteilung
|
Autor
|
Thema: Koordinaten Transformation (1717 mal gelesen)
|
meisterS Mitglied Student

 Beiträge: 12 Registriert: 02.03.2006
|
erstellt am: 12. Feb. 2009 14:44 <-- editieren / zitieren --> Unities abgeben:         
Hallo, es betrifft zwar die FEM nicht direkt, jedoch denke ich, dass mein Problem hier am besten aufgehoben ist. Es geht um die Translation sowie Rotation von "Unterkoordinatensystemen" (frames) in ein einem 3D Raum, der selbst ein kartesisches Koordinatensystem als Basis hat. Das hochgeladene Bild zeigt das Problem: Ich erzeuge frame 1 und frame 2 (Angabe von x,y,z und a,b,c). Nun möchte ich eine Kopie von frame 1 (frame 3) auf den Ursprung verschieben. Eine Kopie von frame 2 (frame 4) soll sich in seiner Lage relativ zu frame 3 wie frame 2 zu frame 1 verhalten. Nun habe ich viel recherchiert und stosse auf Stichworte wie RPY Darstellung, Eulerwinkel. Auf jeden Fall arbeitet das vorliegende CAD System mit 4x4 Matrizen. Es wäre sehr nett, wenn mir jemand auf die Sprünge helfen könnte. Mir würde schon ein Brainstorming mit Ideen und Anregungen reichen. Mein Problem beginnt nämlich schon bei der Beschreibung eines frames in Matrizenschreibweise. Hintergrund des ganzen Unternehmens ist eine Arbeit im Rahmen meines Studiums. Grüsse Stefan
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
xvector Mitglied Entwickler
 Beiträge: 4 Registriert: 13.02.2009
|
erstellt am: 13. Feb. 2009 11:05 <-- editieren / zitieren --> Unities abgeben:          Nur für meisterS
Hallo Meister S, Arbeitest Du mit Knoten/Gruppen/Nodes Logik: Frame1 und Frame2 bilden eine Gruppe(ein Node) das eine eigen Transform bekommt (Erstelle Frame1, erstelle Frame2, fasse beide in Gruppe mit eigener Transform zusammen) Kopieren nicht Frame1 nach irgendwo, sondern die Gruppe aus Frame1 und Frame2) Wenn du nicht die komplette Matrix, sondern nur die Translation beibehalten willst, brauchst du eine Funktion, die die Translation zwischen Frame1 und Frame2 berechnet und bei Gruppe2 (Frame3 und Frame4) setzt. Grüße xvector Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
meisterS Mitglied Student

 Beiträge: 12 Registriert: 02.03.2006
|
erstellt am: 13. Feb. 2009 12:29 <-- editieren / zitieren --> Unities abgeben:         
Hallo xvector, danke für deine Antwort. Um das Ergebnis der Transformation zu überprüfen, habe ich das genau so gemacht, wie du es geschrieben hast. So ist auch der screenshot entstanden. Um was es mir hier geht, ist, die mathematische Funktion dahinter zu erörtern. Ich habe versucht, frame 1 und frame 2 in jeweils 4x4 Matrizen zu beschreiben, daraus dann eine "relative" Matrix zu erstellen. Diese müsste dann schon alle benötigten Informationen beinhalten. Die Rotation versuche ich über die RPY Darstellung zu verwirklichen, aber irgend etwas stimmt nicht mit meinen Matrizen. Zeigt sich schlicht und ergreifend in der Tatsache, dass die berechneten Winkel nicht stimmen. Grüsse Stefan Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ChristophN Mitglied Berechnungsingenieur
  
 Beiträge: 773 Registriert: 13.12.2008
|
erstellt am: 16. Feb. 2009 14:27 <-- editieren / zitieren --> Unities abgeben:          Nur für meisterS
Hey, hat sich dein Problem schon gelöst? Wenn nicht, dann eine Frage: Die Rotation ist ja recht einfach über RPY oder Euler darzustellen, da sollten auch keine Probleme auftauchen (!?), aber wie ist die Translation in der Matrix dargestellt? Die Drehungen ist ja sicher die erste 3x3 Untermatrix, dann ist in der 4. Zeile/Spalte die Translation!? Hast du ein Beispiel der Umsetzung? Wie hast du denn die "relative" Matrix berechnet? Wenn man nur die Drehungen betrachtet, ist das eine einfache Matrizenmultplikation, wie sieht es bei der zusätzlichen Translation aus? Da dürfte das nicht mehr ganz so einfach funktionieren!? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
meisterS Mitglied Student

 Beiträge: 12 Registriert: 02.03.2006
|
erstellt am: 17. Feb. 2009 12:18 <-- editieren / zitieren --> Unities abgeben:         
Hi, ich habe das Problem inzwischen gelöst. Leider habe ich hier keine Mathesoftware, mit der ich parametrisch darstellen kann. Oder gibt´s da ne schöne Freeware? Zum rechnen habe ich Scilab benutzt, das funktioniert auch. Nur leider eben nicht für eine "schöne" Darstellung. Wenn ich das hinkriege, kann ich dir gerne die Lösung zur Verfügung stellen. Die "relative" Matrix ist eine Multiplikation mit der inversen Matrix, also Rotationsmatrix frame2 * inverse Rotationsmatrix frame1. So kommt man an die neuen Winkel ran. Die Translation musst du etwas anders berechnen, da hast du recht. Ist aber auch nicht so schwer. Gib mir nen Tip, wo ich ne schöne parametrische Mathesoftware herkriege und ich schreib das auf und schick es dir. Grüsse Stefan Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |