<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Inverse_Kinematik</id>
	<title>Inverse Kinematik - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Inverse_Kinematik"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Inverse_Kinematik&amp;action=history"/>
	<updated>2026-06-11T08:07:37Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Inverse_Kinematik&amp;diff=91625&amp;oldid=prev</id>
		<title>imported&gt;Leyo: dynamisch erzeugte Themenseite ersetzt</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Inverse_Kinematik&amp;diff=91625&amp;oldid=prev"/>
		<updated>2023-12-02T22:46:28Z</updated>

		<summary type="html">&lt;p&gt;dynamisch erzeugte Themenseite ersetzt&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Die &amp;#039;&amp;#039;&amp;#039;inverse [[Kinematik]]&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;Inverskinematik&amp;#039;&amp;#039;&amp;#039; oder &amp;#039;&amp;#039;&amp;#039;Rückwärtstransformation&amp;#039;&amp;#039;&amp;#039; ist ein Begriff aus der [[Computeranimation]] und [[Robotik]]. Sie ermöglicht bei einem [[Roboter]] die Bestimmung der [[Gelenk (Technik)|Gelenk]]&amp;lt;nowiki/&amp;gt;winkel der Armelemente anhand der [[Pose (Technik)|Pose]] (Position und Orientierung) des [[Endeffektor]]s. Sie spielt damit eine wichtige Rolle bei der Bewegung von [[Industrieroboter]]n und bei der Computeranimation von Charakteren. Sie ist das logische Gegenstück zur [[direkte Kinematik|direkten Kinematik]].&lt;br /&gt;
