Arduino für Einsteiger

Massimo Banzi

Published by O’Reilly Media Germany

Vorwort

Vor einigen Jahren stand ich vor einer sehr interessanten Herausforderung: Ich sollte Designern die einfachsten Grundlagen der Elektronik vermitteln, sodass sie anschließend in der Lage wären, interaktive Prototypen der Objekte, an denen sie gerade arbeiteten, herzustellen.

Ich folgte unterbewusst meinem Instinkt, Elektronik auf die Weise zu lehren, wie ich sie von der Schule her kannte. Später realisierte ich dann, dass das nicht so gut funktionierte, wie ich das gerne gehabt hätte und ich erinnerte mich an die Stunden im Klassenzimmer, in denen jede Menge Theorie ohne praktischen Bezug auf mich eingeprasselt war und ich mich zu Tode gelangweilt hatte.

Eigentlich kannte ich die Elektronik zur Schulzeit bereits, und diese Kenntnisse hatte ich auf sehr empirische Weise erworben: mit herzlich wenig Theorie, aber mit viel praktischer Erfahrung.

Ich begann also, darüber nachzudenken, mittels welcher Prozesse ich Elektronik wirklich verstanden habe:

Ich nahm alle elektronischen Geräte auseinander, die ich in die Finger bekommen konnte.

So lernte ich langsam all die einzelnen Komponenten kennen.

Ich begann, mit ihnen herumzubasteln, einige ihrer inneren Verbindungen zu verändern und dann zu beobachten, wie das Gerät reagierte, üblicherweise mit einer Art von Explosion oder mit einer Rauchwolke.

Ich baute Bausätze, die Beilagen von Elektrozeitschriften waren, zusammen.

Ich kombinierte Geräte, die ich gehackt hatte, und zweckentfremdete Bausätze und andere Schaltungen, die ich in Zeitschriften gefunden hatte, um aus ihnen etwas Neues herzustellen.

Als kleines Kind war ich fasziniert davon herauszufinden, wie Dinge funktionieren, daher habe ich sie immer auseinandergebaut. Dieses Interesse wuchs immer weiter, je mehr nicht benutzte elektronische Objekte, derer ich im Haus irgendwie habhaft werden konnte, ich in ihre Einzelteile zerlegte. Schließlich brachten die Leute alle möglichen Geräte zu mir, damit ich sie auseinandernehmen konnte. Meine größten Objekte zu dieser Zeit waren eine Geschirrspülmaschine und ein früher Computer aus einem Versicherungsbüro, der über einen Drucker, Elektronikkarten, Magnetkartenleser und viele andere Teile verfügte, deren komplette Zerlegung sich als äußerst interessant und knifflig erwies.

Nach umfangreichen Untersuchungen wusste ich, was elektronische Komponenten sind und auch ungefähr, was sie tun. Obendrein war unser Haus voll von elektronischen Zeitschriften, die mein Vater irgendwann Anfang der 1970er gekauft haben musste. Ich habe Stunden damit verbracht, die Artikel zu lesen und mir die Schaltskizzen anzuschauen, ohne allerdings sonderlich viel zu begreifen.

Dieser Prozess des immer wieder erneuten Lesens der Artikel auf der äußerst hilfreichen Grundlage des Wissens, das ich durch das Zerlegen von Schaltungen erworben hatte, erwies sich als langsamer, wirkungsvoller Zyklus.

Ein großer Durchbruch kam an einem Weihnachtstag, als mein Vater mir einen Bausatz schenkte, mit dem Teenagern Wissen über die Elektronik vermittelt werden sollte. Jede Komponente war in einem Plastikwürfel untergebracht, der magnetisch an den anderen Würfeln haften konnte, sodass eine Verbindung entstand. Oben auf diesen Würfeln war das jeweilige elektronische Symbol angeführt. Ich wusste noch wenig davon, dass dieses Spielzeug auch ein Meilenstein von Design Made in Germany war, denn es war bereits in den 1960ern von Dieter Rams entwickelt worden.

Mit diesem neuen Tool konnte ich auf schnelle Weise Schaltkreise zusammenbauen, diese dann ausprobieren und mir das Resultat ansehen. Der Prototyping-Zyklus wurde dabei immer kürzer.

Danach baute ich Radios, Verstärker, Schaltkreise, die fürchterlichen Lärm oder auch schöne Töne produzierten, Regensensoren und kleine Roboter.

