Avatar

Koordinatentransformation (Geodäsie/Vermessung)

MichaeL ⌂, Bad Vilbel, Tuesday, 25.01.2011, 17:47 (vor 5053 Tagen) @ Kai Westermann

Moin!

ich kann Dir immer nicht ganz folgen, da mit Deine Theologie nicht ganz geläufig ist - umgekehrt trifft dies vermutlich auch zu. Lass uns etwas früher einsteigen und kleiner Schritte machen, vielleicht führt das dann zum Ziel.

Der Ursprung der Maschine ist immer T0 = [0 0 0]. An dieser Maschine ist ein Arm dran, welcher die Koordinaten T2 = [675 0 -512] hat und an diesem Arm ein Werkzeug (Deine Kugel) mit den Koordinaten T32 = [0 0 200]. Wir haben derzeit also drei Punkte im Raum. Beziehen diese drei Punkte sich alle auf das selbe Koordinatensystem?

Eine grundsätzliche Anmerkung:
Zu den Abkürzungen: Du verwendest mal Rx, Ry, Rz und mal A, B, C. Es handelt sich aber immer um Drehwinkel, oder? Drehwinkel sind wie zB. Maße ohne Einheiten nutzlos, wenn man nicht den Drehsinn und die Reihenfolge der Drehungen kennt. Es gibt drei Rotationsmatrizen. Es lassen sich also 12 Kombinationen finden, diese zu multiplizieren. Ums schon mal vorweg zunehmen, ich werde es nicht für Dich austesten, welche Kombination Du benötigst - ich hoffe, Du verstehst das.

Etwas Theorie:
Die Transformationsgleichung lautet:
P = T + R\cdot p

P ... Punkt im Zielsystem P = [x y z]
p ... selber Punkt im Startsystem p = [x y z]
T ... Translation (Verschiebung)
R ... Rotationsmatrix

R resultiert dabei aus Deinen drei Drehwinkeln. Hierzu werden drei Achsdrehungen hintereinander druchgeführt. Das kann zB so aussehen: Als erstes drehst Du um die X-Achse, anschließend um die neue Y-Achse und abschließend um die neue Z-Achse. Mit "neue Achse" meine ich immer die nach der vorherigen Drehung entstandene Achse. In jeder Drehung wird also das System geändert. Das Verketten der Drehungen erreichst Du durch Multiplikation. Für das genannte Beispiel wäre es:

P = T + R\cdot p  = T + R_z \cdot R_y \cdot R_x \cdot p

Wie das Produkt von R ausmultipliziert aussehen kann (einer der 12 Varianten) siehst Du auf Seite 44 in der Mitte.

Ich hoffe Dir wird damit auch klar, dass Du nicht einfach ein paar Differenzen bestimmen kannst. Auch bin ich mir noch nicht Sicher, ob wir überhaupt zu einem zufriedenstellenden Ergebnis kommen. :-(

Ein Beispiel am Ende noch:

Es muss am Anfang eine Anfangsposition geben. Nehmen wir an, der Arm steht am Anfang auf
[10 20 30] und hat ein Werkzeug, das 50 nach oben ragt - also [10 20 80]. Jetzt Dreht der Roboter den Arm um 45° um die X-Achse, 0° um die Y-Achse und 0° um die Z-Achse. Nach dieser Drehung verschiebt er den Arm um T = [30 70 90]. Folgende Position hat nun der Arm: [40 62.9289 125.3553] und das Werkzeug [40 27.5736 160.7107]. Kannst Du das nachvollziehen?

Gruß Micha

P.S. ich habe gesehen, dass Du Werte korrigiert hast aber es hapert nicht an den Zahlen - mehr am erfassen Deines Problems, sodass ich nicht weiter drauf eingegangen bin.

--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences

Tags:
Koordinatentransformation, Roboter, Rotation, Matrix


gesamter Thread:

 RSS-Feed dieser Diskussion