Raspberry Pi surveillance howto

raspberry pi surveillance howtoПривет,

Днес ще споделя оптималният (поне за мен) начин, как да си направим видеонаблюдение (surveillance) с помощта на Raspberry Pi.
За целта използвах NoIR камера за Pi и няколко светодиода за инфраред, за да може камерата да вижда и през нощта. Самата камера поставих в така наречена dummy (фалшива) камера купена от Jumbo 😀
До тук всичко е ясно, обаче се сблъсках със затруднения в намирането на оптималният софтуер за видеонаблюдението.

Raspberry Pi по подразбиране идва с motion който може да върши работа без проблем ( записва когато има движение а камерата на Pi има датчик за движение) . Обаче през нощта всичко е тъмно , и с какви ли не настройки не успях да докарам камерата да показва нещо вечер. Пробвах и motioneye – много малък, лек и готин продукт писан на python, който позволява да се добавят до 4 камери и да се гледат едновременно – препоръчвам го за начинаещите!
Обаче и той не ми помогна в за снимането вечер.

Смятам че, проблема ми беше заради малкото на брой светодиода за IR, но нямаше как да сложа повече..

И накрая реших проблема със снимането вечер, благодарение на RPi-Cam-Web-Interface. Този софтуер разбира се не е идеялен, но аз си го нагласих да ми върши прекрасна работа ! 🙂

Първия и най-голям бъг който присъстваше тук беше следния :

{2015/10/06 20:42:38} Error: Could not enable camera
{2015/10/06 20:42:38} Executing macro /var/www/macros/error_hard.sh "Could not enable camera"

Стане ли така, raspimjpeg демона спираше и снимането и записването беше до тук! Разработчика е написал “macro” скрипт наречен:
error_hard.sh
който по подразбиране няма права за изпълнение от www-data, обаче същия този скрипт, правеше дефакто reboot след като види горната грешка.
От една страна върши работа, но аз го пренаписах да не рестартира Pi-то ами да рестартира само демоните за камерата.
Така моят
/var/www/macros/error_hard.sh
скрипт вече изглеждаше така :

#!/bin/bash
#sudo shutdown -r now
sudo killall raspimjpeg
sudo killall php
sudo killall motion

sudo mkdir -p /dev/shm/mjpeg
sudo chown www-data:www-data /dev/shm/mjpeg
sudo chmod 777 /dev/shm/mjpeg
sleep 1;sudo su -c ‘raspimjpeg > /dev/null &’ www-data
if [ -e /etc/debian_version ]; then
sleep 1;sudo su -c “php /var/www/schedule.php > /dev/null &” www-data
else
sleep 1;sudo su -c ‘/bin/bash’ -c “php /var/www/schedule.php > /dev/null &” www-data
fi

 

За да работи този скрипт, е нужно да се направи изпълним :

chmod +x
върши прекрасна работа!
Така реших проблема със спирането на запис!

Другото което ме притесняваше, беше следното : Трябваше ми след всеки рестарт, Pi-то да започва да снима когато има движдение. Това обаче, по никакъв начин не беше възможно по-подразбиране, със стандартните настройки на RPi Cam Web Interface.
Бутнах schedule скрипта и го настройх да пуска motion постоянно.
raspberry pi surveillance howto

Ето и реални снимки през деня и вечер от моят тъй наречен “raspberry pi surveillance howto

 

Дано съм бил полезен на някой с този пост!
Успех!