Aufgabenstellung
Das Legen der Dominosteine von Hand kann eine Herausforderung darstellen, wenn man keine ruhigen Hände dafür hat. Deswegen ist ein Programm zu erstellen, das den 6-achsigen Knickroboterarm «Niryo One» steuert. Dabei sollen das Förderband und die Kamera einbezogen werden, damit eine Dominosteinkette aufgebaut und danach die Kettenreaktion auslöst werden kann, ohne dass dafür eine menschliche Hand zum Einsatz kommen muss. Die erwartete programmierte Dominosteinkette sollte einen Umfang von ungefähr 20 Dominosteinen haben.
Themenwahl
Da im Maschinenbau viel mit unterstützten Robotern gearbeitet wird oder sogar ganze Produktionsanlagen voll automatisiert sind, sehe ich das Projekt als passende Diplomarbeit und Repräsentation meines erworbenen Wissens an der TEKO Luzern. Dies soll auch ein Beitrag zu Industrialisierung 4.0 sein und zeigen, was mit den heutigen Mitteln möglich ist, die mir in diesem Projekt zur Verfügung standen.
Zielsetzung
Das Ziel meiner Arbeit war, min. 20 Dominosteine, die auf einem Förderband zum «Niryo One» befördert werden, visuell farblich und von der Position her zu erfassen und anschliessend auf vorprogrammiertem Weg zu legen. Anschliessend soll der «Niryo One» auch die Dominosteine anstossen, um die Kettenreaktion auszulösen. Die Anordnung der Steine auf dem Förderband soll willkürlich platziert sein, damit der «Niryo One» anhand einer eingebauten Kamera die Position und die Farbe erkennt.
Lösungsvorschlag
Für den definitiven Lösungsvorschlag habe ich den «Niryo One» Roboter verwendet, der auf einer Aluminiumführung steht. Diese Aluminiumführung ist mit dem «Vision Board» (rechts vom Roboterarm) und dem Förderband durch Nutensteinen verbunden. Das Förderband ist ausgestattet mit den vier «Vision Wahrzeichen» (den schwarzen Kreisen auf weissem Hintergrund), einem Infrarotsensor, einem Endanschlag und einer Ladestation. Auf dem «Niryo One» ist auch noch eine Kamera befestigt. Als Dominosteine wurden farbige Kunststoffsteine ausgewählt und als Greifer habe ich mich für den «Large Greifer» entschieden. Der Programmcode zur Steuerung des Roboters wurde anhand des Programms «Niryo One Studio» geschrieben mit der Programmiersprache Blockly. Bei der Programmierung wurde der Fokus auf die Qualität und die Programmierung mit Unterprogrammen festgelegt. Als zusätzliche Sicherheitsmechanismen, die zum Gelingen des Ablaufes beitragen sollen, habe ich mich auf einen Endanschlag, einem Infrarotsensor und einer geschwindigkeitsregulierten Programmierung entscheiden.
Kurzbeschrieb des Programmablauf
- Die Dominosteine werden von der Ladestation, durch den «Niryo One», willkürlich auf das Förderband gelegt.
- Das Förderband bewegt die Dominosteine in den «Vision Workspace», der markiert ist mit den vier schwarzen Kreisen auf weissem Hintergrund.
- Die Kamera auf dem «Niryo One» erkennt die Steine und deren Farbe innerhalb des «Vision Workspace».
- Der Infrarotsensor der am Förderband hinter dem «Vision Workspace» befestigt ist, erkennt ebenfalls die Steine, die seinen Erkennungsbereich passieren.
- Das Programm, das den Roboter und das Förderband steuert, gibt den Befehl, dass das Förderband gestoppt wird.
- Der «Niryo One» Roboter macht dann einen «Vision Pick», wobei der Greifer den bereits erfassten Stein greift der auf dem Förderband liegt.
- Der Stein wird dann vom Roboterarm auf das «Vision Board» und anschliessend auf die Tischplatte gestellt. Dieser Vorgang wird mit weiteren Steinen wiederholt, bis eine Dominosteinkette von 20 Steinen steht.
- Das Programm wird dann den «Niryo One» Roboter dazu bringen die Dominosteinkettenreaktion auszulösen. Dies erfolgt über das Anstossen des letzten Steines.