Ich habe lange nach einem englischen Begriff gesucht, der diese Arbeitsweise ohne speziellen Plan, bei der einfach von einer bestimmten Idee ausgegangen wird und bei der man bei einem völlig unerwarteten Resultat landet, wiedergibt. Schließlich stieß ich auf das Wort „Tinkering“, das sich etwa mit dem Begriff „Tüfteln“ ins Deutsche übertragen ließe. Ich verstand, wie dieser Begriff in vielen anderen Bereichen verwendet wurde, um eine Arbeitsweise zu beschreiben und Menschen zu porträtieren, die ausgetretene Pfade verlassen und Neuland erkundet hatten. Auch die französischen Regisseure, die die Nouvelle Vague begründeten, wurden im englischen Sprachraum als Tinkerer bezeichnet. Die beste Definition, die ich kenne, habe ich im Rahmen einer Ausstellung im Exploratorium in San Francisco gefunden:

Tinkering is what happens when you try something you don’t quite know how to do, guided by whim, imagination, and curiosity. When you tinker, there are no instructions – but there are also no failures, no right or wrong ways of doing things. It’s about figuring out how things work and reworking them.

Contraptions, machines, wildly mismatched objects working in harmony – this is the stuff of tinkering.

Tinkering is, at its most basic, a process that marries play and inquiry..

http://www.exploratorium.edu/tinkering

Von meinen früheren Experimenten wusste ich bereits, wie viel Erfahrung nötig ist, um einen Schaltkreis von den Basiskomponenten aus aufzubauen, der dann auch noch das tut, was Sie möchten.

Ein weiterer Durchbruch erfolgte im Sommer 1982, in dem ich mit meinen Eltern in London viele Stunden lang das Science Museum besichtigte. Hier war gerade ein neuer Bereich eröffnet worden, der Computern gewidmet war und in dem angeleitete Experimente vorgestellt wurden. Indem ich diesen folgte, lernte ich die Grundlagen der Binärmathematik und der Programmierung.

Dabei stellte ich fest, dass bei vielen Anwendungen Ingenieure keine Schaltkreise mehr aus Basiskomponenten bauten, sondern viele intelligente Möglichkeiten mittels Mikroprozessoren in ihre Produkte implementierten. Software ersparte dabei viele Arbeitsstunden beim elektronischen Design und ermöglichte kürzere Zyklen beim Tüfteln.

Nach der Rückkehr begann ich damit, Geld zu sparen, weil ich mir einen Computer kaufen und das Programmieren lernen wollte.

Mein erstes und wichtigstes Objekt war ein brandneuer ZX81-Computer, mit dem ich eine Schweißmaschine steuerte. Das klingt sicher nicht nach einem besonders spannenden Projekt, aber es bestand ein gewisser Bedarf und für mich war es eine große Herausforderung, weil ich gerade erst das Programmieren erlernt hatte. Zu diesem Zeitpunkt wurde mir klar, dass das Schreiben von Codezeilen weniger zeitaufwendig ist als das Aufbauen komplexer Schaltungen.

Mehr als 20 Jahre später denke ich, dass diese Erfahrung mir ermöglicht, Menschen zu unterrichten, die sich nicht einmal daran erinnern, irgendeine Mathematikstunde besucht zu haben und ihnen die gleiche Begeisterung für das Tüfteln und die entsprechenden Fähigkeiten zu vermitteln, die ich in meiner Jugend erworben und seitdem immer bewahrt habe.

Massimo

Danksagung

Dieses Buch ist Luisa und Alexandra gewidmet.

Zuallererst möchte ich meinen Partnern im Arduino-Team danken: David Cuartielles, David Mellis, Gianluca Martino und Tom Igoe. Jungs, es ist immer wieder eine erstaunliche Erfahrung, mit Euch zu arbeiten!

Als Nächstes möchte ich mich bei Barbara Ghella bedanken. Sie weiß es vielleicht nicht, aber ohne ihre präzise Beratung wären Arduino und dieses Buch vielleicht niemals zustande gekommen.

Ein weiterer Dank gebührt Bill Verplank, der mich weit mehr gelehrt hat als Physical Computing.

Bei Gillian Crampton-Smith möchte ich mich dafür bedanken, dass sie mir eine Chance gegeben hat und für all das, was ich von ihr gelernt habe.

Hernando Barragan möchte ich für die Arbeit beim Verdrahten danken.

