Aufruf der Roll-, Pitch- und Jaw-Werte einer Location Variable in V+

  • Erstmal möchte ich mich dafür bedanken, dass ich in diesem Forum dabei sein darf.
    Zunächst möchte ich mein erstes Problem äußern.
    Ich programmiere momentan einen Stäubli Industrieroboter in V+. Ich brauche die Komponenten des Vektor1 (X1,Y1,Z1) nach einer Multiplikation mit einer Rotationsmatrix. Also:


    Rotationsmatrix X Vektor = Vektor1


    Um die einzelnen Schritte zu programmieren brauche ich natürlich die Werte von roll, pitch und yaw. Ich finde keine Funktion diese Werte aufzurufen. Sie sind, soweit ich weiß, in einer Location Variable drin. Um die X,Y und Z Komponenten dieser Location Variable aufzurufen gibts die Funktionen Dx, Dy und Dz. Kennt jemand Funktionen um die roll-, pitch- und yaw-Werte aufzurufen?
    Oder weißt jemand wie man zwei Transformationen miteinander multiplizieren kann?
    Sowas funktioniert z.B. nicht: SET vec1 = vec*rotationsmatrix


    Danke im Voraus

  • ANZEIGE
  • Hallo,
    mit DECOMPOSE kannst du eine Transformation in ihre 6 einzelnen Bestandteile zerlegen. Das geht wie folgt:
    ; Zerlegen der Transformation position in ein Array
    DECOMPOSE world[] = position
    ; Zurordenen der einzelne Werte des Arrays
    x = world[0]
    y = world[1]
    z = world[2]
    yaw = world[3]
    pitch = world[4]
    roll = world[5]


    Ich habe noch nie Transformationen multipliziert aber schon oft addiert. Das geht so:
    trans3 = trans1:trans2


    Viele Grüße,
    Pitl

Erstelle ein Benutzerkonto oder melde dich an um zu kommentieren

Du musst ein Benutzerkonto haben um einen Kommentar hinterlassen zu können

Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Geht einfach!
Neues Benutzerkonto erstellen
Anmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden