Inhaltsverzeichnis

Impressum

Kapitel 1: Einleitung

1.1 3. Auflage

1.2 Aufbau des Buches

1.3 Mehr Informationen

1.4 Weitere Quellen

1.5 Danksagung

Kapitel 2: Arduino-Plattform

2.1 Am Anfang war der König

2.2 Be a Maker​

2.3 Arduino-Plattform

2.4 Hardware

2.4.1 Arduino Uno​

2.5 Software​

2.6 Installation​ der Software

2.6.1 Installation des USB-Treibers unter Windows 7 und Windows 8​

2.6.2 Installation​ des USB-Treibers​ unter Windows XP

2.6.3 Installation des USB-Treibers​ unter Mac OS X

2.6.4 Installation des USB-Treibers​ unter Linux

2.7 Get Connected

2.7.1 Verbindungskabel​

2.7.2 Verbindung und »Blink«

2.7.3 Projekt Blink​

2.8 Arduino​-Entwicklungsumgebung

2.8.1 Voreinstellungen

2.8.2 Aufbau Entwicklungsumgebung

2.8.3 Menü- und Symbolleiste

2.8.4 Editor​

2.8.5 Ausgabefenster​

2.9 Arduino-Boards

2.9.1 Arduino Leonardo​

2.9.2 Arduino Duemilanove​

2.9.3 Arduino​ Diecimila​

2.9.4 Arduino Due​

2.9.5 Arduino Yun

2.9.6 Arduino​ Mega 2560

2.9.7 Arduino Mega ADK​

2.9.8 Arduino​ Nano​

2.9.9 Arduino​ Mini​

2.9.10 Arduino​ BT​

2.9.11 Arduino​ LilyPad​

2.9.12 Arduino Fio​

2.10 Arduino-kompatible Boards​

Kapitel 3: Startschuss

3.1 Das Arduino​-Board​

3.1.1 Stromlaufplan

3.1.2 Mikrocontroller – Das Gehirn

3.1.3 Anschlussbelegung

3.1.4 Stromversorgung

3.2 Steckbrett – Experimentieren ohne Löten

3.2.1 Spannungsversorgung auf dem Steckbrett

3.3 Spannung, Strom und Herr Ohm

3.4 Widerstand & Co.​

3.4.1 Widerstand

3.4.2 Potentiometer

3.4.3 Kondensator

3.4.4 Diode

3.4.5 Leuchtdiode

3.4.6 Transistor

3.4.7 Integrierte Schaltung (IC)

3.4.8 Relais

3.4.9 Schalter

3.4.10 Taster

3.5 Programmcode​

3.5.1 Integer​, Typen​ und Variablen​

3.5.2 Struktur

3.6 Testen​

3.6.1 Serieller Monitor

3.6.2 Code-Debugging​

3.7 Projekt Blink

3.8 Projekt Wechselblinker

Kapitel 4: Eingänge und Ausgänge​​

4.1 Digitale Eingänge​

4.1.1 Port als Eingang setzen

4.1.2 Digitalen Eingang​ lesen

4.1.3 Digitalen Eingang entprellen​

4.1.4 Hohe Eingangssignale

4.2 Digitale Ausgänge​

4.2.1 Ausgang setzen​ und ausgeben

4.2.2 Praxis-Tipp: Status eines Ausgangs lesen

4.3 Analoge Welt​

4.3.1 Analoge Signale​ einlesen

4.3.2 Analoge Signale ausgeben

4.4 Serielle Kommunikation

4.4.1 Serielle Schnittstelle (RS232)

4.4.2 Schnittstellenerweiterung

4.4.3 I2C​/2-Wire ​(Two-Wire​)

4.5 Drahtlose Kommunikation​

4.5.1 433-MHz-Kommunikation

4.5.2 Daten übertragen mit RFM12B Transceiver

4.6 Projekt: Würfel​

Kapitel 5: Sensoren

5.1 LDR​ (Fotowiderstand​)

5.2 NTC/PTC​