Ein Dank gebührt auch Brian Jepson für seine großartige Arbeit als Lektor und für seine unermüdliche enthusiastische Unterstützung.

Mein nächstes Dankeschön gilt Nancy Kotary, Brian Scott, Terry Bronson und Patti Schiendelman dafür, dass sie noch eingepflegt haben, was ich in einem bereits fertigen Buch geändert hatte.

Es wären hier sicherlich noch zahlreiche weitere Menschen zu nennen, aber Brian gibt mir an dieser Stelle zu verstehen, dass ich damit den Rahmen des Buches sprengen würde, daher hier nur eine kleine Liste von Personen, denen ich aus vielerlei Gründen danken möchte:

Adam Somlai-Fisher, Ailadi Cortelletti, Alberto Pezzotti, Alessandro Germinasi, Alessandro Masserdotti, Andrea Piccolo, Anna Capellini, Casey Reas, Chris Anderson, Claudio Moderini, Clementina Coppini, Concetta Capecchi, Csaba Waldhauser, Dario Buzzini, Dario Molinari, Dario Parravicini, Donata Piccolo, Edoardo Brambilla, Elisa Canducci, Fabio Violante, Fabio Zanola, Fabrizio Pignoloni, Flavio Mauri, Francesca Mocellin, Francesco Monico, Giorgio Olivero, Giovanna Gardi, Giovanni Battistini, Heather Martin, Jennifer Bove, Laura Dellamotta, Lorenzo Parravicini, Luca Rocco, Marco Baioni, Marco Eynard, Maria Teresa Longoni, Massimiliano Bolondi, Matteo Rivolta, Matthias Richter, Maurizio Pirola, Michael Thorpe, Natalia Jordan, Ombretta Banzi, Oreste Banzi, Oscar Zoggia, Pietro Dore, Prof Salvioni, Raffaella Ferrara, Renzo Giusti, Sandi Athanas, Sara Carpentieri, Sigrid Wiederhecker, Stefano Mirti, Ubi De Feo und Veronika Bucko.

Kapitel 1. Einführung

Arduino ist eine Open-Source-Plattform für Physical Computing, die auf einem einfachen Input/Output-(I/O-)Board und einer Enwicklungsumgebung basiert, die die Sprache Processing (www.processing.org) implementiert. Mit Arduino lassen sich autonome interaktive Objekte entwickeln, man kann aber auch eine Verbindung mit der Computersoftware (z.B. Flash, Processing, VVVV oder Max/MSP) herstellen. Man kann das Board manuell zusammenbauen oder es auch vormontiert kaufen. Die Open-Source-IDE (Integrated Development Environment, Integrierte Entwicklungsumgebung) steht unter www.arduino.cc zum kostenlosen Download bereit.

Arduino unterscheidet sich durch folgende Features von andern Plattformen auf dem Markt:

Arduino ist betriebssystemunabhängig und kann unter Windows, Macintosh und Linux betrieben werden.

Arduino basiert auf der Progammier-IDE Processing, einer leicht hand-habbaren Entwicklungsumgebung, die von Künstlern und Designern verwendet wird.

Arduino wird über ein USB-Kabel und nicht über einen seriellen Anschluss programmiert. Dieses Feature ist äußerst nützlich, da viele moderne Computer keine seriellen Anschlüsse haben.

Es handelt sich um eine Open-Source-Software. Sie können Schaltdiagramme herunterladen, alle betreffenden Komponenten kaufen oder eigene herstellen, ohne dass Sie dafür etwas an die Entwickler von Arduino zahlen müssten.

Die Hardware ist preisgünstig. Der Preis für das USB-Board liegt bei etwa 25 Euro. Das Ersetzen von durchgebrannten Chips auf dem Board ist einfach und kostet nicht mehr als 5 Euro oder 4 US-Dollar. Man kann es sich also leisten, auch mal einen Fehler zu machen.

Es gibt eine entsprechende Community, sodass man bei vielen anderen Nutzern Hilfe finden kann.

Das Arduino-Projekt wurde in einer Lernumgebung entwickelt und eignet sich daher bestens für Einsteiger, die Dinge schnell ans Laufen bringen möchten.

Dieses Buch ist dazu gedacht, Einsteigern ein Verständnis von den Vorteilen zu vermitteln, die sie durch das Erlernen der Handhabung der Arduino-Plattform und das Übernehmen der entsprechenden Philosophie gewinnen.

An wen sich das Buch richtet

