Der Roboter

  • Funktionsablauf
  • Mechanik
  • Elektronik
  • Informatik

Den Ablauf haben wir in folgende Positionen unterteilt. 

Startposition

Je ein Roboter startet auf einer Seite des Spielfeldes. Die Entfernung zum Legostein-Spender ist willkürlich. Jedoch darf die Platzierung in der Breite von den Teams frei gewählt werden. Es stehen jedem Team 3 Legosteine zur Verfügung die zum Beispiel als Distanzhilfe verwendet werden dürfen.
Wenn das Startsignal gesendet wurde, fahren beide Roboter nach vorne um sich den ersten Duplostein zu holen.

Position Vorne - "Lego-Greif-Position"

Durch einen Distanzsensor merkt Klaus, wenn er vorne ist. Wenn er den Stein mit dem Magnetgreifer hat, fährt er zurück auf die Höhe der Leuchtturm Baustelle.

Position Hinten - "Warte-Position"

Beim Zurückfahren erkennt ein weiterer Distanzsensor den frei platzieren Legostein und Klaus hält an. Wenn der Partnerroboter uns das Signal schickt, dass die Baustelle frei ist dreht sich Klaus.

Position Hinten - "Bau-Positon"

Nach der 90 Grad Drehung setzt Klaus den transportierten Stein auf der Baustelle fest. Anschliessend hebt er seinen Arm wieder, Dreht zurück und sendet dem Partnerroboter ein Signal, dass die Baustelle bereit ist.

Der ganze Ablauf wird nun solange wiederholt, bis Klaus den neunten Duplostein gesetzt hat. Danach setzt unser Partnerroboter noch die Spitzte das Leuchtturms auf und die Aufgabe ist erledigt.

Die Mechanik ist in drei Teile unterteilt. Der Grundstein belegt das Fahrgestell welches für Fortbewegung zuständig ist. Die vier Räder des Roboters verlaufen zwischen den Noppen des Untergrundes, so bleiben sie in der Spur, wie auf Schienen.

Der Hauptkörper des Roboters liegt auf dem Fahrgestell, die Verbindung beider Segmente ist die Drehstütze auf welcher ein Zahnrad liegt, welches zum abdrehen des Obergestells dient. Oberhalb von diesem Drehmechanismus ist die gesamte Elektronik untergebracht. An der Seite des Obergestells verlaufen zwei Gleitschienen an welchen der Greifarm befestigt ist sowie eine Zahnstange. Damit der Roboter nur entlang einer Achse fahren muss, soll der Arm ausfahrbar sein mit Hilfe eines Keilriemenantriebs. Diesen Prozess muss er jedoch nur beim Start vollziehen, so dass er zu Beginn die geforderte Abmasse aufweist.

Der wichtigste Teil des Roboters ist der Greifarm. Auf ihm ist ein Motor befestigt welcher an der Zahnstange entlang hoch und runterfahren kann, so werden später die Turmbausteine festgedrückt. An der Spitze des Armes ist ein Servo verbaut an welchem der eigentliche Greifer befestigt wird. Dieser ist passgenau auf die Legosteine konstruiert und besitzt in der Mitte ein Magnet, welcher die Steine aufnimmt und dafür sorgt, dass die Steine nicht verloren gehen.

Klaus hat verschiedene spezifische Aufgaben zu erfüllen die auf einer richtigen Ansteuerung basieren. Hier kommt die elektronische Printplatte zum Zug. Es wurde entschieden, zwei separate printplatten zu verwendet.

Dies aus folgenden Gründen:
- Zwei physisch getrennte Printplatten
- Einfachere Fehlersuche
- Jeder kann seine eigene Printplatte konzipieren, zeichnen, bestücken und in Betrieb nehmen

Ein kleiner Nachteil ist, dass es ein Verbindungskabel zwischen den Platte braucht und der Platzbedarf etwas grösser ist.

Der untere Print enthält folgende Komponenten:
- Spannungsversorgung, 12V
- Transformation von 12V zu 5V
- Transformation von 5V zu 3.3V
- Drei Motorentreiber für die Ansteuerung von maximal 6 Motoren

Der obere Print enthält folgende Komponenten:
- Distanzsensoren
- Start- und Reservetaster
- Vibrationsmotor-Anschluss
- Wifi-Modul
- Encoder-Anschlüsse
- LED für Statusmeldungen
- Anschlussplatte zum MPC 555
- Reset-Taster

Beide Platten haben die Abmasse 130mmx110mm, damit sie möglichst einfach übereinander in den Roboter eingebaut werden können.

Die Software, die Klaus zum Laufen bringt, wurde mit Hilfe der Programmiersprache «Java» entwickelt. Um das Programm übersichtlicher zu machen, und das Testen zu vereinfachen, wurden Teilsysteme verwendet, die jeweils wenige Aufgaben übernehmen müssen. 

Sowohl um sich bewegen und drehen zu können, also auch zum Bewegen des Armes sind Motoren nötig. Diese können sich zu einer beliebigen Position bewegen und falls nötig diese Position auch halten.

Die Kommunikation mit dem Partnerroboter funktioniert über WLAN. Zu Beginn wird ein Signal gesendet und vom Partner bestätigt, um die Verbindung zu kontrollieren. Ausserdem wird ein Startsignal, eine Bestätigung für das Setzten eines Steines und das Endsignal verschickt.

Die Orientierung des Roboters findet über Distanzsensoren statt. Die letzten Werte werden gemittelt, falls ein neuer Wert ausschlägt, weiss der Roboter, dass ein Hindernis bei diesem Sensor ist.

Damit während des Durchgangs Probleme von aussen sichtbar sind, werden einige Status über LEDs sichtbar gemacht. Die wichtigste Information ist, ob die Verbindung mit dem Partnerroboter steht.

Um diese Teilsystem miteinander zu koordinieren, wird eine Hauptklasse gebraucht, die den Ablauf managet und den anderen Klassen ihre Aufgaben zuteilt.