Gertbot: Einfacher Roboter bauen mit dem Raspberry Pi

Über die GPIO-Pins des Raspberry Pi ist es möglich, einfache Steuerungsaufgaben umzusetzen. Komplexere Steuerungsaufgaben, wie die Robotersteuerung, scheitern aber häufiger an der fehlenden Echtzeitfähigkeit des Linux-Betriebssystems auf dem Raspberry Pi. Für solche Anwendungen ist das neue Gertbot-Board(öffnet im neuen Fenster) konzipiert worden. Es stellt eine Weiterentwicklung und Spezialisierung des Gertduino(öffnet im neuen Fenster) dar, das erste Board, welches einen Arduino mit dem Raspberry Pi kombinierte.
Es wird auf das Raspberry Pi aufgesteckt und stellt eine ganze Reihe von Schnittstellen zur Verfügung. Herzstück des Boards aber ist ein Atmel ATSAM3S3B(öffnet im neuen Fenster) , ein Cortex-M3-basierter Microcontroller, getaktet mit 64 MHz, 32 KByte RAM und 128 KByte Flash-Speicher.

Vordefinierte Ein- und Ausgänge
Über das Board können vier Elektromotoren oder zwei Schrittmotoren angeschlossen und gesteuert werden. Dazu muss das Board mit einer zusätzlichen Stromquelle versorgt werden. Die Spannung muss dabei zwischen 8 und 18 Volt liegen. Die externe Stromversorgung darf zwar bis zu 30 Volt bereitstellen, diese werden aber auch an die Motoren weitergereicht und können sie beschädigen.
Alternativ können die Motoranschlüsse auch zur Steuerung einer Modellbahnanlage über DCC(öffnet im neuen Fenster) benutzt werden.
Bis zu vier Taster und Endstopps können an entsprechende Pins angeschlossen werden. Des Weiteren stehen zwei Open-Drain-Ausgänge(öffnet im neuen Fenster) bereit, um elektrische Ströme von bis zu 30 Volt und 3 Ampere zu schalten. Dazu kommen vier Analog-zu-Digital-Eingänge und zwei Digital-zu-Analog-Wandler. Schließlich können über einen entsprechenden Anschluss auch vier Boards zusammengeschlossen werden.
Das Board funktioniert sowohl mit den alten als auch mit den neuen Plus-Modellen, obwohl die Buchsenleiste des Gertbot-Boards lediglich 26 Pins aufnimmt. Bei den Plus-Modellen bleiben die übrigen Pins auf dem Raspberry Pi frei. Die Kommunikation des Boards mit dem Raspberry Pi erfolgt über die UART-Schnittstelle des Raspberry Pi.
Programmierter Microcontroller
Kontrolliert werden all diese Funktionen durch den bereits programmierten Microcontroller. Über die UART-Schnittstelle wird er konfiguriert beziehungsweise wird angeschlossene Peripherie gesteuert und abgefragt. Dazu müssen Kommandos über die UART-Schnittstelle geschickt werden, was im Prinzip unter Linux selbst über die Kommandozeile möglich ist.
Um es den Programmierern einfacher zu machen, gibt es aber fertige Bibliotheken für C und Python 3. Alternativ kann das Board auch über ein GUI-basiertes Programm gesteuert und getestet werden.
Dabei ist das System zum Teil auch so programmiert, dass Endstopps den Motoranschlüssen zugeordnet sind und automatisch einen Motor stoppen können, wenn ein Endstopp auslöst – ohne dass dieses Ereignis explizit im eigenen Programm behandelt werden muss.
Grundsätzlich ist es auch möglich, auf dem Microcontroller per JTAG-Schnittstelle ein eigenes Programm aufzuspielen. Das beinhaltet die Möglichkeit, dann alle Anschlüsse individuell schalten zu können. Dabei geht aber die herstellerseitige Programmierung irreversibel verloren.
Preis und Verfügbarkeit
Das Gertbot-Board ist bei Farnell(öffnet im neuen Fenster) für 62 Euro (ohne Mehrwertsteuer) erhältlich, alternativ bei PiHut(öffnet im neuen Fenster) für 40 britische Pfund.