5.3 Integrierte Temperatursensoren​

5.4 Pt100 und Thermoelemente

5.5 Feuchtesensoren​

5.6 Kombinierte Umweltsensoren

5.7 Schaltersensoren​

5.8 Abstandssensoren​

5.9 Beschleunigungssensor​

5.10 Kompas​s

5.11 Hall-Sensor​

5.12 Projekt Kompass mit Richtungsanzeige

5.13 Projekt Gefrierschrankwächter

Kapitel 6: Aktoren

6.1 Relais

6.2 Servos

6.2.1 Analoge Temperaturanzeige

6.2.2 Servos​ als Motoren für Miniroboter​

6.3 Motoren​

6.4 Hohe Lasten​ schalten

6.5 Projekt: Roboter​ mit Wii-Steuerung

Kapitel 7: Anzeigen

7.1 Leuchtdiode​ (LED​)

7.1.1 Konstantstromquelle​ mit Transistor

7.1.2 Konstantstromquelle​ mit Spannungsregler​

7.1.3 Helligkeit steuern

7.1.4 LED​ als Berührungssensor​

7.1.5 Jetzt wird es hell

7.2 7-Segment-Anzeigen

7.2.1 Port Expander​ über den I2C-Bus

7.3 LC-Display​ (LCD)

7.3.1 Paralleles LC-Display

7.3.2 Serielle LC-Displays

7.4 LC Display Nokia 3310/5110​

7.5 LED-Matrix​

7.6 Projekt Geschwindigkeitsmesser​ fürs Fahrrad

7.7 Projekt Schrittzähler​

Kapitel 8: Datenverarbeitung​

8.1 Daten speichern

8.1.1 Daten im ATmega-Controller speichern

8.1.2 Daten in externem EEPROM ablegen

8.1.3 Daten auf SD-Karte speichern

8.2 Daten ins Internet senden

8.3 Datenverarbeitung​ mit Processing

8.3.1 Processing – Bitte antworten

8.3.2 Arduino mit Processing steuern

8.4 Gobetwino – Übernehmen Sie!

8.5 Projekt: Programmierbarer Signalgeber​

8.6 Projekt: Digitales Netzteil​

8.6.1 Sollwerteingabe mit Drehgeber​

Kapitel 9: Erweiterungen

9.1 Bibliotheke​n

9.1.1 Ethernet-Bibliothek

9.1.2 Wire-Bibliothek

9.1.3 SoftwareSerial​

9.1.4 TinyGPS-Bibliothek​

9.1.5 NMEA​

9.1.6 PString-Bibliothek​

9.1.7 TextFinder-Bibliothek​

9.1.8 Matrix-Bibliothek​

9.1.9 LiquidCrystal-Bibliothek​ (LCD)

9.1.10 JeeLib

9.1.11 MIDI​

9.1.12 Stepper-Bibliothek​

9.1.13 Webduino​

9.1.14 Wii Nunchuk​

9.2 Hardware-Erweiterungen (Shields)

9.2.1 Proto-Shield​

9.2.2 Protonly​ Proto-Shield

9.2.3 Floweronly​ Proto-Shield

9.2.4 Ethernet-Shield​

9.2.5 Datalogger und GPS Shield​

9.2.6 Adafruit Motor-Shield

9.2.7 DFRobot Motor-Shield​

9.2.8 Diduino MsMot Shield

9.2.9 Keypad Shield​

9.2.10 TouchShield​

9.2.11 Wave Shield​

9.2.12 SD Card Shield​

9.2.13 MIDI Shield​

9.2.14 Nano Shield​

9.2.15 Lithium Backpack​

9.2.16 ITEAD Power-Shield

9.2.17 RFM12B Shield

9.2.18 Xbee Shield​

9.2.19 CC3000 WiFi Shield​

9.2.20 Schraubklemmen​-Shield

9.3 Hardware-Adapter

9.3.1 RFM12B Breakout-Board

9.3.2 Wii-Nunchuk-Adapter​

Kapitel 10: Arduino im Einsatz​

10.1 Verbindung zum Internet

10.1.1 Netzwerkverbindung​

10.1.2 Arduino​ als Webserver

10.1.3 Der Arduino​ als Webclient

10.1.4 Ethernet mit ENC28J60-Modul

10.1.5 Eingänge und Ausgänge übers Internet steuern

10.1.6 Wireless Ethernet (WiFi)

10.2 Heute schon getwittert?

10.3 Arduino​ mailt

10.3.1 Mail direkt versenden

10.3.2 Mail via PHP-Skript versenden

10.4 XML einlesen

10.4.1 XML lesen mit TextFinder

10.4.2 Wetterdaten​ von Yahoo! Weather​ abfragen

10.5 RSS einlesen​

10.6 You got mail

10.7 Umweltdaten​ sammeln

10.8 Projekt Wetterstation

10.9 Projekt: Online-Wetterstation​

Kapitel 11: Fehlersuche/Troubleshooting​​

11.1 Allgemeines Vorgehen​

11.2 Fehler​ in der Schaltung

11.3 Fehler​ im Programm

11.4 Probleme​ mit der IDE

11.5 Hallo Arduino-Board

Kapitel 12: DIY Boards und Clones​​​

12.1 Boards

12.1.1 Minimalschaltung​ Arduino

12.1.2 Bare Bone Breadboard​ Arduino

12.1.3 Really Bare Bone Board​ (RBBB​)

12.1.4 Nanode​

12.1.5 Helvetino

12.1.6 Sippino​

12.1.7 RFBoard

12.2 Programmieradapter (USB-Wandler)

12.2.1 Anschlussbelegung​ FTDI

12.3 Programmierung über ICSP

12.3.1 Der Arduino als Programmiergerät (Arduino ISP)

12.4 Arduino im Miniaturformat mit ATtiny

12.4.1 tinyAVR und Arduino

12.4.2 Installation eines Zusatzpakets

12.4.3 (Blink-)Schaltung mit ATtiny

12.4.4 Programmierung des ATtiny-Mikrocontrollers

12.4.5 AVR-Programmer

12.4.6 Projekt Selbstbau-Programmieradapter

12.4.7 Projekt ICSP-Breakout-Board fürs Steckbrett

12.4.8 Projekt Windlicht

12.4.9 Prototypen-Board für ATtiny84

Kapitel 13: Tools für Praktiker

13.1 Hardware

13.1.1 Steckbrett​ und Kabel

13.1.2 Lochrasterplatinen​

13.1.3 Lötkolben​ und Lötzinn

13.1.4 Zangen

13.1.5 Biegelehre​

13.1.6 Multimeter​

13.1.7 Oszilloskop​ – Spannung sichtbar machen

13.2 Software

13.2.1 Schaltungsaufbau mit Fritzing

13.2.2 Eagle CAD

13.2.3 KiCad​

13.2.4 Oszilloskop​ mit Arduino

13.3 Leiterplatten​ herstellen

13.3.1 Datenformat​ Gerber​

13.3.2 Gerber-Daten aus Fritzing

13.3.3 Gerber-Daten aus Eagle

13.3.4 Gerber-Daten prüfen

13.3.5 Leiterplatten von OSH Park​

Anhang A: Codereferenz​

A.1 Programmstruktur​

A.2 Aufbau einer Funktion

A.3 Konventionen​​

A.4 Datentypen​

A.5 Datentypkonvertierung​

A.6 Variablen & Konstanten

A.6.1 Variablen​

A.6.2 Konstanten

A.7 Kontrollstrukturen​

A.8 Mathematische Funktionen​

A.9 Zufallszahlen​

A.10 Arithmetik​ und Vergleichsfunktionen

A.11 Funktionen

A.11.1 Digitale Ein- und Ausgänge​

A.11.2 Analoge Ein- und Ausgänge​

A.11.3 Tonausgabe​

A.11.4 Interrupts

A.12 Zeitfunktionen​

