Die 4 Dimensionen – Quaternionen in der Kinematik

Transcription

Die 4 Dimensionen – Quaternionen in der Kinematik
Die 4 Dimensionen –
Quaternionen in der
Kinematik
1. Workshop Robotik
Hochschule Mittweida (FH)
Institut für Automatisierungstechnik
2004
Dipl.-Ing. (FH) Falko Neubert
Die 4 Dimensionen - Quaternionen in der Kinematik
Inhalt
1.
Historie
2.
Mathematische Grundlagen
3.
Koordinatentransformation
3.1. Ausgangssituation
3.2. Vortransformation
3.3. Rücktransformation
4.
Praktische Bedeutung
2
Die 4 Dimensionen - Quaternionen in der Kinematik
Lagebestimmung eines Körpers im Raum durch Beziehungen
zwischen Koordinatensystemen (KS) ⇒ Framekonzept
3
Die 4 Dimensionen - Quaternionen in der Kinematik
Welt- und Werkzeug-KS an einem 6-achsigen Knickarm-IR
4
Die 4 Dimensionen - Quaternionen in der Kinematik
1. Historie
-
Entdeckung der Verwendbarkeit der Ausdrücke x + y − 1
in der Ebene → Versuche für komplexe Zahlen im Raum
-
Ab 1833 W. R. HAMILTON → Rechnungen mit
Raumvektoren und Darstellung durch komplexe Zahlen
-
1843 HAMILTON‘s Theorie der goniometrischen
Quaternionen mit Nichtkommutativität in der Multiplikation
-
2
2
2
Ansatz über die Verknüpfung von h = i = j = hij = −1
-
Definition des Quaternion H mit q = Q1 + Q2 h + Q3 i + Q4 j
5
Die 4 Dimensionen - Quaternionen in der Kinematik
2. Mathematische Grundlagen
-
Vierdimensionale Divisionsalgebra über dem Körper von R
mit nicht kommutativer Multiplikation
-
Erweiterung von C → hyperkomplexe Zahlen (nur bedingt)
-
Schiefkörper durch Übertragung von Addition und
Multiplikation aus R und C auf H
-
Ursprungsdefinition q = Q1 + Q2 h + Q3 i + Q4 j
→ Q1, Q2, Q3, Q4 reelle und h, i, j imaginäre Zahlen
-
h, i, j drei unterschiedliche Arten von Imaginärzahlen
(Richtungen) → Nichtkommutativität
6
Die 4 Dimensionen - Quaternionen in der Kinematik
2. Mathematische Grundlagen
-
Nichtkommutativität in der Multiplikation laut Tabelle
-
Substitution zur Vereinfachung Q1 = q1 ; Q2 h = q2 ; Q3 i = q3 ; Q4 j = q4
q = Q1 + Q2 h + Q3 i + Q4 j
q = q1 + q2 + q3 + q4
7
Die 4 Dimensionen - Quaternionen in der Kinematik
2. Mathematische Grundlagen
-
Für jedes Quaternion existiert ein konjugiertes Quaternion
q ∗ = q1 − q2 − q3 − q4
-
Bildung des Betrages von q
q = q ⋅ q∗
= q12 + q22 + q32 + q42
8
q ∗ = q1 − q2 − q3 − q4
Die 4 Dimensionen - Quaternionen in der Kinematik
2. Mathematische Grundlagen
-
Definition des Inversen von q
−1
q =
q∗
q
-
2
Betrag von q gleich 1 → Einheitsquaternion
q −1 = q∗
Orientierungsbeschreibung i.d.R. mit Einheitsquaternion!
9
Die 4 Dimensionen - Quaternionen in der Kinematik
3. Koordinatentransformation
-
Quaternionentransformation mittels Multiplikation
-
Addition zur Verrechnung interner Komponenten
-
Vor- und Rücktransformation durch Definition von
Bezügen
10
Die 4 Dimensionen - Quaternionen in der Kinematik
3.1. Ausgangssituation
-
Allgemeine Darstellung der komplexen Ebene
z = a + bi
| a = r ⋅ cos(ϕ ); bi = ri ⋅ sin(ϕ )
= r[cos(ϕ ) + i ⋅ sin(ϕ )]
-
Darstellung der Orientierung des Einheitsquaternions
q=
σ 0ω • σ 1ω σ 0ω × σ 1ω
+
σ 0ω ⋅ σ 1ω σ 0ω ⋅ σ 1ω
= cos(ω 2) + σ ⋅ sin(ω 2 )
= cos(ω 2) + σ x h ⋅ sin(ω 2) + σ y i ⋅ sin(ω 2) + σ z j ⋅ sin(ω 2)
11
Die 4 Dimensionen - Quaternionen in der Kinematik
3.1. Ausgangssituation
-
Die Rotationskoordinaten der Punkte PA, PB und PC bzgl.
des zugehörigen Einheitsquaternions in der Abbildung
ergeben sich dann nach folgender Bildungsvorschrift:
P1 A = q ⋅ P0 A ⋅ q ∗ ; PB = q ⋅ PB ⋅ q ∗ ; P1C = q ⋅ P0C ⋅ q ∗
12
Die 4 Dimensionen - Quaternionen in der Kinematik
3.1. Ausgangssituation
-
Ursprungsquaternion bzw. Startquaternion
q = q1 + q 2 + q 3 + q4
| q1 = cos(ω 2 ); q 2 = σ x h ⋅ sin( ω 2 ); q3 = σ y i ⋅ sin( ω 2 ); q4 = σ z j ⋅ sin( ω 2 )
= cos(ω 2 ) + σ x h ⋅ sin( ω 2 ) + σ y i ⋅ sin( ω 2 ) + σ z j ⋅ sin( ω 2 )
-
Neu gebildetes Quaternion bzw. Zielquaternion
q neu = q1 neu + q 2 neu + q 3 neu + q4 neu
| q1 neu = cos( ω neu 2 ); q 2 neu = σ x neu h ⋅ sin( ω neu 2 );
| q 3 neu = σ y neu i ⋅ sin( ω neu 2 ); q4 neu = σ z neu j ⋅ sin( ω neu 2 )
= cos( ω neu 2 ) + σ x neu h ⋅ sin( ω neu 2 ) + σ y neu i ⋅ sin( ω neu 2 ) + σ z neu j ⋅ sin( ω neu 2 )
13
Die 4 Dimensionen - Quaternionen in der Kinematik
3.1. Ausgangssituation
-
Transformationsquaternion bzw. Relativquaternion
qT = q 1T + q 2 T + q 3 T + q 4 T
| q1T = cos( ω T 2 ); q 2T = σ x T h ⋅ sin( ω T 2 );
| q 3T = σ y T i ⋅ sin( ω T 2 ); q4T = σ z T j ⋅ sin( ω T 2 )
= cos( ω T 2 ) + σ x T h ⋅ sin( ω T 2 ) + σ y T i ⋅ sin( ω T 2 ) + σ z T j ⋅ sin( ω T 2 )
14
Die 4 Dimensionen - Quaternionen in der Kinematik
3.2. Vortransformation
-
Aufstellen der Transformationsgleichung
q neu = q ⋅ qT
-
Lösung der Gleichung (hier ohne Herleitung)
q1 neu = q1 ⋅ q1T − q 2 ⋅ q 2T − q 3 ⋅ q 3T − q 4 ⋅ q 4T
q 2 neu = q1 ⋅ q 2T + q 2 ⋅ q1T + q 3 ⋅ q 4T − q 4 ⋅ q 3T
q 3 neu = q1 ⋅ q 3T − q 2 ⋅ q 4T + q 3 ⋅ q1T + q 4 ⋅ q 2T
q 4 neu = q1 ⋅ q 4T + q 2 ⋅ q 3T − q 3 ⋅ q 2T + q 4 ⋅ q1T
15
Die 4 Dimensionen - Quaternionen in der Kinematik
Vortransformation des KS x y z nach xneu yneu zneu mit xT yT zT
16
Die 4 Dimensionen - Quaternionen in der Kinematik
3.3. Rücktransformation
-
Aufstellen der Transformationsgleichung
qT = q −1 ⋅ q neu
-
Lösung der Gleichung (hier ohne Herleitung)
q 1T =
q 1 neu + q 2 ⋅ q 2 T + q 3 ⋅ q 3 T + q 4 ⋅ q 4 T
q1
q 2T =
q 2 neu ⋅ q 1 − q 2 ⋅ q 4 ⋅ q 4 T − q 2 ⋅ q 1 neu + q 4 ⋅ q 3 T ⋅ q 1 − q 2 ⋅ q 3 ⋅ q 3 T − q 3 ⋅ q 4 T ⋅ q 1
2
2
q1 + q 2
q 3T =
q 3 neu ⋅ ( q 1 + q 2 ) + q 2 ⋅ q 3 ⋅ q 4 T − q 3 ⋅ q 1 neu ⋅ q 1 − q 3 ⋅ q 2 ⋅ q 2 neu
2
2
2
2
q1 ⋅ (q1 + q 2 + q 3 + q 4 )
2
2
2
q 4 ⋅ q 2 ⋅ q 1 neu − q 4 ⋅ q 2 neu ⋅ q 1 + q 2 ⋅ q 4 ⋅ q 4 T + q 2 ⋅ q 4 T ⋅ q 1 + q 2 ⋅ q 4 T
2
2
2
2
q1 ⋅ (q1 + q 2 + q 3 + q 4 )
2
+
q 4T =
q 4 neu ⋅ q 1 − q 2 ⋅ q 3 neu + q 3 ⋅ q 2 neu − q 4 ⋅ q 1 neu
2
2
2
2
q1 + q 2 + q 3 + q 4
2
3
17
Die 4 Dimensionen - Quaternionen in der Kinematik
Rücktransformation des KS xneu yneu zneu nach xT yT zT mit x y z
18
Die 4 Dimensionen - Quaternionen in der Kinematik
4. Praktische Bedeutung / Fazit
-
Eindeutige Beschreibung von Orientierungen im Raum
-
Vorwiegend für interaktive Computergrafiken → Spiele
-
Kaum in der Robotertechnik → Rotationsmatrizen
ABER...
-
Sehr kompakte Schreibweise → geringere Redundanz
ROT x neu ; y neu ; z neu
⎛ rot x neu x
⎜
= ⎜ rot y neu x
⎜
⎝ rot z neu x
rot x neu y
rot y neu y
rot z neu y
rot x neu z ⎞
⎟
rot yneu z ⎟
⎟
rot z neu z ⎠
q = (q1 ; q 2 ; q 3 ; q4 ) = q1 + q 2 + q 3 + q4
19
Die 4 Dimensionen - Quaternionen in der Kinematik
4. Praktische Bedeutung / Fazit
-
Geringere Redundanz → höhere numerische Stabilität
-
Weniger Rechenzeit, besonders bei vielen Orientierungen
-
Keine Beachtung der Reihenfolge von
Einzeltransformationen → Paralleltransformation
JEDOCH...
-
Wesentlich höheres Vorstellungsvermögen („4D-Denken“)
des Anwenders
20
Die 4 Dimensionen - Quaternionen in der Kinematik
Vielen Dank für Ihre
Aufmerksamkeit
Die 4 Dimensionen - Quaternionen in der Kinematik
Räumliche Orientierung mit einem Quaternion