Legosortiermaschine Separierung
Teammitglieder: Maik Schmotz, Nils Busemann,
Dies ist ein Unterartikel von der Legoteil_Zählmaschine, welcher den genauen Aufbau der Separierung beschreibt.
Einleitung
Die Separierung ist der erste Schritt zum Sortieren der Legoteile. Ziel dabei ist die verschiedenen Teile zu separieren und einzeln in die Bildverarbeitung laufen zu lassen. Dies ist notwendig, da die Bildverarbeitung lediglich einzelne Legoteile erkennen kann.
Zur Separierung der Legoteile wird ein Bunker inklusive Bunkerförderband verwendet, welches die Teile sammelt und zum Förderband transportiert. Die Teile werden dort durch eine Bilderkennung befördert und wenn nötig vereinzelt. Die Kamera macht Bilder des Förderbandes und erkennt die Anzahl der auf dem Band liegenden Teile in einem festgelegten Bereich. Falls sich mehr als ein Teil in diesem Bereich befindet, werden diese mit Hilfe von Druckluftdüsen nach hinten gepustet. Somit werden die Teile neu angeordnet und bewegen sich anschließend erneut durch die Bilderkennung. Befinden sich die Legoteile bereits vereinzelt auf dem Förderband, werden sie zur Legoteil-Erkennung gefahren.
Die Probleme der Vereinzelung zu Beginn des Sommersemesters 2017 bestehen darin, dass das Bunkerband bei gefülltem Bunker überfüllt und somit zu viele Teile auf das Förderband fallen. Wird das Bunkerband nicht angehalten, fallen immer mehr Teile nach. Falls die Teile in der Bilderkennung durch die Druckluftdüsen nach hinten gepustet werden, kommt es zu einer Aufstauung der Teile in bzw. vor der Bilderkennungsbox.
Ein weiteres Problem der Separierung ist in der Ansteuerung der Druckluftdüsen zu finden. Werden mehrere Teile in dem kritischen Bereich erkannt, werden automatisch beide Düsen angesteuert und somit alle Teile an den Anfang der Teileerkennung befördert. Dadurch kann es zu einer enormen Verzögerung in der Vereinzelung der Teile kommen.
Anforderungen
Spezifikations-ID | Anforderungs-ID | Anforderungstitel | Beschreibung der Spezifikation | Links |
---|---|---|---|---|
0081 | REQ10.2200 | Vereinzelung | Das Bunkerband wird angehalten wenn Teile auf dem Förderband liegen | Link |
0082 | REQ10.2200 | Vereinzelung | Das Förderband fährt mit passender Geschwindigkeit in die erste Bildverarbeitung | Link |
0083 | REQ10.2200 | Vereinzelung | Die Bildverarbeitung erkennt wenn mehrere Teile im kritischen Bereich nebeinander liegen | Link |
0084 | REQ10.2200 | Vereinzelung | Die Luftdüsen schießen zusammenliegende Teile außeinander | Link |
0085 | REQ10.2200 | Vereinzelung | Zurückgeschossene Teile werden von Abschirmungen vorm Herunterfallen geschützt | Link |
0086 | REQ10.2200 | Vereinzelung | Wenn mehrere Teil auf dem Bunkerband übereinander liegen, werden diese durch einen Abstreifer getrennt | Link |
0089 | REQ10.2200 | Vereinzelung | Das Förderband hält an, wenn ein Teil in die Bildverarbeitung fällt | Link |
0090 | REQ10.2200 | Vereinzelung | Die Fördermenge wird durch eine Verkleinerung des Bunkerbandes optimiert | Link |
Geschichte
Die Ergebnisse des vorausgegangenen Praktikums haben aufgezeigt, dass eine Vereinzelung der Legoteile mit dem vorhandenen Aufbau schwer zu verwirklichen ist (siehe Semester 2016). Durch das Befüllen des Bunkers mit einer Vielzahl an Legoteilen, gestaltet es sich schwierig, die Anzahl der ausgegeben Legoteile auf das Förderband zu regulieren. Es kommt oft dazu, dass sich zu viele Teile auf dem Fließband befinden. Eine Verminderung der Geschwindigkeit des Förderns aus dem Bunker reicht nicht aus, da die Lamellen des Stetigförderers zu viele Teile aufnehmen können. Auch vereinzelte das vorherige Konzept mit unterschiedlich schnell laufenden Bändern die Teile nicht, wenn sich zu viele Teile auf dem Band befanden.
In Wintersemester 2016/2017 wurde das Konzept umgesetzt, dass Hindernisse am Rand des Förderbandes angebracht werden. Diese sollten nur einzelne Teile durchlassen, wenn sich eine Vielzahl an Teilen auf dem Förderband befinden. Es stellte sich heraus, dass das Anbringen von Hindernissen auf dem ersten Förderband nicht wie gewünscht die Legoteil-Gruppen auseinander zieht und gelegentlich durch verklemmte Teile die Legoteil-Zufuhr zur Bilderkennung verstopft. Dies hat in Kombination mit den Problemen bei der Sortierung von Legoteilen nach dem Erkennungsprozess dazugeführt, dass eine Überarbeitung des Gesamtkonzeptes notwendig war, um die Zuverlässigkeit der Legoteil-Zählmaschine gewährleisten zu können.
Neues Konzept zur Separierung der Legoteile
Das neue Konzept zur Separierung besteht aus einer eigenen Bilderkennungsbox, in der erkannt werden soll, ob sich zu viele Legoteile zur selben Zeit auf dem Laufband befinden. Am Ausgang der Bildbearbeitungsbox befinden sich zwei Luftdruckdüsen, die einen Luftstoß ausgeben können, wenn sich zu viele Teile auf dem Band befinden. Dabei werden die Teile entgegen der Laufrichtung des Bands befördert. Es folgt eine erneute Auswertung der Anzahl der sich auf dem Fließband befindenden Teile. Sollten sie nun vereinzelt sein, können die Box passieren. Dazu wurden kritische Bereiche in der Bilderkennungsbox definiert, in welchen die Teile erkannt und gezählt werden. Je nach Lage und Anzahl der sich auf dem Förderband befindenden Teile werden die Luftdruckdüsen einzeln, zusammen oder gar nicht angesteuert.
Umbau der Legoteil-Zählmaschine
Um das neue Konzept des vorherigen Kapitels umzusetzen, mussten einige Komponenten an der Legozählmaschine umgebaut und angepasst werden (siehe Abbildung 2). Zum einen wurde das erste, kurze Förderband entfernt, sodass nur noch das Lange verwendet wird. Dies war notwendig um Platz für den Anlagenteil zur Sortierung zu schaffen, außerdem ist die Separierung durch zwei unterschiedlich schnell laufende Förderbänder nicht mehr Teil des Separierungskonzepts. Am Anfang des Förderbandes wurde der Bunker platziert, der die Legoteile auf das Band befördert. Die Box zur Bilderkennung befindet sich nach wie vor mittig auf dem langen Förderband. Innerhalb dieser Box wird die Lage der Legoteile erfasst. Am Ausgang der Box wurden zwei Luftdruckdüsen so angebracht, dass diese die Legoteile in der Box auf dem Band zurück pusten können. Mithilfe dieser Düse ist es nun möglich, von der Bildverarbeitung erkannte Häufungen von Legoteilen auseinander zu treiben. Am Ende des langen Laufbandes wurde eine neue Bildverarbeitungsbox angebracht, in der die Legoteile erkannt werden. An dieser Box grenzt dieSortierung
Um Platz zur Umsetzung einer Sortieranlage zu schaffen, wurde der Stromkasten vor Kopf der Anlage platziert. Unter dem Förderband wurde eine Ventilinsel platziert, mit der sich alle Luftdruckdüsen des Systems steuern lassen. Die Ventilinsel ist mit vier Ventilen bestückt, es können aber weitere Ventile nachgerüstet werden. Die Kontakte der Ventilinsel sind in den Schaltschrank geführt. Der Druckluftanschluss kann über ein Schnellspannanschluss an normale 6 Millimeter Druckluftanschlüsse angeschlossen werden.
Die Verkabelungen und Verschlauchungen des neuen Aufbaus wurden, soweit möglich, in Kabelkanälen verlegt.
[3]
[4]
Umbau Separierungsbox
Um eine genauere Vereinzelung zu gewährleisten, wurde die Separierungsbox neu konstruiert und gefertigt. Die neuen Anforderungen an die Box war:
- genug Platz für ein effektiveres Auseinanderschießen
- die Luftdüsen in die Separierungskiste sollen verlagert werden, um ein Verstellen und somit eine ausversehene Neuausrichtung der Düsen zu verhindern. Für die Konstruktion der neuen Separierungsbox wurde die Software SolidWorks verwendet. Anhand von alten Referenzdaten und neuen Vermessungen wurde der Kasten neu konstruiert und anschließend aus Holz gefertigt.
- Weil der Kasten an der Seite des Förderbandes befestigt wird und aus massiven Holz gefertigt wurde, wird eine höhere Stabilität der Box selbst, aber auch eine einheitlichere Ausrichtung der Kamera gewährleistet.
- Mit der Neukonstruktion mussten auch die verwendeten LED Streifen neu angebracht werden.
- Die Kamera wurde auf der Box mit einem Boschprofil verbunden und durch eine Verschraubung an dem Kasten befestigt.
- Für den vereinfachten Zugang zum Inneren der Vereinzelungsbox wurde eine Serviceklappe montiert. Diese ist durch ein Winkel am Gehäuse verbunden und durch eine Schraube verschlossen. Verkantet sich ein Teil, kann diese gelöst und die Klappe geöffnet werden. Durch eine bestehende Gefahr vor Verletzungen sollte sich lediglich im Stillstand Zugang zum Inneren verschafft werden.
Die Konstruktion ist im SVN zu finden.
In Abbildung 3 ist die Separierungsbox zu sehen. Von links gehen gehen die Druckluftschläuch hinein. Dahinder befinden sich die zwei Luftdüsen. Oben auf der Box ist die Kamera befestigt, welche durch ein Loch in den Innenraum guckt. Am rechten Rand der Box ist die Serviceklappe zu erkennen. [2]
Umbau Bunkerband
Um eine grobe Vorsortierung zu ermöglichen wurde der Bunker um 50% verkleinert und somit die Aufnahmefläche des Bunkerbandes reduziert. Das garantiert, dass weniger Teile vom Bunkerband aufgenommen und somit in die Vereinzelungsbox gelangen. Um eine große Ansammlung der Legoteile auf den Lamellen zu verhindern wurde ein Abstreifer an der Bunkerverkleinerung angebracht. Die Abstreifstudie für die Auswahl des besten Abstreifers ist unter Abstreifer zu finden.
Abschirmung
Um ein Herunterfallen von Legoteilen zu verhindern, wurde eine Abschirmung des Förderbandes hinter dem Bunkerförderband realisiert. Dazu wurde das Förderband vermessen und die Abschirmung in einer 3D CAD Software konstruiert. Anforderungen an die Konstruktion war lediglich die Abschirmung des Bandes und eine gute Zugänglichkeit im Falle eines Eingreifens in den Prozess. Dazu wurde der Deckel der Konstruktion weggelassen, um einen guten Zugriff, bzw. eine gute Einsicht in den Prozess zu garantieren. Die Konstruktion ist im SVN zu finden.
Abbildung 11 zeigt die Abschirmung. Sie ist so hoch gewählt, dass keine Teile herausfallen können. Nach hinten ist eine Wand niedriger, sodass das Bunkerband die Teile auf das Förderband transportieren kann.
Erkennung von Legoteil-Gruppen
Zur Umsetzung der Separierung wurde eine Funktion entwickelt, die Gruppen von Legoteilen erkennen soll und die Separierung per Luftdruck durchführt. Der gesamte Programablaufplan ist in Abbildung 5 zu sehen.
Bildaufnahme und -verarbeitung
Aus dem Hauptprogramm wird das Unterprogramm zur Separierung aufgerufen. Folgende Schritt werden dort durchlaufen:
- Parameter Definition. Diese dienen unter anderem zur Festlegung des kritischen Bereichs der Fotobox.
- Ein Bild vom Innenraum der Separierungsbox wird aufgenommen (siehe Abbildung 6 links)
- Anhand der zuvor eingestellten Parameter wird das Bild so zugeschnitten, dass Bildränder und weitere uninteressante Bereiche wie der unmittelbare Ein- und Ausgangsbereich sowie die Ränder des Förderbandes entfernt werden.
- Das Ergebnis wird dabei in ein Binärbild umgewandelt.
- Das entstandene Bild wird von kleinen Pixelelementen entfernt und Lücken im Inneren der Objekte geschlossen.
- Durch Labeln der Pixelgruppen kann nun die Anzahl der Objekte im Raum bestimmt werden (siehe Abbildung 6 unten links).
- Anschließend wird ein zweiter Zuschnitt des Bildes vorgenommen, der einen kritischen Bereich betrachtet. Dieser Bereich liegt an einer Stelle, an der die Luftdruckdüsen präzise auf die Legoteile ausgerichtet sind. Außerdem handelt es sich hierbei um einen dünnen Streifen, der die Breite des Förderbandes aber zwingend abdecken muss.
- Dieser Streifen wird nochmals in der Mitte geteilt, sodass ein oberer und ein unterer kritische Bereich entsteht.
- Nach dem erneuten Zuschnitt des Bildes wird ausgewertet, wie viele verschiedene Label in den jeweiligen kritschen Bereichen vertreten sind (siehe Abbildung 6 rechts).
Farberkennung
Wenn zwei Teile direkt nebeneinander liegen, werden diese im Binärbild als ein Teil erkannt. Deshalb ist eine Farberkennung implementiert. Wird genau ein Teil im gesamten kritischen Bereich erkannt, so wird diese angewandt. Dazu wird ein Unschärfefilter auf das aufgenomme Bild gelegt und nacheinander 10 verschiedene Farbfilter auf das Bild angewandt. Wird in einem dieser Fälle eine Farbe erkannt, so wird ein Zähler erhöht. Hat das eine erkannte Teil mehr als eine Farbe, so handelt es sich um zwei aneinanderliegende Teile und die Luftdüsen schießen diese außeinander. Der Unschärfefilter ist notwendig, damit keine Verzögerung in dem Programmablauf entsteht.
Luftdüsenansteuerung
Die Luftdüsen werden nach der folgenden Tabelle angesteuert:
Anzahl Teile im kritischen Bereich gesamt | Anzahl Teile im oberen kritschen Bereich | Anzahl Teile im unteren kritischen Bereich | Anzahl erkannter Farben | Angesteuerte Luftdüsen |
---|---|---|---|---|
0 | 0 | 0 | - | keine |
1 | egal | egal | 1 | keine |
1 | egal | egal | >1 | beide Düsen |
2 | 1 | 1 | - | eine Düse(vorangig links) |
>2 | 1 | >1 | - | rechte Düse |
>2 | >1 | 1 | - | linke Düse |
>2 | >1 | >1 | - | beide Düsen |
Anhalten des Bunkerbandes
Wird mehr als ein Teil im gesamten kritischen Bereich erkannt, hält das Bunkerband für 7 Sekunden an. Dadurch wird verhindert, dass immer mehr Teile auf das Förderband gelangen und es so zu Verstopfungen kommen kann. Die 7 Sekunden sind so gewählt, dass in der Zeit ein Teil, welches bis ans Ende des Förderbandes geschossen wurde, erneut in der Separierungsbox befördert wird. Das garantiert, dass das Bunkerband erst wieder anläuft, wenn das Förderband komplett leer ist. Damit ist eine Vorsortierung erzeugt, welche nur den Inhalt einer Lamelle zum Separieren schickt.
Anpassung der Bandgeschwindigkeiten
Die Geschwindigkeiten der beiden Bänder sind zueinander angepasst. Das Bunkerband fährt mit 10% der Maximalgeschwindigkeit. Das ist so langsam wie möglich, wobei der Motor noch genügend Kraft hat das Band zu bewegen. Das Förderband fährt mit 35% der Maximalgeschwindigkeit. Dadurch fahren die Teile passend in die Bildverarbeitung
Auswahl der Luftdüsen
Werden mehrere Teile auf einem Haufen erkannt, so werden die Luftdüsen angesteuert, um die Teile auseinander zu pusten. Wichtig ist hierbei die richtige Auswahl der Düsen. Dazu wurde ein Test mit den vorhanden Luftdüsen durchgeführt. Bei dem Test wurden ein kleines, ein mittleres und ein großes Teil getestet. Da die Luftdüsen für alle Teile funktionieren muss, ist eine zufällige Auswahl der drei Teile getroffen worden. Eine Änderung der Teile hätte zu ähnlichen Ergebnissen geführt. Es wurd ein Druck von 4bar verwendet. In der ersten Testphase wurden die Teile circa 5 cm vor die Düse gelegt. Nun wird jede Düse einzeln angesteuert und geguckt wie oft das Teil bei fünf Versuchen mindestens 20 cm weit geschossen wird. Dieser Bereich entspricht in etwa den Bereich der Bildverarbeitung.
Platz | Düse | Bild | Kleines Teil | Mittleres Teil | Großes Teil |
---|---|---|---|---|---|
1 | flach/breit | 5/5 | 5/5 | 3/5 | |
2 | spitz/breit | 5/5 | 1/5 | 0/5 | |
3 | spitz/schmal | 4/5 | 4/5 | 1/5 | |
4 | Multiloch | 4/5 | 3/5 | 0/5 |
Aus der Tabelle lässt sich schließen, dass die Düsen eins und drei am besten sind. Deshalb wird mit diesen beiden Düsen der nächste Test gemacht. Bei diesem wird wieder mit den drei Teilen und mit 4bar gearbeitet. Diesmal wird getestet, wie die Position der Teile vor der Düse Einfluss auf die Schussweite und -richtung haben. Dazu werden die Teile an die Wand, mittig vor die Düse, in die Mitte vom Band und vor die andere Düse gelegt. Zu sehen ist die Anordnung in Abbildung 10 aus der Sicht von Düse 2. Der grüne Hintergrund stellt das Band dar. Die vier abgerundeten Rechtecke symbolisieren die Anordnung der Legoteile.
Zuerst die Ergebnisse der breiten und flachen Düse:
Lage | Kleines Teil | Mittleres Teil | Großes Teil |
---|---|---|---|
an der Wand | Teil springt | gut | gut |
vor Düse | gut | gut | gut |
Mitte vom Band | rollt auf die andere Seite | meistens gut | meistens gut |
vor anderen Düse | gut | gut | gut |
Die spitze und schmale Düse:
Lage | Kleines Teil | Mittleres Teil | Großes Teil |
---|---|---|---|
an der Wand | gut | gut | gut |
vor Düse | Teil fliegt manchmal durch anderen Bereich | gut | gut |
Mitte vom Band | Teil fliegt über den andern Bereich | meistens gut | schiebt das Teil in den andern Bereich |
vor anderen Düse | schiebt das Teil an den Rand des Bandes | gut | gut |
Die Ergebnisse der beiden Düsen sind sehr ähnlich. Jedoch ist die breite und flache Düse besser, denn diese schießt die kleinen Teile kontrollierter zurück. Dies sieht man in den Tabellen bei den kleinen Teilen vor der Düse sowie vor der anderen Düse. Die spitze und schmale Düse schießt das Teil hierbei manchmal durch den andern Bereich. Dies würde dazu führen, dass das Teil in dem anderen Bereich erkannt werden könnte und so die andere Luftdüse angesteuert werden könnte. Damit wäre die Einzelansteuerung der Düsen übergangen. Wird das kleine Teil an den Rand des Bandes gepustet, könnte es zu einem Problem bei der Erkennung des Teils kommen, da das Bild beim Kalibrieren am Rand abgeschnitten wird und so das Teil nicht mehr erkennen könnte.
Aus diesem Gründen werden zwei breite und flache Düsen eingebaut. [1]
Abstreifer
Um die Legoteile bereits im Bunker separieren zu können, kann ein Abstreifer montiert werden. Dabei werden Borsten über dem Bunkerband montiert, welcher größere Anhäufungen von Teilen verhinder. Für die Auswahl der richtigen Borsten wurde ein Test mit verschieden starken Borsten in verschiedener Ausrichtung gemacht. Zur Auswahl standen harte, mittelharte und weiche Borsten in verschiedener Länge. Zum einen wurden diese mit einer 45° Verdrehung und einmal orthogonal zur Laufbandlaufrichtung angeordnet. Montiert wurden die verschiedenen Abstreifer vor dem Bunker über dem Laufband. Um die Effizienz der Borsten zu testen wurden Teile unterschiedlicher Größe verwendet, darunter 5 große, 10 mittelgroße und 15 kleine Teile. Dabei wurden diese auf eine Bunkerbandlamelle gelegt und durch den Abstreifer gefahren. Die Zahlen der Auswertungsspalten zeigt die abgestreiften Teile pro Lamelle.
Aufbau: Die Abstreifer wurden am Bunker ca. 5cm über dem Bunkerförderband mit Schraubzwingen befestigt, um einen optimalen Halt zu garantieren und ein genaues Ergebniss zu erzielen. Dabei wurden die verschiedenen Borstenarten immer gleich befestigt und angeordnet. Um die entsprechende Höhe und den sicheren Halt zu ermöglichen wurden kleine Kanthölzer unter die Borsten gestellt und durch die Schraubzwingen gegen das Bunkerband gedrückt. Mit Verwendung von verschiedenen Besen mit unterschiedlicher Borstenlänge wurden die Kanthölzer bei den kurzen Borsten flach hingelegt und ein optimales, unverfälschtes Ergebniss zu bekommen. Die Borsten hingen bei jedem Besen knapp über den Lamellen des Bandes, damit sich dies nicht abnutzen.
Die Tabelle zeigt die Ergebnisse der verschiedenen Tests. Geschaut wurde, wie viele Teile auf der Lamelle lagen und wie viele davon abgestriffen bzw. von der Lamelle geschoben wurden. Daraus können dann die besten Borsten mit der richtigen Länge ausgewählt werden. Ziel ist es, einen Abstreifer zu finden, der so viele Teile wie möglich vereinzelt, damit die Vereinzelung mit den Luftdüsen fehlerfreier wird.
Abbildung 8 und 9 zeigen jeweils eine Lamelle vor bzw. nach dem Abstreifen. Dort ist zu erkennen, dass die Teile auseinander geschoben wurde und so eine Haufenbildung verhindert wurde.
Mit Auswertung der Tabelle ist erkennbar, dass die mittelharten Borsten am besten die Legoteile abgestreift haben und somit für ein Abstreifen am Bunkerband am ehesten infrage kommen würden. Des Weiteren ist erkennbar, dass die Anbringung der Borsten senkrecht zur Laufrichtung effizienter ist als die 45° Anordnung. [2]
Fortschritt
Im aktuellesten Stand sind folgende Punkte in der Separierung umgesetzt:
- das Bunkerband hält an, sobald Legoteile in der Teileerkennung angekommen sind
- Ausrichtung und Einzelansteuerung der Luftdüsen, um eine effektivere Separierung zu erhalten
- Für die Vorsortierung der Legoteile wurde eine Bunkerbandverkleinerung mit einem Abstreifer, der durch eine Abstreifstudie ausgewählt wurde, realisiert.
- Konstruktion einer Abschirmung, um ein Herunterfallen von Legoteilen zu verhindern
- Um die Vereinzelung in der Separierungsbox zu verbessern wurde eine neue, größere Box entwickelt und gefertigt. Dazu wurden die Luftdüsen in das innere der Box verlagert, um ein Verstellen der Ausrichtung zu verhindern. Des Weiteren wurde eine Serviceklappe zum Zugriff auf den Innenraum hinzugefügt.
- In der Vereinzelungssoftware wurde ein Farbfilter implementiert, um nah beieinander liegende Teile besser zu erkennen und eine zuverlässigere Vereinzelung zu garantieren.
Weitere Aufgaben
Für die entgültige Fertigstellung der Vereinzelung gibt es eingige Aufgaben, die noch erledigt werden müssen.
Optimierung des Separieralgorithmus
Für die bessere Erkennung der Legoteile muss die Vereinzelungssoftware weiter überarbeitet werden. Dazu müssen die kritischen Bereiche detailertert ausgelegt werden, um ein Nichterkennen von Teilen in den Randbereichen des Förderbandes zu verhindern. Des Weiteren muss der Farbfilter weiter verfeinert werden, damit zusammenliegende Teile sicher unterschieden und vereinzelt werden können.
Verbesserung der Kamerakalibrierung
Eine wichtige Aufgabe die erledigt werden muss ist die korrekte Kalibrierung der Vereinzelungskamera. Dazu muss die Software dahingehen überarbeitet werden, dass eine Überbelichtung bzw. ein falscher Weißabgleich verhindert wird.
Autoren
Dies ist ein Unterartikel von der Legoteil_Zählmaschine, welcher den genauen Aufbau der Separierung beschreibt.