Legoteil Zählmaschine 2016 2017
Bei der HSHL Lego® Zählmaschine handelt es sich um eine Maschine, die automatisch Legoteile zählen und sortieren kann, um gegebenen Falls fehlende Lego®-Steine nachbestellen zu können. Es ist ein studentisches Projekt, welches in Rahmen des System-Entwurf-Praktikums des Studiengangs Mechatronik mit Schwerpunkt System Design Engineering im 7. Semester durchgeführt wurde. [1] [2]
Autoren: Adam Fankhauser, Christo Tsibadze, Kevin Penner, Niklas Lingenauber, Sergej Krause, Simon Hanemann
Betreuer: Prof. Schneider, Prof. Goebel
Aufgabenstellung
Die vorhandene Legoteilzählmaschine (siehe Legoteilzählmaschine_2016 ) soll Soft- und Hardwaremäßig modifiziert werden, um drei wichtigsten Anforderungen zu erfüllen. Die Vereinzelung bzw. Separierung der Legoteile soll verbessert werden damit in Bildverarbeitungsbox nur einzelne Legoteile zugeführt werden. Für die Bildverarbeitung bzw. Legoteilerkennung soll ein neuer Ansatz entwickelt werden. Bisherige Ansätze konnten Merkmale bei einigen Legoteilen teilweise ungenau ermitteln. Die größten Probleme gab es bei schwarzen und braunen Legoteilen, sowie an Licht-reflektierenden Flächen der Legoteile und bei Schattenbildung. Nach der Legoteilerkennung wurde bisher nur binär sortiert, erkannt und nicht erkannt. In diesem Semester soll ein Konzept aufgestellt und zum Teil realisiert werden.
[1]
Aufgabenteilung
Die in der Aufgabenstellung genannten wichtigsten Arbeitspakete wurden wie folgt in drei Teams aufgeteilt:
- Adam Fankhauser, Niklas Lingenauber:
- Separierung:
- asdf
- asdf
- asdf
- Weitere Aufgaben:
- Elektronik, Steuerplatine
- ...
- Separierung:
- Kevin Penner, Christo Tsibadze:
- Bildverarbeitung: Neuer Ansatz für bessere Farb- und Merkmalerkennung der Teile
- Ablauf der Bildverarbeitung / Legoteilerkennung
- Schnittstellen
- Mechanischer Aufbau Neuer BV-Box
- Matlabimplementierung
- Ablaufplan
- Parametrisierung der Kamera
- Automatische Kalibrierung der Kamera
- Legoteilerkennung
- Weitere Aufgaben:
- "Abflussrohr", Transportsrohr für Legoteile (Bildverarbeitungsbox --> Sortierung)
- "Drosselklappe", Prototyp für Separierung in Y-Richtung
- Bildverarbeitung: Neuer Ansatz für bessere Farb- und Merkmalerkennung der Teile
- Simon Hanemann, Sergej Krause:
- Sortierung:
- asdf
- asdf
- asdf
- Weitere Aufgaben:
- Sortierung:
Projektplan
Meilensteine für das 7. Semester mit oder ohne Deadlines: UNTER BEARBEITUNG
Realisierung
Gruppe: Separierung
Gruppe: Bildverarbeitung/Legoteil-Erkennung
Schnittstellen
Damit die Bilverarbeitung und damit auch das Erkennen der Legoteile erfolgreich verlaufen kann, müssen zunächst die Legoteile vereinzelt in die Bildverarbeitungsbox gelangen (Link zum Wikiteil mit der Separierung einfügen!!!). Sobald ein Legoteil erkannt wurde, wird es aus der Box per Druckluft gefördert und muss anschließend sortiert werden.
Mechanischer Aufbau
Ablauf der Bildverarbeitung
Matlabimplementierung
Ablaufplan:
Parametrisierung der Kamera:
Kamera-Kalibrierung:
Legoteilerkennung:
Vorverarbeitung, Segmentierung & Nachverarbeitung:
Legoteilerfassung:
Stickwort: Legoteil an Kante, Legoteil in Bewegung, Nur ein Legoteil (Labeln)
Gruppe: Sortierung
Evaluation der Druckluftdüsen
Der vollständige Bericht befindet sich im SVN unter
...\Dokumentation\16_Pneumatik\Evaluation_der_Druckluftdüsen.docx
Im ersten Test wurden verschiedene Legoteile und den unten in der Tabelle genannten Düsen getestet. Ziel des Versuches war es heraus zu finden, welche Legoteile sich am besten für den Test der Düsen eigen. In dem Test stellte sich heraus, dass sie Komplexität der Form der Legoteile kaum Einfluss auf das Ergebnis hat. Dies ist auf das geringe Gewicht und die großen Oberflächen der Legoteile zurückzuführen.
Im zweiten Test wurden getestet wie weit die Düsen die Legoteile bei einmaligen betätigen bewegen können. Ein Teil muss dabei mindestens eine Strecke von 20 cm überwinden können. In dem Test zeigte sich, dass die Testergebnisse von der punktuellen Düse nur dann sinnvolle Ergebnisse erzielen, wenn das Objekt mit einem optimalen Angriffswinkel getroffen wird. Deshalb schwanken die Messwerte auch sehr stark im Test. Dies ist sehr ungünstig da die Lage der Teile im laufenden Prozess der Legoteilzählmaschine sehr variabel ist. Das optimalste Ergebnis haben die spitzen Luftdruck-Düsen erzielt, da selbst mit geringen Drücken viel Kraft auf die Legoteile übertragen werden konnte.
Elektronik/Arduino-Kommunikation
Arduino-Kommunikation
Zum Ansteuern der Aktoren mithilfe des Arduino Mega, wurde ein Kommunikationsprogramm geschrieben. Dieses ermöglicht dem Nutzer über den PC einen seriellen Befehl an den Arduino zu schicken, der daraufhin den Befehl ausführt. Zu den Befehlen gehören:
- Ansteuern der LED's in den Kameraboxen für die Erkennung bzw. Separierung
- Ventilsteuerung für die Druckluftdüsen für die Erkennung bzw. Separierung
- Einstellung der Drosselklappenstellung für die Sortierung
- Ansteuern der Förderbandmotoren
- Ansteuern des Linearläufers für die Sortierung
Für die Botschaften wurde ein einheitliches Framework herausgearbeitet. So besitzt jede serielle Botschaft folgende kodierte Inhalte:
- Am Anfang jeder Botschaft steht ein **B** (Ohne ")
HSHL-Wiki-Dokumentation
Die HSHL-Wiki-Dokumentation wurde von der gesamten Gruppe bearbeitet. Jedes Themenabschnitt unterliegt der bereits oben genannten Verantwortlichkeiten. [1]
Ergebnisse
Anleitung Programmstart
Fazit
Abgeschlossene Punkte
Offene Punkte
Ausblick/ Planung der Aufgaben für das Folgesemester
Dokumentation
UNTER BERARBEITUNG