|
|
Der Arduino ist eine
sehr beliebte und weit verbreitete Controller-Plattform.
Auch beim RoboCup sind immer wieder Roboter zu finden, die von
einem Arduino gesteuert werden.
|
|
|
Da drängt es sich ja geradezu auf, auch ein Power-Board für den Arduino
zu entwerfen. Ich habe also das Power-Board für mbed1768 aus
Martin's Bastelstube, Teil XVI
umgebaut, damit es auf einen Arduino passt.
Ein normaler kleiner
Arduino Uno
besitzt gar nicht genügend Anschlüsse zur Steuerung eines Power-Boards. Deshalb
sind die zwei I2C-Expander PCF8574 auf dem Power-Board geblieben. Sie kontrollieren
die Laufrichtung der Motoren und den digitalen Ein-/Ausgang.
Der Arduino selbst kontrolliert mit seinen PWM-Ausgängen die Geschwindigkeit der
Motoren. Vier (bei bestimmten Arduino-Typen auch sechs) seiner Analog-Eingänge
können auf dem Roboter verwendet werden. Einer davon ist umschaltbar, um die
Akkuspannung zu messen.
Wenn man die Steckerleisten für den Arduino auf dem Board untergebracht hat
und die große leere Fläche dazwischen sieht, kommt einem schon ganz
von selbst der Gedanke, den Arduino gleich mit auf das Power-Board zu nehmen.
Es gibt also jetzt zwei Bestückungsvarianten für das Power-Board:
• |
Power-Board für Arduino
Ein Arduino wird unter dem Power-Board angesteckt.
Die Steckerleisten J1 - J4 zum Arduino werden als Stiftleisten
nach unten eingelötet. Bei Bedarf kann man auch Stapelleisten nehmen,
die nach oben wieder eine Steckbuchse anbieten (siehe Foto).
Folgende Bauteile brauchen nicht bestückt zu werden:
IC1, L1, Q1, C10, C11, C14, C15, C16, C17, D6, R12, R13, R14, X3, J5, JP5
IC1 muss auf jeden Fall aus der Fassung herausgenommen werden,
wenn man das PowerBoard mit einem angesteckten Arduino Uno betreibt!
|
|
|
|
• |
Power-Board mit Arduino
IC1 ist der Controller für das gesamte Board und stellt einen
vollwertigen Arduino Uno dar – mit der Einschränkung, dass er
keinen USB-Anschluss zum Programmieren bietet. Man muss also am Stecker J5 den
Arduino USB-Serial Adapter
oder etwas Vergleichbares anstecken.
Die Steckerleisten J1 - J4 zum Arduino werden als Buchsenleisten
nach oben eingelötet, wenn man noch zusätzliche Shields
(wie z.B. das Display-Board) aufstecken will.
|
|
|
Wie sieht denn das Power-Board für Arduino überhaupt aus?
Display-Boards für Arduino
Auf dem Power-Board sind die meisten Ausgangspins des Arduino Uno schon mit Steuersignalen belegt,
deshalb müssen Display und Tasten über I2C angesteuert / abgefragt werden.
Dafür habe ich drei verschiedene Lösungen im Angebot:
Display-Board für Arduino, Version 1
Diese Platine verwendet ein gewöhnliches Textdisplay mit 16 × 2 Zeichen und paralleler Schnittstelle, das über
zwei I2C-Chips PCF8574 angesteuert wird – genau wie in
Martin's Bastelstube, Teil X.
Mit einem dritten PCF8574 werden acht Tasten abgefragt.
Allerdings habe ich hier zusätzlich zum I2C-Stecker noch die Steckerleisten
zum Arduino (oder wenigstens einen Teil davon) hinzugefügt.
Dieses Board lässt sich natürlich auch ohne Power-Board direkt auf einem Arduino
einsetzen. Allerdings sollte der Arduino die I2C-Pins auf dem Digitalen Port J3 haben (hinter Pin D13).
Wie sieht denn das Display-Board Version 1 für Arduino überhaupt aus?
Display-Board für Arduino, Version 2
Diese Platine verwendet ein Textdisplay mit 16 × 4 Zeichen, das gleich für den
Anschluss an den I2C-Bus konstruiert wurde. Mit der "Chip on Glass" Technik
ist es extrem dünn, und man braucht nur wenige Anschlusspins.
Dieses Display kann von hinten beleuchtet werden – dafür
verwende ich sechs digitale RGB-Leuchtdioden, "Neopixel" genannt.
Die Neopixel werden mit einem freien Ausgangspin des Arduino gesteuert.
Mit einem Rahmen aus weißem Büropapier oder einem 3D-gedruckten Diffusor
kann man das LED-Licht so streuen, dass das Display gleichmäßig ausgeleuchtet wird.
Die vier Richtungstasten + die Auswahltaste habe ich in einer "5-Wege"
Navigationstaste zusammengefasst, das verbraucht weniger Platz auf der Leiterplatte.
Display-Board für Arduino, Version 3
Auch diese Platine verwendet ein Textdisplay mit "Chip on Glass" Technik
und I2C-Schnittstelle. Dieses Display hat 20 × 4 Zeichen aus selbst leuchtenden Pixeln mit organischen LEDs.
Die sind sehr kontrastreich und aus allen Richtungen gut ablesbar.
Leider brauchen OLEDs eine Spannung von 12 Volt für den Betrieb – ich habe unter
dem Display einen Spannungswandler versteckt, zusammen mit dem PCF8574 für die Tastenabfrage.
Tschüß, euer Martin S.
|
E-mail:
Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!