Roboter auf Arduinobasis
Einige Schulen haben Schwierigkeiten, das Geld für einen Satz LEGO-NXT-Robotersets zusammen zu bekommen und müssen sich alternative Wege überlegen. Da ein NXT-Roboterset von LEGO über 300€ kostet, geht das nicht so nebenbei zu finanzieren. Ein Weg ist, sich alternativ kostengünstigere Plattformen zu suchen, wobei sich u.a. Fertig- oder Selbstbaugeräte auf Arduinobasis anbieten.
Zu
folgenden Bereichen findet man hier Informationen:
Unterricht
- Lehrgangsanleitung
- Anleitung zur Softwarenutzung mit einem ersten Testprogramm
- Kurzfassung als Text
- Bilderanleitung mit ausführlichen Infotexten (Bitte auf den I-Knopf in der Werkzeugleiste oben klicken, damit die Infotexte eingeblendet werden!)
- Screenshot des Testprogramms
- weitere Testprogramme befinden sich unter "Datei - Beispiele - nxc2arduino".
Software
Die Programmierung geschieht mit üblicher Arduinosoftware in einer Untermenge der Programmiersprache C mit einigen Erweiterungen für die Ansteuerung der Arduinobausteine. Um die Standardaufgaben der Sekundarstufe I zu bearbeiten, die man sonst mit LEGO-NXT-Robotern macht, ist es leichter, die MiniQ-Robotern mit der nxc2arduino-Bibliothek zu programmieren.
- Installation der Arduinosoftware - c't Projekte - http://www.heise.de/ct/projekte/machmit/processing/wiki/InstallationArduino
- Treiberinstallation - unter Windows sind die Treiber nach der Anleitung unter http://arduino.cc/en/Guide/Windows#toc4 installieren (Treiberdateien siehe http://www.dfrobot.com/wiki/index.php?title=4WD_MiniQ_Complete_Kit_%28SKU:ROB0050%29#Program_Your_MiniQ), zu installieren, unter Linux sollte der Arduinozugriff out-of-the-box funktionieren.
-
nxc2arduino-Bibliothek installieren - dazu muss das Verzeichnis
nxc2arduino (ZIP-Datei) an die richtige
Stelle kopiert werden. Dies geht auf zwei Wegen:
- Die empfohlene Version: als Administrator für alle Benutzer in das
Programmverzeichnis - unter Windows müssen die Dateien dann unter
C:\Programme\arduino\libraries
kopiert werden, unter Linux dagegen in das Verzeichnis/opt/arduino/libraries
. - Die Version zum schnellen Testen: als Benutzer in das
Sketchbook-Verzeichnis des Benutzers - unter Windows in
.../Eigene Dateien/Arduino
, unter Linux in/home/<username>/sketchbook
.
- Die empfohlene Version: als Administrator für alle Benutzer in das
Programmverzeichnis - unter Windows müssen die Dateien dann unter
-
nxc2arduino-Bibliothek testen
- Arduinosoftware starten
- Arduino-Roboter anschließen (hier am Beispiel des MiniQ-4WD)
- unter "Tools - Board" "Arduino Nano/Atmega328" auswählen
- unter "Tools - Serieller Port" den korrekten Port auswählen (z.B. COM9 unter Windows und /dev/ttyUSB0 unter Linux)
- Wenn die nxc2arduino-Bibliothek im Programmverzeichnis installiert ist, dann ist das Testprogramm für die Bibliothek aus "Datei - Beispiele - nxc2arduino - nxclib_vr_name" zu laden und zu übersetzen (Strg-r).
- Nun muss der MiniQ-Roboter angehoben werden, damit er nicht gleich losfährt, wenn nach dem Hochladen des Programms (Strg-r) das Programm automatisch gestartet wird. Zum Anschalten muss der Knopf an der Hinterseite links mit der Bezeichnung "PW_ON" gedrückt werden. Außerdem müssen dann die blauen LEDs an der Unterseite des Roboters leuchten, sonstigenfalls sind die eingelegten Akkus durch neue auszutauschen.
- Programmierung des Arduinos allgemein - Arduino - Notizen und Anmerkungen von Prof. Jürgen Plate (FH München, FB 04) - http://www.netzmafia.de/skripten/hardware/Arduino/
Hardware
Bezugsquelle für betriebsfertige Arduinoroboter
Übersee Canada bzw. Amerika
- DFRobot 4WD MiniQ Arduino-Compatible Kit
- DFRobot 2WD MiniQ Arduino-Compatible Kit
Deutschland
- DFRobot 2WD MiniQ - http://www.lipoly.de/index.php?main_page=product_info&products_id=213780
- DFRobot 4WD MiniQ - http://www.lipoly.de/index.php?main_page=product_info&products_id=168628
Bezugsquellen für Roboter mit mechanischen Zusammenbau und tlws. geringen Lötarbeiten
- RobotShop Rover Arduino Compatible Kits - http://www.robotshop.com/eu/dfrobotshop-rover-arduino-compatible-kits.html
- Sparkfun - RedBot Kit - https://www.sparkfun.com/products/retired/12032 https://www.tinkersoup.de/kits/redbot-kit/a-953/
Infos zum Aufbau und Nutzung
- http://www.dfrobot.com/wiki/index.php?title=4WD_MiniQ_Complete_Kit_%28SKU:ROB0050%29
- DFRobotShop Rover - Infoartikel - http://find.botmag.com/021185
- http://arduino.cc/en/Guide/Windows
- Videos vom Bau
Der Rover hat den im Gegensatz zu den obigen Geräten den Vorteil, dass er sehr leicht erweiterbar ist. Die Platine hat das Layout eines Arduino Duemilanove, folglich kann er mit Arduino-Shields (Aufsteckplatinen) problemlos erweitert werden. Sinnvolle Features wie Sensoren für einen Linienfolger oder eine Abstandserkennung fehlen jedoch und müssten aufwändig nachgerüstet werden und außerdem ist das Gerät recht langsam im Gegensatz zu den obigen Geräten. Die letztgenannten Faktoren sprechen also gegen den Einsatz des Rovers.
Das - RedBot Kit von Sparkfun ist der Nachfolger des ProtoSnap - MiniBot Kits,... und auch schon nicht mehr komplett zu haben. Das Chassis ist aber eine gute Grundlage für eigenen Aufbauten und auch die anderen Infos der Seite helfen weiter, eigene Roboter selbst zu planen.
Fazit: Für den Schulbetrieb scheint der 4WD-MiniQ-Roboter die sinnvollste Investition zu sein, weil er fertig aufgebaut ist und sehr robust wirkt. Der 2WD ist wohl billiger und ermöglicht eine Erweiterung mit Funkadaptern, er muss aber zur Programmierung eine Zusatzplatine aufgesteckt bekommen. Was einen schulischen Dauerbetrieb übersteht, wird sich noch zeigen müssen.
Die Programmierung geschieht mit üblicher Arduinosoftware. Die Standardaufgaben in der Sek. I zu bearbeiten, die man sonst mit LEGO-NXT-Robotern durchführt, ist mit den MiniQ-Robotern in Kombination mit der nxc2arduino-Bibliothek problemlos möglich.
Nachträge
In der letzten Zeit tut sich was auf dem Arduino-Roboter-Sektor. Eine Sammlung von neuen Links befindet sich unter http://blogs.hamburg.schulcommsy.de/276082_2535017/2012/10/06/weitere-arduino-roboter/. Besonders der Arexx AAR-04 ist von Interesse, weil er vollständig aufgebaut und relativ kostengünstig ist sowie in Deutschland über Elektronikversender (ELV, Conrad) gut zu bekommen ist. Mechanisch ist dieser Roboter aber nicht erste Wahl... Vielleicht wäre MURCS ja etwas? - http://www.robotfreak.de/blog/robotik/murcs-version-2-0
Alternativ kann auch auf Basis eines Raspberry Pis ein Roboter aufgebaut werden. Simon Monk hat dazu einige Infos gesammelt: