# Direkte Kinematik

Die direkte Kinematik, Vorwärtskinematik oder Vorwärtstransformation ist ein Begriff aus der Robotik. Sie befasst sich mit der Frage, wie aus den Gelenkwinkeln der Armelemente eines Roboters die Pose (Position und Orientierung) des Endeffektors in Bezug auf das Basiskoordinatensystem bestimmt werden kann. Sie ist das sachliche Gegenstück zur inversen Kinematik.
Bei seriellen Anordnungen von Strukturbauteilen und Gelenken, wie z. B. bei vielen Industrierobotern, kann die direkte Kinematik durch eine einfache Matrizenmultiplikation der Denavit-Hartenberg-Matrizen (siehe Denavit-Hartenberg-Transformation) berechnet werden:
    $^{\mathrm {BKS} }S_{\mathrm {TCP} }(q)=^{\mathrm {BKS} }T_{\mathrm {OKS} _{1}}(q_{1})\cdot^{\mathrm {OKS} _{1}}T_{\mathrm {OKS} _{2}}(q_{2})\cdot \ldots \cdot^{\mathrm {OKS} _{n-1}}T_{\mathrm {TCP} }(q_{n})$
Lage und Orientierung des TCP-Koordinatensystems $\mathrm {TCP}$ kann mit Hilfe dieser Matrix nun relativ zum Basiskoordinatensystem $\mathrm {BKS}$ ausgedrückt werden, was gleichbedeutend mit der Lösung des direkten kinematischen Problems ist.
Diese Berechnung kann analytisch und damit auch in Echtzeit auf Maschinensteuerungen erfolgen. Bei Maschinen oder Robotern mit parallelkinematischer Struktur, die nicht durch Denavit-Hartenberg-Parameter beschrieben werden können, ist eine analytische Lösung der direkten Kinematik im Allgemeinen nicht möglich. Analytische Lösungen existieren hier nur unter strengen geometrischen Voraussetzungen.
Die Zusammenhänge verdeutlicht folgende Abbildung:
Dabei ist zu beachten, dass nur im Falle gleicher Anzahl von Parametern (also in der Regel 6) eine eineindeutige Abbildung möglich ist. Ansonsten spricht man von redundanten Kinematiken.

## Lösungsmöglichkeiten

Zur Lösung des direkten 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.
Es existieren folgende grundlegende Methoden:
* algebraische Methoden
* geometrische Methoden
* numerische Methoden

### Gleichungen

Die Vorwärtskinematik bezieht sich auf den Prozess des Erhaltens der Position und Geschwindigkeit des Endeffektors angesichts der bekannten Gelenkwinkel und Winkelgeschwindigkeiten. Wenn beispielsweise Schulter- und Ellbogengelenkwinkel für den Arm in der Sagittalebene angegeben sind, besteht das Ziel darin, kartesische Koordinaten von Handgelenk oder Faust zu finden.
In unserem speziellen Fall suchen wir nach einer Koordinatentransformation
    $\theta _{1},\theta _{2}\rightarrow x_{EE},y_{EE}$
In diesem Beispiel befindet sich das erste Gelenk am Koordinatenursprung. Daher sind die Koordinaten vom zweiten Gelenk
    $x_{2}=L_{1}\cdot \cos(\theta _{1})$
    $y_{2}=L_{1}\cdot \sin(\theta _{1})$
und die Koordinaten des Endeffektors
    $x_{EE}=x_{2}+L_{2}\cdot \cos(\theta _{1})+\theta _{2}=L_{1}\cdot \cos(\theta _{1})+L_{2}\cdot \cos(\theta _{1})+\theta _{2}$
    $y_{EE}=y_{2}+L_{2}\cdot \sin(\theta _{1})+\theta _{2}=L_{1}\cdot \sin(\theta _{1})+L_{2}\cdot \sin(\theta _{1})+\theta _{2}$
Durch Ableitung nach der Zeit erhält man nun die Geschwindigkeit des Endeffektors:
    ${\dot {x}}_{EE}=-{\dot {\theta _{1}}}\cdot L_{1}\cdot \sin(\theta _{1})-{\dot {\theta _{1}}}+{\dot {\theta _{2}}}\cdot L_{2}\cdot \sin(\theta _{1})+\theta _{2}$
    ${\dot {y}}_{EE}={\dot {\theta _{1}}}\cdot L_{1}\cdot \cos(\theta _{1})+{\dot {\theta _{1}}}+{\dot {\theta _{2}}}\cdot L_{2}\cdot \cos(\theta _{1})+\theta _{2}$
Wenn man anstelle eines ebenen Systems ein komplexeres dreidimensionales System betrachten würde, wäre diese Berechnung anspruchsvoller. Darüber hinaus kann es vorkommen, dass die Anzahl der Freiheitsgrade von Eingabevariablen und Ausgabevariablen nicht übereinstimmt. Beispielsweise könnten beide Gelenke zwei Freiheitsgrade haben, die eine Trajektorie mit drei Freiheitsgraden eines punktförmigen Endeffektors definieren. Basierend auf der Eingabe der Gelenke mit vier Freiheitsgraden würde man daher nur eine Ausgabe mit drei Freiheitsgraden erhalten. Diese Redundanz würde einfach bedeuten, dass es unendlich viele Lösungen für die Gelenkwinkel für eine einzelne Position des Endeffektors geben kann. Dies kann als unendlich viele mögliche Positionen vom zweiten Gelenk entlang des Kreises dargestellt werden, die als Schnittpunkt zweier auf dem ersten Gelenk und Endeffektor zentrierter Kugeln mit Radien erhalten werden, die den Längen der entsprechenden Glieder entsprechen.
Der kinematische Zustand oder nur der Zustand des Manipulators ist typischerweise vollständig mit Gelenkwinkeln und Winkelgeschwindigkeiten definiert. In bestimmten Fällen, wie hier, ist der Zustand auch vollständig mit der Position und Geschwindigkeit des Endeffektors definiert. Wie erläutert gilt das für den allgemeinen Fall nicht.