Grundlagen der Robotik - Exam.pdf

Grundlagen der Robotik - Exam
Grundlagen der Robotik - Exam Aufgabe 1) Historische Entwicklung und Meilensteine der Robotiktechnologie als Bestandteil der Informatik. Antike: Erste Automatiken (z.B. Herons mechanische Geräte). 1950er: Begriff 'Roboter' und erste Industrieroboter (Unimate). 1960er-1980er: Erste programmierbare Roboter, Integration in Industrie. 1990er: Fortschritte in KI, Sensorik und Robotik (z.B. ASIMO). 21. ...

© StudySmarter 2024, all rights reserved.

Grundlagen der Robotik - Exam

Aufgabe 1)

Historische Entwicklung und Meilensteine der Robotiktechnologie als Bestandteil der Informatik.

  • Antike: Erste Automatiken (z.B. Herons mechanische Geräte).
  • 1950er: Begriff 'Roboter' und erste Industrieroboter (Unimate).
  • 1960er-1980er: Erste programmierbare Roboter, Integration in Industrie.
  • 1990er: Fortschritte in KI, Sensorik und Robotik (z.B. ASIMO).
  • 21. Jahrhundert: Autonome Systeme, humanoide Roboter, Servicerobotik.

a)

Beschreibe detailliert die Entwicklung und die Bedeutung des Industrieroboters Unimate in den 1950er Jahren. Erläutere, welche technischen Herausforderungen überwunden werden mussten und welche Auswirkungen diese technologische Errungenschaft auf die Industrie hatte.

Lösung:

Entwicklung und Bedeutung des Industrieroboters Unimate in den 1950er Jahren

  • Entwicklung des Unimate:Der Industrieroboter Unimate wurde in den späten 1950er Jahren von George Devol erfunden und in Zusammenarbeit mit Joseph Engelberger weiterentwickelt. Devol meldete 1954 das erste Patent für einen programmierbaren Roboter, das unter dem Titel „Programmed Article Transfer“ bekannt wurde. Die erste Installation eines Unimate-Roboters fand 1961 bei General Motors in einer Fabrik in New Jersey statt, wo er Aufgaben wie das Schweißen erledigte.
  • Technische Herausforderungen:Die Entwicklung des Unimate stieß auf zahlreiche technische Herausforderungen, darunter:
    • Genauigkeit und Wiederholbarkeit: Die Roboter mussten präzise und wiederholgenau arbeiten können, um für industrielle Anwendungen geeignet zu sein.
    • Programmierung: In den 1950er Jahren war die Programmierung noch nicht ausgereift. Entwickler mussten Methoden finden, um die Roboter auf einfache und effektive Weise programmieren zu können.
    • Zuverlässigkeit und Beständigkeit: Die Roboter mussten langlebig und zuverlässig arbeiten, um im rauen Umfeld von Produktionswerken bestehen zu können.
    • Kosteneffizienz: Hohe Entwicklungskosten und die Kosten für die Implementierung mussten gesenkt werden, um den Unimate wirtschaftlich attraktiv zu machen.
  • Auswirkungen auf die Industrie:Der Unimate Industrieroboter hatte bedeutende Auswirkungen auf die Industrie, darunter:
    • Automatisierung: Die Einführung des Unimate war ein bahnbrechender Schritt in Richtung Automatisierung, was zu einer erhöhten Effizienz und Produktivität in der Fertigung führte.
    • Sicherheitsverbesserung: Der Unimate übernahm gefährliche Aufgaben wie Schweißen und Handhabung heißer Materialien, wodurch das Verletzungsrisiko für menschliche Arbeiter reduziert wurde.
    • Kostensenkung: Durch die Automatisierung routinemäßiger und gefährlicher Aufgaben konnten Unternehmen Arbeitskosten senken und Produktionsprozesse rationalisieren.
    • Grundlage für weitere Entwicklungen: Der Erfolg des Unimate legte den Grundstein für die weitere Entwicklung und Verbreitung von Industrierobotern, die heute aus modernen Fertigungsprozessen nicht mehr wegzudenken sind.

b)

Erkläre die Fortschritte in der Robotik, die in den 1990er Jahren durch Fortschritte in der Künstlichen Intelligenz (KI) und Sensorik erreicht wurden. Nimm Bezug auf ein spezifisches Beispiel wie den ASIMO-Roboter und beschreibe dessen Fähigkeiten und Einsatzbereiche, auch unter Berücksichtigung der technischen Details.

