jkrieger.de/ Informatik/ Robotikpraktikum: Wurf mit Lynx6

Robotikpraktikum für Fortgeschrittene:
Ballwurf mit dem Roboterarm Lynx6 von Lynxmotion

Lynx6-RoboterarmIn diesem Praktikum ging es darum, den Roboterarm Lynx6 von der Firma Lynxmotion zusammenzubauen und zu erproben, in wieweit man ihn für eine Wurfbewegung nutzen kann. Wir haben dabei folgendes erreicht: Zunächst haben wir den Bausatz zusammengebaut und eine Ansteuersoftware geschrieben. Danach haben wir eine detailierte Visualisierung des Armes mittels OpenGL erstellt, die auch eine physikalisch korrekte Simulation der Flugphase eines beliebigen Balles enthält. Für den Arm haben wir ein zwei- und ein dreigliedriges Modell erstellt (physikalisches Doppel- und Dreifachpendel mit externen Drehmomenten). Damit konnten wir verschiedene Wurfbewegungen austesten, die wir teils auch mit dem Optimalsteuerungstool MUSCOD-II erstellt haben. Ein PingPong-Ball kann nun über kurze Strecken (ca. 20 cm) geworfen werden.

Teilnehmer:
Bearbeitunsgzeitraum:
März und April 2006



Inhaltsverzeichnis:

  1. Beschreibung des Roboterarmes
  2. Projektziele
  3. Ergebnisse
  4. Downloads

Beschreibung des Roboterarmes


Projektziele

Ergebnisse

Der Zusammenbau gestaltete sich problemlos. Einige Hinweise, zusätzlich zur Anleitung von Lynxmotion, sind in den unter Downloads verlinkten PDF-Dokumenten zu finden. Eine Bestimmung der Trägheitsmomente war nur durch Simulation möglich, da uns ein entsprechender Versuchsaufbau (z.B. Rotationspendel) leider nicht zur Verfügung stand. Wie dies geschah ist ebenfalls in den PDFs dokumentiert.

Die Ansteuerung des Armes über den Servo-Controller von Lynxmotion war problemlos möglich. Ihm werden einfache Kommandos gesendet, die er in Bewegungen des Armes umsetzt. Um die Ansteuerung zu kapseln haben wir eine einfache C++-Klasse implementiert, die ein recht komfortables Interface zur Ansteuerung zur Verfügung stellt.

Während unserer Versuche hat sich gezeigt, dass der Roboter zwar Lasten bis etwa 100g anheben kann, ein Wurf war aber nur mit so leichten Objekten, wie einem PingPong-Ball möglich, da bei schwereren Objekten die erreichte Abwurfgeschwindigkeit viel zu niedrig war, um eine nennenswerte Distanz zu überbrücken. Auch mit dem PingPong-Ball konnten wir nur Würfe bis etwa 20cm erreichen. Die Wurf-Trajektorien haben wir anfangs mit MUSCOD-II berechnet (aufgrund eines Doppelpendel-Modells). Da sich dabei aber im wesentlichen konstante Ansteuerungen durch die Motoren ergaben, haben wir die endgültigen Trajektorien per Hand erzeugt, da man hier bessere Möglichkeiten zum Feintuning hat. Das Doppelpendel-Modell wurde mit Hilfe von Mathematica aufgestellt. Dieses Computer-Algebra-System hat dabei die Aufstellung der (recht komplexen) Differentialgleichungen übernommen. Außerdem konnte so auch gleich die Richtigkeit des Modell überprüft werden.

Um die berechneten Trajektorien bewerten zu können, ohne sie auf dem Roboter ablaufen zu lassen, haben wir eine Visualisierung mit Hilfe von OpenGL erstellt. Diese stellt ein voll bewegliches Modell des Armes mit allen Freiheitsgraden dar. Das Modell besteht dabei aus 32 Zylindern, 25 Quadern und 3 Kugeln, die zusammen das detailierte  Modell ergeben. Die Simulation liest eine vorgegebene Trajektorie aus einer Datei ein und zeigt Sie als Animation auf dem Bildschirm an. Gleichzeitig ist eine Ansteuerung des Roboters möglich, sodass sich Roboter und Simulation synchron bewegen. Dabei kann die Software auch das Ansteuern des Greifers übernehmen und den Ball kurz vor Ende der Trajektorie loslassen. Die Flugphase des Balles wid ebenfalls von der Visualisierung abgedeckt, indem sie die Bewegungsgleichungen des Balles von der Abflugposition (und mit der Abfluggeschwindigkeit, die sich aus der Trajektorie ergibt) aus integriert (einfache Euler-Diskretisierung) und den Ball entsprechend darstellt. Der Ball kann dabei auch vom Boden abprallen und wird dadurch gebremst (verliert Energie). Das Programm kann auch die Positionen des Balles durch Punkte markieren, sodass man nach Ablauf der Simulation die gesamte Trajektorie als Spur im Raum sehen kann.

Hier sind noch einige Screenshots der Simulation:

Simulation

Simulation



Downloads

Dokumente über das Praktikum

Videos vom Wurf und der Simulation

ACHTUNG: Die Videos wurden auf kleine Dateigröße optimiert und benötigen einen XviD MPEG-4 Video Decoder.
© 2006 by Julia Ziegler und Jan Krieger
printable version of: http://www.jkrieger.de/informatik/robotikpraktikum/index.html
last updated: 03.05.2006
Contents/Design: © 2000-2006 by Jan Krieger