motionEye cu Raspberry Pi
- 21 Noiembrie 2013
- , autor Calin Crisan
motionEye este un frontend web pentru un soft de monitorizare video pentru Linux, numit motion. Acest tutorial descrie pasii necesari instalarii si configurarii motionEye pe un Raspberry PI. Se obtine astfel un sistem de monitorizare video inteligent si complex, bazat pe componente accesibile si software opensource.
Caracteristici motionEye
- interfata web, design responsiv
- protectie cu utilizator si parola (administrator si utilizator normal)
- streaming mjpeg
- detectia miscarii, salvare fisiere jpeg si avi
- capturi de tip timelapse
- setari avansate pentru camera
De ce ai nevoie
- un Raspberry PI
- un alimentator micro USB (5V, 1A)
- un card de memorie SD de minim 4GB
- o camera web pe USB sau CSI camera board
- un adaptor WiFi pe USB (optional, daca o conexiune ethernet nu e disponibila)
Exemple interfata
Instalare OS
Descarcati de aici ultima versiune a sistemului de operare Raspbian. Aici gasiti cum sa transferati imaginea astfel descarcata pe cardul SD. Odata copiat sistemul de operare pe card, bootati Paspberry PI-ul. Comenzile prezentate la pasii ce urmeaza se executa exclusiv intr-un terminal pe Raspberry PI.
Este recomandat sa actualizati lista de pachete existente:
sudo aptitude update && sudo aptitude upgrade
Instalare Pachete Necesare
Pentru motionEye avem nevoie de cateva biblioteci si programe suplimentare. Instalati-le cu urmatoarea comanda:
sudo aptitude install python-tornado python-jinja2 python-imaging motion ffmpeg v4l-utils
Instalare motionEye
Din lista de download-uri descarcati ultima versiune de motionEye (folositi tabul Tags). Salvati arhiva in /home/pi.
Dezarhivati (inlocuind xyz cu codul din fisierul descarcat):
cd /home/pi tar zxvf ccrisan-motioneye-xyz.tar.gz mv ccrisan-motioneye-xyz motioneye cd motioneye
In aceasta etapa aveti motionEye instalat in /home/pi/motioneye, directorul curent.
Configurare motionEye
Creati un fisier settings.py pornind de la modelul implicit:
cp motioneye//settings_default.py settings.py
Setarile implicite sunt de regula bune in majoritatea situatiilor.
Daca doriti sa customizati motionEye, puteti edita ulterior fisierul settings.py - veti gasi o mica descriere aferenta fiecarei optiuni disponibile.
CSI Camera Board
Urmati aceasta etapa doar daca folositi CSI Camera Board in locul unei simple camere web pe USB.
limitari
- un singur astfel de modul de camera poate fi utilizat cu motionEye
- avand in vedere rezolutia mare la care poate lucra aceasta camera, e posibil ca performanta lui Raspberry PI sa nu fie suficienta
driver-ul uv4l
Modulul de camera nu are un driver nativ v4l (la momentul editarii articolului). Cu toate acestea, exista un set de componente userspace care emuleaza interfata v4l pentru astfel de module de camera. Urmatoarele pachete trebuie instalate:
sudo aptitude install uv4l uv4l-raspicam
wrapper-e pentru binare
Din pacate, driver-ul uv4l nu face modulul de camera sa se comporte in totalitate ca un dispozitiv v4l. Rezolutiile suportate de camera nu sunt listate de comanda v4l2-ctl, astfel ca e nevoie de un wrapper la acest utilitar.
Mai mult, daemon-ul uv4l trebuie pornit cu rezolutia pe care o va folosi motion. De aceea e nevoie sa folosim un wrapper si pentru motion - un script care se ocupa de aceste detalii.
Cele doua wrapper-e se prezinta sub forma unor script-uri care sunt incluse in directorul raspicam al motionEye si la care trebuie sa cream link-uri in /usr/local/bin:
sudo ln -s /home/pi/motioneye/raspicam/motion /usr/local/bin sudo ln -s /home/pi/motioneye/raspicam/v4l2-ctl /usr/local/bin
nu merge modulul de camera?
- asigurati-va ca rulati ultima versiune de firmware pentru Raspberry PI
- e posibil sa fie nevoie de executia unui rpi-update pentru ca uv4l sa mearga
Rulare motionEye
motionEye nu necesita drepturi de root pentru a functiona; poate fi rulat direct din directorul in care a fost extras:
./motioneye.py
Daca totul a fost instalat si configurat in mod corect, motionEye trebuie sa emita un mesaj informativ care zice "server started". Deschideti browser-ul preferat si vizitati http://raspberrypi:8765 (inlocuind raspberrypi cu adresa IP a dispozitivului). Interfata web motionEye va aparea in fereastra. Folositi admin fara parola cand se cere autentificarea. Incepeti prin a adauga camera la motionEye, urmand indicatiile din interfata web. Puteti experimenta diversele setari disponibile.
Cand ati terminat cu "experimentarea", apasati ctrl-c.
Autostart La Boot
Veti dori probabil ca motionEye sa porneasca in mod automat la boot-area sistemului. Adaugati in acest scop urmatoarea line in /etc/rc.local (inainte de exit 0):
sudo -u pi sh -c '/home/pi/motioneye/motioneye.py > /home/pi/motioneye/run/motioneye.log 2>&1' &
Aceasta linie are ca efect pornirea serverului motionEye sub utilizatorul pi, directionarea iesirii (output-ului) catre fisierul motioneye.log si executarea procesului in background.
Daemon-ul motion e pornit in mod automat de catre motionEye, nu ar trebui pornit automat la startup.
comentarii
Adauga un comentariu ...