Raspberry Pi Webcam mit Ausschalter

20 Mrz

Ein paar Stichpunkte falls ich das mal wieder einrichten muss … im ersten Anlauf hat sich eine alte Konfiguration wohl mit der RPi Cam gebissen, daher gab’s den zweiten Anlauf „von Null“ mit besserem Erfolg.

1. Installiere Raspbian Wheezy auf einer Speicherkarte.

  • Ja, es gibt schon die neuere Version „Jessie“, aber nach dem Aufruf des Install-Skriptes für die RPi Cam hatte ich den unschönen Nebeneffekt, dass der sudo-Befehl nicht mehr funktionierte. Von daher also … besser nichts mixen.
  • Grundlegende Abfolge:
    1. Image herunterladen und entpacken. .zip -> .img
    2. Speicherkarte in Mac.
    3. Terminal öffnen.
    4. Speicherkarte Geräte-Name finden und merken (gerne /dev/disk3).
    5. Speicherkarte abmelden aber nicht auswerfen: diskutil unmountDisk /dev/disk3
    6. Image-Datei auf Raw-Device kopieren: sudo dd bs=1m if=raspberry-pi-stuff/2015-05-05-raspbian-wheezy.img of=/dev/rdisk3
    7. Mit halbwegs schneller Speicherkarte dauern die 3 GB Material so um die 6-7 Minuten. Zwischenstand kann man sich mit Taste CTRL+T anzeigen lassen.
    8. Wenn fertig, erscheint die Karte als Speichergerät namens "boot" auf dem Desktop.
    9. Auswerfen, rein in Raspi

2. Raspberry konfigurieren

  • Tastatur ist englisch. Daher y = z
  • Setup abschließen. Das sollte beim ersten Programmstart sowieso vom Gerät angemahnt werden: sudo raspi-config
  • Tastatur umstellen:
    1. Punkt 4: Internationalisation Options
    2. Punkt 3: Change Keyboard Layout
  • Anstehende Updates holen: sudo apt-get update und danach sudo apt-get upgrade
  • Ausschalter-Software installieren damit Python mit der GPIO-Steckleiste reden kann: sudo apt-get install python-dev und sudo apt-get install python-rpi.gpio
  • Python-Skript anlegen: sudo nano /home/pi/shutdown.py
  • Elektrik und Prinzip hab ich von diesem Forum und danach noch etwas am Skript gedreht. Meine Version blinkt langsam solange das Skript läuft, und flackert 10x (2 Sekunden) wenn der Shutdown durch Tastendruck ausgelöst wurde.
  • So sieht der erste Prototyp aus … mit einer Low-Current-SMD-LED wird das a) noch heller und b) kompakter.

  • Hier das Skript:
  • import RPi.GPIO as GPIO
    import os
    import time
    
    GPIO.setmode(GPIO.BOARD)
    GPIO.setup(7, GPIO.OUT)
    GPIO.output(7, True)
    GPIO.setup(5, GPIO.IN)
    
    tog = 1
    
    while True:
        if not (GPIO.input(5)):
            tog = 2
            for l in xrange(1,10):
                GPIO.output(7, False)
                time.sleep(.1)
                GPIO.output(7, True)
                time.sleep(.1)
            os.system("sudo shutdown -h now")
        time.sleep(.5)
        if tog == 1:
            GPIO.output(7, True)
            tog = 0
            continue
        if tog == 0:
            GPIO.output(7, False)
            tog = 1
            continue
    

    Skript ausführbar machen: sudo chmod +x shutdown.py

  • Skript-Aufruf in /etc/rc.local eintragen vor dem schließenden exit 0:
    • sudo nano /etc/rc.local
    • Einzufügende Zeile:
      sudo python /home/pi/shutdown.py &
  • Motion-Dienst automatisch starten lassen:
    • sudo nano /etc/default/motion
    • start_motion_daemon=yes
  • WLAN einrichten:
    • Deaktivieren der Stromspar-Funktion (1) – für Realtek-Chipsatz 8192cu: Power-Management auf "immer ein" stellen:
      1. sudo nano /etc/modprobe.d/8192cu.conf
      2. options 8192cu rtw_power_mgnt=0 rtw_enusbss=0
    • Deaktivieren der Stromspar-Funktion (2):
      1. sudo nano /etc/network/interfaces
      2. am Ende jedes wlan0…N-Blockes in der Konfiguration anfügen:
        •  wireless-power off
    • Netzwerk-Name und Passwort einrichten:
      1. sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
      2. ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
        update_config=1
        
        network={
        ssid="WLAN-NETZWERKNAME-HIER"
        psk="PASSWORT-HIER"
        proto=RSN
        key_mgmt=WPA-PSK
        }

         Mögliche Werte für proto: RSN = WPA2, WPA = WPA1

      3. Beachten: Niemals zusätzliche Leerzeichen zwischen = und { bei der wpa_supplicant.conf
  • Damit sollte die Grundfunktion soweit erreicht sein.

3. RPi Cam Web Interface einrichten

  • http://elinux.org/RPi-Cam-Web-Interface#Original_Installation_method
  • Für Wheezy ist die oben beschriebene die einfachste Methode.
    • Git-Clone machen
    • Skripte ausführbar machen
    • ./RPi_Cam_Web_Interface_Installer.sh install
    • Webserver: Apache wählen
    • Webserver-Datenpfad (falls nicht auf Default): /var/www/
    • Neustart. Sollte ausreichen …
  • Konfiguration: Motion-Empfindlichkeit am besten sofort deutlich herunterdrehen, sonst fängt sich der Aufzeichnungs-Task in einer Endlosschleife
  • Alternative: Motion nicht automatisch starten lassen, Bewegungserkennung von RPi Cam auf "Intern" stellen und dafür die Empfindlichkeit dort erhöhen (besonders der Erstwert von "1010" funktioniert eher weniger gut, mit der Einstellung "10" ist das besser).

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

6 + 4 =