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”
Дано съм бил полезен на някой с този пост!
Успех!