Lösung:

Fortschritte in der Robotik in den 1990er Jahren durch Künstliche Intelligenz (KI) und Sensorik

  • Einführung:Die 1990er Jahre waren eine bedeutende Ära in der Robotik, in der Fortschritte in der Künstlichen Intelligenz (KI) und der Sensorik eine neue Generation von Robotern ermöglichten. Diese Entwicklungen führten zu intelligenteren, anpassungsfähigeren und vielseitigeren Maschinen, die in verschiedensten Bereichen eingesetzt werden konnten.
  • Beispiel: ASIMO-Roboter:ASIMO (Advanced Step in Innovative Mobility) ist ein humanoider Roboter, der von Honda entwickelt wurde. Er wurde erstmals im Jahr 2000 der Öffentlichkeit vorgestellt, doch die Entwicklung begann bereits in den 1990er Jahren.
  • Fähigkeiten von ASIMO:
    • Bewegung und Gleichgewicht: ASIMO kann auf zwei Beinen gehen, Treppen steigen und sogar rennen. Diese Fähigkeiten basieren auf fortschrittlichen Algorithmen zur Bewegungssteuerung und Sensorik, die Echtzeit-Anpassungen ermöglichen.
    • Umgebungserkennung: Dank eines komplexen Sensorsystems kann ASIMO seine Umgebung wahrnehmen. Dazu gehören Kameras, Infrarotsensoren und Ultraschallsensoren, die ihm helfen, Objekte zu erkennen und Hindernisse zu vermeiden.
    • Interaktion: ASIMO ist in der Lage, auf Sprachbefehle zu reagieren und einfache Gespräche zu führen. Dies wird durch fortschrittliche Spracherkennungssoftware und -algorithmen ermöglicht.
    • Autonomie: ASIMO kann autonom einfache Aufgaben ausführen, wie z.B. das Tragen von Objekten oder das Bedienen von Schaltern. Dies ist durch eine Kombination aus KI-Algorithmen und Sensorik möglich, die ihm erlauben, seine Umgebung zu analysieren und darauf zu reagieren.
  • Technische Details:Einige technische Details, die ASIMO auszeichnen, sind:
    • Aktuatoren und Gelenke: ASIMO ist mit einer Vielzahl von Aktuatoren ausgestattet, die eine präzise Kontrolle über seine Bewegungen ermöglichen. Er besitzt 34 Gelenke, die eine menschenähnliche Beweglichkeit erlauben.
    • Sensorensystem: ASIMO verwendet ein integriertes System aus verschiedenen Sensoren, darunter Kameras, Gyroskope, Beschleunigungsmesser und Kraftsensoren, um seine Umgebung zu überwachen und zu navigieren.
    • Software und KI: Die Software von ASIMO nutzt maschinelles Lernen und KI-Algorithmen, um seine Bewegungen, Entscheidungsfindung und Interaktionen zu steuern. Dies ermöglicht ihm, sich an neue Situationen anzupassen und kontinuierlich zu lernen.
  • Einsatzbereiche:ASIMO und ähnliche Roboter finden in verschiedenen Bereichen Anwendung, darunter:
    • Forschung und Entwicklung: ASIMO dient als Plattform für die Erforschung von Gehirn-Computer-Schnittstellen, humanoider Robotik und KI.
    • Service und Assistenz: ASIMO kann in Servicebereichen wie Empfangsdiensten, Besucherführung oder als Assistenzroboter für ältere Menschen eingesetzt werden.
    • Bildung: ASIMO wird als Bildungswerkzeug genutzt, um das Interesse an Technik, Robotik und KI zu fördern und zukünftige Ingenieuren und Wissenschaftler zu inspirieren.
Die Fortschritte in der KI und Sensorik in den 1990er Jahren haben den Weg für intelligente und vielseitige Roboter wie ASIMO geebnet. Diese Entwicklungen haben nicht nur die technische Machbarkeit humanoider Roboter bewiesen, sondern auch neue Möglichkeiten in verschiedenen Anwendungsbereichen eröffnet.

Aufgabe 2)

