Gestensteuerung Roboterarm UR10

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Abbildung 1: UR10 Roboterarm


Autoren: Kevin Penner
Betreuer: Prof. Goebel
Art: Bachelorarbeit


Thema der Arbeit

Als Hauptziel dieser Arbeit soll eine Anwendung in der MATLAB Umgebung implementiert werden, welche die Arm- und Handgesten einer Person unter Anwendung einer 3D-Kamera erfasst, diese verarbeitet und anschließend in eine vergleichbare Roboterarmstellung transformiert. Dabei sollen sowohl sicherheitsrelevante Aspekte, wie z. B. ein kollisionsfreies Arbeiten des Roboters, berücksichtigt werden, als auch die Rahmenbedingungen für einen späteren Greifvorgang geschafft werden, indem Handgesten erkannt werden können. Bei dem Roboterarm handelt es sich um den „Zweiarm-Knickroboter“ mit dem Namen UR10 der Firma Universal Robots.


Anforderungen

Anforderungen an Aktorik und Sensorik:

  • Verwendung eines Kinect-Sensors zur Erkennung von Gelenkkoordinaten und Handgesten
  • Verwendung eines UR10 Roboterarms zur Rekonstruktion menschlicher Gesten


Anforderungen an die verwendete Software/Programmierumgebung:

  • Implementierung der Software in MATLAB
  • Verwendung des Robot Operating System "Polyscope"


Softwareanforderungen:

  • Handgesten erkennen für eine spätere Ansteuerung eines Greifers
  • Filterung & Glättung der Gesten/Bewegungen des Benutzers
  • Transformation der Gesten/Bewegungen in eine Roboterbewegung
  • Sicherheitscheck der Rotorbewegungen in Form von Kollisionsüberprüfungen mit Objekten im Arbeitsbereich des Roboters
  • Implementierung einer benutzerfreundlichen Anwendung unter Verwendung von akustischen Befehlen und einer detailierten Bedienungsanleitung



Anwendungsgebiete



Grundlagen

In diesem Kapitel werden die technischen Grundlagen dieser Arbeit vermittelt. Hierbei handelt es sich zum einen um eine Beschreibung und die Funktionsweise der vorhandenen Hardware- und Softwarekomponenten, zum anderen um Grundlagen im Bereich der Gestensteuerung von technischen Systemen. Auf der Grundlage der verwendeten Hardware wurde so ein Konzept zur Gestensteuerung des Roboterarms aufgestellt.



Kinect-Sensor

Abbildung 2: Aufbau des Kinect-Sensors V2 [1]
Abbildung 3: Auflistung Gelenkkoordinaten [2]

Für die Erfassung des menschlichen Arms wird der Kinect-Sensor V2 der Firma Microsoft verwendet. Dieser besitzt neben einer RGB-Kamera einen Tiefensensor, welcher eine Kombination aus Infrarot-Projektor und Infrarot-Kamera ist (siehe Abbildung 2). Außerdem verfügt die Kinect-Hardware über ein Mikrofon-Array und eine eingebaute Intelligenz in Form eines Computers, welcher eine Sensordatenverarbeitung vollzieht und dadurch eine Skeletterkennung bei Menschen durchführt.

Für die Verwendung des Kinect-Sensors in MATLAB ist eine SDK notwendig. Diese SDK mit dem Namen „Image Acquisition Toolbox Support Package for Kinect for Windows Sensor“ kann in MATLAB über den Add-On Manager installiert werden und beinhaltet neben den Hardware Treibern eine Sammlung von Software Beispielen. Für die Nutzung dieser SDK ist jedoch eine MATLAB Version ab R2016a notwendig. Im Zuge dieser Arbeit wird die Toolbox der Version 16.2.0 verwendet.
Weitere Sepzifikationen des Kinect-Sensors befinden sich in folgender Tabelle [3]:

