Nistkästen mit der Pi-Cam ins Internet bringen

RAM-Disk

SD-Karten vertragen häufige Schreibzugriffe nur schlecht. Mit einer RAM-Disk, also einem Cache im Arbeitsspeicher des RasPi, schonen Sie die Speicherkarte. Zudem arbeitet eine RAM-Disk wesentlich schneller als die Micro-SD-Karte. Beim Nistkasten soll die RAM-Disk die Logdateien und die von der Kamera geschossenen Bilder aufnehmen.

Für eine 64 MByte große RAM-Disk erstellen Sie zunächst entsprechend Listing 3 das Verzeichnis /mnt/ramdisk/. Anschließend tragen Sie die Konfiguration aus Listing 4 in die Datei /etc/fstab ein. Nach einem Neustart zeigt der Befehl df dann die RAM-Disk an. Damit der Standardbenutzer pi auf dieser flüchtigen "Festplatte" schreiben darf, korrigieren Sie mit chown noch die Dateirechte entsprechend.

Listing 3

 

$ sudo mkdir /mnt/ramdisk
[... /etc/fstab mit Inhalt aus Listing 5 ...]
$ sudo nano /etc/fstab
[... Neustart ...]
$ df | grep ramdisk
tmpfs              65536       0     65536    0% /mnt/ramdisk
$ sudo chown pi:pi /mnt/ramdisk

Listing 4

 

tmpfs /mnt/ramdisk tmpfs nodev,nosuid,size=64M 0 0

Kamera

Zum Aufzeichnen der Aktivitäten der nistenden Vögel kommt die Raspberry-Pi-Kamera in der IR-Version zum Einsatz. Diese haben Sie bereits bei der initialen Einrichtung des Systems aktiviert, nun fehlt noch die softwareseitige Unterstützung. Für das Projekt kommt Python zum Einsatz: Dafür gibt es mit Picamera [6] bereits eine leistungsfähige Bibliothek, die sich über den Python-Paketmanager Pip installieren lässt (Listing 5). Auch eine minimalistische Bildveränderungserkennung lässt sich in Python gut umsetzen.

Listing 5

 

$ sudo apt install python-pip
$ sudo pip install picamera

Damit sich die Vögelchen nicht durch die rote LED der Kamera gestört fühlen, schalten Sie diese aus. Das erfordert den Eintrag disable_camera_led=1 in der Datei /boot/config.txt und einen anschließenden Neustart.

Für einen ersten Test übertragen Sie nun den Inhalt aus Listing 6 in eine leere Datei, etwa in meisentest.py. Das kleine Programm nimmt lediglich ein Bild auf und speichert es auf der RAM-Disk. Zudem gibt es die aktuelle Zeit in Form eines Timestamps aus. Sie machen das Programm mit chmod +x meisentest.py ausführbar und rufen es dann mit ./meisentest.py auf. Das System sollte die neue Aufnahme nach einem ls /mnt/ramdisk auflisten.

Listing 6

 

#!/usr/bin/python
# meisentest.py
# Erster Test
import picamera
import time
# Voreinstellungen
WIDTH=320
HEIGHT=240
FONTSIZE=20
# Kamera initialisieren
camera = picamera.PiCamera()
camera.vflip = False
camera.hflip = False
camera.brightness = 60
camera.resolution = (WIDTH,HEIGHT)
localpicname = '/mnt/ramdisk/meisencam.jpg'
camera.capture(localpicname)
zeitstempel = time.strftime("%Y%d%m-%H%M%S")
print (zeitstempel)
camera.close()

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 9 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Raspberry Pi Geek kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

Aktuelle Ausgabe

12/2018
Coole Projekte

Diese Ausgabe als PDF kaufen

Preis € 7,99
(inkl. 19% MwSt.)

Stellenmarkt

Neuigkeiten

  • Bytes und Beats

    In Sonic Pi können Sie mit wenigen Codezeilen Klänge manipulieren, Beats zusammenstellen und ganze Songs komponieren.

  • Klein, aber fein

  • Trick or treat

    Das traditionelle RPG-Gruselkabinett glänzt dieses Jahr mit einer innovativen Umsetzung mittels Pneumatik und Elektropneumatik sowie ST-Programmierung.

  • Unter Kontrolle

    Traditionell stellen wir alljährlich ein selbst gebautes Halloween-Gespenst vor. Die pneumatischen und elektronischen Grundlagen erklärt dieser Artikel.

  • Go Pi Go!

    Der Bausatz GoPiGo3 liefert Bauteile und Software für ein kleines Roboterauto. Zusammen mit einem RasPi als Gehirn programmieren Sie den Roboter per Mausklick.

  • Handlicher Helfer

    Während die Folien der Präsentation durchlaufen, liefert ein kleiner Dokumentenserver auf Basis des GL-AR300M-ext zusätzliche Informationen aus.

  • Wiederverwertet

    Mithilfe eines einfachen Python-Programms recyceln Sie ein ausgedientes Smartphone als drahtlos angebundenes RasPi-Display.

  • Herzenssache

    Steigt beim Krimi der Herzschlag bedrohlich an? Mit einem Pulsmesser in Eigenbau ermitteln Sie einfach und kostengünstig, ob der Herzschlag noch in verträglichen Bereichen liegt.

  • Fernbedient

    Mit der Fernbedienung den RasPi steuern. In der Theorie möglich, in der Praxis oft beschwerlich. Die Libcec liefert praktische Tools zur Fehlersuche.

  • Musikwürfel

    Mit Musikcube machen Sie Ihre eigene Sammlung fit fürs Streamen. Der terminalbasierte Audioplayer lässt sich Fernsteuern und bietet eine App für Android-Smartphones.