Vorlesung Elektrische Messtechnik I+II
Transcription
Vorlesung Elektrische Messtechnik I+II
Informationstechnisches Projekt 2012 Dr.-Ing. R. Heynicke Dipl.-Inf.-Ing. T. Schröder Dipl.-Ing. D. Krüger Professur für Elektrische Messtechnik Termine 1. Gruppe A 07.05.2011, Gruppe B 08.05.2011 jeweils 14:00 – 17:00 Uhr. 2. Gruppe A 14.05.2011, Gruppe B 15.05.2011 jeweils 14:00 – 17:00 Uhr. 3. Gruppe A 21.05.2011, Gruppe B 22.05.2011 jeweils 14:00 – 17:00 Uhr. 4. Gruppe A ??.05.2011, Gruppe B ??.05.2011 nach Vereinbarung. Professur für Elektrische Messtechnik 2 Ausstattung • • • • • • LEGO Mindstorm® NXT Roboter Ladegerät USB-Programmierkabel 2 x USB-Verlängerungskabel (5m) Logitech C600 WebCam Hama Star 61 Stativ Professur für Elektrische Messtechnik 13 Rückgabe • Direkt nach Prüfung vom 2. ITP-Teil – 1x USB-Verlängerungkabel (5m) – Logitech C600 WebCam – Hama Star 61 Stativ • Bis 29. bzw. 30. Juni in H1 Raum 1491 – – – – LEGO Mindstorm® NXT Roboter 1x USB-Verlängerungskabel (5m) USB-Programmierkabel Ladegerät Professur für Elektrische Messtechnik 14 Software • Zu installieren: (Im PC-Pool bereits installiert!) – USB-Driver für LEGO Mindstorms NXT "Fantom", version 1.02 or higher http://mindstorms.lego.com/en-us/support/files/Driver.aspx – Logitech WebCam C600 http://www.logitech.com/de-at/435/5869 • Herunterladen und lokal speichern: – RWTH-Mindstorms NXT Toolbox for MATLAB: (verwenden Sie version 4.04) http://www.mindstorms.rwth-aachen.de/trac/ Quelle: http://www.mindstorms.rwth-aachen.de/trac/wiki/Download4.04 Professur für Elektrische Messtechnik 5 Aufgaben 1. Positionsbestimmung mittels Webcam 2. Einparkhilfe 3. Geschwindigkeitskontrolle Professur für Elektrische Messtechnik 6 Aufgabe 1: Steuerung per WebCam Schreiben Sie eine Matlab-Funktion, mit der die Position des sich bewegenden Lego Mindstorm® Roboters (mit einen Grünen Punkt gekennzeichnet) auf dem Fussboden an hand von Bilder der Logitech-Webcam berechnet und über die Zeit im 2D-Plot aufgzeigt wird. Verwenden Sie hierzu die auf dem Stativ in 1,5 Meter Höhe montierten Webcam. Der untere Bildrand befindet sich auf dem Fußboden in einen definierten Abstand vom der Kamerazentrum entfernt. Der Roboter fährt entlang einer Schleifer. • Matlab-Funktion (vorschlag): – videoinput('winvideo'), start, getsnapshot, stop, imshow, ind2sub, figure, conv2, zeros • Gegebene Werte: – Brennweite [mm] (horizontal,vertikal) = ca. [4.6 5] – Sensor Abmaße [mm] (horizontal,vertikal) = [4.536 3.416] – Bildauflösung (Standard) = RGB24 640x480 Professur für Elektrische Messtechnik 17 Matlab Handle-ID Die COM-Schnittstelle besteht aus Eigenschaften, Methoden und Ereignissen. Mit handle_id = COM_OpenNXT() wird ein COM-Objekt zurückgegeben, welches Zugriff auf diese COM-Schnittstelle ermöglicht. Gleiches gilt auch für USB-WebCAM: handle_id = videoinput('winvideo') Um Bilder mit der WebCam zu erstellen ist die Verbindung zu initialisiern start(handle_id) Um ein rgb-Bild zu erhalten ist folgender Befehl auszuführen: rgb = getsnapshot(handle_id) Wenn die Verbindung nicht mehr benötigt wird ist diese zu schließen close(handle_id) Professur für Elektrische Messtechnik 8 Aufgabe 1: Steuerung per WebCam Geometrie • Die Brennweite b wird in Millimetern angegeben und bedeutet, streng genommen, die Entfernung zwischen der Aufnahmeebene (CCD-Chip oder Film) und der ObjektivHauptebene. Professur für Elektrische Messtechnik 19 Aufgabe 1: Positionsbestimmung mittels Webcam Professur für Elektrische Messtechnik 10 Aufgabe 2: Einparkhilfe Schreiben Sie eine Matlab-Funktion, welche eine seitliche Einparkhilfe für den Roboter realisiert. Die Einparkbucht ist 30cm breit und 17cm tiefe, die Wände sind mindestens 30 cm hoch und aus Pape. Verwenden Sie den Ultrschallsensor des Roboters. Der Fahrweg des Roboters soll in einem Plot gezeichnet werden. • Gegebene Werte: – Anfangsabstand zur Wand 5cm – Der Roboter soll hinter der Linie in der Einparkbucht stehen Professur für Elektrische Messtechnik 1 11 Aufgabe 2: Einparkhilfe Professur für Elektrische Messtechnik 1 12 Aufgabe 2: Einparkhilfe Professur für Elektrische Messtechnik 13 Aufgabe 3: Geschwindigkeitskontrolle Schreiben Sie eine Matlab-Funktion, welche die Geschwindigkeit in Abhängigkeit der Frequenz des durch die Lautstärke modulierten Sinussignal (zwischen 1 bis 10 Hz) des Roboters während der Fahrt regelt. Der Fahrweg soll der Form einer Schleife wie in der 1. Aufgabe entsprechen. Gegebene Werte: – Lautstärkenmodulation für schnelles fahren – Lautstärkenmodulation für langsames fahren Die Matlab-Code wird auf der Homepage zum herunterladen zur Verfügung gestellt! Professur für Elektrische Messtechnik 1 14 Aufgabe 3: Geschwindigkeitskontrolle Professur für Elektrische Messtechnik 15 RWTHMindstormsNXT\tools\GUI_WatchSensor.m Professur für Elektrische Messtechnik 16 RWTHMindstormsNXT\tools\GUI_WatchMotorState.m Professur für Elektrische Messtechnik 17 Dokumentation Per Browser unter RWTHMindstormsNXT/doc – Functions - Alphabetical List • doc/functions/abc.html – Beispiele • doc/examples/examples.html – Direct NXT commands • /doc/programming/direct_commands.html – High level sensor control • doc/programming/sensor_control.html – …. Professur für Elektrische Messtechnik 18 Funktionen der NXT-Toolbox Verwenden Sie zum Warten auf den NXT den Matlab „pause()“-Befehl! • NXT-Verbindung: – COM_CloseNXT, COM_OpenNXT, COM_SetDefaultNXT, COM_GetDefaultNXT • NXT-Sensoren: – OpenUltrasonic, GetUltrasonic, OpenSound, GetSound, CloseSensor • NXT-Motoren: – NXT_ResetMotorPosition, DirectMotorCommand, NXC_MotorControl, NXT_GetOutputState Professur für Elektrische Messtechnik 1 19 Heute • Es ist ein Projekt und KEINE Übung! – Es gibt somit keine einzelnen Aufgaben für jeden Termin. – Jede Gruppe hat drei Aufgaben, welche sie lösen soll. – Wir helfen euch bei Fragen zur Realisierung. – TIP: Setzt euch Deadlines, damit Ihr am letzten Abend nicht alles machen müsst! Professur für Elektrische Messtechnik 20 Heute • Für heute sollte mindestens folgendes funktionieren: – Verbindung zwischen Matlab und Roboter per Command-Befehl – Auslesen von Sensordaten per Command-Befehl – Roboter per Command-Befehl bewegen – Bild erstellen mittels WebCam unter Matlab per CommandBefehl – Verteilung der Aufgaben und vielleicht Deadlines Professur für Elektrische Messtechnik 21 Fragen ? Professur für Elektrische Messtechnik 1 22 dann viel Spaß! Diese Folien findet Ihr auf unserer Homepage http://emt.hsu-hh.de unter Lehre » Informationstechnisches Projekt Vorlesung Professur für Elektrische Messtechnik 1 23