Beschreibung Funktionen
Auflösung RGB-Kamera 1920 x 1080
Auflösung Tiefensensor 512 x 424
Max Distanz Tiefensensor 4,5 m
Min Distanz Tiefensensor 0,5 m
Bildfrequenz RGB-Kamera 30 fps
Bildfrequenz Tiefenkamera 30 fps
Horizontaler Sichtbereich Tiefenkamera 70 deg
Vertikaler Sichtbereich Tiefenkamera 60 deg
USB-Standard 3
Unterstütztes OS Windows 8 oder höher
benötigte Grafikkarte unterstützt DirectX 11.0 oder höher


Die Skeletterkennung erfolgt auf der Kinect-Hardware. Neben dem Zugriff auf das Farb- und Tiefenbild der Kinect, lassen sich die Metadaten des Tiefenbildes in MATLAB auslesen. In diesen sind die 25 Gelenkkoordinaten im 3D Koordinatensystem der Kinect hinterlegt. In Abbildung 3 ist eine Auslistung der Gelenkkoordinaten sortiert nach ihrer Indexzahl abgebildet.



UR10 Roboterarm

Der aus Aluminium bestehende Industrieroboter UR10 ist der größte Knickroboterarm im Sortiment des Unternehmens Universal Robots (siehe Abbildung 1). Er besitzt sechs rotierende Gelenke, die von -360° bis 360 ° agieren. Durch eine maximale Traglast von 10 kg und einer maximalen Reichweite von 1,3 m ist der UR10 für Aufgaben in der Logistik (Verpackung und Palettierung), Montagearbeiten oder bei „Pick & Place“ Aufgaben (z. B. Sortieren von Objekten auf einem Fließband) prädestiniert. Die maximale lineare Geschwindigkeit des TCP von 1 m/s erlaubt es dem Roboter Automatisierungsaufgaben sehr schnell durchzuführen. Außerdem verfügt der Knickroboterarm über eine konfigurierbare Sensorik zur Messung der Drehmomente, die es ihm ermöglicht einen Sicherheitsstopp bei einer Kollision einzuleiten. Dies befähigt den Roboter ohne weitere Sicherheitssysteme in einem Umfeld mit dem Menschen zusammenzuarbeiten. Die Kommunikation mit dem Roboter kann über eine TCP/IP- Schnittstelle erfolgen, welche die Ansteuerung und Programmierung über einen PC ermöglicht.



Konzept der Gestensteuerung


Hardwareaufbau

Der Aufbau der Hardware ist der Abbildung 4 zu entnehmen. Der Benutzer kann mit dem System mittels eines Kinect-Sensors, Lautsprechers und einem Programmierhandgerät kommunizieren. Dabei erfasst der Kinect-Sensor die Gesten bzw. Armstellungen des Benutzers und schickt diese über die serielle Schnittstelle an den Rechner, der die Daten in der MATALB-Programmierumgebung verarbeitet. Für Aufforderungen an den Nutzer kann das Programm auf dem Rechner akustische Hinweise bzw. Befehle an den Benutzer zurücksenden. Die erfassten Bild- und Metadaten werden auf dem Rechner in eine Roboterarmstellung transformiert und über die TCP/IP-Schnittstelle an das Steuergerät des Roboters übermittelt. Außerdem besitzt der Benutzer die Option, mithilfe des Programmierhandgerätes einen direkten Eingriff auf den Roboter vorzunehmen (z. B. durch Betätigung des Not-Aus Schalters).

Abbildung 4: Hardwareaufbau Gestensteuerung UR10.png



Implementierung & Realisierung der Software


Ergebnis & Bedienungsanleitung


Zusammenfassung, Optimierungspotential & Ausblick


Literatur

  1. L. Valgma, „3D reconstruction using Kinect v2 camera,“ Tartu, 2016. | Weblink
  2. MathWorks Kinect, „mathworks.com,“ | Weblink
  3. E. Lachat, H. Macher, M.-A. Mittet, T. Landes und P. Grussenmeyer, „FIRST EXPERIENCES WITH KINECT V2 SENSOR FOR CLOSE RANGE 3D MODELLING,“ Straßburg, Frankreich, 2015. | Weblink




→ zurück zum Hauptartikel: Studentische Arbeiten