Vorwärts- und Rückwärtskinematik von RoboternDie Vorwärtskinematik eines Roboters beschäftigt sich mit der Berechnung der Position und Orientierung des Endeffektors basierend auf den gegebenen Gelenkwinkeln. Hingegen dreht sich die Rückwärtskinematik um die Bestimmung der notwendigen Gelenkwinkel, um eine gewünschte Endeffektor-Position und Orientierung zu erreichen. Mathematisch lassen sich diese Aufgaben durch Matrizenoperationen beschreiben. Die Jacobi-Matrix spielt eine wichtige Rolle bei der Berechnung von Geschwindigkeiten und für iterative Lösungsverfahren wie das Newton-Raphson-Verfahren, welches oft zur Lösung der Rückwärtskinematik eingesetzt wird.

a)

1. Sei ein Roboterarm mit zwei Rotationsgelenken gegeben. Das erste Gelenk hat den Winkel \( \theta_1 \) und das zweite Gelenk den Winkel \( \theta_2 \). Die Längen der Glieder betragen \( l_1 \) und \( l_2 \). Leite die Vorwärtskinematik dieses Roboters her und bestimme die Position des Endeffektors \( (x, y) \) in Abhängigkeit von den Gelenkwinkeln. Hinweise:

  • Nutze die Homogene Transformationsmatrix zur Herleitung.
  • Die Transformation umfasst Rotations- und Translationsmatrizen.

Lösung:

Vorwärtskinematik eines Roboterarms mit zwei RotationsgelenkenUm die Position des Endeffektors \(x, y\) in Abhängigkeit von den Gelenkwinkeln \(\theta_1\) und \(\theta_2\) zu bestimmen, nutzen wir die homogene Transformationsmatrix. Die Schritte umfassen die Herleitung der Rotations- und Translationsmatrizen für jedes Gelenk und deren anschließende Kombination.Hier ist die detaillierte Herleitung:

  • Schritt 1: Definiere die homogene Transformationsmatrix für jedes Gelenk.
  • Die Transformationsmatrix für das erste Gelenk (Rotation um \(\theta_1\) und Translation um \(l_1\)) lautet:
    \(\mathbf{T_1} = \begin{bmatrix} \cos \theta_1 & -\sin \theta_1 & 0 & l_1 \cos \theta_1 \ \sin \theta_1 & \cos \theta_1 & 0 & l_1 \sin \theta_1 \ 0 & 0 & 1 & 0 \ 0 & 0 & 0 & 1 \end{bmatrix} \)
  • Die Transformationsmatrix für das zweite Gelenk (Rotation um \(\theta_2\) und Translation um \(l_2\)) lautet:
    \(\mathbf{T_2} = \begin{bmatrix} \cos \theta_2 & -\sin \theta_2 & 0 & l_2 \cos \theta_2 \ \sin \theta_2 & \cos \theta_2 & 0 & l_2 \sin \theta_2 \ 0 & 0 & 1 & 0 \ 0 & 0 & 0 & 1 \end{bmatrix} \)
  • Schritt 2: Kombiniere die beiden Transformationsmatrizen, um die Gesamtkonfiguration des Endeffektors zu finden.
  • Die Gesamttransformation \(\mathbf{T}\) ist das Produkt der beiden Transformationsmatrizen:
    \( \mathbf{T} = \mathbf{T_1} \cdot \mathbf{T_2} \)
  • Schritt 3: Multiplikation der Transformationsmatrizen um den Endeffektor zu finden:
  • Nach Matrixmultiplikation erhalten wir:
    \( \mathbf{T} = \begin{bmatrix} \cos(\theta_1 + \theta_2) & -\sin(\theta_1 + \theta_2) & 0 & l_1 \cos \theta_1 + l_2 \cos(\theta_1 + \theta_2) \ \sin(\theta_1 + \theta_2) & \cos(\theta_1 + \theta_2) & 0 & l_1 \sin \theta_1 + l_2 \sin(\theta_1 + \theta_2) \ 0 & 0 & 1 & 0 \ 0 & 0 & 0 & 1 \end{bmatrix} \)
  • Der Endeffektor befindet sich daher bei:
    \( x = l_1 \cos \theta_1 + l_2 \cos(\theta_1 + \theta_2) \ y = l_1 \sin \theta_1 + l_2 \sin(\theta_1 + \theta_2) \)
  • Zusammenfassung:
  • Die Position \( x, y \) des Endeffektors in Abhängigkeit von den Gelenkwinkeln \( \theta_1, \theta_2 \) sowie den Längen der Glieder \( l_1, l_2 \) lautet:
    \( x = l_1 \cos \theta_1 + l_2 \cos(\theta_1 + \theta_2) \ y = l_1 \sin \theta_1 + l_2 \sin(\theta_1 + \theta_2) \)

b)

