Foto-Backup mit dem RasPi

Systemintegration

Damit das alles automatisch klappt, gilt es, den HAT-Server sauber ins System einzubinden. Dank Systemd gelingt das mit wenigen Zeilen. Listing 10 zeigt die Service-Definition über die Datei /etc/systemd/system/hat-server.service. Die Zeile 9 startet via ExecStart das Server-Programm, die nachfolgende Zeile löst das "Boot-Start"-Ereignis aus. Dadurch blinkt beim Hochfahren die rote LED.

Listing 10

 

[Unit]
Description=Start HAT-server
DefaultDependencies=no
After=sysinit.target local-fs.target
Before=basic.target
[Service]
Type=simple
ExecStart=/usr/local/sbin/hat-server.py
ExecStartPost=/usr/local/sbin/hatctl.py BS
[Install]
WantedBy=basic.target

Ein zweiter Service schaltet diese am Ende des Bootvorgangs wieder aus. Die zugehörige Service-Definition steht in /etc/systemd/system/endofboot.service (Listing 11). Der Dienst löst über die Zeile 8 in ExecStart das Ereignis "Boot-Ende" aus. Da das System Services beim Herunterfahren in umgekehrter Startreihenfolge stoppt, nutzen wir den Service auch gleich für das Ereignis "Halt-Start" – der ExecStop-Befehl aus Zeile 9 macht genau das.

Listing 11

 

[Unit]
Description=Change status of HAT-LEDs
After=multi-user.target
[Service]
Type=oneshot
RemainAfterExit=true
ExecStart=/usr/local/sbin/hatctl.py BE
ExecStop=/usr/local/sbin/hatctl.py HS
[Install]
WantedBy=multi-user.target

Beide Services müssen Sie einmalig mit den Befehlen aus Listing 12 aktivieren. Nach einem Neustart lädt das System die Dienste dann automatisch, die LEDs sollten wie geplant leuchten. Alternativ schalten Sie die LEDs von der Kommandozeile aus über das Skript hatctl.py manuell nach Belieben. Die Funktion nutzt das Kopier-Skript aus Listing 6, speziell die Zeilen 5 und 9. Sie lösen die Ereignisse "Aktion-Start" und "Aktion-Ende" aus und sorgen dafür, dass während des Kopiervorgangs die gelbe LED blinkt.

Listing 12

 

$ sudo systemctl enable hat-server.service
$ sudo systemctl enable endofboot.service

Damit hat unser Foto-Tank seine Basisfunktionen erhalten. Wie erwähnt, geht das Ganze mit dem Display-O-Tron-Hat (Abbildung 3) auch ein wenig komfortabler. Auch diese Erweiterung stammt von Pimoroni, und auch dafür gibt es eine Python-Bibliothek, über die sich der RasPi-Aufsatz bequem ansteuern lässt. Allerdings bietet dieser HAT viel mehr Funktionen als der Pibrella.

Abbildung 3: Der Display-O-Tron-Aufsatz für den RasPi bietet mehr Möglichkeiten zur Ausgabe von Informationen.

Ausblick

Unser Foto-Tank ist einsatzbereit. Drei LEDs und ein Taster, mehr braucht es nicht für die Interaktion mit dem Gerät. Trotzdem bleiben Wünsche offen: Zum einen fehlt es dem Kopier-Skript noch an Intelligenz. Es kopiert zwar nur geänderte Dateien (also neue Fotos) von der SD-Karte auf die Festplatte. Nutzen Sie allerdings mehrere Kameras und erstellen diese zufällig Bilder gleichen Namens, überschreiben diese die zuerst gesicherten Bilder. Dasselbe Problem droht, sobald Sie in der Kamera die Bildnummerierung zurücksetzen.

Nützlich wäre auch ein drahtloser Zugang zum RasPi: So ließen sich auch Bilder von Smartphones oder Tablets sichern. Wünschenswert wäre auch ein schönes Webinterface, über das man schon während des Urlaubs seine Aufnahmen sichten, löschen und bewerten könnte. Auch diese Erweiterungen stellen für einen RasPi keine echte Herausforderung dar. Der zweite Teil des Artikels im nächsten Heft zeigt die notwendigen Schritte. 

Der Autor

Bernhard Bablok arbeitet bei der Allianz Managed&Operations Services SE als SAP-HR-Entwickler. Wenn er nicht Musik hört oder mit dem Radl beziehungsweise zu Fuß unterwegs ist, beschäftigt er sich mit Themen rund um Linux, Programmierung und neuerdings Mini-Computer. Sie erreichen ihn unter mailto:mail@bablokb.de.

Infos

  1. Bausatz Berry-Clip: http://www.raspberrypi-spy.co.uk/berryclip-6-led-add-on-board/
  2. Bausatz Fish-Dish: https://www.rasppishop.de/Fish-Dish-LED-und-Buzzer-Board
  3. Projektseite des Autors: https://github.com/bablokb/pi-imgtank
  4. Python-Bibliothek für Pibrella: https://github.com/pimoroni/pibrella
  5. Raspbian-Installation automatisieren: Bernhard Bablok, "Automatisch verpackt", RPG 01/2016, S. 76, http://raspi-geek.de/35797

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 6 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

06/2019
Home Improvement

Diese Ausgabe als PDF kaufen

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

Stellenmarkt

Neuigkeiten

  • Verschlungene Pfade

    Mit Schleifen, Fallunterscheidungen und Funktionen programmieren Sie komplexe Skripte auf einfache und elegante Weise.

  • Extrem genau

    Mit einem A/D-Wandler messen Sie bei Bedarf Spannungen. Der MCP3424 macht dabei konstruktionsbedingt eine gute Figur.

  • Verbindungsaufnahme

  • Süßer Wecker

    Dem RasPi fehlen sowohl eine Echtzeituhr als auch ein BIOS, ein zeitgesteuertes Wecken erfordert also Zusatzkomponenten. Hier springt der Witty Pi Mini in die Bresche, ein µHAT von UUGear.

  • Windows to go

    Das Aufsetzen zuverlässiger und sicherer Remote-Desktop-Lösungen erfordert einiges Know-how. Die RasPi-basierte Pinbox von Pintexx reduziert den Konfigurationsaufwand auf ein Minimum.

  • Prima Klima

    In Museen ist es Pflicht, zu Hause nützlich: das permanente Prüfen und zentrale Erfassen der Feuchtigkeit und Temperatur in Räumen.

  • Auf einen Blick

    Ein maßgeschneiderter Infoscreen auf RasPi-Basis mit stromsparendem E-Ink-Display zeigt Termine, Bilder, Mitteilungen und Wetterinformationen an.

  • Sanft berührt

    Mit einem RasPi und dem Controllermodul PiXtend lassen sich mühelos Roboterarme ansteuern und deren Bewegung automatisieren.

  • Popcorn-Kino

    Mit Kodi 18.0 unterstützt LibreELEC 9.0 jetzt die von vielen Streaming-Diensten genutzte DRM-Verschlüsselung. Die Integration von Netflix, Amazon und Co. erfordert allerdings Handarbeit.

  • So nah und doch so fern

    Der RasPi kommt häufig als Server oder Steuerrechner für spezielle Zwecke zum Einsatz. Mit Anydesk erhalten Sie dazu eine Steuersoftware mit grafischer Oberfläche.