Raspberry Pi Robot 1

Der Raspberry Pi Robot (kurz RaspPiBot) sollte eine – im Vergleich zu meinen bisherigen Robotern – leistungsfähige Plattform bieten. Wie der Name sagt, sollte der Roboter mit einem Raspberry Pi ausgerüstet sein. Dies ermöglicht eine wesentlich komplexere Programmierung und den Anschluss von z.B. einer Webcam oder der speziellen Raspberry Pi Camera.

Geplant war auch den Roboter mit einem Schussmechanismus für einen Ball auszustatten, sodass ein mögliches Szenario das Erkennen mittels Kamera, Aufnehmen und Schießen eines Balls wäre.

Meine Idee war nun zwischen dem Raspberry Pi und der Hardware eine Art Hardwareabstraktionsschicht in Form eines AVR Mikrocontrollers zu setzen. Dieser Controller soll Aufgaben wie die Steuerung der Motoren oder eine erste Aufbereitung von Sensordaten übernehmen, um nachher auf einer höheren Ebene programmieren zu können.

Ausstattungsmerkmale:

  • Raspberry Pi & ATmega32
  • Webcam oder Raspberry Pi Camera
  • mehrere Ultraschall-Abstandssensoren
  • Odometrie-Sensoren
  • Schussmechanismus
  • Display zu Anzeige von Daten und Nachrichten

Aufbau des Chassis

Verbaut habe ich zwei Getriebemotoren mit angebrachten selbstgebauten Dekoderscheiben, die über zwei Reflexlichtschranken (CNY70 o.ä.) ausgelesen werden sollen. Als Schutz gegen Streulicht habe ich eine Verkleidung aus Blech von oben um Lichtschranken und Dekoderscheiben gebaut.

Die Räder sind aus 5mm starkem Kunststoff mit meiner CNC Fräse gefräst und bestehen aus zwei Scheiben, die zusammengeschraubt werden. Zwei Teile waren notwendig um außen das nötige Profil zur Aufnahme des Reifens zu bekommen. Die Reifen sind eigentlich Rohrdichtungen aus der Sanitärabteilung im Baumarkt. Die Achsaufnahme ist aus Aluminium gefertigt.

Der Schussmechanismus besteht aus einem Zugmagneten und einem Drahtbügel, der beim Aktivieren des Magnets nach vorne schnellt. Der Ball wird durch eine halbkreisförmige Ausbuchtung in der Grundplatte des Roboters geführt.

Für den ATmega32 habe ich eine Platine entworfen. Die Kommunikation zwischen dem Raspberry Pi und dem Mikrocontroller soll über den I²C-Bus geschehen. Dazu wurde auf der Platine ein I²C-Bus Levelshifter untergebracht, um die verschiedenen Spannungen (Raspberry Pi: 3,3V, AVR: 5V) anzupassen. Die Schaltung enthält außerdem einen Motortreiber (L293D), Anschlüsse für die Sensoren und eine RS-232 Schnittstelle zur Kommunikation mit einem PC (hauptsächlich zum Debugging).

IMG_4104Die Stromversorgung geschieht durch einen 12V 3,6Ah Bleiakku.

Bevor ich hier weiter ausführe sei angemerkt, dass ich etwa an dieser Stelle merkte, dass ich den Roboter gerne nochmal von Grund auf neu entwickeln wollte. Es deuteten sich nämlich an mehreren Stellen Probleme an, die durch das Drauflosbauen entstanden sind.

Zum Einen funktionierten die Dekoderscheiben für die Odometrie nicht gut und Verbesserungen wurden dadurch erschwert, dass es zwischen Rädern und Motoren sehr eng war.

Zum Zweiten war kein Platz für ein ordentliches drittes Rad, so dass der Roboter hinten als Stützrad lediglich eine Hutmutter hatte. Dies funktioniert natürlich nur bei ebenem Untergrund gut und ich hätte gerne eine kleine Möbelrolle als Stützrad gehabt.

Außerdem hatte ich mir ein Farbdisplay zum Anschluss an den Raspberry Pi gekauft, dass aber nicht so richtig Platz finden wollte, so dass man es noch halbwegs komfortabel ablesen kann.

All diese Gründe (und die Entdeckung von Solid Edge für mich) haben mich dazu bewogen eine von Grund auf neu konzipierte Variante zu entwickeln. Wie es mit dem RaspPiBot von nun an weitergeht, könnt ihr deshalb auf der Seite des Raspberry Pi Robot 2 verfolgen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

Bitte beantworte kurz folgende Frage, um zu zeigen, dass du kein Roboter bist: *