Raspberry Pi - Das große Handbuch. Über 1.000 Seiten in Farbe. Mit Einstieg in Linux, Python und Elektrotechnik. Aktuell zum Raspberry Pi 5, Pi-OS »Bookworm« und den GPIO-Bibliotheken

Gebundene Ausgabe
44,90 €
inkl. MwSt. versandkostenfrei!


Produktdetails  
Verlag Rheinwerk Verlag
Auflage 8. Auflage, 03.05.2024
Seiten 1045
Format 18,0 x 6,0 x 24,5 cm
Gewicht 2079 g
ISBN-10 3836296667
ISBN-13 9783836296663
Bestell-Nr 83629666A

Produktbeschreibung  

Der Raspberry Pi ist eine wahre Erfolgsgeschichte. Seit 2011 begeistert der kleine Mini-Computer Maker, Kreative und IT-Fachleute. Was Sie mit dem Pi anstellen können, zeigen Ihnen Michael Kofler, Charly Kühnast und Christoph Scherbeck. Das Handbuch ist randvoll mit Grundlagen und Kniffen zu Linux, Hardware, Elektronik und Programmierung. Genau richtig für alle, die Serverdienste hosten möchten, Bastelideen haben und direkt loslegen wollen. Vorwissen? Nicht nötig, Ihr Erfindergeist reicht völlig aus. Legen Sie gleich los und lassen Sie Ihrer Kreativität freien Lauf!



Aus dem Inhalt:



  • Den Raspberry Pi kennenlernen: Kauf und Inbetriebnahme, Betriebssysteme, Software

  • Ihr Medien-Center: der Raspberry Pi mit Kodi, LibreELEC, als DLNA-Server und als NAS-Gerät (openmediavault)

  • Hardware-Grundlagen: Elektrotechnik-Crashkurs, Werkzeuge, Zusatzgeräte u. v. m.

  • Sensoren, Servo- und Schrittmotoren, LEDs, Bussysteme, Displays

  • Gertboard, PiFace, Raspberry-Pi-HATs, HiFiBerry-Audio-System

  • Programmierung: Python, bash, C, Java und PHP mit dem Raspberry Pi

  • Projekte: viele spannende Ideen für Einsteiger und Fortgeschrittene

  • Servocam, Luftraumüberwachung, Smartlight-Steuerung u. v. m.

  • Fingersensor, OLED-Display, ePaper-Display, Feinstaubmessgerät, Wassermelder

  • Smart-Home mit Home Assistant


Inhalt:



  Vorwort ... 15


  Geleitwort von Eben Upton ... 20


TEIL I.  Den Raspberry Pi kennenlernen ... 21


  1.  Kauf und Inbetriebnahme ... 23


       1.1 ... Kauf ... 23

       1.2 ... Raspberry-Pi-Distributionen ... 37

       1.3 ... Installation ... 39



  2.  Erste Schritte mit Raspberry Pi OS ... 43


       2.1 ... Basiskonfiguration ... 44

       2.2 ... Der PIXEL Desktop ... 51

       2.3 ... Wichtige Programme ... 53

       2.4 ... WLAN-Konfiguration ... 63

       2.5 ... Bluetooth-Konfiguration ... 64

       2.6 ... USB-Sticks und -Festplatten ... 65

       2.7 ... Drucker ... 66



  3.  Arbeiten im Terminal ... 69


       3.1 ... Erste Experimente ... 69

       3.2 ... Eingabeerleichterungen und Tastenkürzel ... 75

       3.3 ... Die Bourne Again Shell (bash) ... 78

       3.4 ... Arbeiten mit Administratorrechten (sudo) ... 84

       3.5 ... Textdateien lesen und ändern ... 87

       3.6 ... Verzeichnisse und Dateien ... 92

       3.7 ... Komprimierte Dateien und Archive ... 99

       3.8 ... Prozessverwaltung ... 103

       3.9 ... Netzwerkkommandos ... 108



  4.  Tipps & Tricks ... 113


       4.1 ... Raspberry Pi OS Lite ... 113

       4.2 ... WLAN und SSH-Server vorkonfigurieren ... 116

       4.3 ... PIXEL Desktop konfigurieren ... 117

       4.4 ... Screenshots erstellen ... 120

       4.5 ... Mehr Farbe im Terminal ... 121

       4.6 ... Overclocking ... 123

       4.7 ... USB-Booting ... 127

       4.8 ... SSDs mit PCIe verwenden ... 131

       4.9 ... Notfall-Tipps ... 135



  5.  Arbeitstechniken ... 143


       5.1 ... Programme installieren und verwalten ... 143

       5.2 ... Updates ... 147

       5.3 ... SSH ... 152

       5.4 ... Remote-Desktop-Nutzung (VNC) ... 160

       5.5 ... Netzwerkverzeichnisse nutzen ... 166

       5.6 ... Netzwerkverzeichnisse anbieten (Samba-Server) ... 171

       5.7 ... Internetzugriff auf den Raspberry Pi ... 178

       5.8 ... Programme beim Systemstart ausführen ... 187

       5.9 ... Programme regelmäßig ausführen (Cron) ... 188

       5.10 ... Monitor ein- und ausschalten ... 191

       5.11 ... Backups erstellen ... 193



  6.  Linux-Grundlagen ... 199


       6.1 ... Benutzer und Gruppen ... 200

       6.2 ... Zugriffsrechte ... 207

       6.3 ... Paketverwaltung ... 214

       6.4 ... Verwaltung des Dateisystems ... 216

       6.5 ... Netzwerkkonfiguration ... 224

       6.6 ... Bluetooth ... 229

       6.7 ... Systemstart ... 231

       6.8 ... Systemeinstellungen in config.txt ... 239

       6.9 ... Grafiksystem ... 243

       6.10 ... Kernel und Module ... 246

       6.11 ... Device Trees ... 249



  7.  Ubuntu ... 253


       7.1 ... Installation ... 253

       7.2 ... Desktop-Nutzung ... 255

       7.3 ... Servereinsatz ... 258