2. Betrachte einen Roboterarm mit den gleichen Parametern wie in der vorigen Aufgabe. Angenommen, der Endeffektor hat die Zielposition \( (x_d, y_d) \). Formuliere die Rückwärtskinematik, um die Gelenkwinkel \( \theta_1 \) und \( \theta_2 \) zu berechnen, die zu dieser Position führen. Hinweise:

  • Nutze Trigonometrie zur Lösung der Gleichungen.
  • Beachte, dass es mehrere Lösungen (Konfigurationen) geben kann.

Lösung:

Rückwärtskinematik eines Roboterarms mit zwei RotationsgelenkenUm die Gelenkwinkel \(\theta_1\) und \(\theta_2\) zu berechnen, die den Endeffektor zur Zielposition \((x_d, y_d)\) führen, nutzen wir trigonometrische Methoden. Dabei gilt es zu beachten, dass es mehrere Lösungen geben kann.Hier ist die detaillierte Herleitung:

  • Geometrische Beziehungen:
  • Der Endeffektor befindet sich bei:
    \( x = l_1 \cos \theta_1 + l_2 \cos(\theta_1 + \theta_2) \) \( y = l_1 \sin \theta_1 + l_2 \sin(\theta_1 + \theta_2) \)
  • Schritt 1: Bestimme den Winkel \(\theta_2\).
Wir verwenden den Kosinussatz, um \(\theta_2\) zu ermitteln.Die Distanz des Endeffektors zum Ursprung beträgt:
\( r = \sqrt{x_d^2 + y_d^2} \)
Der Kosinussatz für das Dreieck gebildet durch \(l_1\), \(l_2\) und \(r\) lautet:
\(  r^2 = l_1^2 + l_2^2 - 2 l_1 l_2 \cos \theta_2  \)
Umgestellt nach \(\theta_2\) ergibt sich:
\( \theta_2 = \cos^{-1} \left(\frac{r^2 - l_1^2 - l_2^2}{-2 l_1 l_2}\right) = \cos^{-1} \left(\frac{l_1^2 + l_2^2 - r^2}{2 l_1 l_2}\right) \)
  • Schritt 2: Bestimme den Winkel \(\theta_1\).
Wir verwenden trigonometrische Beziehungen, um \(\theta_1\) zu bestimmen.Der Winkel \(\alpha\), der von der horizontalen Linie zum Punkt \((x_d, y_d)\) erzeugt wird, lautet:
\( \alpha = \tan^{-1} \left(\frac{y_d}{x_d}\right) \)
Der Winkel \(\beta\), der zwischen \(l_1\) und \(r\) liegt, kann mit Hilfe des Sinussatzes ermittelt werden:
\( \beta = \sin^{-1} \left(\frac{l_2 \sin \theta_2}{r}\right) \)
Folglich ist der Winkel \(\theta_1\) die Differenz zwischen \(\alpha\) und \(\beta\):
\( \theta_1 = \alpha - \beta = \tan^{-1} \left(\frac{y_d}{x_d}\right) - \sin^{-1} \left(\frac{l_2 \sin \theta_2}{r}\right) \)
  • Zusammenfassung:
  • Die Gelenkwinkel \( \theta_1 \) und \( \theta_2 \) zur Zielposition \( (x_d, y_d) \) berechnen sich wie folgt:
    \( \theta_2 = \cos^{-1} \left(\frac{l_1^2 + l_2^2 - r^2}{2 l_1 l_2}\right) \)\( \theta_1 = \tan^{-1} \left(\frac{y_d}{x_d}\right) - \sin^{-1} \left(\frac{l_2 \sin \theta_2}{r}\right) \)
  • Beachte, dass \( \theta_2 \) zwei Lösungen haben kann (positive und negative Rotation), die jeweils zu unterschiedlichen Konfigurationen des Roboters führen. Daher gibt es möglicherweise mehrere gültige Paare von \( \theta_1 \) und \( \theta_2 \).

c)

3. Für den gleichen Roboterarm wie oben: Bestimme die Jacobi-Matrix \( \mathbf{J} \), die die Beziehung zwischen den Gelenkwinkelgeschwindigkeiten \( \dot{\theta_1} \) und \( \dot{\theta_2} \) sowie den Geschwindigkeiten des Endeffektors \( \dot{x} \) und \( \dot{y} \) beschreibt. Hinweise:

  • Leite zuerst die partiellen Ableitungen von \( x \) und \( y \) bezüglich \( \theta_1 \) und \( \theta_2 \) her.

