15
Kimmo Karvinen & Tero Karvinen Übersetzung von Thomas Demmig Das Sensor- Buch Die Welt messen mit Elektronik, Arduino und Raspberry Pi

Das Sensor- Buch - download.e-bookshelf.de · ordentlichangeschlossen wirdundwelcheGrundlagenhier wichtigsind.Im zweiten Teil geht es dann darum, wie die Sensordaten verarbeitet werden

Embed Size (px)

Citation preview

Kimmo Karvinen & Tero Karvinen Übersetzung von Thomas Demmig

Das Sensor- Buch

Die Welt messen mit Elektronik, Arduino und Raspberry Pi

DasSensor-Buch

Kimmo Karvinen &Tero Karvinen

Beijing � Cambridge � Farnham � Köln � Sebastopol � Tokyo

Die Informationen in diesem Buch wurden mit größter Sorgfalt erarbeitet.Dennoch können Fehler nicht vollständig ausgeschlossen werden. Verlag, Autorenund Übersetzer übernehmen keine juristische Verantwortung oder irgendeineHaftung für eventuell verbliebene Fehler und deren Folgen.

Alle Warennamenwerden ohne Gewährleistung der freien Verwendbarkeitbenutzt und sind möglicherweise eingetrageneWarenzeichen. Der Verlag richtetsich im Wesentlichen nach den Schreibweisen der Hersteller. Das Werkeinschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechtevorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmungsowie Einspeicherung und Verarbeitung in elektronischen Systemen.

Kommentare und Fragen können Sie gerne an uns richten:O’Reilly VerlagBalthasarstr. 8150670 KölnE-Mail: [email protected]

Copyright der deutschen Ausgabe:© 2014 O’Reilly Verlag GmbH& Co. KG

Die Originalausgabe erschien 2014 unter dem Titel Getting Started with Sensorsbei Make Media, Inc.

Bibliografische Information Der Deutschen Bibliothek

Die Deutsche Bibliothek verzeichnet diese Publikation in der DeutschenNationalbibliografie; detaillierte bibliografische Daten sind im Internet überhttp://dnb.dnb.de abrufbar.

Lektorat: Volker Bombien, KölnÜbersetzung: Thomas DemmigKorrektorat: Dr. Dorthée Leidig, Freiburg i. Br.Satz: le-tex publishing services GmbH, Leipzig, www.le-tex.deUmschlaggestaltung: Michael Oreal, KölnProduktion: Karin Driesen, KölnBelichtung, Druck und buchbinderische Verarbeitung:Druckerei Media-Print, Paderborn

ISBN: 978-3-95561-902-2

Dieses Buch ist auf 100% chlorfrei gebleichtem Papier gedruckt.

Inhaltsverzeichnis

Vorwort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v

1/Sensoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

Projekt 1: Licht mit einem Fotowiderstand messen . . . . . . . . . . . . . . . . . . 3

Interaktive Sensor-Steuerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

Nächste Schritte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2/Einfache Sensoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Projekt 2: Ein einfacher Schalter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Eine LED benötigt einen Widerstand . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

Projekt 3: Die Lautstärke eines Summers steuern . . . . . . . . . . . . . . . . . . . 13

Projekt 4: Hall-Effekt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

Projekt 5: Glühwürmchen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3/Sensoren und Arduino . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

Projekt 6: Drucktaster und Pull-Up-Widerstände . . . . . . . . . . . . . . . . . . . . 35

Projekt 7: Infrarot-Messung zum Erkennen von Objekten . . . . . . . . . . . . . . 40

Projekt 8: Rotation (Potentiometer) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

Projekt 9: Licht mit einem Fotowiderstand messen . . . . . . . . . . . . . . . . . . 48

Projekt 10: Druck mit dem FlexiForce messen . . . . . . . . . . . . . . . . . . . . . . 50

Projekt 11: Die Temperatur messen (LM35) . . . . . . . . . . . . . . . . . . . . . . . . 54

Projekt 12: Abstandsmessung per Ultraschall (HC-SR04) . . . . . . . . . . . . . 57

Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

4/Sensoren mit dem Raspberry Pi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

Projekt 13: Taster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

Hallo Python-Welt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

Projekt 14: Eine LEDmit Python blinken lassen . . . . . . . . . . . . . . . . . . . . . 70

Projekt 15: Anpassbarer Infrarotsensor . . . . . . . . . . . . . . . . . . . . . . . . . . 74

AnalogeWiderstandssensoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

Projekt 16: Mit einem Potentiometer eine Drehung messen . . . . . . . . . . . . 79

Projekt 17: Fotowiderstand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

Projekt 18: FlexiForce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

Projekt 19: Temperaturmessung (LM35) . . . . . . . . . . . . . . . . . . . . . . . . . 89

Projekt 20: Ultraschall-Abstandsmessung . . . . . . . . . . . . . . . . . . . . . . . . 92

iii

A/Tipps für die Fehlersuche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

B/Einrichten der Arduino-IDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

C/Den Raspberry Pi einrichten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

D/Materialliste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

iv Das Sensor-Buch

Vorwort

Die Welt um Sie herum besteht aus vielen Dingen. Von den meisten davonbekommen Sie dank eines oder mehrerer Ihrer fünf Sinne etwas mit. DieSinneswahrnehmung vollzieht sich so schnell und häufig, dass man leichtübersieht, was für ein beeindruckendes System der Mensch eigentlich ist.

Nehmen Sie sich einen Moment Zeit und überlegen Sie, wie viele sensori-sche Ereignisse Sie schon erlebt haben, seit Sie heute aufgewacht sind. Ver-mutlich werden Sie gar nicht alle Ereignisse aufzählen können. Sie erfahrenIhre Umgebung nicht nur kontinuierlich mit Ihren Sinnen – die Sinne arbei-ten auch noch zusammen, um Ihnen ein Bild der Welt um Sie herum zu ver-mitteln. So sind die Wahrnehmungen, dass Leute vorbeigehen, die SonneIhr Gesicht wärmt oder Sie einen Windhauch am Morgen als kühler emp-finden denn am Nachmittag, gute Beispiele für die Arbeit Ihrer Sinne unddie Verarbeitung in Ihrem Gehirn. Aber wie kann ein Roboter oder ein Gad-get Ähnliches empfinden? Sie wissen vermutlich schon, wie das möglich ist(schließlich haben Sie ein Buch zu dem Thema gekauft): mithilfe von Sen-soren.

Durch Sensoren, die Sie in einen Schaltkreis einfügen, erweitern Sie dessenFähigkeiten genauso, wie Ihre eigenen Sinne Ihr Bewusstsein für die Welterweitern. Sensoren dienen als Quelle für Informationen zur Umgebung –sie funktionieren ähnlich wie Ihre eigenen Sinne. Aber Sinneseindrücke sindnicht das einzige Thema imZusammenhangmit Sensoren. EineKomponen-te hat nicht notwendigerweise die Fähigkeit, Schlussfolgerungen zu ziehen,wenn ein bestimmtes Ereignis eintrifft. Stellen Sie sich zum Beispiel vor,draußen sind es -5 °CundSiewollen spazieren gehen.Was sollten Sie anzie-hen? Natürlich wissen Sie, dass ein Mantel und Winterkleidung angebrachtsind, aber ein Temperatursensor weiß das nicht. Er kann Ihnen natürlicheine Temperaturangabe machen, aber er kann keine Entscheidungen oderSchlussfolgerungen treffen, was Sie tragen sollten – zumindest nicht aufKomponentenebene. Sollen Sensoren etwas ähnlich erfassen wie Ihre Sin-ne und die Ergebnisse reflektieren, müssen die Messergebnisse noch verar-beitet werden. Aber Sensoren sind ja auch Komponenten, die Sie so mit an-deren Elementen verbinden, dass deren Daten immer irgendwie verarbeitetwerden – sei es per Hardware oder Software. Und darum geht es in diesemBuch:Wie werdenSensoren angeschlossen undwie verarbeiten Sie ihre Da-ten?

Im ersten Teil dieses Buches werden Sie erfahren, wie Sie Sensoren mit an-deren Komponenten verbinden. Die anschließende Datenverarbeitung istdabei eher einfach gehalten, denn der Fokus liegt darauf, wie der Sensor

v

ordentlich angeschlossen wird und welche Grundlagen hier wichtig sind. Imzweiten Teil geht es dann darum, wie die Sensordaten verarbeitet werden.Sie erfahren, wie einfach und schnell Programme für den Arduino geschrie-ben werden, aber auch, wie Sie einen Raspberry Pi verbinden und program-mieren, um analoge Sensoren einsetzen zu können.

