Опыт читателя: как настроить видеонаблюдение на даче своими руками
Можно использовать готовые решения или создать свое: автор этого текста пошел по второму пути.
От редакции. Напоминаем, что у нас полным ходом идет конкурс, в котором мы призываем наших пользователей делиться собственным опытом покупки, эксплуатации, ремонта техники. Роман организовал систему видеонаблюдения на своей дачи и решил рассказать нам обо всех нюансах. За что мы ему, конечно, благодарны.
Приходит лето, а вместе с ним и пора отпусков, когда дачи и квартиры остаются в лучшем случае на попечении родственников. А так хочется организовать контроль за своим имуществом 24 часа в сутки в любой день недели. В этом поможет организация видеонаблюдения. Многие провайдеры предоставляют готовый сервис, но можно сэкономить и настроить всё своими руками.
Управление
Для начала нужно определиться с управлением. Для загородной дачи оптимальным решением будет наличие LTE-роутера и IP-видеокамер. В тарифе своего мобильного оператора желательно выбрать опцию со статическим IP-адресом для удобства подключения. Если же это невозможно, то следует изучить настройку таких сервисов, как DynDNS и им подобных. В рамках этой статьи используется LTE сим-карта с опцией статического IP-адреса. Поскольку было стремление максимально бюджетно организовать видеонаблюдение от роутера с поддержкой 4G я отказался в пользу уже имеющегося и простаивающего оборудования и приспособил к делу следующие девайсы:
- Nettop (помните такое слово?) Samsung NP-NC110
- Брендированный операторский модем TS-UM6602
На Samsung NP-NC110 был установлен Linux Mint 19. Включаем usb-модем в импровизированный роутер. Изначально, он определяется как CD-ROM с документацией и программой для Windows, что нас определённо не устраивает. Поэтому, написан скрипт, который проверяет состояние сетевого подключения и в случае его отсутствия переводит модем в режим модема (тавтология) и поднимает сетевое соединение.
Вот текст скрипта
#!/bin/bash
ret=$(ps aux | grep [w]vdial | wc -l)
if [ «$ret» -eq 0 ]
then {
echo «Connecting to provider» #output text
sleep 1 #delay
#commands for run program
eject /dev/sr0
modprobe -v option
echo «05c6 9201» > /sys/bus/usb-serial/drivers/generic/new_id
wait 5
wvdial&
exit 1
}
else
{
echo «Exit. Connection already establishment»
exit 1
}
fi;
Скрипт сохранил в файл check_inet.sh и назначил его запуск в cron (от пользователя root).
# m h dom mon dow command
@reboot /home/roma/scripts/check_inet.sh
*/5 * * * * /home/roma/scripts/check_inet.sh
Здесь запуск скрипта происходит сразу после перезагрузки и далее каждые 5 минут. Для «поднятия» LTE-сессии отредактирован файл wvdial.conf. Делается это командой sudo nano /etc/wvdial.conf
[Dialer Defaults]
Init1 = ATE1
Dial Command = ATD
#APN for static IP by mobile operator
Init2 = AT+CGDCONT=1,»IP»,»sip.ycc.ru»
#Modem Type = Analog Modem
Baud = 1152000
New PPPD = 1
Modem = /dev/ttyUSB1
ISDN = 0
Phone = *99***1#
Password = motiv
Username = motiv
Stupid Mode = 1
Далее в GUI-интерфейсе linux Mint можно задать его как точку доступа, выбрать имя сети и пароль для доступа к Wi-Fi.
Камеры
Было приобретено 4 штуки на Aliexpress. Критериями поиска были:
- Наличие Wi-Fi (В моём случае можно дополнительно использовать проводное соединение, в том числе POE — Power over Ethernet — вместе с питанием)
- Наличие протокола RTSP и onvif — для просмотра камер в альтернативных клиентах (помимо штатного YouSee)
- Наличие слота для карты памяти — в случае пропадания внешнего канала видео будет храниться на карте памяти устройства.
- Инфракрасная подсветка для съёмки в темноте.
- Защита от воды (3 из 4-х камер смонтированы на улице)
Скажу сразу, onvif не особо помог, так как картинку с камер в «родном» приложении YouSee я без проблем вижу, а вот как-то организовать просмотр в сторонних клиентах на текущем моменте не удалось. Решил эту пробему следующим образом: на импровизированный роутер NC-110 установил yandex.disk. Далее, в приложении YouSee назначаем камере логин и пароль для просмотра RTSP-потока, там же можно посмотреть локальный назначенный IP-адрес каждой из камер.
Затем, написал скрипт:
ffmpeg -i rtsp://user:password@192.168.0.1/onvif1 -vcodec copy -acodec copy -f segment -segment_time 300 -strftime 1 /home/roma/Yandex.Disk/cameras/garden/%Y-%m-%d_%H-%M-%S.avi
где:
user:password — имя пользователя и пароль для доступа к RTSP-потоку. Задаётся в YouSee.
/home/roma/Yandex.Disk/cameras/garden/ — путь до папки с сохраняемым видео.
Дабы не забивать место файлами с видеозаписями настроил автоматическую чистку содержимого этой директории. Удаляются все файлы старше 2х дней. Нужно выполнить:
sudo crontab -e
и дописать строку
0 * * * * find /home/roma/Yandex.Disk/cameras/garden/*.avi -mtime +2 -delete
Монтаж камер дело нехитрое, желательно только предусмотреть зоны охвата каждой из них, чтобы они перекрывались и в случае вандализма нехороший человек попадал в объектив одной из них.
На этом всё, оговорюсь сразу, что установка и настройка уже себя оправдали.