A.13 Serielle Kommunikation​

Anhang B: Boards​

B.1 Vergleich der Board-Varianten

B.2 Anschlussbelegung​ Mikrocontroller

Anhang C: Bezugsquellen

C.1 Bezugsquellen​ und Lieferanten​

Anhang D: Listings​

D.1 Wii-Nunchuk​-Funktionsbibliothek​ (Kapitel 6)

D.2 Mailchecker​ (Kapitel 10)

Anhang E: Migration zu Arduino 1.0​

Arduino

Praxiseinstieg

Thomas Brühlmann

Impressum

Bibliografische Information der Deutschen Nationalbibliothek

Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über <http://dnb.d-nb.de> abrufbar.

ISBN 978-3-95845-072-1

3. Auflage 2015

www.mitp.de

E-Mail: mitp-verlag@sigloch.de

Telefon: +49 7953 / 7189 - 079

Telefax: +49 7953 / 7189 - 082

© 2015 mitp Verlags GmbH & Co. KG

Dieses Werk, einschließlich aller seiner Teile, ist urheberrechtlich geschützt. Jede Verwertung außerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlages unzulässig und strafbar. Dies gilt insbesondere für Vervielfältigungen, Übersetzungen, Mikroverfilmungen und die Einspeicherung und Verarbeitung in elektronischen Systemen.

