Micromouse-Roboter: Ball-E
Ein autonomer Labyrinth-Roboter, gebaut für den TUM Advisor Wettbewerb, der 2024 den 2. Platz erreichte.
Ball-E
Ball-E ist ein autonomer Micromouse Roboter, der jedes unbekannte Labyrinth navigieren und lösen kann. Außerdem kann er vor dem Durchlaufen des Labyrinths einen Ball aufheben. Gebaut als Teamprojekt für den TUM Advisor Micromouse-Wettbewerb, wo er 2024 den 2. Platz belegte. Ich war für die Softwareentwicklung verantwortlich.

Story
Wir schreiben das Jahr 3012. Die Menschen haben die Erde längst mit ihren riesigen Raumschiffen verlassen. Doch der Treibstoff Butadien wird langsam knapp und gefährdet damit die Zukunft der Menschheit. Glücklicherweise gibt es einen nahegelegenen Planeten mit Bällen, die voller dieses wertvollen Treibstoffs sind. Leider ist die Umgebung dort stark verschmutzt und zu toxisch für menschliche Besucher. Die cleveren Wissenschaftler von Ad.Visor™ haben deshalb einen hochintelligenten Roboter entwickelt, der sich durch den wilden Dschungel kämpft, die Bälle einsammelt und den kürzesten Weg zurückfindet. Die Stunde von Ball-E hat geschlagen.
Hardware
-
DC-Motoren: Zwei leistungsstarke 6V-Motoren auf einer Achse treiben Ball-E an.
-
Reifen: Zwei Reifen auf der linken und rechten Seite mit jeweils 40 mm Durchmesser.
-
Magnetic Encoders: Zwei magnetische Encoder an den Motoren messen deren Rotation.
-
Servo Motor: Ein Servo zieht die Arme an der Vorderseite zusammen, um den Ball anzuheben.
-
Arme: Die 3D-gedruckten Arme an der Vorderseite dienen als Mechanismus zum Aufheben des Balls.
-
Stützräder: Zwei frei rollende Kugeln vorne und hinten sorgen für Stabilität.
-
Platine: Die Platine ermöglicht die einfache Montage der elektrischen Komponenten und enthält:
- Processor Unit: Ein ESP32-MCU zur Verarbeitung der Sensordaten, Steuerung des Roboters und Berechnung der Algorithmen.
- Motor Driver: Ein Motortreiber versorgt die Motoren mit Strom und ermöglicht eine präzisere Steuerung.
-
Sensoren: Ball-E nutzt verschiedene Sensoren zur Navigation:
- Zwei TOF-(Time-of-Flight)-Sensoren vorne für präzises Wall Following.
- Zwei TOF-Sensoren hinten links und rechts zur Wallerkennung und Distanzmessung.
- Ein Gyroskop zur Bestimmung des Winkels.
-
Grundplatte: Die Grundplatte wurde aus 3 mm starkem MDF (Medium-Density Fiberboard) gefertigt.
-
Kopf: Der Kopf von Ball-E enthält:
- Processor Unit: Ein ESP32-MCU steuert das Erscheinungsbild der LED-Matrizen.
- LED-Matrizen: Zwei LED-Matrizen dienen als Augen von Ball-E.
Software
-
Flood Fill & Reverse Flood Fill Algorithmus: Wird genutzt, um das Labyrinth zu erkunden und sowohl den Weg zum Ziel als auch den Rückweg zum Start zu finden.
-
BFS: Nach der Erkundung berechnet Ball-E den kürzesten Pfad, indem beide Maze-Durchläufe kombiniert und der optimale Weg mit Breadth-First Search bestimmt wird.
-
PD-Controller: Wir verwenden einen PD-Regler, damit der Roboter geradeaus fährt.
- Proportional-Term: Differenz der Magnetic Encoders
- Derivative-Term: Winkelgeschwindigkeit