TEIL II.  Der Raspberry Pi als Media-Center und Spielekonsole ... 259


  8.  Audioplayer mit Smartphone-Fernbedienung ... 261


       8.1 ... Musik hören mit dem Raspberry Pi ... 262

       8.2 ... HiFiBerry ... 263

       8.3 ... MPD-Installation und -Konfiguration ... 266

       8.4 ... Volumio ... 274



  9.  Multimedia-Center mit Kodi und LibreELEC ... 279


       9.1 ... Installation und Konfiguration ... 280

       9.2 ... Anwendung ... 288



10.  RetroPie ... 295


       10.1 ... Gehäuse und Controller ... 296

       10.2 ... Installation ... 300

       10.3 ... Spiele starten, speichern und laden ... 306



TEIL III.  Hardware-Grundlagen ... 309


11.  Hardware-Einstieg ... 311


       11.1 ... Platinenaufbau ... 311

       11.2 ... Der BCM2712 ... 312

       11.3 ... GPIO-Kontakte ... 316

       11.4 ... Stromversorgung ... 324

       11.5 ... Gehäuse ... 331



12.  Elektrotechnik-Crashkurs ... 335


       12.1 ... Strom, Spannung und das ohmsche Gesetz ... 335

       12.2 ... Grundschaltungen ... 337

       12.3 ... Elektronische Grundbauteile ... 342

       12.4 ... Das Multimeter ... 347

       12.5 ... Breadboard oder Platine? ... 350

       12.6 ... Löten ... 352

       12.7 ... Breadboardadapter ... 354



13.  LEDs, Motoren und Relais ... 359


       13.1 ... Leuchtdioden (LEDs) ... 359

       13.2 ... Optokoppler ... 377

       13.3 ... Elektromotoren ... 378

       13.4 ... Schrittmotoren ... 389

       13.5 ... Servomotoren ... 399

       13.6 ... Relais ... 406

       13.7 ... Remote GPIO ... 409



14.  Bussysteme ... 413


       14.1 ... SPI ... 413

       14.2 ... Der Analog-digital-Wandler MCP3008 ... 422

       14.3 ... Der Digital-analog-Wandler MCP4811 ... 428

       14.4 ... I2C ... 433

       14.5 ... UART ... 441

       14.6 ... Der Audio-Bus I2S ... 445

       14.7 ... 1-Wire ... 446



15.  Sensoren ... 449


       15.1 ... PIR-Bewegungssensor ... 449

       15.2 ... Ultraschallsensor ... 453

       15.3 ... Wasserstandssensor ... 455

       15.4 ... Bodenfeuchtigkeitssensor ... 457

       15.5 ... Temperatursensoren ... 462

       15.6 ... Fotowiderstand ... 466

       15.7 ... Das Multi-Analogsensor-Board PCF8591 ... 468

       15.8 ... Raspberry Pi Camera Boards ... 471

       15.9 ... Reed-Kontakt ... 483

       15.10 ... Hardware Real-Time Clock ... 485

       15.11 ... IR-Empfänger ... 488

       15.12 ... Fingerabdruck-Scanner ... 490

       15.13 ... Leitfaden für fremde Sensoren ... 498



