Single-Board-Robot

Ein-Platinen-Roboter als Entwicklungsplattform

Hier möchte ich euch einen kleinen Einplatinen-Roboter vorstellen. Das Ziel war eine universelle Plattform für verschiedenste Anwendungen zu entwickeln. Der Roboter ist auf einer 125x175mm großen, zweiseitigen Platine aufgebaut und kann beliebig mit Sensoren und sonstigen Erweiterungen ausgestattet werden.

Der Bot ist so konzipiert, dass der Controller, ein Atmega644, sämtliche Peripherie ausschalten kann. Auf diese Weise kann man den Roboter softwareseitig fast komplett ausschalten und den Controller anschließend “schlafen legen”. Zum Wecken kann man dann beispielsweise den verbauten Uhrenbaustein PCF8583 nutzen. Als Versorgungsspannung wird ohne weitere Regelung direkt auf die 4 Mignonzellen zurückgegriffen. Außerdem steht eine stabilisierte 3,3V Regelung zur Verfügung die bei belieben eingeschaltet werden kann und zum Beispiel für das verbaute Bluetooth-Modul benötigt wird. Als Motortreiber dient ein L293. Die Motordrehzahl kann über die PWM-Ausgänge des Atmegas geregelt werden.

Hier seht ihr die fertig geätzte Platine:

Die AD-Eingänge ADC3..7 des Atmega sind auf Jumper an der Vorder- bzw. Rückseite geführt. Hier liegt zusätzlich “5V_Sen” an, die über einen BC807 geschaltete Batteriespannung. Auf diese Weise kann man hier sehr einfach analoge Sensoren montieren, die vom Controller ein- und ausgeschaltet und über einen ADC ausgelesen werden können.

Die Motoren habe ich mit Heißkleber einfach auf die Platine geklebt. Der Batteriehalter ist mit einem aufgeklebten Klettband befestigt.

Sehr praktisch: Die bereits vorhandenen Löcher in den Rädern. Über eine aufgebaute Lichtschranke (rote 3mm LED außen und Fototransistor auf der Innenseite), lässt sich eine einfache Abtastung des Fahrweges realisieren. Genauer ginge es natürlich mit einer noch viel feineren Rastung in den Rädern.

Wer möchte kann parallel zur Grundplatine noch eine weitere Platine montieren. Hierfür steht hinten ein Wannenstecker zur Verfügung, an dem, neben der Betriebsspannung und der geregelten 3,3V, auch der I2C-Bus des Controllers anliegt. Der I2C-Bus liegt im übrigen auch noch mal auf einem Jumper vorne auf der Platine. In meinem Fall ist dort ein SRF10 Ultraschallsensor angeschlossen. Eventuell müssen noch zusätzliche Kondensatoren auf der Platine montiert werden, um die Spannung an Sensoren oder dem BTM stabil zu halten.

Bei den Downloads gibt es ein Source-File mit den grundlegenden Funktionen um erste Tests durchführen zu können. Die Bluetooth-Kommandos sind so vergeben, dass man den Roboter sehr einfach über ein Terminalprogramm (z.B. picocom) steuern kann. Natürlich kann man den Roboter über das Bluetooth-Modul auch super per Handy fernsteuern. Hier ein kleines Youtube-Video:

Video

Hier wird ein Youtube-Video eingebunden!
Youtube ist ein Dienst des Anbieters Google LLC, 1600 Amphitheatre Parkway, Mountain View, CA 94043, USA.
Beim Laden des als iframe eingebetteten Videos kann Google Nutzerdaten erheben. Weitere Informationen.


Downloads:

PROJECTS
robot atmega32 bluetooth

Neuer Kommentar