Inverse Kinematik
aus Wikipedia, der freien Enzyklopädie
Inhaltsverzeichnis |
[Bearbeiten] Allgemein
Die inverse Kinematik (oft abgekürzt als IK) bezeichnet das Gegenstück zur direkten Kinematik und beschäftigt sich mit der Frage, wie aus der Lage (Position und Orientierung) des Endeffektors (engl.: Tool Center Point, TCP) die Gelenkwinkel der Armelemente bestimmt werden können. Sie spielt damit eine wichtige Rolle bei der Bewegung von Industrierobotern und bei der Computeranimation von Charakteren.
Bei der inversen Kinematik wird das letzte Glied der kinematischen Kette, der sogenannte Endeffektor, bewegt und in die gewünschte Lage gebracht. Die übrigen Glieder der Kette müssen dann entsprechend den Freiheitsgraden ihrer Gelenke passende Lagen einnehmen.
Vergleichen lässt sich dies mit dem menschlichen Arm, der mit seinen Gelenken auch eine solche kinematische Kette darstellt: Bringt man beispielsweise die Hand in eine bestimmte Lage, nehmen Handgelenk, Ellenbogen und Schulter automatisch ebenfalls bestimmte Stellungen ein. Genau diese (Gelenkwinkel-)Stellungen müssen über die inverse Kinematik bestimmt werden.
Die Zusammenhänge versucht folgendes Bild zu verdeutlichen:
[Bearbeiten] Schwierigkeiten
Die folgenden Schwierigkeiten treten bei der Berechnung der inversen Kinematik auf:
- Die Lage der einzelnen Glieder bzw. Armelemente muss nicht eindeutig sein. Es kann (und wird im Allgemeinen auch) immer mehrere Konfigurationen geben, die zur gewünschten Lage des letzten Gliedes führen. (Hält man z.B. die Hand vor dem Körper fest, kann man trotzdem den Ellenbogen nach oben bzw. unten bewegen). Aus den vorhandenen Möglichkeiten muss also eine sinnvolle Konfiguration ausgewählt werden.
- Es können unzulässige Konfigurationen entstehen. Diese sind mathematisch zwar vielleicht korrekt, können von den Gelenken aber nicht erfüllt bzw. eingenommen werden oder führen zu Singularitäten oder nicht erreichbaren Ziellagen.
- Die Anzahl der Parameter ist nicht identisch. Beispielsweise können bei einem 7-Achser die Gelenke nur bis auf einen Freiheitsgrad festgelegt werden.
[Bearbeiten] Lösungsmöglichkeiten
Zur Lösung des inversen kinematischen Problems gibt es kein allgemein anwendbares Verfahren. Da die Berechnung der Gelenkwinkel sehr schnell erfolgen muss, sind in der Praxis üblicherweise Lösungen zu finden, die auf den speziellen Roboter optimiert und angepasst sind.
Folgende, grundlegende Methoden gibt es:
- algebraische und geometrische Methoden
- numerische Methoden
[Bearbeiten] Algebraische Methoden
Durch sukzessive Invertierung der Denavit-Hartenberg-Transformationsmatrizen und damit Lösung des folgenden Gleichungssystems können nach und nach die einzelnen Gelenkwinkelvektorkomponenten berechnet werden:
Wobei TTCP eine homogene Matrix ist, die die Position und Orientierung des Endeffektors beschreibt.
[Bearbeiten] Geometrische Methoden
Aufgrund des Wissens über die Geometrie des Roboters wird versucht, zum Beispiel mit Hilfe von Kosinussatz oder Sinussatz den Gelenkwinkelvektor q zu berechnen.
[Bearbeiten] Numerische Methoden
Mit numerischen Methoden wird iterativ versucht, eine Lösung für den Gelenkwinkelvektor q zu finden. Lokale Minima oder die Bestimmung eines geeigneten Startwerts sind hier jedoch problematisch.
[Bearbeiten] Literatur
- Dierk Lothar Hahn: Integrative Mehrroboterbewegungssteuerung für redundante Kinematiken, Shaker Verlag 2000, ISBN 3826569865