16.  Erweiterungsboards ... 501


       16.1 ... StromPi -- USV und Wide-Range-Spannungsversorgung ... 501

       16.2 ... Pimoroni Zero LiPo ... 505

       16.3 ... Raspberry-Pi-HATs ... 506

       16.4 ... Sense HAT -- das Multitalent ... 511

       16.5 ... Adafruit PWM/Servo-HAT ... 516



17.  Displays ... 521


       17.1 ... 7-Segment-Anzeige ... 521

       17.2 ... 16x2-LC-Display ... 524

       17.3 ... PiTFT -- der Touchscreen für den Raspberry Pi ... 526

       17.4 ... Kfz-Rückfahrmonitore ... 530

       17.5 ... Das offizielle Raspberry-Pi-Touchdisplay ... 534

       17.6 ... PaPiRus -- das E-Paper-Display ... 539



TEIL IV.  Programmierung ... 547


18.  Python kennenlernen ... 549


       18.1 ... Python ausprobieren ... 550

       18.2 ... Python-Konzepte interaktiv kennenlernen ... 552

       18.3 ... Eigene Scripts programmieren ... 562



19.  Python-Grundlagen ... 567


       19.1 ... Elementare Syntaxregeln ... 567

       19.2 ... Variablen und Objekte ... 572

       19.3 ... Operatoren ... 578

       19.4 ... Verzweigungen (if) ... 580

       19.5 ... Schleifen (for und while) ... 582

       19.6 ... Zeichenketten ... 588

       19.7 ... Listen ... 593

       19.8 ... Umgang mit Fehlern (Exceptions) ... 597

       19.9 ... Funktionen ... 602

       19.10 ... Objektorientiertes Programmieren ... 612

       19.11 ... Systemfunktionen ... 617

       19.12 ... Externe Module installieren (pip) ... 620



20.  Python-Programmierung ... 623


       20.1 ... GPIO-Zugriff mit gpiozero ... 623

       20.2 ... GPIO-Zugriff mit lgpio ... 631

       20.3 ... GPIO-Zugriff mit rpi-lgpio ... 632

       20.4 ... GPIO-Zugriff mit gpiod ... 634

       20.5 ... Reset/Shutdown-Taste ... 634

       20.6 ... Kamera ... 637

       20.7 ... E-Mails versenden ... 642

       20.8 ... Textdateien lesen und schreiben ... 646

       20.9 ... Grafikprogrammierung ... 650

       20.10 ... Grafische Benutzeroberflächen mit tkinter ... 657

       20.11 ... matplotlib ... 669



21.  bash-Programmierung ... 675


       21.1 ... Einführung ... 675

       21.2 ... Variablen ... 679

       21.3 ... Schleifen, Bedingungen und Funktionen ... 684

       21.4 ... GPIO-Steuerung per Kommando ... 695

       21.5 ... GPIO-Informationen ermitteln ... 697

       21.6 ... Die Kommandos 'gpioget' und 'gpioset' ... 700

       21.7 ... Das Kommando pinctrl ... 705



22.  C-Programmierung ... 707


       22.1 ... Hello World ... 707

       22.2 ... GPIO-Steuerung mit C ... 711



23.  PHP-Programmierung ... 715


       23.1 ... Apache installieren und konfigurieren ... 716

       23.2 ... Webverzeichnisse einrichten und absichern ... 718

       23.3 ... HTTPS ... 724

       23.4 ... PHP installieren und konfigurieren ... 728

       23.5 ... MariaDB installieren und administrieren ... 730

       23.6 ... 'Hello World' in PHP ... 735

       23.7 ... GPIO-Steuerung mit PHP ... 737

       23.8 ... Kamerafunktionen mit PHP nutzen ... 741



24.  Mathematica und die Wolfram Language ... 745


       24.1 ... Arbeiten mit Mathematica ... 746

       24.2 ... Programmieren mit der Wolfram Language ... 752

       24.3 ... Grafische Darstellung von Temperaturdaten ... 758



TEIL V.  Projekte ... 763


25.  Der Raspberry Pi im Vogelhaus ... 765


       25.1 ... Einbau des Raspberry Pi samt Kameramodul in ein Vogelhaus ... 765

       25.2 ... Kamerapraxis ... 768

       25.3 ... Bewegungserkennung mit motion ... 771

       25.4 ... Das Vogelhaus im praktischen Einsatz ... 774



26.  Zeitmessung mit Lichtschranken ... 777


       26.1 ... Versuchsaufbau (Hardware) ... 777

       26.2 ... Programmcode ... 780



27.  Das autonome Auto ... 783


       27.1 ... Der Bau des Autos ... 783

       27.2 ... Die Software ... 792



28.  RFID-Türöffner mit Zutrittskontrolle ... 795


       28.1 ... RFID-Hardware ... 796

       28.2 ... Software ... 798

       28.3 ... Erweiterungsmöglichkeiten und Tipps ... 804



