Robotics Frameworks - Cheatsheet
ROS: Kommunikationsmechanismen (Topics, Services, Actions)
Definition:
ROS-Kommunikationsmechanismen: Methoden zur Datenübertragung und Interaktion zwischen Knoten im ROS-Framework
Details:
- Topics: Publish-Subscribe-Muster für asynchrone, unidirektionale Kommunikation.
- Services: Anfrage-Antwort-Muster für synchrone, bidirektionale Kommunikation mittels \texttt{rosservice} Werkzeugen.
- Actions: Zielgerichtete Aufträge mit Rückmeldungsmechanismen für langfristige Prozesse mittels \texttt{SimpleActionClient} und \texttt{SimpleActionServer}.
- Werkzeuge: \texttt{rostopic} für Topics, \texttt{rosservice} für Services, \texttt{actionlib} für Actions.
Bewegungsplanung: Algorithmen (A*, RRT, RRT*)
Definition:
Bewegungsplanung in Robotik: A*, RRT, RRT* - Es geht um das Finden von optimalen bzw. kollisionsfreien Pfaden für Roboter in einer gegebenen Umgebung.
Details:
- A* Algorithmus: Finden des kürzesten Pfades unter Verwendung einer Heuristikfunktion. Kostenfunktion: \(f(n) = g(n) + h(n)\).
- RRT (Rapidly-exploring Random Tree): Probabilistischer Algorithmus zur Pfadplanung in hoher Dimensionalität. Zufällige Wachstumspunkte zur schrittweisen Baumexpansion.
- RRT*: Verbesserte Version von RRT. Optimiert Pfade durch regelmäßige Neuberechnung und Minimierung der Kostenfunktion. Asymptotisch optimal.
Sensorintegration: Arten, Datenverarbeitung und Kalibration
Definition:
Integration und Kalibration von Sensoren in Robotiksystemen zur Verbesserung der Genauigkeit und Zuverlässigkeit.
Details:
- Arten:
- Zentrale Integration: Datenfusion von mehreren Sensoren an zentraler Stelle.
- Verteilte Integration: Vorverarbeitung an dezentralen Knoten und später Zentralisierung.
- Datenverarbeitung:
- Filterung: Entfernen von Rauschen (z.B. Kalman-Filter).
- Datenfusion: Verschmelzung mehrerer Sensordatenquellen (z.B. EKF).
- Kalibration:
- Initiale Kalibration: Bestimmung grundlegender Parameter (z.B. Bias, Skale).
- Rekalibration: Anpassung der Kalibration während des Betriebs zur Korrektur von Drift.
Softwarearchitektur in Robotik
Definition:
Struktur und Organisation von Software in Robotersystemen.
Details:
- Modularität: Zerlegung in unabhängige Module.
- MVC-Architektur: Trennung von Modell, Ansicht und Kontrolle.
- Middleware: Kommunikationsschicht, z.B. ROS.
- Echtzeitfähigkeit: Reaktionszeit und deterministisches Verhalten.
- Fehlertoleranz: Umgang mit und Erholung von Fehlern.
- Dataflow-Architektur: Verarbeitungspipeline für Sensordaten.
- Hierarchisches Design: Schichten vom Low-Level (Hardware-nah) bis High-Level (Aufgabenplanung).
Simulationstools: Gazebo, V-REP, Webots
Definition:
Simulationstools zur Entwicklung und Test von Robotersystemen.
Details:
- Gazebo: Open-Source, unterstützt Integration mit ROS, umfangreiche Sensor- und Umgebungsmodelle, hoher Realitätsgrad.
- V-REP (CoppeliaSim): Umfangreiche Roboterbibliothek, unterstützt Skripting (Lua, Python), ermöglicht fortgeschrittene Physiksimulationen.
- Webots: Kommerzielle Software, intuitiv für Bildungszwecke, unterstützt ROS, benutzerfreundliche GUI.
KI-Techniken in Robotik: Maschinelles Lernen und Reinforcement Learning
Definition:
KI-Techniken in Robotik umfassen unter anderem Maschinelles Lernen (ML) und Reinforcement Learning (RL), welche dafür verwendet werden, Roboter autonom und adaptiv agieren zu lassen.
Details:
- Maschinelles Lernen (ML): Algorithmische Modelle, die aus Daten lernen und Muster erkennen. Geeignet für Aufgaben wie Objekterkennung und Bewegungsplanung.
- Reinforcement Learning (RL): Lernverfahren, bei dem ein Agent durch Interaktion mit der Umgebung lernt und Belohnungen maximiert. Nutzbar für Entscheidungsprozesse in dynamischen Umgebungen.
- Formel für RL: \(\text{Q-Learning: } Q(s, a) \leftarrow Q(s, a) + \alpha \left[ r + \gamma \max_{a'} Q(s', a') - Q(s, a) \right]\)
Kinematik und Dynamik in Bewegungsplanung
Definition:
Kinematik und Dynamik sind zentrale Konzepte bei der Bewegungsplanung in der Robotik. Kinematik befasst sich mit der Beschreibung der Bewegung ohne Rücksicht auf die Kräfte, während sich die Dynamik mit den Kräften und Momenten beschäftigt, die diese Bewegung verursachen.
Details:
- Kinematik: Berechnung der Position, Geschwindigkeit und Beschleunigung von Roboter-Gelenken.
- Dynamik: Analyse der Kräfte und Momente im Zusammenhang mit der Bewegung.
- Vorwärtskinematik: Bestimmung der Endeffektor-Position aus den Gelenkwinkeln.
- Inverse Kinematik: Bestimmung der erforderlichen Gelenkwinkel aus der Endeffektor-Position.
- Gleichungen:
- Vorwärtskinematik: \( \mathbf{x} = f(\mathbf{q}) \)
- Inverse Kinematik: \( \mathbf{q} = f^{-1}(\mathbf{x}) \)
- Newton-Euler Formeln: Dynamisches Modell eines Roboters.
Softwareintegration: Herausforderungen und Lösungen
Definition:
Prozess der Vereinheitlichung und Koordination verschiedener Softwarekomponenten innerhalb eines Robotik-Systems.
Details:
- Herausforderungen: Kompatibilitätsprobleme, Kommunikationsprotokolle, Synchronisation, Sicherheitsaspekte, Latenzzeiten.
- Lösungen: Verwendung von Middleware (z.B. ROS), gut definierte Schnittstellen und APIs, standardisierte Protokolle, Test-Frameworks.