Lösung:

Bestimmung der Jacobi-Matrix für einen Roboterarm mit zwei RotationsgelenkenUm die Jacobi-Matrix \(\mathbf{J}\) zu bestimmen, die die Beziehung zwischen den Gelenkwinkelgeschwindigkeiten \(\dot{\theta_1}\) und \(\dot{\theta_2}\) sowie den Geschwindigkeiten des Endeffektors \(\dot{x}\) und \(\dot{y}\) beschreibt, müssen wir die partiellen Ableitungen von \(x\) und \(y\) bezüglich \(\theta_1\) und \(\theta_2\) herleiten.Die Herleitung erfolgt wie folgt:

  • Schritt 1: Ausgabe der Positionen des Endeffektors
  • Die Positionen des Endeffektors sind gegeben durch:
    \( x = l_1 \cos \theta_1 + l_2 \cos(\theta_1 + \theta_2) \) \( y = l_1 \sin \theta_1 + l_2 \sin(\theta_1 + \theta_2) \)
  • Schritt 2: Partielle Ableitungen berechnen
  • Die partiellen Ableitungen von \(x\) bezüglich \(\theta_1\) und \(\theta_2\) sind:
    \( \frac{\partial x}{\partial \theta_1} = -l_1 \sin \theta_1 - l_2 \sin(\theta_1 + \theta_2) \)\( \frac{\partial x}{\partial \theta_2} = -l_2 \sin(\theta_1 + \theta_2) \)
  • Die partiellen Ableitungen von \(y\) bezüglich \(\theta_1\) und \(\theta_2\) sind:
    \( \frac{\partial y}{\partial \theta_1} = l_1 \cos \theta_1 + l_2 \cos(\theta_1 + \theta_2) \)\( \frac{\partial y}{\partial \theta_2} = l_2 \cos(\theta_1 + \theta_2) \)
  • Schritt 3: Jacobi-Matrix zusammensetzen
Die Jacobi-Matrix \(\mathbf{J}\) setzt sich aus den partiellen Ableitungen zusammen:
\( \mathbf{J} = \begin{bmatrix} \frac{\partial x}{\partial \theta_1} & \frac{\partial x}{\partial \theta_2} \ \frac{\partial y}{\partial \theta_1} & \frac{\partial y}{\partial \theta_2} \end{bmatrix} = \begin{bmatrix} -l_1 \sin \theta_1 - l_2 \sin(\theta_1 + \theta_2) & -l_2 \sin(\theta_1 + \theta_2) \ l_1 \cos \theta_1 + l_2 \cos(\theta_1 + \theta_2) & l_2 \cos(\theta_1 + \theta_2) \end{bmatrix} \)
  • Schritt 4: Beziehung zwischen Geschwindigkeiten
Die Jacobi-Matrix stellt die Beziehung zwischen den Gelenkwinkelgeschwindigkeiten \(\dot{\theta_1}\) und \(\dot{\theta_2}\) sowie den Geschwindigkeiten des Endeffektors \(\dot{x}\) und \(\dot{y}\) her:
\( \begin{bmatrix} \dot{x} \ \dot{y} \end{bmatrix} = \mathbf{J} \begin{bmatrix} \dot{\theta_1} \ \dot{\theta_2} \end{bmatrix} \)
  • Zusammenfassung:
Die Jacobi-Matrix \(\mathbf{J}\) für den gegebenen Roboterarm lautet:
\( \mathbf{J} = \begin{bmatrix} -l_1 \sin \theta_1 - l_2 \sin(\theta_1 + \theta_2) & -l_2 \sin(\theta_1 + \theta_2) \ l_1 \cos \theta_1 + l_2 \cos(\theta_1 + \theta_2) & l_2 \cos(\theta_1 + \theta_2) \end{bmatrix} \)
Sie beschreibt die Beziehung zwischen den Gelenkwinkelgeschwindigkeiten \(\dot{\theta_1}\), \(\dot{\theta_2}\) und den Geschwindigkeiten des Endeffektors \(\dot{x}\), \(\dot{y}\).

d)

4. Implementiere das Newton-Raphson-Verfahren, um die Rückwärtskinematik des Roboterarms zu lösen. Starte mit einer initialen Schätzung der Gelenkwinkel. Stelle sicher, dass Deine Implementierung sowohl die Position \( (x_d, y_d) \) als auch die Geschwindigkeiten durch das iterative Verfahren erreicht.

