Erik Bartmann: Die elektronische Welt mit dem Arduino entdecken
Der Author Erik Bartmann war mir schon durch sein ebenfalls im O'Reilly-Verlagveröffentlichtes Buch zum Thema Processing bekannt.
Sein neues - fast 700 Seiten umfassendes - Buch zum Arduino zeichnet sich ebenso durch übersichtliches Layout und informative Illustrationen (durchgehend farbig) aus, und unterscheidet sich schon diesbezüglich angenehm von dem einen oder anderem Werk zum selben Thema.
Im ersten Drittel des Buches beschäftigt sich Bartmann mit Grundlagen der Mikrokontroller, Elektronik und Schaltungsaufbau, wobei dieser Teil des Buches auch für Fortgeschrittene den einen oder anderen bisher nicht berücksichtigten Aspekt erhellt.
Nach der Einführung ("Was ist ein Mikrokrontroller") folgt ein Kapitel über die Arduino-Boards, wobei sich Bartmann überwiegend auf den Arduino Uno konzentriert, der auch Grundlage aller folgenden Projekte ist. Natürlich wird auch die Installation der Entwicklungsumgebung (IDE) und die Kommunikation mit dem PC unter den verschiedenen Betriebssystem beschrieben.
Weiter geht es über die Grundlagen der Elektronik, Aufbau von Schaltungen, Grundlagen der Programmierung bis zur Programmierung der Arduino.
Der größten Teil des Buches aber ist den insgesamt 34 Projekten gewidmet, deren Komplexität stufenweise zunimmt. Nach den ersten Programmierversuchen anhand einer einfachen Sensorabfrage wird z.b. schon in Kapitel 3 auf Kontrollstrukturen und den Einsatz der internen Pullup-Widerstände eingegangen. Schwerpunkt des 4. Projekts ist die Entprellung von Tastern und Schaltern, wobei die gängigen Soft- und Hardwarelösungen beschrieben werden.
In den darauf folgenden Projekten geht es u.a. um ein Lauflicht und die sehr verständlich beschriebenen Möglichkeiten der Porterweiterungen (Schieberegister 74H595 u.ä.). Projekt 8 hält mehr als die Überschrift (Ampelschaltung) verspricht. Ein schon relativ komplexes Projekt, in dem auch auf FSMs (Finite State Machine) und deren Programmierung eingegangen wird. Ebenso wird der Unterschied zwischen lokalen und globalen Variabler erläutert.
Im ersten Projekt über elektronische Würfel stellt Bartmann Arrays, Schleifen und Indizes vor. Dies ist Grundlage für das folgende Kapitel, in dem es wiederum um unseren Würfel geht, diesmal aber auf deutlich anspruchsvollerer Ebene. Hierzu nur einige Stichworte: Bibliotheken (Libraries), Objektorientierte Programmierung, Klassen und Header-Dateien. Höhepunkt ist die Erstellung einer eigenen "Würfel"-Library, was dem geneigten Leser sämtliche Urängste (unter denen auch ich litt ') vor dieser Aufgabe nehmen sollte
In Projekt 12 (Lichtsensoren) lernt unser Arduino die Kommunikation mit dem PC mittels der Programmiersprache Processing kennen. Die Arbeit mit Sensoren wird vertieft, wobei natürlich die Spannungsteiler eine wesentliche Rolle spielen.
In Kapitel 14 und 15 geht es erstmals um Aktoren. Schwerpunkt ist die Ansteuerung eines Servos mit einem kurzer Blick auf die Grundlagen der Pulsweitenmodulation. In zwei weiteren Projekten rund um Siebensegment-Anzeigen lernen wir Wissenswertes über Multiplexing und Bit-Operationen. Multiplexing und Erstellung eines eigenen Shields gehören auch zu den Schwerpunkten der Projekte rund um das Keypad.
Schwerpunkt des Kapitel 22 ist die Kommunikation per I2C am Beispiel der Programmierung eines EEPROMs. Es folgen Beispiele über den Einsatz von Treiberbausteinen und H-Bridges zur Ansteuerung von Schrittmotoren.
Wer sich ein wenig entspannen möchte, kann ja mal den Ardubot aus Kapitel 24 nachbauen, bevor er erste Bekanntschaft mit der Visualisierung von Daten (Temperatur-Sensorabfrage und Darstellung auf LC-Display macht. Das Thema wird in Kapitel 27 (Data-Monitoring) vertieft, in dem noch einmal auf Übertragungsprotokolle und Processing eingegangen wird.
Kommunikation ist auch das Thema der folgenden Kapitel: Während es beim "Arduino-Talker" ( Projekt 28) um die Steuerung per serieller Schnittstelle und Programmierung unter Microsofts C#-Express geht, ist der Schwerpunkt der folgenden Abschnitte der drahtlose Datenaustausch per Bluetooth und die Steuerungsmöglichkeiten per Smartphone (Android).
Im Projekt 32 dreht sich alles um die Netzwerkkommunikation (Ethernet), das Ethernet-Shield und die Anbindung unseres Arduino ans Internet, wozu natürlich auch ein kurzer Blick auf HTML gehört.
Ein DAC spielt die entscheidende Rolle im vorletzten Kapitel. Der Selbstbau wird über ein R2R-Netzwerk (Widerstandsleiter) auf einem selbst gebauten Shield realisiert. Die dazu notwendige Software greift u.a. auf die Manipulation der Arduino-Port-Register zurück.
Last not Least: Der Shieldbau ist auch der Gegenstand des letzten Projektes, in dem der Bau eines Proto-Shields Schritt für Schritt beschrieben wird.
Die Befehls-Referenz in Anhang A ist kurz und unvollständig. Eine vollständige Referenz würde aber sicher auch den Rahmen des Buches sprengen. Hier gibt es ja auch Arduino-Referenz-Seite.
Fazit:
Meiner Meinung ist Erik Bartmanns "Die elektronische Welt mit dem Arduino entdecken" das neue Standardwerk für stolze Besitzer eines Arduino, das sowohl die Ansprüche von Anfängern als auch Fortgeschrittenen erfüllt. Wer dazu noch das Arduino Cookbook von Michael Margolis zur Hand hat, sollte auf jede Frage eine Antwort haben bzw. finden (42!). Und: Das Lesen hat Spaß gemacht!