Inbetriebnahme von Raspberry Pi und Kamera - holmos-mikroskop/holmos GitHub Wiki

- Raspberry Pi 3
- microSD-Karte mit 8GB Speicher
- micro-USB-Kabel und Netzteil mit mindestens 1A
- USB-Tastatur
Da der Raspberry Pi selbst keinen persistenten Speicher besitzt, werden alle Arbeitsdateien und Programme sowie das Betriebssystem(OS) auf der SD-Karte gespeichert.
Raspbian ist das meistverbreitete OS auf dem Raspberry. Es basiert auf der Linux-Distribution Debian und bietet eine Vielzahl an Softwarepaketen, die bereit gestellt werden.
Das Betriebssystem kommt als Disk-Image(.img) und muss von der offiziellen Raspberry Pi Seite heruntergeladen werden. Das obere Disk-Image enthält einen grafischen Desktop, während das untere namens „Raspbian Lite“ nur über die Kommandozeile bedient werden kann.
Es reicht nicht aus, die .img-Datei einfach auf die SD-Karte zu kopieren. Mithilfe von Etcher werden die Inhalte „gebrannt“. Die Oberfläche dieses Programms ist selbsterklärend: Nachdem die SD-Karte an den Rechner gesteckt wurde, muss man die .img-Datei auswählen, danach die richtige(!) SD-Karte auswählen und mit einem Klick auf „Flash“ den Vorgang abschließen.
Das Brennen des Disk-Images kann je nach Geschwindigkeit der SD-Karte einige Minuten dauern.
Ist der Vorgang abgeschlossen, ist das Raspbian Betriebssystem erfolgreich installiert. Nun muss nur noch die SD-Karte in den Slot auf dem Raspberry geschoben werden.
Um die Ausgabe des Raspberry auch sehen zu können, muss man den HDMI-Port mit einem entsprechenden Kabel mit dem Monitor verbinden. Zusätzlich muss eine USB-Tastatur angeschlossen werden.
Auf der kleinen Platine des Raspberry ist kein Einschaltknopf vorhanden. Ein einfaches Anschließen des Stroms mit dem Micro-USB-Kabel reicht aus, um den Bootvorgang zu starten. Nach dem Hochfahren erscheint die Meldung raspberrypi login: und man kann sich mit dem Benutzer pi und dem Passwort raspberry einloggen.
raspberrypi login: pi
Password:
Last login: Fri Nov 11 19:19:10 UTC 2016 on pts/0
Linux raspberrypi 4.4.26-v7+ #915 SMP Thu Oct 20 17:08:44 BST 2016 armv7l
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
pi@raspberrypi:~ $
Ist gerade einmal kein Bildschirm griffbereit, lässt sich der Raspberry Pi auch mit einem Netzwerkkabel(Ethernet) blind aufsetzen. Diese Methode ist aber deutlich komplizierter und wird nur empfohlen, wenn sich wirklich kein HDMI-Kabel und Monitor im Umkreis von 5 Kilometern befindet.
Zuerst müssen Schritte 1-2 wie oben befolgt werden, aber anstatt eines Monitors wird ein beliebiger Rechner(vorzugsweise Linux) über ein LAN-Kabel verbunden. Einige Sekunden, nachdem man den Strom verbunden hat, ist der Raspberry hochgefahren. Dann gilt es, blind auf der Tastatur zu tippen: Zuerst Strg+Alt+F1, um ein Terminal zu „öffnen“.
Danach muss der Benutzername pi gefolgt von Enter sowie das Passwort raspberry gefolgt von Enter eingetippt werden (Anmerkung: Standardmäßig ist Raspbian auf englisches Tastaturlayout eingestellt, daher kann es sein dass man als Passwort raspberrz eingeben muss). Wenn alles geklappt hat, befindet man sich dann in der Shell. Dort wird dann der folgende Befehl ausgeführt: $ sudo ipconfig eth0 192.168.100.20 Dieser setzt die IP-Adresse der Ethernet-Schnittstelle auf 192.168.100.20.
Da jetzt die IP-Adresse des Raspberrys bekannt und gesetzt ist, muss man lediglich dem Rechner eine IP-Adresse im selben Subnetz geben, z.B. 192.168.100.1.
Die Netzwerkverbindung steht nun und man kann sich über einen beliebigen SSH-Client (unter Windows PuTTY) in den Raspberry einloggen: ssh [email protected]
Es wird empfohlen, danach eine WiFi-Verbindung oder ähnliches aufzubauen, da der oben beschriebene Vorgang, insbesondere das Blind-Tippen, auf Dauer mühsam ist.
Um den eingebauten WLAN-Chip des Raspberry Pi zu nutzen, muss ein entsprechendes Netzwerk hinterlegt werden, in welches sich der Raspberry einloggt. Dies lässt sich einfach konfigurieren.
Die Daten werden in die Datei /etc/wpa_supplicant/wpa_supplicant.conf eingetragen:
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Dort müssen folgende Zeilen hinzugefügt werden:
network={
ssid=„Foo Wifi“
psk=„123456789“
}
„Foo Wifi“ muss natürlich mit dem Namen des WLANs und „123456789“ mit dem WLAN-Key ersetzt werden. Der Editor lässt sich mit Strg+O Strg+W beenden. Um die Änderung zu übernehmen, muss das Netzwerkinterface mit folgenden Befehlen neugestartet werden:
sudo ifdown wlan0
sudo ifup wlan0
Und fertig - der Raspberry loggt sich nun automatisch in das WLAN ein, sofern es in Reichweite ist.

Abb.: Die Raspberry Pi Camera
Um die Raspberry Pi Kamera (kurz Cam) zu benutzen, muss sie zuvor angeschlossen und aktiviert werden. Die blaue Seite des Flachbandkabels muss hierbei in Richtung LAN-Port (Raspi-Seite) bzw. weg von der Platine (Cam-Seite) zeigen. Um den Flachbandverbinder zu „entsperren“, muss er vorsichtig angehoben werden. Sobald das Kabel steckt wieder vorsichtig zudrücken.
Die Aktivierung erfolgt dann über folgenden Befehl:
sudo raspi-config
Mithilfe der Pfeiltasten und der Enter-Taste navigiert man dann zum fünften Menüpunkt, wählt ihn an und bestätigt den Dialog mit . Die Kamera ist nun aktiviert und kann getestet werden:
raspi-still -o image.jpeg
Der raspi-still-Befehl nimmt ein Foto auf und speichert es (hier) unter image.jpeg. Mithilfe eines Dateibrowsers lässt sich dieses dann betrachten.
Es folgen zwei historisch wichtige Bilder: Es handelt sich um die ersten, jemals aufgenommenen Bilder der AG!

Neben den Commandline-Tools raspistill und raspivid gibt es auch noch ein Python-Interface. Um das in OpenCV zu integrieren, gibt es diesen Artikel. Das entsprechende Modul heißt picamera und ist bereits auf dem Raspberry Pi vorinstalliert, andernfalls kann es mit apt install python3-picamera installiert werden.
import picamera
import time
cam = picamera.PiCamera()
cam.start_preview()
time.sleep(6) # Wait 6 seconds
cam.stop_preview()Dieses Programm erstellt ein PiCamera-Objekt, das verschiedene Funktionen und Parameter bereithält. Eine der Methoden ist start_preview, welche das aktuelle Kamerabild auf dem angeschlossenen Monitor anzeigt. Ist man allerdings über VNC verbunden, ist nichts zu sehen, da die Anzeige von der GPU übernommen wird und direkt auf den sogenannten framebuffer geschrieben wird -- nicht in ein X window.