Arduino is a registered Trademark of the Arduino Team (http://arduino.cc/en/Main/FAQ)

Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, dass solche Namen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten wären und daher von jedermann benutzt werden dürften.

Lektorat: Sabine Schulz

Sprachkorrektorat: Knut Lorenzen

Coverbild: Produktbild Arduino Uno Rev.3, © 2012, arduino.cc

electronic publication: III-satz, Husby, www.drei-satz.de

Dieses Ebook verwendet das ePub-Format und ist optimiert für die Nutzung mit dem iBooks-reader auf dem iPad von Apple. Bei der Verwendung anderer Reader kann es zu Darstellungsproblemen kommen.

Der Verlag räumt Ihnen mit dem Kauf des ebooks das Recht ein, die Inhalte im Rahmen des geltenden Urheberrechts zu nutzen. Dieses Werk, einschließlich aller seiner Teile, ist urheberrechtlich geschützt. Jede Verwertung außerhalb der engen Grenzen des Urheherrechtsgesetzes ist ohne Zustimmung des Verlages unzulässig und strafbar. Dies gilt insbesondere für Vervielfältigungen, Übersetzungen, Mikroverfilmungen und Einspeicherung und Verarbeitung in elektronischen Systemen.

Der Verlag schützt seine ebooks vor Missbrauch des Urheberrechts durch ein digitales Rechtemanagement. Bei Kauf im Webshop des Verlages werden die ebooks mit einem nicht sichtbaren digitalen Wasserzeichen individuell pro Nutzer signiert.

Bei Kauf in anderen ebook-Webshops erfolgt die Signatur durch die Shopbetreiber. Angaben zu diesem DRM finden Sie auf den Seiten der jeweiligen Anbieter.

Kapitel 1: Einleitung

1.1  3. Auflage

Die 3. Auflage von »Arduino Praxiseinstieg« liegt vor Ihnen und ist eine aktuelle Einführung in die Programmierung der Arduino-Boards. In dieser Auflage wurden weitere, spannende Projekte mit Sensoren und Aktoren ergänzt.

Mit dem Arduino Yun hat das Arduino-Team ein erstes Linux-basiertes Board entwickelt, das durch das integrierte WiFi-Modul viele Möglichkeiten für komplexere und drahtlose Anwendungen bietet.

Kompakte Anwendungen mit dem Arduino sind ein Wunsch vieler Arduino-Anwender. Dank der Mikrocontroller der ATtiny-Serie können kleine Arduino-Anwendungen ohne hohen Bauteilaufwand umgesetzt werden.

Viele Maker realisieren nicht nur eigene Projekte, sondern entwickeln mittlerweile auch eigene Leiterplatten dafür. Dank der Leiterplattenhersteller, die sich im Open Source-Bereich etabliert haben, kann auch ein Hobby-Anwender kostengünstig stabile Boards für kleinere Serien produzieren lassen.

Kurz vor Veröffentlichung dieser 3. Auflage hat das Arduino-Team die Entwicklungsumgebung der Version 1.6 freigegeben. Nun können alle verfügbaren Arduino-Boards über die gleiche Software-Umgebung programmiert werden.

Dieses Praxisbuch soll ein Führer beim Einstieg​ in das Thema Arduino sein und den Leser dabei unterstützen, Schritt für Schritt Hard- und Software kennenzulernen, um die ersten Erfolgserlebnisse feiern zu können. Die hier zum Einsatz kommende Art des Mixes von Hard- und Software wird »Physical Computing«​ genannt. Physical-Computing-Projekte haben meist einen künstlerischen Hintergrund und verbinden den Menschen mit den digitalen Systemen. Die Verbindung zwischen Mensch oder Umwelt und digitalen Systemen wird auch in vielen Selbstbau- oder Bastelprojekten umgesetzt. Dabei geben Eingabeelemente und Sensoren Signale an Computersysteme weiter, in unserem Fall das Arduino-Board, und diese verarbeiten die Informationen in Form einer Reaktion, beispielsweise einer Ausgabe auf ein Display oder das Ansteuern einer Lampe, eines Motors oder eines Servos.

Bestimmt sind viele Inhalte und Beispiele in diesem Buch auch an anderen Orten in ähnlicher Form zu finden. Wichtige und grundlegende Informationen müssen trotzdem erwähnt werden, damit das Verständnis für den nächsten Schritt vorhanden ist.

Darum gibt es im Buch auch viele Verweise auf Lösungen und Beispiele, die bereits realisiert wurden. Einige sagen jetzt vielleicht, dass man für eine Linkliste normalerweise kein Geld bezahlt. Aber oft ist es schwierig, das Richtige in der großen Masse von Informationen im Internet zu finden. Gute Ideen sollten auch erwähnt werden, da sie wieder neue Ideen für eigene Anwendungen generieren.

1.2  Aufbau des Buches

Am besten arbeitet man das Buch der Reihe nach durch, da die einzelnen Kapitel aufeinander aufbauen. In den ersten Kapiteln werden zunächst die wichtigsten Grundlagen der Hard- und Software des Arduino-Projekts beschrieben. Wer dieses Wissen bereits erworben hat, kann diese Kapitel natürlich überspringen.

In Kapitel 2 wird kurz über die Entstehung des Arduinos​ berichtet und die Idee vom Basteln, Testen und Ausprobieren erläutert. Das Ganze ist aber kurz gehalten, da das Ziel dieses Buches die praktische Arbeit ist. Im Anschluss beginnt dann der praktische Teil. Sie lernen zuerst die Hardware und die verschiedenen Arduino​-Boards kennen. Begriffe werden erklärt und dann startet schon die eigentliche Installation der Software, der Entwicklungsumgebung. Nach erfolgreicher Installation und Verbindung mit der Arduino-Plattform schließt das Kapitel mit dem ersten Programm, dem Testprogramm Blink. Es folgt eine Einführung in die Oberfläche der Entwicklungsumgebung, und schon ist sie für die ersten Programme bereit.

Kapitel 3 startet mit einem Hardwareteil, in dem Sie die Arduino-Boards und den Schaltungsaufbau​ mit dem Steckbrett​ kennenlernen. Anschließend werden die Begriffe Strom, Spannung und Widerstand sowie die wichtigsten elektronischen Bauelemente​ erklärt. Als Nächstes werden die wichtigsten Begriffe rund um den Programmcode erklärt: Was ist eine Variable und wie ist eine Funktion aufgebaut? Nach der Einführung in die Struktur der Arduino-Programme wird das Testen und Debuggen des Programmcodes beschrieben. Hier wird aufgezeigt, wie man den seriellen Monitor zur Fehlersuche nutzen kann.

Digitale Eingänge lesen und Ausgänge schalten sind die nächsten Schritte in Kapitel 4. Die erste Leuchtdiode wird zum Leuchten gebracht. Im Anschluss befassen wir uns mit der analogen Welt. Es werden grundsätzliche Themen wie die Auflösung von Analogwandlern​ erklärt. Das erste richtige Programm liest die Sensorspannung eines Temperatursensors​ ein und gibt den Wert im seriellen Monitor​ aus. Nach dem Einlesen von analogen Werten werden analoge Signale mittels Pulsweitenmodulation ausgegeben.

Das nächste Thema in Kapitel 4 ist die serielle Kommunikation​ über die serielle Schnittstelle (RS232). Es werden Daten ausgegeben und eingelesen. Anschließend wird der Datentransfer über einen 2-Draht-Bus​ (I²C-Bus und Two-Wire-Bus) beschrieben. Daten werden von einem Master zum Slave versendet, wodurch ein Miniatur-Servo gesteuert wird. Weiter werden praktische I²C-Anwendungen wie ein serieller Sensor und eine busfähige Uhrenanwendung realisiert. Zum Schluss wird noch eine drahtlose Kommunikation mittels 433-MHz-Technologie​ erklärt. Ein Projekt, in dem ein elektronischer Würfel aufgebaut wird, schließt dieses Kapitel ab.

In Kapitel 5 werden Sensoren wie ein Fotowiderstand und viele Temperatursensoren sowie weitere Sensoren zur Umwelterfassung beschrieben. Danach folgt die Beschreibung sonstiger Sensoren. Mit einem Beschleunigungssensor wird eine kleine Wasserwaage​ realisiert. Als Kapitelprojekte werden ein elektronischer Kompass und ein Gefrierschrankwächter realisiert.

Als Nächstes folgen in Kapitel 6 die Aktoren​ wie Relais und Servo. Bei einer Servoanwendung wird ein Servo zu einer analogen Temperaturanzeige umgebaut. Nun lernt der Leser die verschiedenen Motoren und deren Ansteuerung kennen. Die Erläuterung der Frage, wie man hohe Lasten schaltet, schließt das Thema Aktoren ab. Als Kapitelprojekt wird ein kleiner Roboter realisiert. Der kleine Roboter kann dabei mittels einer bekannten Komponente aus dem Spieleboxbereich gesteuert werden, dem Wii Nunchuk, dem Joystick für die Wii-Spielkonsole.

Kapitel 7 behandelt die verschiedenen Anzeigeelemente​. Es wird erklärt, wie man diese ansteuert und wie man die Helligkeit regeln oder fest begrenzen kann. Beispiele von Ansteuermöglichkeiten für LC-Displays und LED-Matrix und ein Beispiel mit einem Nokia-Display runden das Thema Anzeigen ab. Ein Geschwindigkeitsmesser fürs Fahrrad und ein Schrittzähler für Jogger schließen dieses Kapitel ab.

Kapitel 8 beschreibt die verschiedenen Arten der Datenverarbeitung​. Es werden Daten in ein EEPROM​ und auf eine SD-Karte​ geschrieben. Danach wird die Weiterverarbeitung der Daten mit Processing​ genauer angeschaut. Zum Schluss erfahren Sie, wie man mit einem externen Programm die Datenverarbeitung für verschiedene Aufgaben auslagern kann. In einem praktischen Projekt wird ein programmierbarer Signalgeber zur Erzeugung analoger Signale realisiert. Dabei lernen Sie eine neue Variante der Ansteuerung von Digitalports kennen. Als Abschlussprojekt wird ein Netzteil​ aufgebaut, das über eine Folientastatur​ bedient wird.

In Kapitel 9 werden verschiedene Softwarebibliotheken​ zur Erweiterung der Arduino-Funktionalität vorgestellt. Der zweite Teil dieses Kapitels behandelt die Hardwareerweiterungen​, »Shields« genannt. Einige wichtige und nützliche Shields werden etwas genauer betrachtet. Zum Abschluss dieses Kapitels wird eine praktische Lösung zur Herstellung eines Wii-Adapters vorgestellt.

Kapitel 10 beschreibt verschiedene praktische Arduino​-Lösungen und wie man mittels Ethernet-Erweiterung mit dem Arduino kommunizieren kann. Wir werden einen E-Mail-Checker realisieren und unsere Mailbox abfragen. Eine Anwendung wird Meldungen an Twitter senden. Zum Abschluss dieses Kapitels werden Sensordaten gesammelt und an ein Auswertungstool übertragen. Im Schlussprojekt dieses Kapitels wird eine kleine Wetterstation​ aufgebaut, die das aktuelle Wetter und die Wettervorhersage für den kommenden Tag anzeigt.

Fehlersuche​ und Troubleshooting​ sind die Themen in Kapitel 11. Es wird gezeigt, wie man die eigene Schaltung oder das neu erstellte Programm zum Laufen bringt.

Kapitel 12 beschreibt verschiedene Arduino-Clones​ und wie man sich einen minimalen Arduino auf dem eigenen Steckbrett aufbauen kann.

In Kapitel 13 werden verschiedene Werkzeuge​ beschrieben, die bei den Arduino-Projekten nützlich und hilfreich sind. Neben Steckbrett, Lötkolben und Zangen werden auch Messgeräte wie Multimeter​ und Oszilloskop​ erläutert. Im Teil zum Thema Softwaretools lernen Sie Programme zur Schaltplan- und Leiterplattenerstellung kennen. Abschließend wird die auf einem Arduino-Board basierende Variante eines Oszilloskops beschrieben.

Im Schlussteil und Anhang des Buches finden Sie eine Codereferenz​, eine Board-Übersicht sowie Informationen über Bezugsquellen. Das letzte Kapitel im Anhang listet die Anpassungen auf, die bei der Migration von älteren Arduino-Anwendungen auf die aktuelle Version 1.0 nötig sind.

1.3  Mehr Informationen

Weitere Informationen zu den Anwendungen und Beispielen im Buch sind auf der Buchwebsite erhältlich:
http://arduino-praxis.ch

Die Beispielskripte​ stehen im Downloadbereich zur Verfügung.

Für Anmerkungen oder Anregungen zu diesem Thema und die Kontaktaufnahme mit dem Autor stehen die Kontaktseite der Buchwebsite, E-Mail und Twitter zur Verfügung.

Die E-Mail-Adresse zum Buch lautet:
kontakt@arduino-praxis.ch

Der Twitter-Account lautet:
http://twitter.com/arduinopraxis oder der User @arduinopraxis.

Im Blog zum Buch werden laufend neue und interessante Projekte sowie Produktvorstellungen aus der Arduino-Welt publiziert.

1.4  Weitere Quellen

Die größte Quelle für weitere Fragen zum Arduino ist natürlich das Internet. Zu fast jedem Problem gibt es bereits realisierte Lösungen oder Ansätze.

Für Arduino-Anwender sind folgende Websites ideale und empfehlenswerte Anlaufstellen bei Problemen und Fragen.

Arduino-Website:
http://arduino.cc/

Arduino-Forum:
http://www.arduino.cc/forum/

Make:Blog:
http://blog.makezine.com/

Ladyada.net:
http://www.ladyada.net/learn/arduino/

1.5  Danksagung

Mein Dank geht vor allem an meine Familie, meine Frau Aga und meine beiden Jungs Tim und Nik. Auch während der Arbeit an der 3. Auflage dieses Buches mussten sie wieder viele Stunden ohne mich auskommen. Die Skiferien haben sie abermals allein verbracht und auch viele Stunden an den Wochenenden waren für das Schreiben des Buches verplant. Aber alle haben sehr viel Verständnis gezeigt und mich dabei unterstützt. Mein MintyBoost​ ist, dank der perfekten Lötarbeit von Tim, bei mobilen Arduino-Anwendungen weiterhin im Einsatz.

Einen Dank möchte ich auch meinem Hardwarelieferanten aussprechen. Die Firma Boxtec (http://shop.boxtec.ch/) hat meine Arbeit am Buch mit Musterkomponenten und Vergünstigungen beim Hardwareeinkauf unterstützt. Lieber Christoph, herzlichen Dank dafür.

Ein weiterer Dank geht an die Arduino-Community. Ohne sie wäre dieses Buch nicht entstanden, niemand hätte originelle Lösungen und Lösungsansätze realisiert, die mich zu meinem Buch inspirierten. Viele nette und konstruktive E-Mails und Kommentare zum Buch haben mir Auftrieb für die 3. Auflage gegeben.

Natürlich möchte ich auch einen Dank an das Arduino-Core-Team aussprechen. Die Realisierung dieses Open-Source-Projekts ist eine Bereicherung für die Hardwaregemeinde. Die Idee einer Open-Source-Plattform, offener Hardware und kostenloser Entwicklungstools ist einfach großartig.

Zum Schluss möchte ich mich wiederum bei meiner Lektorin Sabine Schulz bedanken. Sie hat mir die nötige Zeit gegeben, um diese 3. Auflage mit vielen neuen Projekten zu schreiben.

Abb. 1.1: Tim beim Ausmessen des aufgebauten MintyBoost

Kapitel 2:Arduino-Plattform

2.1Am Anfang war der König

Arduin von Ivrea war in den Jahren 1001 bis 1015 der Markgraf von Ivrea​, einer italienischen Stadt in der Region Piemont. Dieser Graf Arduin, in den Jahren 1002 bis 1004 auch König von Italien, ist der indirekte Namensgeber des Arduino-Projekts. Indirekt, weil er das Projekt nicht selbst so getauft hat, dies haben Dozenten am Interaction Design Institute Ivrea​ (IDII) getan. Andere meinen, dass die Bar in der Nähe des Instituts der Namensgeber für das Arduino-Board sei.

Tatsache ist, dass die Dozenten und Studenten vor dem Problem standen, dass es zum damaligen Zeitpunkt keine einfachen und kostengünstigen Mikrocontroller-Systeme​ für Designstudenten und deren Design- und Kunstprojekte gab. Zusammen mit Elektronikingenieuren wurde daher eine erste Serie von Arduino-Boards produziert. Als Entwicklungsumgebung stand die Processing-Umgebung Pate, und daraus wurde eine Programmiersprache für den Arduino entwickelt.

Durch die Offenheit dieser Plattform – die Entwicklungsumgebung​ ist kostenlos verfügbar und die Hardware kann man fertig kaufen, oder man stellt sie sich selbst her – hat sich die Arduino-Community schnell vergrößert. Viele Studenten und Bastler haben Lösungen und eigene Boards realisiert und die Projektinformationen und Daten im Internet publiziert.

Die Rechte für die Marke »Arduino​« gehören der Firma tinker.it. Der Rest des Arduino-Projekts ist frei verfügbar und kann kostenlos genutzt werden.

Viele findige Tüftler haben neue Board-Varianten erstellt und Firmen bieten einzelne Komponenten oder ganze Bausätze zum Verkauf an, wobei Stromlaufpläne und auch Programme für diese fertigen Produkte und Lösungen bereitgestellt und von den Bastlern weiterverwendet werden dürfen. So verhält es sich beispielsweise auch mit den Daten des Standardboards des Arduino. Auf der Website des Arduino-Projekts sind die technischen Daten des Boards ausführlich beschrieben. Über die verschiedenen Distributoren können interessierte Anwender die fertig aufgebauten und geprüften Standardboards bestellen. Praktisch begabte Anwender, die auch die technischen Kenntnisse und die nötige Infrastruktur besitzen, können die Boards anhand der CAD-Daten selbst herstellen oder sie von einem professionellen Leiterplattenhersteller produzieren lassen.

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!

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!