Wenn man in die Schubladen eines Elektronik-Ingenieurs blickt, könnte man sich zu Recht fragen, wozu es noch ein weiteres Entwicklungs-Board braucht. Obwohl Arduino heute Teil quasi „Allgemeingut“ ist, stellt sich die Frage, ob es damals wirklich einen Bedarf gab. Doch Arduino war ja gar nicht für Ingenieure oder Maker gedacht, wie Sie hier gleich entdecken werden.
 

Arduino!?

Eine der größten Herausforderungen einer Branche ist es, Chancen rechtzeitig zu entdecken. Man verstrickt sich gerne sehr in seine eigene Art zu arbeiten, dass man selbstgefällig, vielleicht sogar konservativ wird und neue Ideen zu schnell ablehnt. Bei mir war das der Fall, als mir gegen Ende der 2000er Jahre jemand von Arduino erzählte.
 
Collection of development boards
Typischer Schubladeninhalt eines Ingenieurs.
Zu meiner Verteidigung: Zu dieser Zeit zeigte ich jungen Ingenieuren, wie man Software für eine Vielzahl von embedded Anwendungen entwickelt. Meine Welt bestand aus unterschiedlichsten Mikrocontroller-Entwicklungs-Boards von universell bis anwendungsspezifisch. „Warum“, so mein Gedanke, „braucht es ein Board, das weder universell noch anwendungsspezifisch ist?“ Darüber hinaus schien das Konzept dem Programmierer neue Hindernisse in den Weg zu legen, anstatt sie zu beseitigen, denn die freie Verwendung ansonsten flexible einsatzbarer Pins war eingeschränkt und Dinge wie die Puffergröße der seriellen Schnittstelle war tief in der Software versteckt.
 

Selbst einfach kann zu kompliziert sein

Wie so oft steckt war die Entwicklung von Arduino die Lösung eines spezifischen Problems. Während professionelle Ingenieure mit Entwicklungs-Board und Tools der Halbleiterindustrie gut bedient waren, traf dies nicht für alle an Elektronik Interessierten zu. Etliche Universitäten, darunter die, an der Massimo Banzi (einer der Gründer von Arduino) tätig war, boten Kurse wie „Physical Computing“ an. In solchen Kursen wird untersucht, wie Computersysteme die Umgebung wahrnehmen und auf sie reagieren können. Diese Kurse regten oft Künstler dazu an, interaktive Installationen zu bauen.
 
Auch wenn es für fast jeden Mikrocontroller Einstiegs-Tools gibt, wurde implizit immer davon ausgegangen, dass eine MCU in C programmiert wird (oder vielleicht sogar in Assembler). Außerdem wurde stillschweigend vorausgesetzt, dass die Anwender einen elektronischen Hintergrund haben und selbstverständlich wissen, wie man eine IDE (Integrated Development Environment) handhabt. Obwohl der Umgang damit für ausgebildete Ingenieure eher simpel ist, war das aber für viele Nichtingenieure nicht einfach genug.
 
Die Herausforderung für solche Kurse bestand damals darin, programmierbare Plattformen zu beschaffen, mit deren Hilfe man sich auch ohne ein Elektronikstudium absolviert zu haben die Möglichkeiten moderner Mikrocontroller erschließen kann. Bis zu diesem Zeitpunkt wurde hierfür hauptsächlich die damals bekannte BASIC-Briefmarke von Parallax eingesetzt. Diese Plattform schien damals für Studenten als zu teuer, vor allem wenn man bedenkt, dass sie nur Teil eines Projekts darstellte und die Leistung bei einigen Anwendungen eher bescheiden war.
 

Ein Geniestreich

Der Ansatz von Banzi und seinem Team war von heute aus betrachtet ein Geniestreich. Indem man die Funktion der Anschlüsse des Boards definieren konnte und ihre Komplexität hinter einfach benannten C++-Funktionsaufrufen verbarg, konnte die Leistungs eines modernen Mikrocontrollers von jedermann genutzt werden. Man muss zwar immer noch einige Einschränkungen bei der Verwendung, berücksichtigen (z.B. Spannungsbegrenzungen an Pins aus technischen Gründen), doch erfordert das nicht zu viel Zusatzwissen und lenkt nicht zu sehr von der praktischen Verwendung des Boards ab.
 
Ein Teil der Einfachheit basiert auf der Arduino-Entwicklungsumgebung, was besonders Projekten wie Processing und Wiring zu verdanken ist. Bei der Processing handelt es sich um eine Entwicklungsumgebung, welche die plattformunabhängig Softwareentwicklung sowohl unter Windows und MacOS als auch Linux unterstützt und die Entwicklung grafischer Ausgaben oder die Erstellung grafischer Benutzeroberflächen und Interaktionen erleichtert. Im Gegensatz zu Entwicklungs-Tools wie Visual Studio oder Qt muss man kein professioneller Programmierer sein oder sich mit der Entwicklung grafischer Oberflächen auskennen. Man kann sich bei der Arduino-IDE auf den kreativiten Prozess konzentrieren und darauf vertrauen, dass die komplexen Dinge im Hintergrund funktionieren.
 
