Potřeboval jsem rychle udělat kameru, která by byla přístupná na síti a online streamovala data a případně na základě vyhodnocení pohybu posílala notifikaci. Protože vlastním Raspberry Pi využil jsem volně dostupný program motion. Základním požadavkem tohoto řešení je využití kompatibilní webové kamery a ve většině případů i aktivní USB hub (tedy hub s externím napájením). Kompatibilitu USB kamery a hubu je možné ověřit na těchto stránkách: RPi USB Webcams, RPi Powered USB Hubs. Konfigurace obsahuje několik jednoduchých kroků.
Použitý HW
- Raspberry Pi s instalovaným Raspbian (Kernel 3.6)
- Microsoft LifeCam VX-7000 (napájená z aktivního USB hubu)
- Belkin USB 2.0 Hub 4-port Economy
0. předpokládá se zkonfigurované Raspberry Pi s pevně nastavenou IP adresou (při použití DHCP je problém s funkčností). Připojení přes LAN nebo Wifi bez omezení.
1. aktualizace SW a driverů Raspberry Pi plus instalace RPI a motion
sudo apt-get install rpi-update
sudo rpi-update
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install motion
2. ověření, že máme rozpoznanou USB kameru
lsusb
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 045e:0750 Microsoft Corp. Wired Keyboard 600
Bus 001 Device 005: ID 045e:0723 Microsoft Corp. LifeCam VX-7000 (UVC-compliant)
3. upravíme konfiguraci motion
sudo nano /etc/motion/motion.conf
Konfigurační soubor je poměrně rozsáhlý a tak je nejjednodušší upravit nejprve klíč control_localhost, aby bylo možné konfiguraci upravovat přes web rozhraní. Nastavíme control_localhost na OFF, any bylo možné upravovat parametry vzdáleně. Na web rozhraní se dostaneme přes url ve tvaru IP_adresa_raspberry:8080. Port 8080 je implicitní nastavení, které lze změnit. Následující parametry pro motion se většinou nastavují.
daemon: nastavíme na ON, aby se motion nastartoval jako služba po startu raspberry.
webcam_localhost: nastavíme na OFF, abychom se mohli připojit na web kameru vzdáleně
stream_port: port na kterém bude přístupný video stream (implicitní hodnota 8081),
control_localhost: nastavíme na OFF, any bylo možné upravovat parametry vzdáleně
control_port: port interface pro editaci konfigurace motion přes web
framerate: počet snímků za sekundu (nedoporučuje se nastavovat více jak 5)
post_capture: počet snímků, které se mají pořídit při detekci pohybu
4. nastavíme motion jako daemon službu
sudo nano /etc/default/motion
a nastavíme klíč start_motion_daemon=yes
Nyní ověříme, zda nám motion naběhne jako daemon služba pomocí příkazu
sudo service motion start
POZNÁMKA
Připojení web kamery přes aktivní USB hub není vždy nutné. V konkrétním případě (pro daný model USB kamery) je nutné vyzkoušet, zda bude stačit pro napájení web kamery výkon dodávaný z Raspberry Pi.
Odkazy
http://www.lavrsen.dk/foswiki/bin/view/Motion/MotionGuideBasicFeatures
The USB video device class (also USB video class or UVC)
Žádné komentáře:
Okomentovat