studieren weltweit
Masterarbeit mastern?

Masterarbeit mastern?

In den letzten Wochen habe ich mich etwas schwer getan mit meiner Masterarbeit. Ich habe den einen Code einfach nicht zum laufen bekommen und somit wollte der Roboterarm auch nicht das machen, was ich wollte. Jetzt habe ich es aber endlich hinbekommen. Woran es eine Zeit lang scheiterte, erfahrt ihr hier. Außerdem sei schonmal im Vorraus gesagt, dass ihr hier vielleicht auf etwas Fachchinesisch treffen könntet. Für mich ist es gar nicht so leicht meine Arbeit in einfachen Worten auszudrücken. Aber viel Erfolg ;).

Yannic in Bilderrahmen
Zum Haare raufen.

Die Hürden

Der Code der benötigt wird, um den Roboterarm zu steuern ist relativ komplex und besteht aus vielen einzelnen Komponenten. Jede dieser einzelnen Komponenten ist wiederum relativ komplex und in jedem einzelnen Teil kann ein Fehler liegen, der gefunden werden muss. In meinem Fall hatte zum Beispiel das Arduino Board, welches die Robotermotoren steuert, ein Problem. Es war einfach nicht möglich alle fünf Motoren zu steuern. Irgendwie ließen sich aber nur drei der Motoren steuern. Nach ewigem recherchieren fand ich dann schlussendlich den Fehler. Ich musste einfach nur eine Pause in dem Code definieren mit:

delay(100);

Die Lösung ist oft so einfach, doch findet man sie dann manchmal erst relativ spät.

Ein weiteres Problem hatte ich für lange Zeit mit der inversen Kinematik. Inverse Kinematik ist, wenn man von der Position des Endeffektors (der Spitze) des Roboters, auf die Winkel der einzelnen Gelenke schließen möchte.

Die Kinematik des Roboters.
Die Kinematik des Roboters.

Die Frage ist also, wie kann ich von (x,y) auf die Winkel theta_1 bis theta_3 schließen. Um das Ganz zu vereinfachen habe ich unter ROS das sogenannte Programm Openrave benutzen. Da dies aber aus dem Jahr 2013 stammt, gibt es hier zum Teil Kompatibilitätsprobleme mit den aktuellen Linux-Distibutionen oder auch Python3. Nach langem Hin-und-Her-Probieren fand ich dann auch hier eine Lösung.

Als nächsten Schritt möchte ich nun Abstandssensoren in den Roboterarm integrieren. Zum Einbinden dieses Sensors in die Robotersteuerung, gibt es verschiedene Möglichkeiten. So kann der Roboterarm zum Beispiel zur direkten Steuerung des Roboters verwendet werden.

Skizze Roboter
Ein Konzept für die Steuerung des Roboterarms.

Wenn also ein Objekt, wie zum Beispiel die menschliche Hand,  sich von oben an den Roboterarm annähert, dann soll sich dieser nach unten bewegen um eine Kollision zu vermeiden. Wenn nun mehrere Sensoren zu einem Array angeordnet werden, kann dies zu einer Regelung in alle drei Koordinatenrichtungen eingesetzt werden.

Alternativ kann auch die Geschwindigkeit der Roboterbewegung beeinflusst werden. Wenn sich ein Objekt zu dicht zum Roboter befindet, dann soll sich dieser langsamer bewegen beziehungsweise auch zum kompletten Stillstand kommen, wenn ein Objekt im kritischen Arbeitsradius ist.

Und was danach?

Danach lässt dich natürlich noch ganz viel in den Roboterarm einbauen. Ich könnte eine Kamera integrieren, die einfache Pick and Place Aufgaben ausführen könnte. Also zum Beispiel Kugeln aus einem Container aufsammeln. Dazu müsste ich mittels Bilderkennung die Kugeln lokalisieren, dann mit dem Endeffektor(der Spitze) des Roboters zu diesem Punkt fahren und dann die Kugel aufsammeln. Das klingt erstmal alles trivial, stellt sich dann aber oft als Herausforderung dar. Außerdem könnte ich dann mittels des Roboterarms auch Einige „intelligente“ Algorithmen erproben. Man könnte die selbe Pick and Place Aufgabe auch mit Reinforcement Learning absolvieren. Hier versucht der Roboter selbst zu lernen, wie er das Objekt am besten aufsammeln kann. Dazu benötigt es sehr viele Versuche und im besten Fall konvergiert die Lösung und man hat ein funktionales System.

Wenn jemand noch eine Idee hat, was noch umgesetzt werden könnte, dann schreibt das gerne in die Kommentare 🙂

Skizze Yannic Roboter
Ich hoffe Frieda behandelt mich gut in nächster Zeit.

P.S. Ich habe den Roboterarm jetzt Frieda getauft. Und bin schon gespannt, wie gut wir in nächster Zeit miteinander klar kommen werden 😉

Hast du noch Fragen?

Mehr zu #Spanien

Video aktivieren

Zum Aktivieren des Videos klicke bitte auf "Video laden". Wir möchten dich darauf hinweisen, dass nach Aktivierung Daten an YouTube übermittelt werden. Mehr dazu findest du in unserer Datenschutzerklärung