Benutzer-Werkzeuge

Webseiten-Werkzeuge


biomechanik:projekte:ws2017:wp1703

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

biomechanik:projekte:ws2017:wp1703 [27.03.2018 20:14] – [Roboterkinematik] Christian Ritterbiomechanik:projekte:ws2017:wp1703 [28.11.2022 00:58] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 10: Zeile 10:
 ^ Empfohlene Vorkenntnisse  | Grundlagenwikis: [[biomechanik/kinematik|Kinematik]] & [[biomechanik/dynamik|Dynamik]] \\ Lineare Algebra: [[https://de.wikipedia.org/wiki/Matrix_(Mathematik)|Matrizenrechnung]] & [[https://de.wikipedia.org/wiki/Determinante|Determinante]]  | ^ Empfohlene Vorkenntnisse  | Grundlagenwikis: [[biomechanik/kinematik|Kinematik]] & [[biomechanik/dynamik|Dynamik]] \\ Lineare Algebra: [[https://de.wikipedia.org/wiki/Matrix_(Mathematik)|Matrizenrechnung]] & [[https://de.wikipedia.org/wiki/Determinante|Determinante]]  |
 ^ Präsentationstermin       | 24.01.2018                                                                                                                                                                                                                                       | ^ Präsentationstermin       | 24.01.2018                                                                                                                                                                                                                                       |
-^ Zuletzt geändert          | 20.03.2018                                                                                                                                                                                                                                       |+^ Zuletzt geändert          | 15.04.2018                                                                                                                                                                                                                                       |
 \\ \\
 ===== Einleitung ===== ===== Einleitung =====
Zeile 27: Zeile 27:
 //Im Laufe des Wikis werde ich immer wieder auch die englischen Terme zu Fachbegriffen nennen, so dass bei Interesse das Verständnis der englischen Fachliteratur leichter fällt. //Im Laufe des Wikis werde ich immer wieder auch die englischen Terme zu Fachbegriffen nennen, so dass bei Interesse das Verständnis der englischen Fachliteratur leichter fällt.
 \\ \\ \\ \\
-Anmerkung: Dieses Wiki orientiert sich stukturell und thematisch an der Vorlesung "Grundlagen der Robotik" der TU Darmstadt. Dabei wird versucht einen möglichst breiten Überblick für Einsteiger zu schaffen, die nur über die Kenntnisse der Grundlagenwikis verfügen. +Anmerkung: Dieses Wiki orientiert sich stukturell und thematisch an der Vorlesung "Grundlagen der Robotik" der TU Darmstadt (siehe hierzu von Stryk, 2016). Dabei wird versucht einen möglichst breiten Überblick für Einsteiger zu schaffen, die nur über die Kenntnisse der Grundlagenwikis verfügen. 
 \\ \\ \\ \\
 Da das Wiki sehr umfangreich ist, sind nicht prüfungsrelevante Teile als Spoiler versteckt.// Da das Wiki sehr umfangreich ist, sind nicht prüfungsrelevante Teile als Spoiler versteckt.//
Zeile 79: Zeile 79:
 Nachdem definiert wurde, was ein Roboter ist, möchte ich euch zeigen, wie er aufgebaut ist. Nachdem definiert wurde, was ein Roboter ist, möchte ich euch zeigen, wie er aufgebaut ist.
 Allgemein kann man einen Roboter als [[biomechanik/dynamik/dyn05#mehrkoerpersysteme|Mehrkörpersystem]] betrachten in dem einzelne starre //Glieder// (engl. "links") mit //Gelenken// (engl. "joints") verbunden sind. Allgemein kann man einen Roboter als [[biomechanik/dynamik/dyn05#mehrkoerpersysteme|Mehrkörpersystem]] betrachten in dem einzelne starre //Glieder// (engl. "links") mit //Gelenken// (engl. "joints") verbunden sind.
-Dabei gibt es zwei mögliche Typen von Gelenken: //Drehgelenke// (engl. "revolute joints") und //Schubgelenke// (engl. "prismatic joints").+Dabei gibt es zwei mögliche Typen von Gelenken: //Drehgelenke// (engl. "revolute joints") und //Schubgelenke// (engl. "prismatic joints") (vgl. Craig, 2005, S. 62f.).
 \\ \\
 Erstere erlauben dabei eine rein rotatorische Bewegung und sind analog zu vielen Gelenken des Menschen, wie zum Beispiel der Ellbogen oder das Knie. Erstere erlauben dabei eine rein rotatorische Bewegung und sind analog zu vielen Gelenken des Menschen, wie zum Beispiel der Ellbogen oder das Knie.
Zeile 110: Zeile 110:
 \\ \\
 In der (direkten) Roboterkinematik geht es darum, für einen Roboter aus bekannten Gelenkwinkeln $\theta_i$ bzw. -translationen $d_i$ (für $1 \leq i \leq n$, bei $n$-gelenkigem Roboter) die Position und Orientierung der einzelnen Gelenke und des Endeffektors in Bezug auf ein //Weltkoordinatensystem// (WKS) (einen festen, vorbestimmten Ursprung) zu berechnen. In der (direkten) Roboterkinematik geht es darum, für einen Roboter aus bekannten Gelenkwinkeln $\theta_i$ bzw. -translationen $d_i$ (für $1 \leq i \leq n$, bei $n$-gelenkigem Roboter) die Position und Orientierung der einzelnen Gelenke und des Endeffektors in Bezug auf ein //Weltkoordinatensystem// (WKS) (einen festen, vorbestimmten Ursprung) zu berechnen.
-Dabei wird jedem Gelenk und dem Endeffektor ein eigenes Koordinatensystem zugewiesen.+Dabei wird jedem Gelenk und dem Endeffektor ein eigenes Koordinatensystem zugewiesen (vgl. Craig, 2005, S. 73ff.).
 (Anmerkung: Es existiert immer nur entweder $\theta_i$ oder $d_i$, da man entweder ein Drehgelenk (rein rotatorisch) oder ein Schubgelenk (rein translatorisch) hat, zusammengefasst bezeichnen wir sie als //Gelenkvariable// $q_i$). (Anmerkung: Es existiert immer nur entweder $\theta_i$ oder $d_i$, da man entweder ein Drehgelenk (rein rotatorisch) oder ein Schubgelenk (rein translatorisch) hat, zusammengefasst bezeichnen wir sie als //Gelenkvariable// $q_i$).
 Mit Methoden der Kinematik lässt sich eine //homogene Transformationsmatrix// $T$ berechnen, mit Hilfe derer, basierend auf den $q_i$, die Transformation vom WKS zum jeweiligen Gelenk- oder Endeffektorkoordinatensystem (EKS) dargestellt werden kann. Mit Methoden der Kinematik lässt sich eine //homogene Transformationsmatrix// $T$ berechnen, mit Hilfe derer, basierend auf den $q_i$, die Transformation vom WKS zum jeweiligen Gelenk- oder Endeffektorkoordinatensystem (EKS) dargestellt werden kann.
 \\ \\
-Allgemein hat $T$ die Form (vgl. Paul, 1981, S. 41):+Allgemein hat $T$ die Form (vgl. Paul, 1981, S. 41; vgl. von Stryk, 2016, S. 24):
 $$ ^aT_b = \left(\begin{array}{c|c} $$ ^aT_b = \left(\begin{array}{c|c}
 ^aR_b(\alpha, \beta, \gamma) & ^a\pmb{r}_b \\ ^aR_b(\alpha, \beta, \gamma) & ^a\pmb{r}_b \\
Zeile 141: Zeile 141:
 \\ \\
 Ein weiteres Feld der Kinematik beschreibt die Berechnung der linearen Geschwindigkeit ($v$) und der Rotationsgeschwindigkeit ($\omega$) des Endeffektors relativ zum WKS, abhängig von den Gelenkvariablen. Ein weiteres Feld der Kinematik beschreibt die Berechnung der linearen Geschwindigkeit ($v$) und der Rotationsgeschwindigkeit ($\omega$) des Endeffektors relativ zum WKS, abhängig von den Gelenkvariablen.
-Dazu bestimmt man die Jakobimatrix des Manipulators (engl. "Jacobian"), welche die folgende Gleichung erfüllt (vgl. Yoshikawa, 1985, S. 3):+Dazu bestimmt man die Jakobimatrix des Manipulators (engl. "Jacobian"), welche die folgende Gleichung erfüllt (vgl. Yoshikawa, 1985, S. 3; vgl. von Stryk, 2016, S. 65):
 $$ $$
 \begin{pmatrix} \begin{pmatrix}
Zeile 284: Zeile 284:
 Man sucht allgemein eine Lösung für $\tau = M(q)\ddot q + V(q, \dot q) + G(q)$, wobei $M(q)$ aus Masse und [[biomechanik/dynamik/dyn04#massentraegheitsmoment|Trägheitstensor]] resultiert. Man sucht allgemein eine Lösung für $\tau = M(q)\ddot q + V(q, \dot q) + G(q)$, wobei $M(q)$ aus Masse und [[biomechanik/dynamik/dyn04#massentraegheitsmoment|Trägheitstensor]] resultiert.
 $V(q, \dot q)$ sind Kräfte, wie [[biomechanik/dynamik/dyn06|Reibung]] oder die [[https://de.wikipedia.org/wiki/Corioliskraft|Coriolis-Kraft]], und $G(q)$ sind statische Kräfte, wie die Schwerkraft (vgl. Craig, 2005, S. 185). $V(q, \dot q)$ sind Kräfte, wie [[biomechanik/dynamik/dyn06|Reibung]] oder die [[https://de.wikipedia.org/wiki/Corioliskraft|Coriolis-Kraft]], und $G(q)$ sind statische Kräfte, wie die Schwerkraft (vgl. Craig, 2005, S. 185).
-Zur Berechnung der inversen Dynamik gibt es verschiedene Ansätze, zwei davon möchte ich kurz vorstellen (vgl. Craig, 2005, S. 171-183).+Zur Berechnung der inversen Dynamik gibt es verschiedene Ansätze, zwei davon möchte ich kurz vorstellen.
 \\ \\
 Die //Newton-Euler-Iteration// berechnet iterativ (also durch Wiederholung gleicher Berechnungen), basierend auf Kräften und Drehmomenten in den Gliedern, die nötigen Kräfte und Drehmomente in den Gelenken. Die //Newton-Euler-Iteration// berechnet iterativ (also durch Wiederholung gleicher Berechnungen), basierend auf Kräften und Drehmomenten in den Gliedern, die nötigen Kräfte und Drehmomente in den Gelenken.
 Dabei erhält man oft lange Gleichungen. Dabei erhält man oft lange Gleichungen.
-Allerdings ist das Abarbeiten des Algorithmus leicht auf einem Computer umzusetzen.+Allerdings ist das Abarbeiten des Algorithmus leicht auf einem Computer umzusetzen. (vgl. Craig, 2005, S. 171-176; vgl. von Stryk, 2016, S.98-109)
 \\ \\
 Dahingegen betrachtet der Ansatz der //Lagrange-Gleichung// die Energie des Systems. Dahingegen betrachtet der Ansatz der //Lagrange-Gleichung// die Energie des Systems.
-Dazu werden die Gleichungen für die kinetische Energie $E_{kin}$ und die potentielle Energie $E_{pot}$ der einzelnen Gelenke aufgestellt und daraus die Lagrange-Gleichung $L$ aufgestellt.+Dazu werden die Gleichungen für die kinetische Energie $E_{kin}$ und die potentielle Energie $E_{pot}$ der einzelnen Gelenke aufgestellt und daraus die Lagrange-Gleichung $L$ aufgestellt (vgl. Craig, 2005, S. 182f.; vgl. von Stryk, 2016, S. 119-122).
 Es gilt: Es gilt:
 $$ $$
Zeile 312: Zeile 312:
 Sie kann als plötzlicher Verlust eines Freiheitsgrades gesehen werden. Sie kann als plötzlicher Verlust eines Freiheitsgrades gesehen werden.
 Grund dafür sind Probleme bei der Berechnung von Inversen. Grund dafür sind Probleme bei der Berechnung von Inversen.
-Es kann entweder keine Lösung für eine gewünschte Bewegung gefunden werden, oder unendlich viele.+Es kann entweder keine Lösung für eine gewünschte Bewegung gefunden werden, oder unendlich viele (vgl. Craig, 2005, S. 152).
 Dabei können verschiedene Effekte auftreten. Dabei können verschiedene Effekte auftreten.
 So können extrem hohe Kräfte und Drehmomente von den Gelenken gefordert werden, die Steuerung könnte versagen oder es kann sich die Steifigkeit des Roboter ändern. So können extrem hohe Kräfte und Drehmomente von den Gelenken gefordert werden, die Steuerung könnte versagen oder es kann sich die Steifigkeit des Roboter ändern.
Zeile 328: Zeile 328:
 Betrachtet man die Jakobimatrix aus dem Beispiel, kann man die Singularitäten des vorgestellten Roboters ermitteln. Betrachtet man die Jakobimatrix aus dem Beispiel, kann man die Singularitäten des vorgestellten Roboters ermitteln.
 Für die meisten Konfigurationen ist der Rang der Matrix 2, der Roboter hat also 2 DoFs. Für die meisten Konfigurationen ist der Rang der Matrix 2, der Roboter hat also 2 DoFs.
-Eine Matrix ist unter anderem dann singulär, wenn ihre Determinante $0$ ist.+Eine Matrix ist unter anderem dann singulär, wenn ihre Determinante $0$ ist (vgl. Craig, 2005, S. 152).
 <spoiler|Berechnung der Determinanten> <spoiler|Berechnung der Determinanten>
 Wir betrachten die vereinfachte Jakobimatrix (nach Entfernen der trivialen Zeilen): Wir betrachten die vereinfachte Jakobimatrix (nach Entfernen der trivialen Zeilen):
Zeile 381: Zeile 381:
 \\ \\
 So benötigt man bei Industrierobotern beispielsweise eine hohe Positionsgenauigkeit, um mikrometergenau Bauteile miteinander zu verbinden. So benötigt man bei Industrierobotern beispielsweise eine hohe Positionsgenauigkeit, um mikrometergenau Bauteile miteinander zu verbinden.
-Die dafür benötigte Regelung macht den Roboter aber oft steif (unnachgiebig gegenüber äußeren Einflüssen), was den Arbeitsbereich des Roboters gefährlich für Menschen macht (trifft der Arm eines Industrieroboters einen Menschen am Kopf, kann dies zu schweren Verletzungen führen).+Die dafür benötigte Regelung macht den Roboter aber oft steif (unnachgiebig gegenüber äußeren Einflüssen), was den Arbeitsbereich des Roboters gefährlich für Menschen macht (trifft der Arm eines Industrieroboters einen Menschen am Kopf, kann dies zu schweren Verletzungen führen) (vgl Cui et al., 2014, S. 1ff.).
 \\ \\
 Auch der Mensch verwendet Regelungen. Auch der Mensch verwendet Regelungen.
Zeile 407: Zeile 407:
 Auch wenn diese für einen Menschen einfach erscheint, ist sie für einen herkömmlichen (starren) Roboter sehr schwierig. Auch wenn diese für einen Menschen einfach erscheint, ist sie für einen herkömmlichen (starren) Roboter sehr schwierig.
 \\ \\
-{{ youtube>large:z7eo_g2Y-M0|BioBiped1 alternate hopping }}+{{ youtube>z7eo_g2Y-M0?large |BioBiped1 alternate hopping }}
 \\ \\
 \\ \\
Zeile 444: Zeile 444:
   * [[https://www.bostondynamics.com/|Boston Dynamics]] ist eine US-amerikanische Entwicklerfirma, die sich auf Roboter für komplexe Aufgaben spezialisiert haben. Dazu zählen humanoide Roboter für das Gelände, aber auch vierbeinige Roboter, die dem Menschen als Helfer zur Seite stehen.   * [[https://www.bostondynamics.com/|Boston Dynamics]] ist eine US-amerikanische Entwicklerfirma, die sich auf Roboter für komplexe Aufgaben spezialisiert haben. Dazu zählen humanoide Roboter für das Gelände, aber auch vierbeinige Roboter, die dem Menschen als Helfer zur Seite stehen.
  
-{{ youtube>large:fRj34o4hN4I|Atlas }}+{{ youtube>fRj34o4hN4I?large |Atlas }}
  
   * Das deutsche Unternehmen [[https://www.festo.com/group/en/cms/10156.htm|Festo]] forscht unter anderem an Robotern, die verschiedenen Tieren nachempfunden sind. So finden sich auf ihrer Homepage Kängurus, Ameisen oder Schmetterlinge, die sich ganz wie ihre natürlichen Vorbilder fortbewegen.   * Das deutsche Unternehmen [[https://www.festo.com/group/en/cms/10156.htm|Festo]] forscht unter anderem an Robotern, die verschiedenen Tieren nachempfunden sind. So finden sich auf ihrer Homepage Kängurus, Ameisen oder Schmetterlinge, die sich ganz wie ihre natürlichen Vorbilder fortbewegen.
  
-{{ youtube>large:mWiNlWk1Muw|BionicKangaroo }}+{{ youtube>mWiNlWk1Muw?large |BionicKangaroo }}
  
   * Als Spin-Off der TU Darmstadt hat die darmstädter Firma Bionic Robotics einen elastischen Roboterarm //BioRob// (ähnlich dem BioBiped) entwickelt, der als Industrieroboter eingesetzt werden soll. Oberstes Ziel ist es dabei, die Gefahr für Menschen bei der Arbeit mit Robotern zu minimieren.   * Als Spin-Off der TU Darmstadt hat die darmstädter Firma Bionic Robotics einen elastischen Roboterarm //BioRob// (ähnlich dem BioBiped) entwickelt, der als Industrieroboter eingesetzt werden soll. Oberstes Ziel ist es dabei, die Gefahr für Menschen bei der Arbeit mit Robotern zu minimieren.
  
-{{ youtube>large:4GvenGFsWqA|BioRob }}+{{ youtube>4GvenGFsWqA?large |BioRob }}
 </spoiler> </spoiler>
 \\ \\
Zeile 508: Zeile 508:
 \\ \\ \\ \\
 Craig, J. J. (2005). //Introduction To Robotics: Mechanics And Control//. Upper Saddle River, NJ: Pearson Education. Craig, J. J. (2005). //Introduction To Robotics: Mechanics And Control//. Upper Saddle River, NJ: Pearson Education.
 +\\ \\
 +Cui, G; Zhang, D; Rosen, M. (2014). //Robotics Safety: An Engineering Teaching Module//. Verfügbar: [[http://new.safetymanagementeducation.com/wp-content/uploads/2015/09/Robotics_Safety-Teaching_Module-Supplemental_Report_140730_FINAL_REV-with_logos.pdf|hier]].
 \\ \\ \\ \\
 Donelan, P. (2010). //Kinematic Singularities of Robot Manipulators//. In: Hall, E. (Ed.) (2010). //Advances in Robot Manipulators//. InTech. S. 401-416. Donelan, P. (2010). //Kinematic Singularities of Robot Manipulators//. In: Hall, E. (Ed.) (2010). //Advances in Robot Manipulators//. InTech. S. 401-416.
biomechanik/projekte/ws2017/wp1703.1522174442.txt.gz · Zuletzt geändert: 28.11.2022 00:46 (Externe Bearbeitung)


Warning: Undefined variable $orig_id in /is/htdocs/wp1019470_OPI92FFHXV/www/wikiLehre/lib/plugins/openas/action.php on line 232