Kurzfassung
Kurzfassung
Deutsche Kurzfassung
Die vorliegende Arbeit befasst sich mit dem Auslesen der Daten eines Sick LMS 300 Laserscanners, der Auswertung, der Speicherung und schlieÿlich ihrer Visualisierung anhand zweier Microsoft Foundation Classes (MFC)-Anwendungen. Die Arbeit beinhaltet Informationen zur Konguration des Scanners, beschreibt die RS-232 und RS-422 Schnittstellen und zeigt dabei eine Möglichkeit diese miteinander zu vereinbaren. Weiters wird neben der Verarbeitung der Daten auf die MFC-Programmierung und die Möglich-
keiten der Visualisierung die dadurch zur Verfügung stehen, eingegangen.
Summary
This paper deals with the readout of the data of a Sick LMS 300 laserscanner, the analysis of the data, the storage and nally the visualization on the basis of two MFC-applications. The work includes information
about the conguration of the scanner, describes the RS-232 and the RS-422 interfaces, and shows a possibility to interlink the two interfaces. Furthermore, the work outlines the data processing and provides information about MFC-programming and the thus available possibilities of
visualization.
Bachelorarbeit Andreas Blassnig 2
Inhaltsverzeichnis
Inhaltsverzeichnis
Kurzfassung 2
Inhaltsverzeichnis 3
Abbildungsverzeichnis 4
Listings 5
Abk ürzungsverzeichnis 6
Vorwort 7
1 Aufgabenstellung 8
2 Umsetzung 10
2.1 Vorgangsweise 10
2.2 Konguration des Scanners 10
2.2.1 Kongurieren der Schutz- und Warnfelder 11
2.3 Auslesen der Daten 11
2.3.1 Schnittstelle RS-422 und RS-232 11
2.3.2 Request Mode 14
2.3.3 Kontinuierliche Datenausgabe 15
2.4 Datenverarbeitung 15
2.4.1 Datenformat der Messdaten 17
2.4.2 Berechnungen 17
2.4.3 Speicherung der Daten 19
2.5 Visualisierung 21
2.5.1 MFC-Programmierung 21
2.5.2 Möglichkeiten der Visualisierung 30
2.5.3 Ausgabe der Daten am Bildschirm 34
2.6 Die MFC-Anwendungen 35
2.6.1 Anwendung für die kontinuierliche Datenausgabe 36
2.6.2 Die AICC-Status Anwendung 39
3 Ergebnisse und Zusammenfassung 45
Literatur - und Quellenverzeichnis 47
Bachelorarbeit Andreas Blassnig 3
Abbildungsverzeichnis
Abbildungsverzeichnis
1.1 Scanbereich des Laserscanners . . . . . . . . . . . . . . . . 8 1.2 Schematische Darstellung des Scanvorganges . . . . . . . . 9
2.1 Kongurationsanschluss[Betr] . . . . . . . . . . . . . . . . 10 2.2 Feldsatz bestehend aus Schutz- und Warnfeld [Betr] . . . . 11 2.3 Spannungspegel RS-232 [Schum] . . . . . . . . . . . . . . . 12 2.4 RS-232 Verbindung zwischen dem Lasersensor und dem PC 14 2.5 Telegrammaufbau - kontinuierliche Datenausgabe [Tele] . . 15 2.6 AICC...Articial Intelligence Concept Car . . . . . . . . . 16 2.7 Das MM_TEXT Koordinatensystem[Pros] . . . . . . . . . 16 2.8 Koordinatensysteme . . . . . . . . . . . . . . . . . . . . . 17 2.9 Ausschnitt aus einem lesbaren Logle . . . . . . . . . . . . 20
2.10 Die MFC-Toolbox . . . . . . . . . . . . . . . . . . . . . . . 22
2.11 Button-Control . . . . . . . . . . . . . . . . . . . . . . . . 22
2.12 Check Box Control . . . . . . . . . . . . . . . . . . . . . . 23
2.13 Edit-Control . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.14 Edit Control zum Anzeigen von Daten . . . . . . . . . . . 24
2.15 Static Text Control . . . . . . . . . . . . . . . . . . . . . . 25
2.16 Slider Control . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.17 Klassen für GDI-Objekte [Buds] . . . . . . . . . . . . . . . 30
2.18 Umschlieÿendes Rechteck [Msdn] . . . . . . . . . . . . . . 33
2.19 Edit-Control Ausgabefenster . . . . . . . . . . . . . . . . . 36
2.20 Anwendung für die kontinuierliche Datenausgabe . . . . . 37
2.21 Linienplot . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.22 Punktwolke . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.23 Oberäche der AICC-Status Anwendung . . . . . . . . . . 40
2.24 Buttons zur Steuerung der Ansicht . . . . . . . . . . . . . 41
2.25 Skalierung . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.26 Landmarken und Position des Autos . . . . . . . . . . . . 43
2.27 Gegenüberstellung Foto/Visualisierung . . . . . . . . . . . 43
2.28 Laserscan mit Abbildung der Korridor-Funktion . . . . . . 44
2.29 Unterteilung Korridor . . . . . . . . . . . . . . . . . . . . . 44
3.1 Konzept-Auto AICC . . . . . . . . . . . . . . . . . . . . . 45
Bachelorarbeit Andreas Blassnig 4
Listings
Listings
2.1 SetCommState . . . . . . . . . . . . . . . . . . . . . . . . 13 2.2 PolarToCartesian . . . . . . . . . . . . . . . . . . . . . . . 18 2.3 fprintf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 2.4 fwrite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.5 OnButtonClicked . . . . . . . . . . . . . . . . . . . . . . . 22 2.6 DoDataExchange . . . . . . . . . . . . . . . . . . . . . . . 24 2.7 UpdateData() . . . . . . . . . . . . . . . . . . . . . . . . . 24 2.8 OnInitialUpdate() . . . . . . . . . . . . . . . . . . . . . . . 26 2.9 GetDlgItem() . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.10 LidarThread . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.11 DECLARE_MESSAGE_MAP() . . . . . . . . . . . . . . 28
2.12 BEGIN_MESSAGE_MAP . . . . . . . . . . . . . . . . . 29
2.13 OnCalculate . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.14 OnDraw . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.15 wingdi.h . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.16 MoveTo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.17 LineTo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.18 Ellipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.19 Rectangle . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.20 TextOut . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.21 Corners . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.22 EditControl . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.23 Button . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.24 OnDraw-App1 . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.25 OnBnClickedUdp . . . . . . . . . . . . . . . . . . . . . . . 40
2.26 OnBnClickedActivate . . . . . . . . . . . . . . . . . . . . . 40
2.27 OnDrawAiccStatus . . . . . . . . . . . . . . . . . . . . . . 41
2.28 DataScaling . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Bachelorarbeit Andreas Blassnig 5
Abkürzungsverzeichnis
Abkürzungsverzeichnis
AICC Articial Intelligence Concept Car . . . . . . . . . . . . . . . . . . . . . . 7 API Application Programming Interface . . . . . . . . . . . . . . . . . . . . 21 CDS Conguration Device Software . . . . . . . . . . . . . . . . . . . . . . . . . 10 COM Component Object Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 CRC Cyclic Redundancy Check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 DC Device Content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 DDX Dialog Data Exchange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 EIA Electronic Industries Alliance . . . . . . . . . . . . . . . . . . . . . . . . . . 11 GDI Graphics Device Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 IPC Industrie-PC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 MFC Microsoft Foundation Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 OLE Object Linking and Embedding . . . . . . . . . . . . . . . . . . . . . . . 21 PC Personal Computer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 pDC pointer to Device Content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 RANSAC Random Sample Consensus . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 UDP User Datagram Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 UI User Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 URL Uniform Resource Locator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 WLAN Wireless Local Area Network . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Bachelorarbeit Andreas Blassnig 6
Vorwort
Vorwort
Ziel dieser Arbeit ist es, die abstrakten Daten eines Laserscanners in eine graphische bzw. visuell erfassbare Form zu bringen. Der Laserscanner der Firma Sick ist ein optischer Sensor, der seine Umgebung mit infraroten Laserstrahlen zweidimensional abtastet. Der S300 arbeitet nach dem Prinzip der Lichtlaufzeitmessung in einem Scanbereich ◦ (siehe Abbildung 1.1) und einer Winkelauösung von 0,5 ◦ [Betr]. von 270
Im Projekt Articial Intelligence Concept Car (AICC) dient der Laserscanner, neben der Notstopfunktion, die durch zwei Schaltausgänge des Scanners realisiert ist, zur Umfelderkennung und ist somit eine Grundlage zur Erreichung des primären Zieles des Projektes AICC, autonomes Fahren zu realisieren.
Die Informationsvisualisierung soll eine eektive Darstellung der Datenmuster und der darin enthaltenen Informationen ermöglichen. Das dadurch entstehende 2D-Abbild der Umgebung des Autos dient dem Zweck der Visualisierung der abstrakten Daten und soll dem Menschen und/oder dem Programmierer die Interpretation der Daten erleichtern.
Bachelorarbeit Andreas Blassnig 7
KAPITEL 1. AUFGABENSTELLUNG
1 Aufgabenstellung
Die Problemstellung besteht darin, die Daten des Laserscanners auszulesen, auszuwerten, zu speichern und zu visualisieren.
Der Scanner verfügt über eine RS-422 Schnittstelle um die Datensätze direkt auszulesen. Es musste eine Möglichkeit gefunden werden die Daten über eine RS-232 Schnittstelle einzulesen, da nur diese am verwendeten Industrie-PC (IPC) vorhanden ist (siehe Kapitel 2.3.1.2, S. 13).
Den gelieferten Abstandswerten des Scanners (der Scanbereich ist in Abbildung 1.1 ersichtlich) musste je nach Index ein entsprechender Winkel zugeordnet werden um die Daten in Form von Polarkoordinaten zur Verfügung zu haben. Diese können dann in das Kartesische Koordinatensystem umgerechnet werden (siehe Kapitel 2.4.2, S. 17). Die kartesischen Koordinaten werden unter anderem zur graphischen Ausgabe, der Visualisierung der Daten benötigt.
Um die Daten nicht nur momentan zur Verfügung zu haben musste eine Möglichkeit gefunden werden die einzelnen Datensätze zu speichern um sie zur nachträglichen Verarbeitung, Visualisierung und Analyse wieder abrufen zu können (siehe Kapitel 2.4.3, S. 19).
Bachelorarbeit Andreas Blassnig 8
KAPITEL 1. AUFGABENSTELLUNG
Aufgrund der Tatsache, dass der Mensch visuelle Inhalte einfacher aufnehmen kann, als abstrakte, musste eine Möglichkeit gefunden werden die Datensätze zu visualisieren um ein 2D-Abbild der Umgebung aus Sicht des Autos zu erhalten (siehe Abbildung 1.2).
Die automatisierte Auswertung und Visualisierung gröÿerer Datenmengen durch graphische Benutzeroberächen (siehe Kapitel 2.5.3, S. 34) erleichtert die Untersuchung und Interpretation der Daten [Bed].
Bachelorarbeit Andreas Blassnig 9
KAPITEL 2. UMSETZUNG
2 Umsetzung
2.1 Vorgangsweise
Es bestehen zwei Möglichkeiten die Daten des Scanners zu erfassen bzw. anzufordern. Der Scanner muss vorher auf die gewünschte Betriebsart konguriert werden.
• Die erste Möglichkeit ist der Request Mode (siehe Kapitel 2.3.2, S. 14), in dem die Messdaten durch den Hostrechner angefordert werden können. In diesem Modus werden die einzeln angeforderten Datensätze über die RS232-Schnittstelle in den Rechner eingelesen und entweder sofort, oder nach Umrechnung der Daten in kartesische Koordinaten, in einem File auf der Festplatte abgelegt.
• Die zweite Möglichkeit besteht darin, den Scanner auf kontinuierliche Datenausgabe (siehe Kapitel 2.3.3, S. 15) zu kongurieren. Dabei erfolgt die Ausgabe der Messdaten automatisch und kontinuierlich. Eine Speicherung der Daten wird in diesem Fall nicht vorgenommen. Jeder fertig empfangene Datensatz wird sofort in kartesische Koordinaten umgerechnet, die zur leichteren Darstellung in der, mithilfe der MFC erstellten, graphischen Oberäche benötigt werden.
Im Hintergrund wird bereits der nächste Datensatz eingelesen.
Ein Datensatz besteht aus 541 Abtastwerten, denen je ein Winkel zu-geordnet werden kann. Die einzelnen Polarkoordinaten werden in einem MFC-Programm in kartesische Koordinaten umgerechnet, um die Darstellung in einer FormView-Oberäche der MFC zu erleichtern.
2.2 Konguration des Scanners
Der Laserscanner wird mit Hilfe der Conguration Device Software (CDS) konguriert. Zur Konguration und Diagnose wird der Personal Computer
(PC) am Kongurationsanschluss (siehe Abbildung 2.1) des Scanners angeschlossen.
Bachelorarbeit Andreas Blassnig 10
Arbeit zitieren:
Andreas Blassnig, 2009, Visualisierung von Laserscanner-Daten mit den MFC , München, GRIN Verlag GmbH
Dieser Text kann über folgende URL aufgerufen und zitiert werden:
Einbetten
DOI
Formatvorlage (Microsoft Word) für eine Diplomarbeit, Masterarbeit, Ha...
Für MS Word 2003 - Update 2010
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 25 Seiten
Formatvorlage (OpenOffice) für eine Diplomarbeit, Masterarbeit, Hausar...
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 35 Seiten
Formatvorlage / Vorlage zur Erstellung einer Diplomarbeit, Bachelorarb...
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 15 Seiten
Formatvorlage / Vorlage für eine Diplomarbeit / Hausarbeit
Für MS Word 2007 - dotx
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 25 Seiten
Anleitung zum Erstellen schriftlicher Arbeiten: Der Aufbau einer wisse...
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 20 Seiten
Erstellen einer schriftlichen Hausarbeit
Vorlagen, Muster, Formulare, Infobroschüren
Hausarbeit, 14 Seiten
Grundtechniken wissenschaftlichen Arbeitens
Bibliografieren - Reden - Schr...
Vorlagen, Muster, Formulare, Infobroschüren
Skript, 46 Seiten
Ratgeber zur Erstellung wissenschaftlicher Arbeiten. Diplomarbeiten - ...
Vorlagen, Muster, Formulare, Infobroschüren
Ausarbeitung, 39 Seiten
Andreas Blassnig's Text Visualisierung von Laserscanner-Daten mit den MFC ist nun auf dem Buchmarkt erhältlich
Andreas Blassnig hat den Text Visualisierung von Laserscanner-Daten mit den MFC veröffentlicht
Andreas Blassnig hat einen neuen Text hochgeladen
Automatisierungstechnik und Visualisierung
Simulation mechanischer System...
Herbert Bernstein
Visualisierung von Textprozessen
Die kommunikative Organisation...
Graziella Tonfoni, Annely Rothkegel
0 Kommentare