29.  Stromzähler auslesen ... 807


       29.1 ... Stromzähler-Grundlagen ... 807

       29.2 ... Einführung in RRDtool ... 811

       29.3 ... Zählerdaten speichern und zu Graphen aufbereiten ... 816



30.  Hausautomation mit Netzwerksteckdosen ... 819


       30.1 ... Einführung ... 819

       30.2 ... Programmierung ... 821



31.  Die Schalthebel der Nacht ... 833


       31.1 ... Vorbereitung ... 833

       31.2 ... Der Lux-Sensor ... 834

       31.3 ... IKEAs Trådfri-Beleuchtungssystem mit Linux steuern ... 837

       31.4 ... Philips-Hue-Leuchten ansteuern ... 840

       31.5 ... Lichtstärke messen, Leuchten steuern ... 843



32.  Ort und Zeit per GPS empfangen ... 847


       32.1 ... Haben Sie Zeit? Eine Uhr für den Raspberry Pi ... 847

       32.2 ... Ortsbestimmung mit dem Raspberry Pi ... 855



33.  Klingel-Pi -- der Türglockenverstärker ... 861


       33.1 ... Geräuschsensor anschließen ... 861

       33.2 ... Software ... 862



34.  DLNA-Server ... 865


       34.1 ... Inbetriebnahme ohne Tastatur und Monitor ... 866

       34.2 ... ReadyMedia alias miniDLNA ... 869

       34.3 ... Read-only-Konfiguration ... 871



35.  Pi-hole (Ad-Blocker) ... 873


       35.1 ... Installation ... 874

       35.2 ... Client-Konfiguration ... 877

       35.3 ... Weboberfläche ... 878



36.  WLAN-Router ... 881


       36.1 ... Basiskonfiguration ... 881

       36.2 ... Routerkonfiguration mit 'nmcli' ... 882

       36.3 ... RaspAP ... 886



37.  NAS mit openmediavault ... 891


       37.1 ... Voraussetzungen ... 893

       37.2 ... Installation ... 895

       37.3 ... Konfiguration ... 895



38.  Home Assistant ... 903


       38.1 ... Installation ... 904

       38.2 ... Setup des eigenen Smart Homes ... 905

       38.3 ... Terminal, SSH und Backups ... 916



39.  Luftraumüberwachung ... 919


       39.1 ... Technischer Hintergrund und Hardware ... 919

       39.2 ... Software ... 921



40.  Die Servokamera ... 925


       40.1 ... Die Hardware ... 926

       40.2 ... Die Python-Software ... 926

       40.3 ... Die Streaming-Software ... 929

       40.4 ... Die Weboberfläche ... 930



41.  PomodoPi ... 935


       41.1 ... Der Bodenfeuchtigkeitssensor ... 935

       41.2 ... Die Blumenampel ... 943

       41.3 ... Die automatische Bewässerung ... 945

       41.4 ... Photosynthese sichtbar machen ... 950



42.  Wassermelder mit Handyalarm ... 953


       42.1 ... Hardware ... 953

       42.2 ... Push-Benachrichtigungen mit Pushover ... 955

       42.3 ... IFTTT ... 958



43.  Dicke Luft -- Feinstaubmessung und Innenluftqualität ... 961


       43.1 ... Was ist Feinstaub? ... 961

       43.2 ... Welcher Sensor kann PM10 und PM2.5 messen und wie funktioniert das? ... 962

       43.3 ... Anschauliche Grafiken im Web ... 966

       43.4 ... Luftqualitätssensor für den Innenraum ... 970



44.  PXE-Boot: Ohne Speicherkarte vom NAS booten ... 973


       44.1 ... Das NAS-System vorbereiten ... 973

       44.2 ... Den Raspberry Pi und sein Betriebssystem vorbereiten ... 977



TEIL VI.  Raspberry Pi Pico ... 985


45.  Die Hardware ... 987


       45.1 ... Der Microcontroller RP2040 ... 988

       45.2 ... Platinenaufbau ... 989



46.  MicroPython-Programmierung ... 995


       46.1 ... Hello MicroPython! ... 995

       46.2 ... Programmiertechniken ... 1002

       46.3 ... Pico-Webserver ... 1012



47.  CO2-Ampel ... 1019


       47.1 ... Hardware ... 1019

       47.2 ... Software ... 1022



48.  Ultraschall-Entfernungsmessung ... 1025


       48.1 ... Ultraschallsensor anschließen und auswerten ... 1025

       48.2 ... Ultraschallampel ... 1028



  Index ... 1031

Autorenporträt  
Mehr Angebote zum Thema