In diesem Buch stellen wir den Umgang mit einigen der nützlichsten undinteressantesten Sensoren vor. Neben den Sensoren und Anwendungen er-lernen Sie auch das Erkennen und Reagieren auf:

• Klicks und Drehungen eines Potentiometers

• Abstandsmessung per Ultraschall

• Kollisionserkennungmit einem Infrarotsensor

• Licht und Dunkelheit mit einem Fotowiderstand

• Temperatur mit einem Thermometer

Welche Sensoren sollten Sie kaufen?In diesem Buch geht es um eine Reihe von Sensoren und Komponenten (einpaar davon sind in Abbildung 1 zu sehen). Um die Beschaffung einfacherzu gestalten, haben wir in Anhang D eine Einkaufsliste erstellt, in der Siedie Materialien finden, mit denen alle Projekte in diesem Buch umgesetztwerden können.

Für das Arduino-Board gibt es eine Reihe bekannter Händler, die auchdazu passende weitere Komponenten verkaufen, zum Beispiel Maker Shed(http://makershed.com), SparkFun Electronics (http://www.sparkfun.com), Parallax (http://www.parallax.com) und Adafruit (http://www.adafruit.com). Alle vier Händler sollten die meisten in diesem Buch genutz-ten Sensoren führen und als Orginal-Teile mit hoher Qualität verkaufen.

Abbildung 1: Arduino, Sensoren und Komponenten

vi Das Sensor-Buch

Beginnen Sie mit Ihrer Suche also dort. In Deutschland ist Watterott(http://www.watterott.com) eine sehr gute Adresse.

Globale Elektronikhändlerwie Element14 (http://www.element14.com) undRS Components (http://www.rs-components.com) sind auch gute Quel-len. Allerdings können ihre Teilelisten den Einsteiger durchaus verwirren.Dort finden sich Komponenten, die sich nur in Pin-Belegung oder Span-nungstoleranzen unterscheiden – für einen Anfänger eine schwierige Wahl.Aber auch hier sind die verkauften Komponenten von guter Qualität undmitentsprechender Dokumentation versorgt. In Deutschland am bekanntestendürftenReichelt (http://www.reichelt.de) undConrad (http://www.conrad.de) sein.

Manche Online-Shops sind sehr günstig, aber dort finden Sie meist keineoffiziellen Arduino-Boards – die Produkte sind dann »kompatibel«. Diedort verkauften Sensoren unterscheiden sich eventuell leicht in der Pin-Belegung oder im Aussehen. Aktuell ist DealExtreme (http://dx.com) ei-ner der beliebtesten Shops in der Szene. Er versendet zwar kostenlos ausHongkong und Shenzhen, aber die Qualität der Komponenten kann starkschwanken und die Lieferzeiten können lang sein. AliExpress (http://www.aliexpress.com) ist ein weiterer beliebter Händler aus Asien.

Bestellen Sie imAusland, sollten Sie sichmit den Zollregularienvertrautma-chen. In manchen Ländern gibt es Obergrenzen, bis zu denen die Sendun-gen beim Zoll nur durchgewunken werden.

Konventionen in diesem BuchIn diesemBuchwerden die folgenden typografischenKonventionen verwen-det:

KursivBeschreibt neue Begriffe, URLs, E-Mail-Adressen, Dateinamen und Da-teiendungen.

NichtproportionalschriftWird für Programmlistings und für Programmelemente in Absätzen ver-wendet – zum Beispiel Variablen, Funktionsnamen, Datenbanken, Da-tentypen, Umgebungsvariablen, Anweisungen und Schlüsselwörter.

Fette NichtproportionalschriftSteht für Befehle oder anderen Text, der so wie angegeben vom Benut-zer übernommen werden soll.

Kursive NichtproportionalschriftSteht für Text, der vom Benutzer durch eigene Werte ersetzt werdensoll.

Vorwort vii

Dieses Symbol verweist auf einen Tipp, einen Vorschlag odereinen allgemeinen Hinweis.

Dieses Symbol weist auf eine Warnung oder Vorsichtsmaß-nahme hin.

Code-DownloadSie können in diesem Buch verwendeten Code hier downloaden: http://getstarted.botbook.com.

Website zum BuchEs gibt eineWebseite zumOriginal-Buch, auf der bekannte Fehler, Beispieleund zusätzliche Informationen aufgeführt sind. Sie finden sie unter: http://bit.ly/get-start-sensors.

Für Kommentare oder technische Fragen zu diesem Buch schicken Sie eineE-Mail an: E-Mail: [email protected]

DanksagungDie Autorenmöchten sich bei Hipsu,Marianna, Nina undValtteri bedanken.

viii Das Sensor-Buch

1/Sensoren

Sensoren finden sich überall im Alltag. Die Weltist voll von ihnen: von passiven Infrarotsenso-ren in Bewegungsmeldern über CO2-Detektorenin der Klimaanlage, winzigen Beschleunigungs-sensoren, GPS-Modulen und Kameras in IhremSmartphone und Tablet – überall Sensoren! DieVielzahl von Sensor-Anwendungen ist bemer-kenswert.Man kann durchaus davon ausgehen, dass ein »smartes« elektronischesGerät mit Sensoren vollgepackt ist (Abbildung 1-1). In der Tat sind aufgrundder starken Verbreitung von Smart Devices – insbesondere von Mobilte-lefonen – die Preise von Sensoren in erschwingliche Bereiche gefallen. Esist dabei nicht nur ökonomisch vertretbar, Ihre Projekte mit aufwendigerenSensoren zu ergänzen, es gibt jetzt einfach auch viel mehr Projekte, die sichsinnvoll umsetzen lassen.

Abbildung 1-1: Diverse Sensoren: Infrarot-Abstandsmessung, Drehung,Helligkeit, Taster, Temperatur und Entfernung

1

Sie werden in diesem Buchmithilfe kleiner Projekte Sensoren kennenlernenund Erfahrungen sammeln. Es macht viel mehr Spaß, erst zu bauen unddann die Theorie zu behandeln, aber beides ist gleich wichtig. VermeidenSie daher den Drang, nur die Projekte nachzubauen und die theoretischerenAbschnitte einfach zu überspringen.

Der Einstieg in die Arbeit mit Sensoren ist einfach, und es gibt keine Gren-zen. Die Arbeit mit Elektronik ist selbst für Genies manchmal eine Heraus-forderung, sorgt dann aber für Innovationen und Fortschritt. Andererseitskann selbst ein Kind (mit ein wenig Hilfe) Dinge ausprobieren und kennen-lernen.

Wenn Sie sich noch nicht so sehr mit Sensoren auskennen, sollten Sie sichdieses Gefühl einprägen. Denn nachdem Sie ein paar Herausforderungengemeistert und manche Gadgets gebaut haben, werden sich viele der mys-teriösen Geheimnisse rund um die Sensoren für Sie ganz selbstverständlichin Luft aufgelöst haben.

Abbildung 1-2: Einfache UND-Verbindung mit Tastern – entworfen und ge-baut von einem Vierjährigen mit Unterstützung durch einen Erwachsenen

Dieses Buch ist für jeden geeignet, der sich für Sensoren interessiert (sie-he Abbildung 1-2). Nachdem Sie die Gadgets gebaut und dieses Buchgelesen haben, können Sie sich Ideen für größere Projekte zum Beispielaus Make: Arduino Bots and Gadgets (http://bit.ly/make-abg) holen.Oder Sie erfahren mehr über ausgefeiltere Sensoren in Make: Sensors(http://bit.ly/make-sensors). Mehr Grundlagen werden Ihnen in Arduinofür Einsteiger (http://www.oreilly.de/catalog/arduinoeinstger/) von Mas-simo Banzi, Raspberry Pi für Einsteiger (http://www.oreilly.de/catalog/

2 Das Sensor-Buch

startedraspberrypiger/) von Matt Richardson und Shawn Wallace oderMake: Elektronik (http://www.oreilly.de/catalog/elektronikger/) vonCharles Platt vermittelt.

Was sind Sensoren? Sensoren sind elektrische Komponenten, die als Ein-gangsquelle dienen. Nicht alle Eingangsquellen sind explizite Sensoren,aber so gut wie alle nutzen Sensoren! Denken Sie an Ihre Computermausoder ein Trackpad, die Tastatur, ja selbst eine Webcam – es sind keine Sen-soren, aber sie setzen definitiv welche ein. Abstrakter gesagt, können Sieeinen Sensor als Komponente ansehen, die einen Stimulus misst, der vonaußerhalb des Systems kommt (also aus dessen Umgebung). Die Ausgabe-daten basieren dann auf dieser Messung. Tippen Sie zum Beispiel auf einerTastatur, basieren die Buchstaben, die auf IhremBildschirm erscheinen (dieAusgabe), auf der Messung, welche Taste/welcher Taster auf der Tastaturgedrückt wurde. Wie viele Buchstaben auf dem Bildschirm erscheinen,basiert auf einer anderen Messung (wie lange die Taste gedrückt wurde).

Das erste Projekt verwendet einen Fotowiderstand, um Licht zu messen.Ohne den Fotowiderstand (oder einen ähnlichen Sensor) gibt es für eineSchaltung keine Möglichkeit herauszufinden, wie hell es in der Umgebungist. Durch den Sensor weiß sie also etwas, was sie vorher nicht wusste.

Alle Projekte in diesem Buch werten einen bestimmten Stimulus der Umge-bung aus. Keines davon wäre ohne Sensoren möglich. Lassen Sie uns alsomit den Projekten beginnen, damit Sie herausfinden können, was die Sen-soren messen und wie die entsprechenden Daten aussehen.

Projekt 1: Licht mit einemFotowiderstand messenLicht ist in einer Umgebung ziemlich informativ: Sie können anhand desSonnenstandes ermitteln, wie spät es ist, ein Auto lässt sich nachts mit ein-geschaltetem Licht sicher steuern und Leute, die bei ihrer täglichen Arbeitnicht ausreichend Licht bekommen, können eineWinterdepression bekom-men. Licht beeinflusst also viele Aspekte des Lebens – und esmacht Spaß,es zu messen.

Der einfachste Sensor für das Erkennen von Licht ist ein Fotowiderstand,der auch als Light-Dependent-Resistor (LDR) bezeichnet wird. Diese Kom-ponente ändert ihren elektrischen Widerstand abhängig von der Menge anLicht, die auf sie fällt.

Jetzt kennen Sie den richtigen Sensor dafür, müssen sich aber noch fragen,wie Sie dasMessergebnis verarbeiten.WennSie schon einmalmit einer LEDgearbeitet haben, (siehe Abbildung 1-3), wissen Sie vielleicht, dass der Wi-derstand bei Schaltkreisen sehr wichtig ist. Haben Sie zum Beispiel schoneinmal für eine LED einenWiderstandmit einem größerenWert genutzt, alseigentlich angegeben war, werden Sie gesehen haben, dass ein zu großer

Kapitel 1: Sensoren 3

Wert dafür sorgt, dass die LED nicht leuchtet. Diese grundlegende Beob-achtung lässt sich auch auf dieses Projekt anwenden.

Abbildung 1-3: LEDs

Die Schaltung ist so aufgebaut, dass eine LED von der Messung des Fotowi-derstands abhängt. Zu viel Widerstand und die LED bleibt aus. Genug gere-det – bauen wir lieber! In Abbildung 1-4 sehen Sie das fertige Projekt.

Abbildung 1-4: Das fertige Fotowiderstands-Projekt

TeileFür dieses Projekt benötigen Sie die folgenden Komponenten:

• Fotowiderstand

• rote 5-mm-LED (die unterschiedlichen LEDs verhalten sich in die-ser Schaltung verschieden – später werden Sie noch eine bessereMöglichkeit kennenlernen, LEDs abzudunkeln)

4 Das Sensor-Buch

• 470-Ω-Widerstand (bei einem Widerstand mit vier Ringen: gelb-lila-braun; bei einem Widerstand mit fünf Ringen: gelb-lila-schwarz-schwarz . Die Farbe des letzten Rings ist abhängig von der Toleranzdes Widerstands.)

• Steckplatine

• Batterie-Clip für 9-V-Blockbatterie

• 9-V-Blockbatterie

Alle diese Teile – mit Ausnahme der 9-V-Batterie und des470-Ω-Widerstands, finden Sie im Maker Shed Mintronics:Survival Pack (http://bit.ly/mintron-sp), Teile-Nummer MS-TIN2. Sie können zwei der 220-Ω-Widerstände in Serie schal-ten oder statt des 470-Ω-Widerstands einen 1-KΩ-Widerstandnutzen. Beide finden Sie auch bei Elektronikhändlern wieRadioShack.

ZusammenbauFühren Sie für das Projekt die folgenden Schritte aus:

1. Legen Sie Ihre Steckplatine quer vor sich (siehe Abbildung 1-5).

Abbildung 1-5: Schaltungsaufbau für das Fotowiderstand-Projekt

Kapitel 1: Sensoren 5