Raspberry Pi » Einplatinencomputer im Taschenformat
Ebenso wie die Arduino® Controller, werden auch immer wieder gerne Einplatinen-Computer bei der Entwicklung von komplexen Steuerungen oder Schaltungen genutzt. Der wohl bekannteste aber auch beliebteste Einplatinen-Computer ist der Raspberry Pi, den es mittlerweile in den unterschiedlichsten Ausführungen gibt.
Doch wo liegen die Unterschiede zwischen beiden Systemen? In unserem Ratgeber zu den Arduino-Controllern haben wir sowohl den technischen Aufbau, als auch die Funktionsweise anhand eines einfachen Praxisbeispiels ausführlich erläutert. In diesem Beitrag möchten wir nun den Raspberry Pi Einplatinen-Computer genauer vorstellen und einige wenige der vielfältigen Anwendungs-Möglichkeiten aufzeigen.
PCs, Notebooks, Laptops oder Tablets sind aus unserem Leben nicht mehr wegzudenken. Sie erfüllen die vielfältigsten Aufgaben und übertrumpfen sich gegenseitig mit immer neuen Höchstleistungen in Punkto Geschwindigkeit und Speicherkapazität. Das ist auch gut so, denn die Anwendungen werden einerseits immer komplexer und sollen andererseits trotzdem noch in Sekundenschnelle laufen.
Doch was ist, wenn die Aufgabe, die ein Computer erfüllen muss, eher banal ist. Das könnte beispielsweise dann der Fall sein, wenn ein 3D-Drucker kontinuierlich und über einen längeren Zeitraum mit Daten versorgt werden soll. Aber auch die Steuerung von Smart Home-Komponenten, sowie die Datenübertragung von Wetterstationen und Videokameras ins Internet sind eher einfache Aufgaben. Selbst das Abspielen von Filmen und Videos von einer externen Festplatte ist für moderne Desktop PCs eine Kleinigkeit. Da die PC-Auslastung bei diesen Anwendungen nur minimal ist, sind moderne Computer hoffnungslos unterfordert bzw. total überdimensioniert. Das muss nicht sein. Denn genau bei diesen Szenarien spielen clevere Einplatinen-Computer, wie z.B. der Raspberry Pi, ihre Stärken aus.
Obwohl sie nur die Größe einer Scheckkarte haben, besitzen diese Geräte alles, was ein Computer benötigt. Neben dem Prozessor und dem Arbeitsspeicher haben Einplatinen-Computer alle erforderlichen Schnittstellen, um Tastatur, Maus, Netzwerk, Monitor und Netzteil anzuschließen.
Anstelle einer Festplatte wird eine Speicherkarte genutzt, um das Betriebssystem und die erforderlichen Anwendungen zu laden. Im Prinzip ist ein Raspberry Pi oder „Raspi“, wie er von der Fangemeinde genannt wird, ein vollwertiger Computer, der einfach nur abgespeckt wurde. Dadurch ist er zwar langsamer als ein durchschnittlicher PC, aber immer noch schnell genug, um die an ihn gestellten Aufgaben problemlos erfüllen zu können.
Da ein Raspi zudem deutlich preiswerter als ein herkömmlicher Computer und auch noch frei programmierbar ist, eignet er sich ideal zum Basteln oder Experimentieren und auch für die Ausbildung.
Die Bezeichnung Raspberry Pi beschreibt nicht einen speziellen Einplatinen-Computer. Vielmehr ist das die Bezeichnung einer kompletten Produktlinie bzw. Produktfamilie der Raspberry Pi Foundation. Die Raspberry Pi Foundation ist eine in Großbritannien ansässige und gemeinnützige Stiftung.
Die ersten Raspberry-Pi-Modelle kamen bereits 2012 als Raspberry Pi Model 1B auf den Markt. Zwei Jahre später erschien der Pi 1 Modell B+. Ab Februar 2015 waren schon die schnelleren Raspberry Pi 2 verfügbar, die zudem dann auch noch über einen Ethernet-Port verfügten. Abgelöst wurden die Raspberry Pi 2 durch die Raspberry Pi 3 Modelle, die im Februar 2016 erschienen sind. Bei diesen Boards wurde dann von der 32-Bit-Architektur auf 64-Bit-Prozessoren umgestellt und WLAN bzw. Bluetooth ergänzt. Dadurch wurden die Systeme deutlich leistungsfähiger.
Raspberry Pi 5 – das neueste Mitglied der beliebten Raspberry Pi-Familie
Seit September 2023 ist der neue Raspberry Pi 5 erhältlich. Dank der leistungsgesteigerten CPU ist der Raspberry Pi 5 rund zwei bis drei Mal schneller als seine Vorgänger. Somit eignet sich die neueste Version nicht nur für komplexe PC- oder Office-Anwendungen. Auch rechenintensive Prozesse in der Automatisierung, wie sie beispielsweise in der Industrie 4.0 bei der Steuerung von Cobots erforderlich sind, lassen sich mit dem Raspberry Pi 5 preiswert und effizient durchführen.
Eine Übersicht der aktuellen Modelle und deren Leistungsdaten können Sie der nachfolgenden Tabelle entnehmen:
Übersichtstabelle der gängigsten Raspberry Pi
Raspberry Pi Zero 2 W | Raspberry Pi 3B+ | Raspberry Pi 4B | Raspberry Pi 5 | |
---|---|---|---|---|
SOC | BCM2710A1 | BCM2837 | BCM2711 | BCM2712 |
CPU | ARM Cortex-A53 | ARM Cortex-A53 | ARM Cortex-A72 | ARM Cortex-A76 |
CPU-Takt | 4 x 1000 MHz | 4x 1400 MHz | 4x 1500 MHz | 4 x 2400 MHz |
RAM | 512 MB | 1 GB | 1 GB, 2 GB, 4 GB oder 8 GB | 4 GB oder 8 GB |
USB | 2 x USB 2.0 | 4 x USB 2.0 | 2 x USB 2.0 2 x USB 3.0 |
2 x USB 2.0 2 x USB 3.0 |
GPIOs | 40 Pins | 40 Pins | 40 Pins | 40 Pins |
Video | 1 x HDMI | 1 x HDMI | 2 x Micro-HDMI | 2 x Micro-HDMI |
Audio | HDMI (digital) | HDMI (digital) 3,5 mm Klinke für Composite-Video und Audio |
HDMI (digital) 3,5 mm Klinke für Composite-Video und Audio |
HDMI (digital) |
Netzwerk | ✗ | 10/100/1000 MBit(max. 300 MBit/s) | 10/100/1000 MBit | 10/100/1000 MBit |
WLAN | 2,4 GHz | 2,4 GHz | 2,4 GHz | 2,4/5 GHz |
Bluetooth | 4.2 | 4.2 | 5.0 | 5.0 |
Stromversorgung | 5 V über Micro USB Min. 2,5 A |
5 V über Micro USB Min. 2,5 A |
5 V über USB-C Min. 3 A |
5 V über USB-C Min. 5 A |
Größe | 65 x 30 mm | 85,6 x 56 mm | 85,6 x 56 mm | 85,6 x 56 mm |
Unsere Produktempfehlungen
Am Beispiel des Raspberry Pi 3 wollen wir die wesentlichen Bestandteile eines Raspberrys anschaulich aufzeigen:
1. WLAN/Bluetooth-Einheit
2. GPIO Schnittstelle
3. Power over Ethernet (PoE)-Pins
4. USB-2.0-Anschlüsse (4x)
5. Ethernet-Anschluss (LAN)
6. Ethernet-Controller
7. Composit Video/Audio 3,5 mm
8. Flachkabel-Sockel für Kameras
9. HDMI-Ausgang
10. Prozessor
11. Stromversorgung 5 V (microUSB)
12. LEDs (Aktivität und Betriebsspannung)
13. Flachkabel-Sockel für Displays
14. DRAM Speicher-IC
15. Sockel für MicroSD-Card
Damit ein Computer arbeiten kann, muss neben der Hardware auch eine Software, also das Betriebssystem, vorhanden sein. Mit Hilfe des Betriebssystems können dann weitere Anwendungen und Programme installiert werden. Beim Raspberry Pi, der ja im Prinzip ein abgespeckter Computer ist, muss ebenso zunächst das auf LINUX basierende Betriebssystem Raspberry Pi OS (Rasbian) aufgespielt werden. Dazu wird eine microSD-Karte mit mindestens 8 GB, 16 GB oder besser 32 GB benötigt. Wichtig bei der SD-Karte ist neben der Speicherkapazität in GB auch die Schreibgeschwindigkeit. Die sollte so hoch wie möglich sein.
Um ein Raspberry Pi Board lauffähig zu machen, wird zunächst ein Computer mit Internetzugang und Speicherkartenadapter benötigt. Das Betriebssystem für den Raspi kann als Raspbian-Image auf der Internetseite https://www.raspberrypi.org/downloads/ heruntergeladen werden. Danach wird der Download direkt auf die formatierte Speicherkarte installiert. Dabei kann sowohl die Softwareversion als auch die Speicherkarte im Menü ausgewählt werden.
Nach erfolgter Installation wird die Speicherkarte aus dem PC-Adapter entnommen und beim Raspi in den Kartenslot geschoben. Anschließend werden Maus und Tastatur (Dongle oder Kabelanschluss) sowie ein Bildschirm per HDMI-Kabel am Mini-PC angeschlossen.
Nach dem Anstecken des Netzteils bootet das System und installiert automatisch alle erforderlichen Treiber. Bei der ersten Inbetriebnahme werden dann noch das Land, die Sprache und das WLAN-Netz ausgewählt sowie ein neues Passwort vergeben. Am Ende der Installation werden gleich noch die neuesten Updates gezogen, damit das Betriebssystem Raspberry Pi OS auf dem neuesten Stand ist.
Nach erfolgreicher Installation steht der Starbildschirm mit der Menüleiste am oberen Bildrand zur Verfügung. Der Einplatinen-Computer ist nun betriebsbereit und die ersten Einstellungen können vorgenommen werden.
Die Himbeere oben links ist quasi identisch mit dem Start-Button bei Windows 10. Wird die Himbeere angeklickt, stehen weitere Menüs zur Verfügung. Aber auch andere Funktionen, wie z.B. der Dateimanager oder das Anlegen von neuen Icons auf dem Desktop sind sehr stark an die Windows-Funktionalität angelehnt.
Deshalb ist die Bedienung der Raspi-Software intuitiv möglich und schnell erlernbar.
Unser Praxistipp: Stromversorgung!
Da es sich beim Raspberry Pi um einen funktionellen Computer handelt, darf der Stromstecker nicht einfach während des Betriebes abgezogen werden. Vielmehr muss zunächst das Betriebssystem heruntergefahren werden. Dafür wird die Himbeere oben links angeklickt und dann kann das Betriebssystem über den Menüpunkt Abmelden und Herunterfahren ganz einfach beendet werden. Sobald die Betriebsspannung neu angelegt wird, startet das Betriebssystem selbsttätig. Sollen dann gleich bestimmte Anwenderprogramme ausgeführt werden, sind diese später in die Startroutine einzubinden.
Raspberry Pi per VNC fernsteuern
Im Regelfall braucht man Maus, Tastatur und Monitor beim Raspberry Pi lediglich für die Installation bzw. die Einrichtung. Danach sind sie nicht mehr erforderlich. Um aber jederzeit Zugriff zu haben, ist es sinnvoll, eine Fernsteuerung über das Heimnetz einzurichten.
Dafür bietet sich „Virtual Networking Computing“ oder kurz VNC an, das mit einem plattformübergreifenden Netzwerkprotokoll sowohl unter Windows als auch auf Linux-Distributionen läuft. Zudem ist VNC ein fester Bestandteil der Raspberry Pi OS-Software (früher: Raspian).
Um die Fernsteuerung einzurichten, ruft man unter Start > Einstellungen die Raspberry Pi-Konfiguration auf, aktiviert im Bereich Schnittstellen "VNC" und bestätigt mit OK. Anschließend erscheint oben rechts das VNC-Icon. Klickt man darauf, kann man im VNC-Fenster die IP-Adresse des Raspberry Pi ablesen. Dazu muss auf dem PC, der zum Fernsteuern genutzt wird, lediglich der VNC-Viewer installiert werden.
Beim ersten Aufruf der Software wird die IP-Adresse des Raspberry Pi abgefragt. Da „pi“ bereits vorgegeben ist, muss man lediglich das Passwort des Raspberrys eingeben. Danach wird die Verbindung zum Raspberry aufgebaut und die Fernsteuerung ist möglich.
Alternativ zu VNC kann auch das Terminalprogramm „PuTTY“ genutzt werden, das auf unterschiedlichen Seiten zum kostenlosen Download angeboten wird. In diesem Fall muss in Raspberry Pi OS bei den Schnittstellen der Verbindungstyp „SSH“ aktiviert werden.
Bevor die einzelnen GPIO-Pins belegt und angesteuert werden können, muss klar sein, welcher Pin welche Bezeichnung und welche Funktion hat. Im Fall des verwendeten Raspberry Pi 3 Modells haben die 40 Pins folgende Belegung:
Pinbelegung der GPIO-Steckerleiste am Raspberry Pi 3:
Aufbau einer einfachen Ampelschaltung
Um die Ansteuerung der GPIOs anschaulich zeigen zu können, haben wir uns entschlossen eine kleine Ampelsteuerung zu realisieren. Dazu müssen zunächst drei LEDs mit jeweils einem Vorwiderstand angeschlossen werden. Für den schnellen und einfachen Aufbau der Schaltung eignet sich eine kleine Steckplatine.
Da die verwendeten GPIOs als Ausgänge definiert werden und somit eine Spannung ausgeben, müssen die Anoden der LEDs mit den Ausgängen des Raspberry Pi verbunden werden.
Die rote LED wird mit dem Pin 11 (GPIO 17) verbunden. Die gelbe LED wird am Pin 13 (GPIO 27) und die grüne LED am Pin 15 (GPIO 22) angeschlossen. An den Kathoden der drei LEDs wird jeweils ein Widerstand mit ca. 220 Ω gegen Masse an Pin 30 oder an jedem anderen beliebigen Masseanschluss (GND) geschaltet.
Programmierung der Ampelsteuerung
Es ist empfehlenswert, die Ampelsteuerung in der immer beliebter werdenden Programmiersprache Python zu programmieren. Anders als bei der Arduino-Programmierung erfolgt das Strukturieren von Programmblöcken nicht durch geschweifte Klammern, sondern durch das Einrücken der einzelnen Zeilen. Deshalb ist es wichtig, diese Einrückungen bei der Erstellung des Programmier-Codes oder beim Kopieren des Codes unbedingt zu beachten.
Der Programmiercode für eine einfache Ampelsteuerung sieht wie folgt aus:
Erklärungen zum Programmcode
import RPi.GPIO as GPIO
Einfügen der Bibliothek „RPi.GPIO“ zur Ansteuerung der GPIOs über Python.
GPIO.setmode(GPIO.BCM)
Befehl zur Verwendung der GPIO-Bezeichnungen. Wenn stattdessen die Pin-Nummern genutzt werden sollen, ist anstelle von „BCM“ die Eingabe „Board“ zu verwenden.
GPIO.setwarnings(False)
Abschalten der GPIO-Warnhinweise.
import time
Einfügen der Bibliothek „time“, um zeitliche Abläufe steuern zu können.
GPIO.setup(17, GPIO.OUT)
GPIO.setup(27, GPIO.OUT)
GPIO.setup(22, GPIO.OUT)
Diese drei Befehle definieren die GPIOs 17, 27 und 22 als Ausgänge.
while True:
Endlosschleife mit den vier unterschiedlichen Ampelfarben-Konstellationen, bei denen die zugehörige GPIOs eingeschaltet (1) oder ausgeschaltet (0) sind.
time.sleep
Eingabe der Leuchtdauer der eingeschalteten LEDs in Sekunden.
try:
except KeyboardInterrupt:
Die bedingten Anweisungen ermöglichen es, dass die Endlosschleife zwischen den beiden Befehlen mit der Tastenkombination (Stg + C) unterbrochen werden kann. Der dazugehörige eingerückte Befehl „GPIO.cleanup()“ wird ausgeführt und alle GPIOs zurückgesetzt. Dadurch erlöschen die LEDs. Bei einer Unterbrechung des Programms würden die LEDs dauerhaft weiter leuchten, die zum Zeitpunkt der Unterbrechung geleuchtet haben.
Übertragen des Programmcodes in die Programmiersoftware
Unter Start → Entwicklung wird die Thonny Python IDE aufgerufen und der Programmiercode in das unbenannte Fenster <untitled> eingefügt (siehe vorheriges Bild mit dem Screenshot). Anschließend muss der Code unter einem beliebigen Namen gespeichert werden. Der Start als auch die Unterbrechung des Programms können dann über die kreisrunden Schaltflächen manuell erfolgen. Bei Bedarf kann das Programm auch in die Startroutine mit eingebaut werden, damit es beim Einschalten des Einplatinen-Computers automatisch anläuft. Selbstverständlich können auch die Betriebszeiten des Raspis vorgegeben werden, sodass ein manuelles Ein- und Ausschalten nicht mehr erforderlich ist. Weitere Informationen diesbezüglich und auch zur Programmiersprache Python können leicht mit Hilfe der einschlägigen Suchmaschinen im Internet gefunden werden.
Wichtig!
Die GPIOs sind nicht in der Lage, hohe Ströme abzugeben. Der 3,3 V Stromversorgungsanschluss, der alle GPIOs versorgt, liefert einen maximalen Strom von lediglich 50 mA.
Deshalb sollten beim Aufbau von LED-Schaltungen ausschließlich Low Current LEDs verwendet werden.
Wenn höhere Ströme benötigt werden, kann ein Schaltverstärker, wie zum Beispiel ein ULN 2803, eingesetzt werden.
Ein weiteres großes Einsatzgebiet bei Einplatinen-Computern ist die Videoüberwachung. Deshalb haben Raspis auch einen Flachkabel-Sockel für Raspberry Pi Kameras. Dieser Sockel sollte vorzugsweise genutzt werden, denn dann ist die Kamera ein fester Hardwarebestandteil des Systems.
Selbstverständlich kann auch an einem der USB-Anschlüsse eine USB-Kamera betrieben werden. In diesem Fall sind aber noch Kameratreiber erforderlich, die unter Umständen bei manchen Anwendungen Probleme bereiten können.
Um die angeschlossene Kamera prüfen zu können, eignet sich der VLC-Media Player, der ein fester Bestandteil der Raspberry Pi-Software ist.
Um den Mediaplayer zu öffnen, muss Start → Unterhaltungsmedien und VLC Media Player angeklickt werden.
Wie bei Windows kann der Mediaplayer auch per Drag `n` Drop auf den Desktop gezogen werden. Im Mediaplayer wird mit den Eingaben Medien → Medium öffnen → Aufnahmegerät öffnen und Wiedergabe die Kamera gestartet.
Bei korrekter Installation wird das Kamerabild nun zu sehen sein, das per VNC dann auch im lokalen Netzwerk zur Verfügung steht.
Ein Raspberry Pi ist die ideale Basis, um in die Welt der Einplatinen-Computer einzusteigen und die dazu erforderliche Programmierung kennen zu lernen. Obwohl die kleinen Minirechner alles besitzen, was ein Computer zum Arbeiten benötigt, sind die Preise recht überschaubar und belasten die Hobbykasse nicht über Gebühr.
Aber auch das optionale Zubehör ist umfangreich. Neben Raspberry Pi Gehäuse, Displays und Kameras gibt es noch die unterschiedlichsten Erweiterungsmodule (Pi HATs oder pHat). Diese werden einfach auf die GPIO-Schnittstelle am Raspberry Pi aufgesteckt. Die elektrischen Verbindungen zwischen dem Raspi und dem PI HAT werden dabei automatisch und platzsparend hergestellt. Zudem lassen sich externe Systeme auch sehr leicht über die USB-Ports mit einbinden.
Durch das enorme Potential, das die kleinen Raspberry Rechner bieten, eignen sie sich auch ideal für gewerbliche und industrielle Anwendungen. Dadurch können auch ohne großen Aufwand komplexe Projekte realisiert werden, für die sonst überdimensionierte PCs oder Notebooks verwendet werden mussten. Und wenn die ersten Hürden beim Einstieg in die Thematik überwunden sind, bieten sich den anwendenden Personen scheinbar grenzenlose Einsatzmöglichkeiten.