Dieses Buch ist für die ursprünglichen Arduino-Benutzer geschrieben: Designer und Künstler. Daher werden Dinge in einer Weise erklärt, die einigen Ingenieuren möglicherweise die Haare zu Berge stehen lassen wird. Einer nannte die einleitenden Kapitel meines ersten Entwurfs sogar Staubflocken. Das ist genau der Punkt, denn seien wir mal ehrlich: Die meisten Ingenieure können anderen Ingenieuren und erst recht fachfremden Personen, das, was sie tun, nicht erklären. Wir wollen nun tief in diese „Staubflocken“ eintauchen.

Hinweis

Arduino baut auf der Diplomarbeit von Hernando Barragan auf, bei der er an der Wiring-Plattform arbeitete, während er unter Casey Reas und mir am IDII Ivrea studierte.

Nachdem Arduino allmählich beliebt wurde, sah ich, wie Experimentatoren, Hobbybastler und alle Arten von Hackern schöne und verrückte Objekte herstellten. Ich erkannte, dass Ihr selbst alle Künstler und Designer seid. Daher ist dieses Buch Euch gewidmet.

Arduino wurde aus der Idee geboren, Interaction Design, eine Designdisziplin, bei der das Prototyping im Zentrum der Methodik steht, zu vermitteln. Es gibt viele Definitionen für den Begriff Interaction Design, ich bevorzuge die Folgende:

Interaction Design ist das Design einer jeglichen interaktiven Erfahrung.

In unserer heutigen Welt befasst sich Interaction Design mit dem Erzeugen bedeutsamer Erfahrungen zwischen uns (Menschen) und Objekten. Dies ist eine gute Methode, um das Entstehen von schönen – und vielleicht auch kontroversen – Erfahrungen im Umgang mit der Technik zu erschließen. Beim Interaction Design erfolgt Design in einem Iterationsprozess, basierend auf Prototypen und mit ständig wachsender Präzision. Dieser Ansatz – der teilweise auch beim konventionellen Design zu finden ist – kann so erweitert werden, dass Prototyping in die Technologie eingebunden wird, speziell im Bereich Elektronik.

Der spezielle Bereich von Interaction Design, der bei Arduino zum Tragen kommt, ist das Physical Computing (oder auch Physical Interaction Design).

Was ist Physical Computing?

Beim Physical Computing wird Elektronik verwendet, um Prototypen von neuen Arbeitsmaterialien für Designer und Künstler herzustellen.

Dies umfasst auch das Design von interaktiven Objekten, die über Sensoren und Aktoren, die mittels einer vorgegebenen Verhaltensweise gesteuert werden, mit den Menschen kommunizieren können. Diese Verhaltensweise ist als Software implementiert, die in einem Mikrocontroller (ein kleiner Computer auf einem einzelnen Chip) ausgeführt wird.

In der Vergangenheit bedeutete der Einsatz von Elektronik gleichzeitig das ständige Arbeiten mit Ingenieuren und gleichzeitig den langwierigen Aufbau von Schaltkreisen, immer eine kleine Komponente nach der anderen. Dadurch wurden kreative Menschen daran gehindert, mit dem Medium direkt zu experimentieren. Die meistens Tools waren für Ingenieure gedacht und setzten ein erhebliches Wissen voraus. In den letzten Jahren wurden Mikrocontroller billiger und einfacher in der Handhabung, wodurch die Herstellung besserer Tools ermöglicht wurde.

Der Fortschritt, der mit Arduino erfolgte, bestand darin, dass diese neuen Tools Neulingen nähergebracht wurden, sodass es ihnen möglich wurde, nach nur einem zwei- oder dreitägigen Workshop bereits irgendwelche Dinge zu bauen.

Mit Arduino können sich Designer und Künstler die Grundlagen von Elektronik und von Sensoren sehr schnell aneignen und ohne große Investitionen mit dem Bau von Prototypen beginnen.

Kapitel 2. Die Philosophie von Arduino

Die Philosophie von Arduino besteht darin, Designs zu erstellen, anstatt über sie zu sprechen. Sie besteht in einem andauernden Suchen nach schnelleren und leistsungsstärkeren Möglichkeiten, um bessere Prototypen zu bauen. Wir haben viele Prototyping-Techniken erkundet und so quasi mit unseren Händen neue Denkansätze geschaffen.

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!

Lesen Sie weiter in der vollständigen Ausgabe!