- Jianwei Zhang zhang@informatik.uni-hamburg.de Fakultät für Mathematik, Informatik und Naturwissenschaften Technische Aspekte Multimodaler Systeme 20. April 2010 J. Zhang 63 Gliederung Allgemeine Informationen Einführung Koordinaten eines Manipulators Denavit-Hartenberg-Konvention Parameter zur Beschreibung von zwei beliebigen Gelenken Frame-Transformation zwischen zwei Gelenken Beispiel mit PUMA 560 Inverse Kinematik von Manipulatoren Differentielle Bewegungen mit homogenen Transformationen Jacobi-Matrix eines Manipulators Aufgabenbeschreibung J. Zhang 64
Gliederung (cont.) Robotergrammierung auf drei Ebenen Trajektoriegenerierung Trajektoriengenerierung Einführung in RCCL Dynamik Roboterregelung Programmierung auf Aufgabenebene und Bahnplanung Programmierung auf Aufgabenebene und Bahnplanung Programmierung auf Aufgabenebene und Bahnplanung Architekturen sensorbasierter intelligenter Systeme Aus- und Rückblick J. Zhang 65 - (1) Jeder Manipulator kann als eine Reihe von mit Gelenken verbundenen Gliedern betrachtet werden. In jedem Glied wird ein Koordinaten-Frame definiert. Eine homogene Matrix A beschreibt die relative Translation und Rotation zwischen zwei aufeinander folgenden Gelenken. Für einen sechsgelenkigen Manipulator: A 1 : beschreibt die Position und Orientierung des ersten Gliedes; A 2 : beschreibt die Position und Orientierung des 2. Gliedes bezüglich Glied 1; A 3 : beschreibt die Position und Orientierung des 3. Gliedes bezüglich Glied 2; J. Zhang 66
- (1) A 4 : beschreibt die Position und Orientierung des 4. Gliedes bezüglich Glied 3; A 5 : beschreibt die Position und Orientierung des 5. Gliedes bezüglich Glied 4; A 6 : beschreibt die Position und Orientierung des 6. Gliedes bezüglich Glied 5; Das folgende Produkt wird definiert als: T 6 = A 1 A 2 A 3 A 4 A 5 A 6 J. Zhang 67 Beschreibung des Manipulator-Endpunktes (Tag Point) Mit einem Vektor p wird der Manipulator-Endpunkt beschrieben. Drei Einheitsvektoren: a: (Annährungsvektor, approach vector ), o: (Schlißvektor, orientation vector ), n: (Normalenvektor) spezifizieren die Orientierung der Hand. J. Zhang 68
Beschreibung des Manipulator-Endpunktes (Tag Point) Die Transformation T 6 hat dann die folgenden Elementen: [ ] n o a p T = J. Zhang 69 - Denavit-Hartenberg-Konvention Denavit-Hartenberg-Konvention Ausgangspunkt: Das Koordinatensystem Σ 0 ist das ortsfeste Ausgangskoordinatensystem in der Basis des Manipulators. Für die Festlegung des Koordinatensystems gilt: Die z i -Achse wird entlang der Bewegungsachse des (i+1)-ten Gelenks gelegt. Die x i -Achse ist senkrecht zur z i 1 -Achse und zeigt von ihr weg. Die y i -Achse wird so festgelegt, daß sich ein rechthändiges Koordinatensystem ergibt. J. Zhang 70
- Parameter zur Beschreibung von zwei beliebigen Gelenken Parameter zur Beschreibung von zwei beliebigen Gelenken J. Zhang 71 - Parameter zur Beschreibung von zwei beliebigen Gelenken Parameter zur Beschreibung von zwei beliebigen Gelenken Zwei Parameter zur Bestimmung der Struktur des Gelenkes i: a i : die kürzeste Entfernung zwischen der z i 1 -Achse und der z i -Achse α i : der Drehwinkel um die x i -Achse, der die z i 1 -Achse auf die z i -Achse ausrichtet Zwei Parameter zur Bestimmung der relativen Distanz und Winkel der benachbarten Gelenke: d i : die Entfernung vom Ursprung O i 1 des (i-1)-ten Koordinatensystems bis zum Schnittpunkt der z i 1 -Achse mit der x i -Achse. θ i : der Gelenkwinkel um die z i 1 -Achse von der x i 1 -Achse zur Projektion der x i -Achse in die x i 1, y i 1 -Ebene. J. Zhang 72
- Frame-Transformation zwischen zwei Gelenken Frame-Transformation zwischen zwei Gelenken - (1) Erstellung der Beziehung zwischen Frame i und Frame (i-1) über die folgenden Rotationen und Translationen: Drehe um z i 1 mit einem Winkel θ i Verschiebe entlang z i 1 um d i Verschiebe entlang gedrehtem x i 1 = x i um eine Länge a i Drehe um x i mit dem Winkel α i Als das Produkt von vier homogenen Transformationen, die den Koordinaten-Frame i in den Koordinaten-Frame i-1 überführen, kann die Matrix A i wie folgt berechnet werden: A i = Rot zi 1,θ i Trans (0,0,di )Trans (ai,0,0)rot xi,α i J. Zhang 73 - Frame-Transformation zwischen zwei Gelenken Frame-Transformation zwischen zwei Gelenken - (2) Cθ i Sθ i 0 0 1 0 0 a i A i = Sθ i Cθ i 0 0 0 1 0 0 0 0 1 0 0 0 1 d i 1 0 0 0 0 Cα i Sα i 0 0 Sα i Cα i 0 Cθ i Sθ i Cα i Sθ i Sα i a i Cθ i = Sθ i Cθ i Cα i Cθ i Sα i a i Sθ i 0 Sα i Cα i d i J. Zhang 74
- Beispiel mit PUMA 560 Beispiel mit PUMA 560 Um das Manipulator-Ende in das Basis-Koordinatensystem zu überführen, wird T 6 wie folgt berechnet: T 6 = A 1 A 2 A 3 A 4 A 5 A 6 Z: Transformation Manipulator-Basis Referenz-Koordinatensystem E: Manipulator-Ende TCP ( tool center point ) X: die Position und Orientierung des TCP bezüglich des Referenz-Koordinatensystems Es gilt auch: X = ZT 6 E T 6 = Z 1 XE 1 J. Zhang 75 - Beispiel mit PUMA 560 Beispiel mit PUMA 560 J. Zhang 76
- Beispiel mit PUMA 560 Beispiel mit PUMA 560 Gelenk i θ i α i a i d i Gelenk-Bereich 1 90-90 0 0-160 zu 160 2 0 0 431.8 mm 149.09 mm -225 zu 45 3 90 90-20.32 mm 0-45 zu 225 4 0-90 0 433.07 mm -110 zu 170 5 0 90 0 0-100 zu 100 6 0 0 0 56.25 mm -266 zu 266 Gelenk-Koordinaten-Parameter von PUMA 560 J. Zhang 77 - Beispiel mit PUMA 560 T6-Matrix für PUMA 560 - (1) und = T = A 1 A 2 A 3 C 1 C 23 S 1 C 1 S 23 a 2 C 1 C 2 + a 3 C 1 C 23 d 2 S 1 S 1 C 23 C 1 S 1 S 23 a 2 S 1 C 2 + a 3 S 1 C 23 + d 2 C 1 S 23 0 C 23 a 2 S 2 a 3 S 23 T = A 4 A 5 A 6 J. Zhang 78
- Beispiel mit PUMA 560 T6-Matrix für PUMA 560 - (1) = C 4 C 5 C 6 S 4 S 6 C 4 C 5 S 6 S 4 C 6 C 4 S 5 d 6 C 4 S 5 S 4 C 5 C 6 + C 4 S 6 S 4 C 5 S 6 + C 4 C 6 S 4 S 5 d 6 S 4 S 5 S 5 C 6 S 5 S 6 C 5 d 6 C 5 + d 4 wobei C ij cos(θ i + θ j ) und S ij sin(θ i + θ j ). J. Zhang 79 - Beispiel mit PUMA 560 T6-Matrix für PUMA 560 - (2) wobei T 6 = T T = n x s x a x p x n y s y a y p y n z s z a z p z... n x = C 1 [C 23 (C 4 C 5 C 6 S 4 S 6 ) S 23 S 5 C 6 ] S 1 (S 4 C 5 C 6 + C 4 S 6 ) J. Zhang 80