Dies ist eine alte Version des Dokuments!
Der Ant-O-bot ist ein insektenartiger Roboter, der sich auf acht Beinen ferngesteuert in vier Richtungen bewegen und kleine Objekte festhalten kann. Noch in Arbeit ist eine eigenständige Navigation zu einem Ziel via Kommunikation mit Processing, bei der eine Karte und Route um Hindernisse für den Roboter erstellt und an diesen übermittelt wird. Dementsprechend gliedert sich das Projekt in seine Bestandteile des Greifers auf dem Rücken des Roboters, der Fernsteuerung über eine fertige Infrarot Fernbedienung, die Beine des Roboters und die Navigation.
Wir haben uns damit beschäftigt, wie wir einen Roboter ohne ihn per Kabel anzuschließen steuern können (und uns letztendlich aus Zeitgründen für eine Fernbedienung auf Infrarot Basis entschieden), wie wir eine Bewegung des Roboters auf Beinen im Hinblick auf Motoranzahl effizient gestalten und wie wir eine Greif- beziehungsweise Festhaltevorrichtung konstruieren können. Für die letzten Teillösungen haben wir stepper-Motoren vom Typ 28BYJ-48 angesteuert. Weitere verwendete elektronische Bauteile sind die IR-Receiver und ein microswitch, die Elektronik musste wegen der Anzahl der Pins an den Arduino Nanos über 2 Arduinos verteilt werden.
Die codierten Infrarot Signale werden von den Receivern dauerhaft erkannt, allerdings wird nur auf spezifische Signale, die den Knöpfen der Fernbedienung zugeordnet sind, reagiert. Am Arduino können die Signale als integer Werte über die Verwendung von Bibliotheken (den IRLib Bibliotheken https://github.com/cyborg5/IRLib2) dargestellt werden. Falls ein relevantes Signal, wie z.B. das Signal für die Pfeiltaste nach oben, was dem Roboter Signalisieren soll, dass er vorwärts gehen soll, empfangen wird, wird die hinterlegte Anweisung ausgeführt. Für unser Beispiel wäre das eine for-Schleife mit 5000 Steps, in der der rechte Motor immer eine Step gegen Uhrzeigersinn macht und der linke Motor einem Step im Uhrzeigersinn macht. Die 5000 Steps entsprechen dann ca. einem Achtel einer vollen Umdrehung des Motors. Nach der Vollendung der for-Schleife ist der Receiver wieder einsatzbereit und kann das nächste Signal empfangen. Bei gedrückt gehaltener Vorwärts-Taste werden sich beide Motoren fortlaufend in ihre vorgegebene Richtung drehen.
An den Seiten des Roboters sind 2 Platten mit jeweils vier Beinen befestigt, die separat über 2 Steppermotoren gesteuert werden können. Dabei wird die Drehung eines Motors über die Zahnräder an Achsen, welche in Kugellagern laufen, auf die Beinpaare übertragen - ein Prinzip, das so bereits von elektronischen Spinnen-Spielzeugen verwendet wird. Durch entgegengesetzte Drehrichtungen der beiden Motoren wird der Roboter gedreht (dies haben wir jedoch nicht testen können). Die Motoren werden am Arduino über die Accel-Stepper Libary (https://www.arduinolibraries.info/libraries/accel-stepper) angesteuert, welche u.A. den einfachen
Der Greifer besteht aus zwei Holzplatten, die an zwei Metallstäben befestigt sind. Die eine Holzplatte ist fest am Roboter verschraubt, die andere dagegen beweglich geführt und kann über eine Schnur an einer Spule vom Motor gezogen werden.Zum Schließen kann ein Gummiband beim Loslassen des Motors nach Herunterdrücken des Microswitch, durch das aufliegende Gewicht des Objekts, die Platten wieder zusammen schieben. Der Steppermotor wurde an dieser Stelle über die spezielle „Cheap Stepper“ Library angesteuert (https://github.com/tyhenry/CheapStepper).
Bis zum Beginn des Blockkurses war der Aufbau des Roboters und die Programmierung für eine ferngesteuerte Bewegung fertig. Auch das Greifermodul ist abgeschlossen worden. Leider wurde eine kabellose Übertragung der Daten und ein eigenständiges Auffinden eines Zielsignals aus Zeitmangel während der Präsenzphase jedoch nicht geschafft. Desweiteren fehlt eine Befestigungsplatte für die Beine, da es uns in Handarbeit nicht möglich war diese so zu konstruieren, dass sich die Zahnräder nicht ineinander verklemmen. Deswegen ist dieser Teil des Roboters nicht getestet worden und zum Ende des Semesters als gescheitert zu betrachten.
Der Roboter könnte genau in den oben gennanten Punkten weiterentwickelt werden, aber auch die verworfenen Konzepte bieten Inspiration: besonders die Verfolgung einer mobilen Signalquelle in einem offenen Raum mit Hindernissen. Desweiteren könnte eine andere Beinkonstruktion etwa mit 3D-gedruckten Beinen für präzise Bewegungen interessant sein (es bietet sich hierbei an, Servomotoren an weniger Beinen zu verwenden und deren Halterungen nach Vorbild bereits bestehender Arduino Projekte zu erstellen [z.B. mit der Webapp Tinkercad für die Erstellung der Modelle]).
motorbewegung.zip verwendete_bibliotheken.zip