O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Sensoren – messen und experimentieren mit Arduino und Raspberry Pi

Book Description

Sensoren ist die definitive Einführung, wenn es darum geht, die physikalische Welt zu überwachen und zu messen. Auf der Basis von Raspberry und Arduino.Boards und Sensoren werden in zahlreichen Experimenten folgende Bereiche untersucht:- Entfernungen- Gase und Rauch- Berührungen- Bewegungen- Licht- Beschleunigung- Geräusche- Wetter und KlimaAlle Experimente werden ausführlich und anschaulich erklärt, so dass sie zum Nachmachen anregen.

Table of Contents

  1. Cover
  2. Titel
  3. Impressum
  4. Inhaltsverzeichnis
  5. Vorwort
  6. 1. Raspberry Pi
    1. 1.1 Raspberry Pi: Von null zum ersten Start
      1. 1.1.1 NOOBS*.zip entpacken
      2. 1.1.2 Kabel anschließen
      3. 1.1.3 Raspbian hochfahren und installieren
      4. 1.1.4 Fehlersuche bei der Raspberry Pi-Installation
    2. 1.2 Willkommen bei Linux
      1. 1.2.1 Die allgegenwärtige Kommandozeile
      2. 1.2.2 Schauen Sie sich um
      3. 1.2.3 Textdateien für die Konfiguration
      4. 1.2.4 sudo mach mir ein Butterbrot!
    3. 1.3 Elektronische Bauteile an die Pins des Raspberry Pi anschließen
      1. 1.3.1 Hallo GPIO, lass eine LED blinken
      2. 1.3.2 Die Schaltung aufbauen
      3. 1.3.3 Zwei Nummerierungssysteme: Zweck und Ort
      4. 1.3.4 GPIO-Pins über die Kommandozeile steuern
      5. 1.3.5 Dateien ohne Editor bearbeiten
      6. 1.3.6 Die LED aufleuchten lassen
      7. 1.3.7 Fehlerbehebung
    4. 1.4 GPIO-Steuerung ohne Root-Berechtigungen
      1. 1.4.1 Fehlersuche bei der GPIO-Steuerung
    5. 1.5 GPIO in Python
      1. 1.5.1 Hello Python
    6. 1.6 Wie geht es weiter?
  7. 2 Arduino
    1. 2.1 Grundinstallation des Arduino
      1. 2.1.1 Ubuntu Linux
      2. 2.1.2 Windows 7 und Windows 8
      3. 2.1.3 OS X
      4. 2.1.4 Hello World
      5. 2.1.5 Der Aufbau eines Arduino-Programms
      6. 2.1.6 Einfach und vielseitig dank Shields
  8. 3 Entfernung
    1. 3.1 Experiment: Abstände mit Ultraschall messen (Ping)
      1. 3.1.1 Code und Schaltung für den Ping am Arduino
      2. 3.1.2 Code und Schaltung für den Ping am Raspberry Pi
    2. 3.2 Ultraschallsensor HC-SR04
      1. 3.2.1 Code und Schaltung für den HC-SR04 am Arduino
      2. 3.2.2 Code und Schaltung für den HC-SR04 am Raspberry Pi
      3. 3.2.3 Echoberechnungen
      4. 3.2.4 Praxisexperiment: Unsichtbare Objekte
    3. 3.3 Experiment: Hindernisse mit Infrarot erkennen (IR-Abstandssensor)
      1. 3.3.1 Code und Schaltung für den IR-Sensor am Arduino
      2. 3.3.2 Code und Schaltung für den IR-Sensor am Raspberry Pi
    4. 3.4 Praxisexperiment: Infrarotlicht sichtbar machen
    5. 3.5 Experiment: Bewegungen mit Infrarot verfolgen (IR-Facettenauge)
      1. 3.5.1 Code und Schaltung für das Facettenauge am Arduino
      2. 3.5.2 Code und Schaltung für das Facettenauge am Raspberry Pi
      3. 3.5.3 Bibliothek spidev installieren
      4. 3.5.4 Alternative Schaltungen für den Raspberry Pi
    6. 3.6 Testprojekt: Haltungswarner (Arduino)
      1. 3.6.1 Lernziele
      2. 3.6.2 Piezo-Summer
      3. 3.6.3 Alarm!
      4. 3.6.4 Piezo-Summer und IR-Sensor kombinieren
      5. 3.6.5 Eine elegante Verpackung für das Projekt
  9. 4 Rauch und Gas
    1. 4.1 Experiment: Rauchmelder (analoger Gassensor)
      1. 4.1.1 Code und Schaltung für den MQ-2 am Arduino
      2. 4.1.2 Code und Schaltung für den MQ-2 am Raspberry Pi
      3. 4.1.3 Praxisexperiment: Rauch steigt nach oben
      4. 4.1.4 Experiment: Alkotest (Alkoholsensor MQ-303A)
      5. 4.1.5 Praxisexperiment: Nüchtern bleiben beim Experimentieren
    2. 4.2 Testprojekt: Rauchalarm per E-Mail senden
      1. 4.2.1 Lernziele
      2. 4.2.2 Python für E-Mails und Social Media
      3. 4.2.3 Das Projekt bauen
      4. 4.2.4 Wie funktioniert E-Mail?
      5. 4.2.5 Kann der Arduino E-Mails senden? – Nicht ohne Weiteres!
      6. 4.2.6 Code für den Raspberry Pi
      7. 4.2.7 Gehäuse
  10. 5 Berührung
    1. 5.1 Experiment: Drucktasten
      1. 5.1.1 Pullup-Widerstand
      2. 5.1.2 Code und Schaltung am Arduino
      3. 5.1.3 Code und Schaltung am Raspberry Pi
    2. 5.2 Experiment: Mikroschalter
      1. 5.2.1 Code und Schaltung für den Mikroschalter am Arduino
      2. 5.2.2 Code und Schaltung für den Mikroschalter am Raspberry Pi
    3. 5.3 Experiment: Potenziometer (regelbarer Widerstand, Poti)
      1. 5.3.1 Code und Schaltung für das Potenziometer am Arduino
      2. 5.3.2 Code und Schaltung für das Potenziometer am Raspberry Pi
    4. 5.4 Experiment: Berührungsfreier Berührungssensor (kapazitiver Berührungssensor QT113)
      1. 5.4.1 Code und Schaltung für den QT113 am Arduino
      2. 5.4.2 Code und Schaltung für den QT113 am Raspberry Pi
    5. 5.5 Praxisexperiment: Berührungen durch eine hölzerne Oberfläche hindurch erkennen
    6. 5.6 Experiment: Druck messen (FlexiForce)
      1. 5.6.1 Code und Schaltung für den FlexiForce am Arduino
      2. 5.6.2 Code und Schaltung für den FlexiForce am Raspberry Pi
    7. 5.7 Experiment: Berührungssensor im Eigenbau
      1. 5.7.1 Code und Schaltung für den kapazitiven Sensor am Arduino
      2. 5.7.2 Code und Schaltung für den kapazitiven Sensor am Raspberry Pi
    8. 5.8 Testprojekt: Geisterglocke
      1. 5.8.1 Lernziele
      2. 5.8.2 Servomotoren
      3. 5.8.3 Code und Schaltung für die Geisterglocke am Arduino
      4. 5.8.4 Servo an der Glocke montieren
  11. 6 Bewegung
    1. 6.1 Experiment: Wo ist oben? (Tilt-Schalter)
      1. 6.1.1 Code und Schaltung für den Kippsensor am Arduino
      2. 6.1.2 Code und Schaltung für den Kippsensor am Raspberry Pi
    2. 6.2 Experiment: Good Vibrations mit Interrupts (digitaler Vibrationssensor)
      1. 6.2.1 Code und Schaltung für den Vibrationssensor am Arduino
      2. 6.2.2 Code und Schaltung für den Vibrationssensor am Raspberry Pi
    3. 6.3 Experiment: Am Regler drehen
      1. 6.3.1 Code und Schaltung für den Drehgeber am Arduino
      2. 6.3.2 Code und Schaltung für den Drehgeber am Raspberry Pi
    4. 6.4 Experiment: Analoger Zweiachs-Daumen-Joystick
      1. 6.4.1 Code und Schaltung für den Joystick am Arduino
      2. 6.4.2 Code und Schaltung für den Joystick am Raspberry Pi
    5. 6.5 Praxisexperiment: Teile eines Xbox-Controllers wiederverwenden
    6. 6.6 Experiment: Alarmanlage (passiver IR-Sensor)
      1. 6.6.1 Code und Schaltung für die Alarmanlage am Arduino
      2. 6.6.2 Code und Schaltung für die Alarmanlage am Raspberry Pi
      3. 6.6.3 Praxisexperiment: Eine Alarmanlage überlisten
    7. 6.7 Testprojekt: Pong
      1. 6.7.1 Lernziele
      2. 6.7.2 Tipps für ein ansprechendes Gehäuse
      3. 6.7.3 Das Spiel beim Hochfahren des Raspberry Pi automatisch starten
  12. 7 Licht
    1. 7.1 Experiment: Feuer erkennen (Flammensensor)
      1. 7.1.1 Code und Schaltung für den Flammensensor am Arduino
      2. 7.1.2 Code und Schaltung für den Flammensensor am Raspberry Pi
    2. 7.2 Praxisexperiment: Genauigkeit bei der Erkennung von Flammen
    3. 7.3 Experiment: Siehst du dieses Licht? (Fotowiderstand, LDR)
      1. 7.3.1 Code und Schaltung für den Fotowiderstand am Arduino
      2. 7.3.2 Code und Schaltung für den Fotowiderstand am Raspberry Pi
    4. 7.4 Praxisexperiment: Die Richtung erkennen
    5. 7.5 Experiment: Linien verfolgen
      1. 7.5.1 Code und Schaltung für den Liniensensor am Arduino
      2. 7.5.2 Code und Schaltung für den Liniensensor am Raspberry Pi
    6. 7.6 Praxisexperiment: Schwarz ist weiß
    7. 7.7 Experiment: Alle Farben des Regenbogens
      1. 7.7.1 Code und Schaltung für den Farbsensor am Arduino
      2. 7.7.2 Code und Schaltung für den Farbsensor am Raspberry Pi
    8. 7.8 Testprojekt: Chamäleonkuppel
      1. 7.8.1 Lernziele
      2. 7.8.2 RGB-LEDs
      3. 7.8.3 Code und Schaltung für RGB-LEDs am Arduino
      4. 7.8.4 Gleitender Mittelwert
      5. 7.8.5 Beliebige Farben mit RGB-LEDs erzeugen
      6. 7.8.6 Eingänge in Ausgänge umwandeln
      7. 7.8.7 Code für eine Kombination aus RGB-LED und Farbsensor
      8. 7.8.8 Tipps zum Bau der Kuppel
  13. 8 Beschleunigung
    1. 8.1 Beschleunigung und Winkelgeschwindigkeit
    2. 8.2 Experiment: Beschleunigung mit dem MX2125 messen
      1. 8.2.1 Impulslängen des MX2125 entschlüsseln
      2. 8.2.2 Code und Schaltung für den Beschleunigungsmesser am Arduino
      3. 8.2.3 Code und Schaltung für den Beschleunigungsmesser am Raspberry Pi
    3. 8.3 Experiment: Beschleunigungsmesser und Gyroskop
      1. 8.3.1 Code und Schaltung für den MPU 6050 am Arduino
      2. 8.3.2 Code und Schaltung für den MPU 6050 am Raspberry Pi
      3. 8.3.3 Hexadezimale, binäre und andere Zahlen
      4. 8.3.4 Bitweise Operationen
    4. 8.4 Experiment: Den Wii Nunchuk zweckentfremden (über I2C)
      1. 8.4.1 Code und Schaltung für den Nunchuk am Arduino
      2. 8.4.2 Code und Schaltung für den Nunchuk am Raspberry Pi
    5. 8.5 Testprojekt: Steuerung einer Roboterhand mit dem Wii Nunchuk
      1. 8.5.1 Lernziele
      2. 8.5.2 Die Mechanik der Roboterhand
  14. 9 Identität
    1. 9.1 Tastenfelder
      1. 9.1.1 Code und Schaltung für das Tastenfeld am Arduino
      2. 9.1.2 Code und Schaltung für das Tastenfeld am Raspberry Pi
    2. 9.2 Praxisexperiment: Fingerabdrücke erkennen
    3. 9.3 Fingerabdruckscanner GT-511C3
      1. 9.3.1 Code und Schaltung für den Fingerabdrucksensor am Arduino Mega
      2. 9.3.2 Code und Schaltung für den Fingerabdrucksensor am Raspberry Pi
    4. 9.4 RFID mit dem ELB149C5M
      1. 9.4.1 Code und Schaltung für das RFID-Lesegerät am Arduino Mega
      2. 9.4.2 Code und Schaltung für das RFID-Lesegerät am Raspberry Pi
    5. 9.5 Testprojekt: Futuristische Schatztruhe
      1. 9.5.1 Lernziele
      2. 9.5.2 Die Funktionsweise der Truhe
      3. 9.5.3 Die Truhe
      4. 9.5.4 Code und Schaltung für die futuristische Schatztruhe am Arduino
    6. 9.6 Menschen und Objekte erkennen
  15. 10 Elektrizität und Magnetismus
    1. 10.1 Experiment: Spannung und Stromstärke
      1. 10.1.1 Code und Schaltung für den AttoPilot am Arduino
      2. 10.1.2 Code und Schaltung für den AttoPilot am Raspberry Pi
    2. 10.2 Experiment: Ist es magnetisch?
      1. 10.2.1 Code und Schaltung für den Hall-Effekt-Sensor am Arduino
      2. 10.2.2 Code und Schaltung für den Hall-Effekt-Sensor am Raspberry Pi
    3. 10.3 Experiment: Magnetischer Norden mit dem Kompass/Beschleunigungsmesser LSM303 bestimmen
      1. 10.3.1 Den Sensor kalibrieren
      2. 10.3.2 Code und Schaltung für den LSM303 am Arduino
      3. 10.3.3 Code und Schaltung für den LSM303 am Raspberry Pi
      4. 10.3.4 Das Protokoll für den LSM303
      5. 10.3.5 Berechnungen für die Kompassrichtung
    4. 10.4 Experiment: Hall-Schalter
      1. 10.4.1 Code und Schaltung für den Hall-Schalter am Arduino
      2. 10.4.2 Code und Schaltung für den Hall-Schalter am Raspberry Pi
    5. 10.5 Testprojekt: Webüberwachung von Solarzellen
      1. 10.5.1 Lernziele
      2. 10.5.2 Die Solarzellen anschließen
      3. 10.5.3 Der Raspberry Pi als Webserver
      4. 10.5.4 Die IP-Adresse ermitteln
      5. 10.5.5 Eine Homepage auf dem Raspberry Pi einrichten
      6. 10.5.6 Code und Schaltung für die Solarzellenüberwachung am Raspberry Pi
      7. 10.5.7 Zeitliche Planung von Aufgaben mit cron
    6. 10.6 Wie geht es weiter?
  16. 11 Schall
    1. 11.1 Experiment: Stimmen hören/Lautstärke
      1. 11.1.1 Code und Schaltung für das Mikrofon am Arduino
      2. 11.1.2 Code und Schaltung für das Mikrofon am Raspberry Pi
    2. 11.2 Praxisexperiment: Eine Stecknadel fallen hören
    3. 11.3 Testprojekt: Töne über HDMI sichtbar machen
      1. 11.3.1 Lernziele
      2. 11.3.2 Den seriellen Port des Raspberry Pi aktivieren
      3. 11.3.3 Code und Schaltung für die Visualisierung am Raspberry Pi
      4. 11.3.4 Schnelle Fourier-Transformation
    4. 11.4 Wie geht es weiter?
  17. 12 Wetter und Klima
    1. 12.1 Experiment: Heiß hier drin, oder?
      1. 12.1.1 Code und Schaltung für den LM35 am Arduino
      2. 12.1.2 Code und Schaltung für den LM35 am Raspberry Pi
    2. 12.2 Praxisexperiment: Temperaturwechsel
    3. 12.3 Experiment: Wie feucht ist es?
      1. 12.3.1 Wie feucht ist Ihr Atem?
      2. 12.3.2 Code und Schaltung für den DHT11 am Arduino
      3. 12.3.3 Code und Schaltung für den DHT11 am Raspberry Pi
      4. 12.3.4 Kommunikation vom Raspberry Pi zum Arduino
    4. 12.4 Luftdrucksensor GY-65
      1. 12.4.1 Code und Schaltung für den GY-65 am Arduino
      2. 12.4.2 Arduino-Bibliotheken verwenden
      3. 12.4.3 Die Arduino-Bibliothek für den GY-65
      4. 12.4.4 Code und Schaltung für den GY-65 am Raspberry Pi
    5. 12.5 Experiment: Brauchen Ihre Pflanzen Wasser? (Sensor für Bodenfeuchtigkeit)
      1. 12.5.1 Code und Schaltung für den Bodenfeuchtigkeitssensor am Arduino
      2. 12.5.2 Code und Schaltung für den Bodenfeuchtigkeitssensor am Raspberry Pi
    6. 12.6 Testprojekt: Wettervorhersage auf E-Paper
      1. 12.6.1 Lernziele
      2. 12.6.2 Code und Schaltung für die Wetterstation am Arduino
    7. 12.7 Praxisexperiment: Schau mal, ganz ohne Stromanschluss!
    8. 12.8 Bilder in Headerdateien speichern
      1. 12.8.1 Programm zur Umwandlung von BMP-Bildern in C-Dateien
      2. 12.8.2 Tipps für das Gehäuse
  18. A Linux-Befehle für den Raspberry Pi
  19. Index
  20. Fußnoten