def newton_raphson(theta_initial, target_position, max_iterations=100, tolerance=1e-6):    # Deine Implementierung hier    pass

Lösung:

Implementierung des Newton-Raphson-Verfahrens zur Lösung der RückwärtskinematikDas Newton-Raphson-Verfahren kann verwendet werden, um iterativ die Gelenkwinkel \(\theta_1\) und \(\theta_2\) zu berechnen, die den Endeffektor zur gewünschten Position \((x_d, y_d)\) bewegen. Hier ist eine mögliche Implementierung dieses Verfahrens:Wir beginnen mit einer initialen Schätzung der Gelenkwinkel und verbessern diese iterativ, bis die geschätzte Position nahe genug an der Zielposition liegt.Hier ist die Implementierung im Python-Code:

def forward_kinematics(theta, l1, l2):    theta1, theta2 = theta    x = l1 * np.cos(theta1) + l2 * np.cos(theta1 + theta2)    y = l1 * np.sin(theta1) + l2 * np.sin(theta1 + theta2)    return np.array([x, y])def jacobian(theta, l1, l2):    theta1, theta2 = theta    j11 = -l1 * np.sin(theta1) - l2 * np.sin(theta1 + theta2)    j12 = -l2 * np.sin(theta1 + theta2)    j21 = l1 * np.cos(theta1) + l2 * np.cos(theta1 + theta2)    j22 = l2 * np.cos(theta1 + theta2)    return np.array([[j11, j12], [j21, j22]])def newton_raphson(theta_initial, target_position, l1, l2, max_iterations=100, tolerance=1e-6):    theta = np.array(theta_initial, dtype=np.float64)    target_position = np.array(target_position, dtype=np.float64)    for _ in range(max_iterations):        # Berechne die aktuelle Position des Endeffektors        current_position = forward_kinematics(theta, l1, l2)        # Berechne den Fehler (Differenz zur Zielposition)        error = target_position - current_position        if np.linalg.norm(error) < tolerance:            break        # Berechne die Jacobi-Matrix für die aktuellen Winkel        J = jacobian(theta, l1, l2)        # Aktualisiere die Winkel anhand des Newton-Raphson-Verfahrens        delta_theta = np.linalg.solve(J, error)        theta += delta_theta    return theta
  • Erklärung des Codes:
  • Funktion forward_kinematics: Berechnet die Position des Endeffektors basierend auf den gegebenen Gelenkwinkeln \(\theta_1\) und \(\theta_2\) sowie den Längen der Glieder \(l1\) und \(l2\).
  • Funktion jacobian: Berechnet die Jacobi-Matrix basierend auf den gegebenen Gelenkwinkeln.
  • Funktion newton_raphson: Führt das Newton-Raphson-Verfahren durch, um iterativ die Gelenkwinkel zu berechnen, die den Endeffektor zu der gewünschten Position \((x_d, y_d)\) bringen. Die Funktion verwendet die vorgegebenen Parameter max_iterations (maximale Iterationsanzahl) und tolerance (Fehlertoleranz).
  • Starte mit einer initialen Schätzung der Gelenkwinkel und berechne iterativ neue Winkel, indem die Jacobi-Matrix verwendet wird, um die erforderliche Anpassung zu bestimmen. Der Iterationsprozess endet, wenn die berechnete Position nahe genug an der Zielposition liegt oder die maximale Anzahl an Iterationen erreicht wird.

Aufgabe 3)

  • In einer kinematischen Kette wird ein Roboterarm durch fünf Gelenke beschrieben. Diese Gelenke sind sequentiell durch Verbindungsstücke verbunden.
  • Die Gelenke 1 und 3 sind Rotationsgelenke, während Gelenk 2 ein Prismengelenk ist. Gelenke 4 und 5 sind ebenfalls Rotationsgelenke.
  • Die Denavit-Hartenberg-Parameter sind wie folgt gegeben:
    • Gelenk 1: \theta_1 = 45^\text{\textdegree}, d_1 = 10, a_1 = 5, \alpha_1 = 90^\text{\textdegree}
    • Gelenk 2: \theta_2 = 90^\text{\textdegree}, d_2 = 25, a_2 = 0, \alpha_2 = 0^\text{\textdegree}
    • Gelenk 3: \theta_3 = 30^\text{\textdegree}, d_3 = 5, a_3 = 15, \alpha_3 = -90^\text{\textdegree}
    • Gelenk 4: \theta_4 = 90^\text{\textdegree}, d_4 = 0, a_4 = 10, \alpha_4 = 90^\text{\textdegree}
    • Gelenk 5: \theta_5 = 75^\text{\textdegree}, d_5 = 0, a_5 = 0, \alpha_5 = 0^\text{\textdegree}

