Pick & Place: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
(Vorbereitungen, Einzelnachweise)
Zeile 27: Zeile 27:
* Notebook oder Rechner mit Matlab
* Notebook oder Rechner mit Matlab
=== Erforderliche Software ===
=== Erforderliche Software ===
* Matlab (es wird die Version 2014a empfohlen aufgrund der [http://www.mathworks.de/products/image/whatsnew.html ''Image Processing Toolbox'')]
* Matlab (es wird die Version 2014a empfohlen aufgrund der [http://www.mathworks.de/products/image/whatsnew.html ''Image Processing Toolbox''])
* [http://www.mindstorms.rwth-aachen.de/trac/wiki/Download RWTH - Mindstorms NXT Toolbox für MATLAB ]
* [http://www.mindstorms.rwth-aachen.de/trac/wiki/Download RWTH - Mindstorms NXT Toolbox für MATLAB ]
* [http://www.lego.com/en-us/mindstorms/downloads/nxt/nxt-fantom-driver/ LEGO Mindstorms NXT Treiber ''Fantom'']
* [http://www.lego.com/en-us/mindstorms/downloads/nxt/nxt-fantom-driver/ LEGO Mindstorms NXT Treiber ''Fantom'']

Version vom 19. Juni 2014, 19:12 Uhr

Autor: Daniel Block
Betreuer: Prof. Schneider

www.lego.de

Motivation

Ein Roboterarm ist ein tolles Anschauungsobjekt, um etwas über Koordinatentransformation zu lernen.

Ziel

Programmiern Sie einen Roboterarm so, dass er sich ein Zuckerstücke von einem Haufen nimmt und dieses in eine HSHL-Tasse fallen lässt.

Aufgabe

  1. Erkennen Sie mit einer Webcam einen Zuckerwürfel.
  2. Konstruieren Sie den Standadrd Lego Roboterarm so, dass er den Zuckerwürfel greifen kann.
  3. Analysieren Sie die Videoszene und steuern Sie den Roboterarm, so dass er den Zucker Greift und diesen kollisionsfrei in die Tasse fallen lässt.

Vorbereitungen

Vor der Bearbeitung der Aufgabe sind einige Vorbereitungen zu treffen. Zum einen wird ein Grundverständnis für die Bildverarbeitung und die Koordinatentransformation vorausgesetzt. Dieses wurde im Rahmen der Veranstaltung Digitale Signal- und Bildverarbeitung während des Sommersemesters 2014 im Studiengang Mechatronik der HSHL erlangt. Eine weitere Recherche in Literatur und im Internet erwies sich jedoch als sehr zielführend. Besonders zur Umsetzung in Matlab konnten hier einige hilfreiche Hinweise gefunden werden.

Erforderliches Equipment

  • Lego NXT Roboter
    • Lego Mindstorms Basisset 9797
    • Lego Mindstorms Ergänzungsset 9648/9695
  • Webcam (z. Bsp. Logitech C310)
  • HSHL-Tasse
  • Zuckerstücke
  • Tesafilm
  • Notebook oder Rechner mit Matlab

Erforderliche Software

Die Hyperlinks führen jeweils zur Download-Seite. Matlab ist über das ZFW (Zentrum für Wissensmanagment) der HSHL zu bekommen.

Installation der Treiber

Diese Schritt-für-Schritt-Anleitung orientiert sich an der Beschreibung der RTWH Aachen [1].

  1. Toolbox der RWTH Aachen
    1. Toolbox der RWTH Aachen herunterladen.
    2. Heruntergeladene Datei extrahieren.
    3. Toolbox als Matlab-Pfad hinzufügen.
      1. Set Path in Matlab aufrufen.
      2. Add with subfolders aufrufen und Verzeichnis der Toolbox auswählen.
      3. Speichern nicht vergessen.
  2. Firmware des NXT
    1. Version der Firmware auf dem NXT überprüfen. Die Version lässt sich im Menü des NXT einsehen.
    2. Wenn die Version älter ist als 1.28 bwz. 1.29, die Firmware herunterladen.
    3. Die Firmware auf den NXT laden, z.Bsp. mit der Funktion FlashNXTWithFirmware1.29.bat in /tools/MotorControl im Verzeichnis der Toolbox.
  3. Laden von MotorControl auf NXT
    1. NeXTool herunterladen und im Verzeichnis /tools/MotorControl der Toolbox speichern.
    2. In Windows-Systemen nun die Funktion TransferMotorControlBinaryToNXT.bat aufrufen, um mit NeXTool die MotorControl*.rxe auf den NXT zu laden.
    3. Den Schritten im Command-Fenster folgen.
  4. Treiber Wird beispielhaft für Windows 32 bit mit USB-Verbindung erklärt. Das Vorgehen für andere Betriebssysteme oder die Bluetooth-Verbindung kann auf der Internetseite der RWTH Aachen[2] nachgesehen werden unter Check other software requirements.
    1. NXT Fantom-Treiber herunterladen und installieren.
  5. Funktionstext
    1. USB-Verbindung zwischen NXT und Rechner bzw. Notebook herstellen.
    2. NXT einschalten.
    3. Matlab starten.
    4. Im Command Window von Matlab COM_OpenNXT ausführen (einfach eintippen und mit Enter ausführen).
    5. Wird der Aufruf ohne Fehler ausgeführt, ist die Installation erfolgreich abgeschlossen.

Installation der Camera Calibration Toolbox

Diese Beschreibung ist angelehnt an die Erläuterungen von Jean-Yves Bouguet [3].

  1. Toolbox herunterladen.
  2. Heruntergeladene Datei extrahieren.
  3. Den Ordner TOOLBOX_calib als Matlab-Pfad hinzufügen (Vorgehen vgl. RWTH-Toolbox s. o.).
  4. Starten mit ausführen von calib_gui in Matlab.

Die genaue Vorgehensweise bei der Kalibrierung der Kamera wird an dieser Stelle nicht erläutert. Ich verweise an dieser Stelle auf die Homepage zur Toolbox und den Artikel von Herrn Deitel zu diesem Thema [4].

Hardware

Aufbau

Bilderkennung

Hardware-Ansteuerung

Reflexion - Lessons Learned

Einzelnachweise

  1. Homepage der RTWH Aachen zur Mindstorms NXT Toolbox (letzter Aufruf 19.6.2014)
  2. Internetseite der RWTH Aachen
  3. Jean-Yves Bouguet: Camera Calibration Toolbox for Matlab. (Homepage, letzter Aufruf 19.6.2014)
  4. Deitel, M.: Extrinsische und Intrinsische Kameraparameter. Lippstadt, Bericht Seminarvortrag, 2013. Link

Siehe auch

Weblinks


→ zurück zum Hauptartikel: Digitale Signal- und Bildverarbeitung SoSe2014