&lt;br /&gt;
Bei der inversen Kinematik wird das letzte Glied der [[Kinematische Kette|kinematischen Kette]], der Endeffektor, bewegt und in die gewünschte Lage gebracht. Die übrigen Glieder der Kette müssen dann entsprechend den [[Freiheitsgrad]]en ihrer Gelenke passende Lagen einnehmen.&lt;br /&gt;
&lt;br /&gt;
Vergleichen lässt sich dies mit dem menschlichen [[Arm]], der mit seinen [[Gelenk (Anatomie)|Gelenken]] auch eine solche kinematische Kette darstellt: Bringt man beispielsweise die [[Hand]] in eine bestimmte Lage, so nehmen [[Handgelenk]], [[Ellbogengelenk|Ellenbogen]] und [[Schulter]] automatisch ebenfalls bestimmte Stellungen ein. Genau diese Gelenkwinkel-Stellungen müssen über die inverse Kinematik bestimmt werden.&lt;br /&gt;
&lt;br /&gt;
Die Zusammenhänge verdeutlicht folgende Abbildung: [[Datei:roboterkinematik.png]]&lt;br /&gt;
[[Datei:Kinematik.png|mini|Kinematik erreicht selben Punkt über verschiedene Konfigurationen.]]&lt;br /&gt;
&lt;br /&gt;
== Schwierigkeiten ==&lt;br /&gt;
Bei der Berechnung der inversen Kinematik treten folgende Schwierigkeiten auf:&lt;br /&gt;
# Die Lage der einzelnen Glieder bzw. Armelemente muss nicht eindeutig sein. Es kann und wird im Allgemeinen mehrere [[Konfiguration (Mechanik)|Konfigurationen]] geben, die zur gewünschten Lage des Endeffektors führen. Man stelle sich eine einfache Kinematik vor, die aus zwei Gliedern besteht. Das erste Glied ist über ein Drehgelenk an der Umgebung befestigt, das zweite Glied ist über ein Drehgelenk am ersten Glied befestigt. Ein Punkt im Arbeitsraum kann nun auf zwei Weisen erreicht werden: „rechts rum“ und „links rum“. Diese beiden Möglichkeiten nennt man Konfigurationen. &lt;br /&gt;
# 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 nicht erreichbaren Ziellagen.&lt;br /&gt;
# Die Anzahl der [[Parameter (Mathematik)|Parameter]] ist nicht identisch. Beispielsweise können bei einem 7-Achser die Gelenke nur bis auf einen Freiheitsgrad festgelegt werden.&lt;br /&gt;
&lt;br /&gt;
== Lösungsmöglichkeiten ==&lt;br /&gt;
Zur [[Lösung (Mathematik)|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.&lt;br /&gt;
&lt;br /&gt;
Es existieren folgende grundlegende Methoden:&lt;br /&gt;
* [[algebraisch]]e Methoden&lt;br /&gt;
* [[geometrisch]]e Methoden&lt;br /&gt;
* [[Numerische Mathematik|numerische]] Methoden.&lt;br /&gt;
&lt;br /&gt;
=== Algebraische Methoden ===&lt;br /&gt;
Durch sukzessive Invertierung der [[Denavit-Hartenberg-Transformation]]smatrizen und damit [[Lösung (Mathematik)|Lösung]] des folgenden [[Gleichungssystem]]s können nach und nach die einzelnen Gelenkwinkelvektorkomponenten berechnet werden:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;T_{\mathrm{TCP}}(q) = T_{1}(q_1) \cdot T_{2}(q_2) \cdot \ldots \cdot T_{n}(q_n)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wobei &amp;lt;math&amp;gt;T_{\mathrm{TCP}}&amp;lt;/math&amp;gt; eine [[homogene Matrix]] ist, die die Position und [[Orientierung (Mathematik)|Orientierung]] des [[Endeffektor]]s beschreibt.&lt;br /&gt;
&lt;br /&gt;
=== Geometrische Methoden ===&lt;br /&gt;
Aufgrund des Wissens über die [[Geometrie]] des [[Roboter]]s wird versucht, zum Beispiel mit Hilfe von [[Kosinussatz]] oder [[Sinussatz]] den Gelenkwinkelvektor &amp;lt;math&amp;gt;q&amp;lt;/math&amp;gt; zu berechnen.&lt;br /&gt;
&lt;br /&gt;
=== Numerische Methoden ===&lt;br /&gt;
Mit [[Numerische Mathematik|numerischen]] Methoden wird [[Iteration|iterativ]] versucht, eine [[Lösung (Mathematik)|Lösung]] für den Gelenkwinkelvektor &amp;lt;math&amp;gt;q&amp;lt;/math&amp;gt; zu finden. Lokale Minima oder die Bestimmung eines geeigneten Startwerts sind hier jedoch problematisch.&lt;br /&gt;
&lt;br /&gt;
=== Gleichungen ===&lt;br /&gt;
Die inverse [[Kinematik]] ist der [[Vorwärtskinematik]] genau entgegengesetzt. Es bezieht sich auf den Prozess des Erhaltens von [[Gelenk (Technik)|Gelenkwinkeln]] aus bekannten [[Koordinatensystem|Koordinaten]] des [[Endeffektor]]s. Wenn beispielsweise kartesische [[Handgelenk]]- oder Faustkoordinaten bekannt sind, besteht das Ziel darin, die [[Winkel]] der [[Schulter]]- und [[Ellbogengelenk]]e für den [[Arm]] in der [[Sagittalebene]] zu entschlüsseln. Wenn die [[Freiheitsgrad]]e &amp;#039;&amp;#039;Eingabe&amp;#039;&amp;#039; und &amp;#039;&amp;#039;Ausgabe&amp;#039;&amp;#039; nicht übereinstimmen, ist die inverse Kinematik möglicherweise zwecklos, da es entweder unendlich viele oder keine [[Lösung (Mathematik)|Lösungen]] gibt.&lt;br /&gt;
&lt;br /&gt;
Gesucht ist eine [[Koordinatentransformation]]&lt;br /&gt;
:&amp;lt;math&amp;gt;x_{EE}, y_{EE} \rightarrow \theta_2, \theta_2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Es ist zu beachten, dass es selbst in unserem Fall mit gut abgestimmten [[Freiheitsgrad]]en möglicherweise keine [[Lösung (Mathematik)|Lösung]], eine einzelne Lösung oder zwei Lösungen für die inverse Kinematik gibt, die keinem [[Schnittpunkt]] zwischen [[Kreis]]en entsprechen, die beim ersten [[Gelenk (Technik)|Gelenk]] und [[Endeffektor]] zentriert sind, und bei gleichen [[Radius|Radien]] zu den entsprechenden Längen der Verbindungen berühren sich zwei Kreise, die die einzelne Position vom zweiten Gelenk definieren, und zwei Schnittpunkte, die zwei mögliche Lösungen für das zweite Gelenk definieren.&lt;br /&gt;
&lt;br /&gt;
Diese [[Schnittpunkt]]e können bestimmt werden, indem [[Gleichung]]en für zwei [[Kreis]]e gesetzt und nach &amp;lt;math&amp;gt;x_2, y_2&amp;lt;/math&amp;gt; aufgelöst werden:&lt;br /&gt;
:&amp;lt;math&amp;gt;x_{EE} - x_2^2 + y_{EE} - y_2^2 = L_2^2&amp;lt;/math&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;x_1 - x_2^2 + y_1 - y_2^2 = L_1^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Wenn eine [[Lösung (Mathematik)|Lösung]] für &amp;lt;math&amp;gt;x_2, y_2&amp;lt;/math&amp;gt; existiert, kann man nach &amp;lt;math&amp;gt;\theta_1, \theta_2&amp;lt;/math&amp;gt; auflösen.&lt;br /&gt;
&lt;br /&gt;
Ein anderer Ansatz ist, den [[Kosinussatz]] zu verwenden und den [[Winkel]] &amp;lt;math&amp;gt;\alpha_2&amp;lt;/math&amp;gt; zu bestimmen:&lt;br /&gt;
:&amp;lt;math&amp;gt;\alpha_2 = \arccos \left(\frac{L_2^1 + L_2^2 - x_{EE}^2 + y_{EE}^2}{2 \cdot L_1 \cdot L_2}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Daraus ergibt sich&lt;br /&gt;
:&amp;lt;math&amp;gt;\theta_2 = \pi - \arccos \left(\frac{L_2^1 + L_2^2 - x_{EE}^2 + y_{EE}^2}{2 \cdot L_1 \cdot L_2}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ebenso erhält man mithilfe des [[Kosinussatz]]&lt;br /&gt;
:&amp;lt;math&amp;gt;\alpha_1 = \arccos \left(\frac{L_2^1 - L_2^2 + x_{EE}^2 + y_{EE}^2}{2 \cdot L_1 \cdot \sqrt{x_{EE}^2 + y_{EE}^2}}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
und schließlich&amp;lt;ref&amp;gt;{{Literatur |Autor=Marko B. Popovic, Matthew P. Bowers |Titel=Kinematics and Dynamics |Sammelwerk=Biomechatronics |Verlag=Elsevier |Datum=2019 |ISBN=978-0-12-812939-5 |DOI=10.1016/b978-0-12-812939-5.00002-1 |Seiten=11–43}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
:&amp;lt;math&amp;gt;\theta_1 = \pi - \arctan \left(\frac{y_{EE}}{x_{EE}}\right) - \arccos \left(\frac{L_2^1 - L_2^2 + x_{EE}^2 + y_{EE}^2}{2 \cdot L_1 \cdot \sqrt{x_{EE}^2 + y_{EE}^2}}\right)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[FK- und IK-Rigging]]&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* Dierk Lothar Hahn: &amp;#039;&amp;#039;Integrative Mehrroboterbewegungssteuerung für redundante Kinematiken&amp;#039;&amp;#039;, [[Shaker Verlag]] 2000, ISBN 3-8265-6986-5&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [http://www.worldwidewolf.de/diplom.pdf Verallgemeinerte inverse Kinematik für Anwendungen in der Robotersimulation und der virtuellen Realität] Diplomarbeit Wolfgang Smidt (PDF; 1,1&amp;amp;nbsp;MB)&lt;br /&gt;
* {{YouTube | id=3s2x4QsD3uM | title=Backward transformation of an industrial robot}} – 3D Animationsvideo zur Berechnung der geometrischen inversen Kinematik am Beispiel eines 6 Achsenroboters mit Zentralhand.&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Computeranimation]]&lt;br /&gt;
[[Kategorie:Robotik]]&lt;br /&gt;
[[Kategorie:Kinematik]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Leyo</name></author>
	</entry>
</feed>