b)

Gegeben die Transformationsmatrizen der Gelenke 1 bis 5, berechne die Gesamttransformationsmatrix von der Basis des Roboterarms zur Endeffektorposition. Nutze hierfür die resultierenden homogenen Transformationsmatrizen und multipliziere diese sequentiell.

Lösung:

Berechnung der Gesamttransformationsmatrix von der Basis des Roboterarms bis zur EndeffektorpositionUm die Gesamttransformationsmatrix von der Basis des Roboterarms zur Endeffektorposition zu berechnen, müssen die homogenen Transformationsmatrizen der einzelnen Gelenke sequentiell multipliziert werden.Die Denavit-Hartenberg-Parameter (DH-Parameter) sind wie folgt gegeben:

  • Gelenk 1: \( \theta_1 = 45^\text{\degree} \), \( d_1 = 10 \), \( a_1 = 5 \), \( \alpha_1 = 90^\text{\degree} \)
  • Gelenk 2: \( \theta_2 = 90^\text{\degree} \), \( d_2 = 25 \), \( a_2 = 0 \), \( \alpha_2 = 0^\text{\degree} \)
  • Gelenk 3: \( \theta_3 = 30^\text{\degree} \), \( d_3 = 5 \), \( a_3 = 15 \), \( \alpha_3 = -90^\text{\degree} \)
  • Gelenk 4: \( \theta_4 = 90^\text{\degree} \), \( d_4 = 0 \), \( a_4 = 10 \), \( \alpha_4 = 90^\text{\degree} \)
  • Gelenk 5: \( \theta_5 = 75^\text{\degree} \), \( d_5 = 0 \), \( a_5 = 0 \), \( \alpha_5 = 0^\text{\degree} \)
