Arduino™: Mikrocontroller-Programmierung mit Arduino ... · PDF fileÜber 70 Quellcodes zu den Experimenten Open-Source-VB.NET-Programme zum Messen und Steuern Ulli Sommer Arduino™

Embed Size (px)

Citation preview

  • ber 70 Quellcodes zu den Experimenten

    Open-Source-VB.NET-Programme zum Messen und Steuern

    Ulli Sommer

    ArduinoMikrocontroller-Programmierungmit Arduino/Freeduino

    Das kleine Controllerboard mit den vielen Mglichkeiten.

    Mikrocontroller werden vor allem im Bereich der Automatisierungs-, Mess-, Steuer- und Regeltechnikeingesetzt. Der Vorteil eines Mikrocontroller-Systemsist, dass es auf kleinstem Raum energie- und kosten-effizient physikalische Gren misst und interpretiert,um darauf aufbauend Entscheidungen zu treffen undAktionen durchzufhren. Im Grunde ist jede Aufgabe,die man mit Arduino lsen mchte, eine Aufgabeaus dem Bereich MSR (Messen, Steuern, Regeln).

    Damit Ihr Einstieg in die Welt der Mikrocontrollerschnell und effizient gelingt, finden Sie in diesem Buchalles, was Sie ber die Arduino-Programmierungwissen mssen. Neben Grundlagenwissen bietet esdie besten Tricks und Kniffe, die Sie bei Ihren eigenenProjekten einsetzen knnen.

    Verleihen Sie Ihren Ideen Flgel: Egal ob Sie eine Haus-steuerung oder eine LED-Leuchte mit Farbwechselbauen mchten mit Arduino ist es auch fr Quer-einsteiger leicht, funktionsfhige Programme zuschreiben und Projekte zu verwirklichen, die den Alltag erleichtern und einfach Spa machen.

    Vom Dmmerungsschalter ber Alarmanlagen undCodeschlsser bis zum romantischen Mikrocontroller-Kerzenlicht: Entdecken Sie die Mglichkeiten, die dieArduino-Programmierung bietet!

    Ulli Sommer

    30, EUR [D] / 30,90 EUR [A]ISBN 978-3-645-65147-9

    ArduinoMikrocontroller-Programmierungmit Arduino/Freeduino

    Som

    mer

    PC undElektronik

    Ard

    uin

    oM

    ikro

    con

    trol

    ler-

    Prog

    ram

    mie

    run

    gm

    it A

    rdu

    ino

    /Fre

    edu

    ino

    Aus dem Inhalt: Mikrocontroller-Grundlagen

    bersicht der Arduino-Boardsund Shields

    Die Bauteile und ihre Funktion

    Programmier-Grundlagen

    Ntzliche und spaige Programme: LED-Dimmer,Musik, Kerzenlicht, Lfter-steuerung, Uhr, Alarmanlage,Codeschloss, 6-Kanal- Volt-meter, Speicheroszilloskop ...

    und vieles mehr!

    Besuchen Sie unsere Website www.franzis.de

    ber den Autor:Ulli Sommer beschftigt sich seit Jahren professionell mit Mikro-controllern. Als Autor zahlreicher Bcher und Lernpakete des FranzisVerlags hat er sich auf die ThemenMikrocontroller, Robotik und Elektro-nik spezialisiert. Er entwirft und fertigt auf Mikrocontrollern basierendeSteuerungen, entwickelt Robotersys-teme zur berwachung, Inspektion,Naturbeobachtung und Ausbildungsowie Software im Bereich Automati-sierung und Prozessberwachung.

    Inklusive CD

    65147-9 U1+U4 29.05.13 11:34 Seite 1

  • Ulli Sommer

    Arduino

    Mikrocontroller-Programmierungmit Arduino/Freeduino

    65147-9 Titelei_X 29.05.13 11:23 Seite 1

  • ber 70 Quellcodes zu den Experimenten

    Open-Source-VB.NET-Programme zum Messen und Steuern

    Ulli Sommer

    ArduinoMikrocontroller-Programmierungmit Arduino/Freeduino

    65147-9 Titelei_X 29.05.13 11:23 Seite 3

  • Bibliografische Information der Deutschen Bibliothek

    Die Deutsche Bibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie;detaillierte Daten sind im Internet ber http://dnb.ddb.de abrufbar.

    Alle Angaben in diesem Buch wurden vom Autor mit grter Sorgfalt erarbeitet bzw. zusammengestellt und unterEinschaltung wirksamer Kontrollmanahmen reproduziert. Trotzdem sind Fehler nicht ganz auszuschlieen. DerVerlag und der Autor sehen sich deshalb gezwungen, darauf hinzuweisen, dass sie weder eine Garantie noch diejuristische Verantwortung oder irgendeine Haftung fr Folgen, die auf fehlerhafte Angaben zurckgehen, ber-nehmen knnen. Fr die Mitteilung etwaiger Fehler sind Verlag und Autor jederzeit dankbar. Internetadressenoder Versionsnummern stellen den bei Redaktionsschluss verfgbaren Informationsstand dar. Verlag und Autorbernehmen keinerlei Verantwortung oder Haftung fr Vernderungen, die sich aus nicht von ihnen zu vertreten-den Umstnden ergeben. Evtl. beigefgte oder zum Download angebotene Dateien und Informationen dienen aus-schlielich der nicht gewerblichen Nutzung. Eine gewerbliche Nutzung ist nur mit Zustimmung des Lizenzinha-bers mglich.

    Arduino ist ein eingetragenes Markenzeichen von Arduino LLC und den damit verbundenen Firmen.

    2013 Franzis Verlag GmbH, 85540 Haar bei Mnchen

    Alle Rechte vorbehalten, auch die der fotomechanischen Wiedergabe und der Speicherung in elektronischen Me-dien. Das Erstellen und Verbreiten von Kopien auf Papier, auf Datentrgern oder im Internet, insbesondere als PDF,ist nur mit ausdrcklicher Genehmigung des Verlags gestattet und wird widrigenfalls strafrechtlich verfolgt.

    Die meisten Produktbezeichnungen von Hard- und Software sowie Firmennamen und Firmenlogos, die in diesemWerk genannt werden, sind in der Regel gleichzeitig auch eingetragene Warenzeichen und sollten als solche betrachtet werden. Der Verlag folgt bei den Produktbezeichnungen im Wesentlichen den Schreibweisen der Hersteller.

    Satz: DTP-Satz A. Kugge, Mnchenart & design: www.ideehoch2.deDruck: C.H. Beck, NrdlingenPrinted in Germany

    ISBN 978-3-645-65147-9

    65147-9 Titelei_X 29.05.13 11:23 Seite 4

  • 5

    Vorwort Vielen fllt der Einstieg in die Mikrocontroller-Programmierung und die dazugehrige Elektronik schwer. Bei den meisten Mikrocontroller-Systemen muss man sich erst durch unzhlige und fr den Anfnger nur schwer verstndliche Datenbltter whlen, bevor man berhaupt mit der eigentlichen Programmierung beginnen kann. Und auch bei der Programmierung ist man stets auf das Datenblatt angewiesen. Die Programmierober-flchen sind zudem meist sehr kompliziert und fr den Profi-Programmierer ausgelegt, der bereits Erfahrung mit Mikrocontrollern besitzt. Somit bleibt manchem, der an Mikro-controllern und dem Programmieren interessiert ist, der Zugang in diese Welt verwehrt.

    Arduino ist eine leicht verstndliche und schnell zu erlernende Open-Source-Plattform, basierend auf einem Mikrocontrollerboard mit einem Atmel-AVR-Controller und einer einfach gehaltenen Programmierumgebung. Fr die Interaktion zwischen Mensch und Mikrocontroller knnen diverse analoge und digitale Sensoren angeschlossen werden, die die Umwelt erfassen und die Daten an den Mikrocontroller weitergeben. Der Mikrocontroller verarbeitet die eingehenden Daten, und durch das Programm entstehen neue Ausgabedaten in analoger oder digitaler Form. Hierbei sind der Kreativitt des Entwicklers keine Grenzen gesetzt. Egal, ob Sie eine Haussteuerung bauen mchten oder eine LED-Leuchte mit Farbwechsel basteln mit Arduino ist es auch fr den Querein-steiger leicht, die ersten funktionsfhigen Programme zu schreiben und so seine Ideen zu verwirklichen.

    Das einfache Zusammenspiel aus Hard- und Software bildet die Basis fr Physical Computing, der Verbindung der realen Welt mit der des Mikrocontrollers, die aus Bits und Bytes besteht.

    Dieses Buch ist eine erweiterte Auskoppelung aus dem Franzis Arduino-Lernpaket. Es vermittelt die Grundlagen der Arduino-Programmierung und einige Kniffe, die Sie bei Ihren eigenen Projekten verwenden knnen. Ein paar Grundkenntnisse in der Elektronik sollten Sie jedoch bereits mitbringen, da in diesem Buch nicht auf jedes Detail eingegangen werden kann. Es ist zudem ein Vorteil, wenn Sie sich bereits mit einer Program-miersprache beschftigt haben, weil Sie dann die Zusammenhnge leichter verstehen. Aber auch der blutige Anfnger wird mit etwas Eigeninitiative schnell Erfolge erzielen.

    CD zum Buch Diesem Buch liegt eine CD bei, die verschiedene Programme, Tools, Datenbltter und Beispiele enthlt. Die CD erleichtert das Arbeiten mit diesem Buch. Die hier abge-druckten Beispiele sind auf der CD enthalten.

    Inhalt der CD Arduino-Entwicklungsumgebung (IDE)

    Beispiel-Programmcode

  • 6 Vorwort

    diverse Tools

    Datenbltter

    Schaltplne

    GPL (General Public License) Sie knnen Ihre eigenen Programme mit anderen Anwendern ber das Internet austau-schen. Die Beispielprogramme stehen unter der Open-Source-Lizenz GPL (General Public License). Daher sind Sie berechtigt, die Programme unter den Bedingungen der GPL zu modifizieren, zu verffentlichen und anderen Anwendern zur Verfgung zu stellen, sofern Sie Ihre Programme dann ebenfalls unter die GPL-Lizenz stellen.

    Systemvoraussetzungen: Windows XP/Vista/7/8 32 Bit und 64 Bit, Linux 32 Bit und 64 Bit, Mac OS X, CD-Laufwerk, Java

    Nheres finden Sie auf den Internetseiten zu den verwendeten Programmen:

    www.arduino.cc

    www.fritzing.org

    www.processing.org

    Updates und Support: Arduino wird stndig weiterentwickelt. Updates knnen kostenlos von der Website http://arduino.cc heruntergeladen werden.

    Sicherheitshinweise Die Arduino-Platine ist weitgehend gegen Fehler abgesichert, sodass es kaum mglich ist, den PC zu beschdigen. Die Anschlsse der USB-Buchse sind auf der Platinen-unterseite nicht isoliert. Wenn Sie die Platine auf einen metallischen Leiter stellen, kann es daher zu einem hheren Strom kommen, was den PC und die Platine beschdigen knnte.

    Beachten Sie bitte die folgenden Sicherheitsregeln: Vermeiden Sie metallische Gegenstnde unter der Platine oder isolieren Sie die

    gesamte Unterseite mit einer nicht leitenden Schutzplatte oder Isolierband.

    Halten Sie Netzteile, andere Spannungsquellen oder fhrende Leiter mit mehr als 5 V von der Experimentierplatine fern.

    Schlieen Sie die Platine nach Mglichkeit nicht direkt an den PC an, sondern ber einen Hub. Dieser enthlt meist eine zustzliche wirksame Schutzschaltung. Wenn dennoch etwas passiert, wird im Normalfall nur der Hub und nicht der PC besch-digt.

  • 7

    Inhaltsverzeichnis

    1 Mikrocontrolle