Arduino board with LED, RFID, and servo
Komplexe Peripherie wie Servos oder RFID-Leser können
einfach angeschlossen und mit Arduino verwendet werden.
Diese Einfachheit ist das Prinzip hinter Arduino. Wenn man einen I2C-Sensor an das Board anschließen oder Daten auf einem SPI-Flash speichern möchte, schließt man diese Peripherie einfach. Es ist höchst wahrscheinlich, dass es für all das passende Bibliotheken in der Arduino-IDE gibt, welche die komplexen Schnittstellen für Sie handeln. Und nicht nur das: Hoch wahrscheinlich gibt es bereits ein Beispielprojekt, das man für die eigene Anwendung anpassen kann.
 

Kunst trifft Elektronik

Dank desniedrigen Preises von Arduino und der Leistungsfähigkeit des verwendeten Mikrocontrollers sind viele erstaunliche Kunstinstallationen entstanden. Besonders von dieser Entwicklung profitiert hat der in Südkalifornien lebende Künstler Chris Eckert. Auf seiner Website erklärt er: „Mein Werk ist eine Reflexion von Ideen und Fragen, die ich verblüffend finde. Während Maschinen für viele kalt und unpersönlich wirken, empfinde ich [sie] als Vehikel zur Erkundung und Selbstbeobachtung“.
 
'Gimme' - Project by Chris Eckert
„Gimme“ von Chris Eckert ist eine Kunstinstallation,
die beide Seiten einer „Bettelschale“ untersucht.
Bild: www.chriseckert.com
Eine beeindruckende Installation ist Gimee. Sie wurde durch die Begegnung mit Obdachlosen auf seinen regelmäßigen Workouts entlang des Flusses Guadalupe inspiriert. Eine Blechdose, rostig durch jahrelange Exposition gegenüber den Elementen, und ein einziger Augapfel, der den Bewegungen der Vorbeigehenden folgt. Bei dieser heftigen Szene gelegentlich eine kleinere Dose davor geschüttelt, sodass indirekt die Passanten darum bittet, eine Münze hinein zu werfen. Hintergrund sind wohl auch die Bemühungen von Chris, Spenden für eine Kunstorganisation zu sammeln. Das versetzte ihn in die Position des Bittens um Geld –normalerweise die Perspektive der Obdachlosen, die er regelmäßig sieht. Dieses zum Nachdenken anregende Kunstwerk wird durch die Automatisierung, die mit Hilfe eines Arduino umgesetzt wurde, in seiner Wirkung erheblich intensiviert.

Eine weitere faszinierende Installation ist Sonic Body. Sein Zweck ist, das „Orchester“ des menschlichen Körpers erlebbar zu machen, indem Besuchern durch Interaktion mit den Organen Musik erzeugen können. Die zu hörenden Töne basieren auf Audio-Samples, die von echten Menschen aufgenommen wurden. Arduino unterstützt das unmittelbare Erleben der Installation, wenn Besucher Körperteile berühren, drücken und bewegen. Diese wird von Sensoren erfasst und die Elektronik steuert das Audiosystem so, dass der richtige Klang über eine Hintergrundspur gelegt wird.

In beiden Fällen spielen die Elektronik und Arduino eine wichtige Rolle im Hintergrund. Ohne sie wären diese beeindruckenden künstlerischen Installationen vielleicht nie zustande gekommen.
 

Warum der Name Arduino?

Nachdem die ersten Prototypen-Boards fertig waren, brauchte es natürlich einen Namen. Angeblich war die Bar „id Re Arduino“, die Banzi und sein Team regelmäßig besuchten, die Inspiration. Sie wurde nach dem Arduin von Ivrea benannt, der zwischen 1002 und 1014 König von Italien war. Genau wie die Höhen und Tiefen von Arduino, hatte auch dieser König bei seinen Versuchen, das Königreich Italien unabhängig vom mächtigen Heiligen Römischen Reich zu halten, viele Kämpfe zu bestehen.
 
Commodore 64
Der Commodore 64 war für viele Ingenieure
der erste Kontakt mit einem „Computer“.
Mittlerweile hat sich Arduino zu einer festen Größe gemausert. Man findet Arduino-Boards nicht mehr nur in den Ateliers von Künstlern, sondern genauso in den Entwicklungs-Laboren von Ingenieuren. Die Geschwindigkeit beim Ausprobieren von Konzepten sowie die Einfachheit der Implementierung komplexer Technik wie Ethernet und WLAN oder der Steuerung von Servos können nicht ignoriert werden. Es gibt nun sogar industrialisierte Versionen von Arduino, die als speicherprogrammierbare Steuerungen (SPS) unter der griffigen Bezeichnung Controllino verfügbar sind.

Der Erfolg der vielen unterschiedlichen Arduino-Boards und die Fülle von Erweiterungs-Shields hat mich beeindruckt. Da ich mit dem Commodore 64 aufgewachsen bin, der meine Leidenschaft für programmierbare Elektronikentfacht hat, begrüße ich jede Plattform, die Interesse und Begeisterung für die Welt der Elektronik und Programmierung weckt. Wenn Sie mehr über die Verwendung von Arduino erfahren möchten, dann eignet sich hierfür besonders die ausgezeichnete Einführung von Clemens Valens.