Inhaltsverzeichnis

Projektdokumentation Blitzer

Themenbeschreibung und kurzer Überblick

Wir haben einen Roboter gebaut, der auf zwei verschiedene Weisen die Geschwindigkeit von Objekten bzw. Menschen misst. Ursprünglich stammte die Idee von mobilen Blitzern, wie man Sie vom Straßenverkehr kennt. Da diese allerdings mit einem Radar arbeiten, wollten wir uns etwas anderes ausdenken. Zuerst einigten wir uns auf eine Lichtschranke, welche mit einem Arduino kontrolliert wird. Wenn die Geschwindigkeit höher als ein festgelegter Wert ist, dann nimmt eine Webcam ein Foto und eine LED wird kurz angeschaltet. Da das aber relativ schnell zu machen war, haben wir uns zusätzlich auf eine zweite Methode geeinigt: Die Geschwindigkeitserfassung mittels einer Webcam. Da ein Arduino solche Berechnungen nicht machen kann, mussten wir die Berechnung und die Arbeit mit der Kamera mit einem Laptop machen.

Methoden und Umsetzung

Überblick übers System

Abb. 1: Kompletter Aufbau des Systems

Der Roboter besteht im Wesentlichen aus zwei Baugruppen, dem Kamera-Teil und dem Lichtschranken-Teil. Mit der Lichtschranke wollten wir so genau wie möglich die Geschwindigkeit des Objekts messen indem wir die Zeit festhalten, die ein Objekt brauch um beide Laser zu durchbrechen, und die Strecke zwischen den Lasern durch diese Zeit. Mit der Kamera wollten wir flexibler von der Ferne die Geschwindigkeit von Objekten messen können, dafür haben wir ihre Positionen zwischen den Bildern vergleichen und die Zeit zwischen den Bildern festgehalten.

Das Hauptaufgabenfeld der Lichtschranke war die mechanische Konstruktion des Gerüstes und das Löten der Laser, wobei wir Wert darauf gelegt haben, dass die Laser und die Phototransistoren fest verankert und stabil waren, sodass bei dem Transport und der Nutzung keine Probleme auftreten würden. Im Gegenzug war der Kamera-Teil eher Informationsverarbeitungslastig, da wir Bilder aufnehmen und analysieren mussten. Zudem war die Kommunikation mit dem Arduino, womit wir die Lichtschranke steuerten, ein Bestandteil beider Arbeitsteile der die beiden Aufgabenbereiche verband.

Lösungsdetails

Die detailliertere Beschreibung ist wieder in zwei wesentliche Teile gegliedert: den Lichtschranken-Teil und den Kamera-Teil:

Lichtschranke :

Abb. 2: Schematischer Aufbau der Lichtschranke

Abb. 3: Tatsächlicher Aufbau der Lichtschranke

Abb. 4: Darstellung der Arbeitsweise des Arduinocodes

Kamera : Der vermutlich komplizierteste Teil und der, mit dem wir am meisten Zeit verbracht haben, war das Arbeiten mit der Kamera und die Bildverarbeitung. Die Bildverarbeitung haben wir über einen Laptop betrieben, der via USB-Kabel mit einer Webcam verbunden war. Auf dem Laptop haben wir mit dem Program Processing gearbeitet, einer nützlichen Open Source Software, die auch leicht zu benutzen ist und somit gut für Programmieranfänger ist.

Kommunikation mit der Kamera

Abb. 5: Die verwendete Kamera, eine Webcam

Maßstab

Abb. 6: Ermittlung des Maßstabs

Kanten-Erfassung

Abb. 7: Vereinfachte Darstellung eines aufgenommenen Bildes, nachdem der Kontrast erhöht wurde.

Abb. 8: Weiterführung der Funktionsweise des Edgefinder-Algorithmus.

Geschwindigkeitsberechnung

Technische Daten

Bauteile: 2x Laser; Kabel(rot/blau/schwarz); PSU; Breadboard; Arduino Nano; 2x Phototransistoren; 2x Widerstand; Webcam; LED; Holz; Heißkleber

Abb. 9: Darstellung der Arduinoschaltung

Ergebnis und Diskussion

Rückblickend kann man glaub ich sagen, dass wir uns vor einigen Monaten am Anfang des Semesters nicht zu hohe Ziele gesetzt haben. Wir haben alles fertig bekommen, was wir am Anfang fertig bekommen wollten. Wir haben eine Lichtschranke mit der wir Geschwindigkeit messen können, ein kleines Blitz-Licht, und eine Kamera mit der wir Bilder nehmen können. Darüber hinaus haben wir noch die Kamera benutzt um Bilder zu nehmen, was letztendlich eigentlich der interessanteste Teil des Projekts dann war.

Obwohl beide Projekthälften interessant waren und ziemlich gut funktionieren, kann man am Ende, im Vergleich zwischen den Beiden, klar sagen, dass die Lichtschranke eigentlich immer genauer misst und weniger von der Umgebung abhängt. Die Umgebungsunabhängigkeit kommt davon, dass die Umgebungshelligkeit nie so hell wie unserer Grenzwert für die Messung wird, was wir in einem vorherigen Absatz erwähnten. Jedes mal wo wir die Lichtschranke getestet haben, und beim manuellen Messen mit der Stoppuhr das Gefühl hatten sehr gut gemessen zu haben, hatten wir das gleiche Resultat wie die Lichtschranke.

Im Vergleich hängt die Messgenauigkeit der Kamera sehr von der Umgebung und der Geschwindigkeit des Objektes ab. Es muss zwischen Objekt und Hintergrund ein Hell-Dunkel Kontrast vorhanden sein und die Messgenauigkeit hängt auch von der Geschwindigkeit des Objektes ab. Allgemein gilt, dass je mehr Bewegung es zwischen den Bildern gibt, desto besser kann man die Geschwindigkeit messen. Demnach kann man der Ungenauigkeit bei niedrigeren Geschwindigkeiten ein Stückweit mit einer niedrigeren Bildaufnahmefrequenz entgegenwirken. Die Schranke ist dennoch in den meisten Fällen die genauere Geschwindigkeits-Messmethode.

Das Projekt ist allerdings noch nicht perfekt. Die Genauigkeit der Geschwindigkeitserfassung ist von der Frequenz mit der man Bilder nimmt abhängig und funktioniert eigentlich am Besten wenn man sich schnell durch Schranke bewegt. Zudem funktioniert die Messung der Geschwindigkeit mit der Kamera nur wenn ein Kontrast zwischen Objekt und Hintergrund besteht. Beides sind Problemgebiete an denen man im nächsten Semester arbeiten könnte, zu denen uns aber jetzt die Zeit fehlte.

Code und Rohdaten

allcode.zip