### Berechnung der Transformationsmatrizen#### 1. Transformation für Gelenk 1:Die homogene Transformationsmatrix \( T_1 \) ist:
\[ T_1 = \begin{bmatrix} \cos 45^\text{\degree} & -\sin 45^\text{\degree} \cos 90^\text{\degree} & \sin 45^\text{\degree} \sin 90^\text{\degree} & a_1 \cos 45^\text{\degree} \ \sin 45^\text{\degree} & \cos 45^\text{\degree} \cos 90^\text{\degree} & -\cos 45^\text{\degree} \sin 90^\text{\degree} & a_1 \sin 45^\text{\degree} \ 0 & \sin 90^\text{\degree} & \cos 90^\text{\degree} & d_1 \ 0 & 0 & 0 & 1 \end{bmatrix} \]
Unter Berücksichtigung der trigonometrischen Werte ergibt sich:
\[ T_1 = \begin{bmatrix} \frac{1}{\sqrt{2}} & 0 & \frac{1}{\sqrt{2}} & 3.54 \ \frac{1}{\sqrt{2}} & 0 & -\frac{1}{\sqrt{2}} & 3.54 \ 0 & 1 & 0 & 10 \ 0 & 0 & 0 & 1 \end{bmatrix} \]
#### 2. Transformation für Gelenk 2:Die homogene Transformationsmatrix \( T_2 \) ist:
\[ T_2 = \begin{bmatrix} \cos 90^\text{\degree} & -\sin 90^\text{\degree} \cos 0^\text{\degree} & \sin 90^\text{\degree} \sin 0^\text{\degree} & a_2 \cos 90^\text{\degree} \ \sin 90^\text{\degree} & \cos 90^\text{\degree} \cos 0^\text{\degree} & -\cos 90^\text{\degree} \sin 0^\text{\degree} & a_2 \sin 90^\text{\degree} \ 0 & \sin 0^\text{\degree} & \cos 0^\text{\degree} & d_2 \ 0 & 0 & 0 & 1 \end{bmatrix} \]
Unter Berücksichtigung der trigonometrischen Werte ergibt sich:
\[ T_2 = \begin{bmatrix} 0 & -1 & 0 & 0 \ 1 & 0 & 0 & 0 \ 0 & 0 & 1 & 25 \ 0 & 0 & 0 & 1 \end{bmatrix} \]
#### 3. Transformation für Gelenk 3:Die homogene Transformationsmatrix \( T_3 \) ist:
\[ T_3 = \begin{bmatrix} \cos 30^\text{\degree} & -\sin 30^\text{\degree} \cos (-90^\text{\degree}) & \sin 30^\text{\degree} \sin (-90^\text{\degree}) & a_3 \cos 30^\text{\degree} \ \sin 30^\text{\degree} & \cos 30^\text{\degree} \cos (-90^\text{\degree}) & -\cos 30^\text{\degree} \sin (-90^\text{\degree}) & a_3 \sin 30^\text{\degree} \ 0 & \sin (-90^\text{\degree}) & \cos (-90^\text{\degree}) & d_3 \ 0 & 0 & 0 & 1 \end{bmatrix} \]
Unter Berücksichtigung der trigonometrischen Werte ergibt sich:
\[ T_3 = \begin{bmatrix} \frac{\sqrt{3}}{2} & 0 & \frac{1}{2} & 12.99 \ \frac{1}{2} & 0 & -\frac{\sqrt{3}}{2} & 7.5 \ 0 & -1 & 0 & 5 \ 0 & 0 & 0 & 1 \end{bmatrix} \]
#### 4. Transformation für Gelenk 4:Die homogene Transformationsmatrix \( T_4 \) ist:
\[ T_4 = \begin{bmatrix} \cos 90^\text{\degree} & -\sin 90^\text{\degree} \cos 90^\text{\degree} & \sin 90^\text{\degree} \sin 90^\text{\degree} & a_4 \cos 90^\text{\degree} \ \sin 90^\text{\degree} & \cos 90^\text{\degree} \cos 90^\text{\degree} & -\cos 90^\text{\degree} \sin 90^\text{\degree} & a_4 \sin 90^\text{\degree} \ 0 & \sin 90^\text{\degree} & \cos 90^\text{\degree} & d_4 \ 0 & 0 & 0 & 1 \end{bmatrix} \]
Unter Berücksichtigung der trigonometrischen Werte ergibt sich:
\[ T_4 = \begin{bmatrix} 0 & -1 & 0 & 0 \ 1 & 0 & 0 & 10 \ 0 & 0 & 1 & 0 \ 0 & 0 & 0 & 1 \end{bmatrix} \]
#### 5. Transformation für Gelenk 5:Die homogene Transformationsmatrix \( T_5 \) ist:
\[ T_5 = \begin{bmatrix} \cos 75^\text{\degree} & -\sin 75^\text{\degree} & 0 & 0 \ \sin 75^\text{\degree} & \cos 75^\text{\degree} & 0 & 0 \ 0 & 0 & 1 & 0 \ 0 & 0 & 0 & 1 \end{bmatrix} \]
Unter Berücksichtigung der trigonometrischen Werte ergibt sich:
\[ T_5 = \begin{bmatrix} 0.26 & -0.97 & 0 & 0 \ 0.97 & 0.26 & 0 & 0 \ 0 & 0 & 1 & 0 \ 0 & 0 & 0 & 1 \end{bmatrix} \]
### Multiplikation der TransformationsmatrizenDie Gesamttransformationsmatrix ergibt sich durch die sequentielle Multiplikation aller Transformationsmatrizen:
\[ T = T_1 \cdot T_2 \cdot T_3 \cdot T_4 \cdot T_5 \]
### Schrittweise Multiplikation1. Multiplikation von \( T_1 \) und \( T_2 \):
\[ T_{12} = T_1 \cdot T_2 \]
2. Multiplikation von \( T_{12} \) und \( T_3 \):
\[ T_{123} = T_{12} \cdot T_3 \]
3. Multiplikation von \( T_{123} \) und \( T_4 \):
\[ T_{1234} = T_{123} \cdot T_4 \]
4. Multiplikation von \( T_{1234} \) und \( T_5 \):
\[ T_{12345} = T_{1234} \cdot T_5 \]
Die resultierende Matrix \( T_{12345} \) ist die Gesamttransformationsmatrix von der Basis des Roboterarms bis zur Endeffektorposition. Diese Matrix beschreibt sowohl die Position als auch die Orientierung des Endeffektors relativ zur Basis.
Sign Up

Melde dich kostenlos an, um Zugriff auf das vollständige Dokument zu erhalten

Mit unserer kostenlosen Lernplattform erhältst du Zugang zu Millionen von Dokumenten, Karteikarten und Unterlagen.

Kostenloses Konto erstellen

Du hast bereits ein Konto? Anmelden