Mobil mit Arduino

Für die Steuerung von Fahrzeugen ist der Calliope mini nur eingeschränkt tauglich, da er lediglich über zwei Anschlüsse für Motoren verfügt. Folglich können bei der Verwendung von zwei Motoren diese nur an- und abgeschaltet, ihre Polung aber nicht umgekehrt werden. Das bedeutet, dass Fahrzeuge weder auf der Stelle wenden noch Rückwärtsfahren können. Ist aber genau das gesucht, muss ein anderer Controller eingesetzt werden, beispielsweise ein Arduino Nano. Soll das im vorigen Kapitel vorgestellte Fahrgestell verwendet werden, ist zusätzlich ein Motorentreiber nötig. Dennoch kostet eine solche Ausrüstung nur einen Bruchteil dessen, was für den Kauf eines Calliope mini aufgewendet werden muss.

Der Zusammenbau der beiden Komponenten gelingt am leichtesten mit Hilfe eines Breadboards.

Die Drahtbrücken verbindenden folgende Anschlüsse zwischen Motorentreiber und Arduino Nano: B-IA und  D11, B-IB und D10, A-IA und D9 sowie A-IB und D6. Die Anschlüsse für die Motoren sind mit „A“ und „B“ gekennzeichnet. Kurze Drahtstifte in den Schraubverbindungen ermöglichen das Anstecken handelsüblicher Jumperkabel.

Wem ein Breadboard zu sperrig ist, der kann zu folgender Lösung greifen, bei der mit Hilfe von Buchsenleisten, Klingeldraht und etwas Lötarbeit platzsparende Anschlussmöglichkeiten hergestellt werden können.

Für eine dem „Open Roberta Lab“ oder dem „Makecode Editor“ vergleichbare Programmieroberfläche empfiehlt es sich, eine Anleihe am Institut für Geoinformatik der Uni Münster zu machen. Dort betreibt das Team des Schüler- und Forschungslabors nach den Prinzipien der OpenScience das Projekt „senseBox„, in dem eine deutschsprachige Version von Ardublockly im Netz vorgehalten wird. Alternativ zu dieser internetbasierten Anwendung kann „Ardublockly“ auch lokal auf jedem Rechner ausgeführt werden. Die dafür nötigen Dateien stehen für die verschiedenen Betriebssysteme unter GitHub zum Download bereit. Für ein 64-bittiges Windows ist das die Datei „ardublockly_Windows64_2017-06-26_13.55.zip“. Diese Datei nach dem Download an einen Ort der eigenen Wahl entpacken. Zum Starten des Editors in dem neuen Ordner den Unterordner „ardublockly“ öffnen und darin die Datei „index.html“ mit einem Doppelklick starten.

Die zur Programmierung einzelner Pins nötigen Blöcke finden sich unter „Funktionen“ (Schleifen), „Eingang/Ausgang“ (analoge und digitale Pins) und „Zeit“ (Dauer einer Aktion).

Die in der Abbildung gezeigte Blöcke „Setze analogen pin# …. auf …“ sorgen dafür, dass der jeweils angegebene Pin in Intervallen vom µController mit dem Pluspol der Stromquelle in Kontakt gebracht wird. Variiert werden kann das zwischen 0 und 255. Wird so beispielsweise der eine Pol des Motors auf 0, der andere auf 255 gesetzt, dreht der Motor mit voller Geschwindigkeit. Ein Vertauschen der Zahlwerte kehrt die Drehrichtung um. Wird der Wert verringert, dreht der Motor langsamer. Beide Pins auf 0 (oder 255) führt zum Stillstand. 

Unter „Zeit“ findet sich der Block „Warte 1000 millisekunden“, mit dem die Dauer einer Aktion festgelegt werden kann.

Die Auswahl eines Programmblocks erzeugt automatisch den Arduino-Quellcode. Über Copy & Paste kann dieser in die Arduino IDE übertragen und so zur Programmierung des µControllers genutzt werden.

Weitere Details zur Programmierung eines Arduino- µControllers finden sich hier.


Bezugsquellen: Arduino Nano , Motorentreiber , Breadboard und Steckbrücken oder auch Jumperkabel. Letztere gibt es in den Ausführungen Buchse-Buchse, Buchse-Stecker und Stecker-Stecker.