Хабрахабр

[Из песочницы] Видеонаблюдение на orange pi zero — дешево и совсем не сердито

Недавно поставил себе задачу реализовать видеонаблюдение со следующими характеристиками:

  1. Минимальное энергопотребление
  2. Минимальный размер устройства, которое будет принимать видео с камеры (или нескольких камер). С таким небольшим размером, чтобы можно было его, к примеру, запихать в монтажную коробочку 10-10 см или вовсе спрятать в широком кабель-канале (!)
  3. IP-камеры будут подключены по wi-fi, то есть невозможно определить, кто с них смотрит/пишет видео. Запитать их можно от общей сети, будь то подъездное освещение или розетки в офисе
  4. Обязательно должна быть запись видео (в моем случае — на microsd карту), обязательно должна быть возможность просматривать видео через интернет с любой точки мира а также через мобильное приложение
  5. Само собой, должна быть возможность удаленно настраивать и всю систему — добавлять новые камеры, копировать-удалять записи, иметь доступ ко всем настройкам
  6. Минимальная стоимость! А как же? Без этого никуда

Для реализации данной идеи выбор пал на следующие компоненты:
1) Самый дешевый одноплатный компьютер с вай-фаем на борту, на который можно накатить какой-нибудь arm linux дистрибутив — например, мой любимый дебиан. Малинка стоит дороговато, а вот orange pi zero на ebay вам обойдется всего лишь в 900 рублей (еще несколько месяцев назад я покупал ее вообще за 700 рублей). Вот ссылочка на ebay — здесь.

image

Маленькая, купольная, потолочная. 2) Собственно, wifi ip-камеры — без них никуда. Цена вопроса — около 1500 рублей за камеру. И хотя бы 720p — обычно для видеонаблюдения в условиях офиса-подъезда более и не требуется. Что далеко ходить, вот здесь на алиэкспрессе — тут

image

Почему на 32, а не больше или меньше? 3) MicroSD-карточка на 32 гб. Ну, стало быть, еще 300-400 рублей. Потому что для моего случая надо иметь возможность отматать видео с двух камер на несколько дней назад.

4) Адаптеры питания для одноплатника и для камер.

Получив заветную посылку на почте, я извлек оттуда апельсиновый одноплатник, осмотрел его и первым делом подумал — черт возьми, а ведь тут нету видеовыхода. Итак, что было проделано. Сразу вспомнил, что на малинке всегда был обычный композитный AV, а тут его нет. Как ставить debian и ПО для видеонаблюдения и производить первичные настройки? Ага, второй пин — это земля, а 9ый это tv-out. Ну не может быть, чтобы производитель не оставил такой возможности, как подключиться по композиту — подумал я, и ушел в гугл смотреть распиновку GPIO.

Теперь воспользуемся адаптером AV->VGA (как вы догадались, его тоже можно купить на алиэкспрессе, полезная вещь) и подключимся к нашему монитору. Припаиваем av-гнездо. Но включать еще ничего не будем — ведь мы еще не подготовили карточку microsd.

Втыкаем флешку в нашу апельсинку, включаем монитор, подключаем адаптер питания и… ничего. Идем на сайт www.orangepi.org и качаем дистрибутив Debian xfce desktop, записываем его на карту программой win32 disk imager или etcher. Что это? Именно с этим чаще всего сталкиваются новички — одноплатный компьютер не загружается никоим образом, а только издевательски светится желтым диодом. Чаще всего проблема заключается в питании. Неправильно записанная карта (может быть), нерабочий одноплатник (вряд ли, ведь мы его только что распаковали), нет сигнала с видеовыхода? Так что используйте хороший мощный блок питания, а не зарядку от своего старого андроида. Orange pi, как и малинки и другие одноплатники, очень придирчивы к питанию — адаптер должен быть 5 В / 2 A, если адаптер слабый и питание проседает в первые секунды включения одноплатника, то он не годится и так дело не пойдет.

Видим рабочий стол — прекрасно! Подключаем хороший адаптер питания, видим, как пошла загрузка debian. Заходим в сетевые подключения, создаем новое вай-фай подключение, вводим наши логин-пароль от домашнего-офисного вай-фая — теперь устройство в нашей локальной сети и имеет выход в интернет! Теперь надо настроить девайс таким образом, чтобы он работал через вай-фай. Теперь нам надо избавиться от монитора.

Обычно эта штука уже встроена в тот дебиан, который распространяет производитель данных одноплатников, необходимо лишь настроить ее — ввести параметры авторизации и т.д. Для того, чтобы иметь возможность видеть рабочий стол удаленно, нам поможет программа vnc viewer, а одноплатнике — vnc server. Убедившись, что мы теперь имеем доступ к рабочему столу внутри нашей локальной сети, убираем монитор, прячем устройство в коробочку/кабель канал/еще куда-нибудь и настраиваем все остальное через vnc viewer, находясь за привычным компьютером.

Почему именно он? В качестве ПО для видеонаблюдения был выбран zoneminder. Данный софт работает на php/mysql, поэтому первым делом нужно установить необходимые пакеты: Бесплатный, гибкий, легко настраивается, доступен и в arm-варианте для нашего одноплатника с debian.

sudo apt-get install php5 mysql-server php-pear php5mysql php5-gd

Далее нам необходимо в /etc/apt/sources.list добавить строчку:

deb http://ftp.debian.org/debian jessie-backports main

Выполняем апдейт:

sudo apt-get update

И, наконец, то, ради чего мы это все затевали:

sudo apt-get install zoneminder

Когда консолька сообщила нам, что zoneminder установлен, перейдем к его настройке. Подробно процесс настройки описан на официальном сайте zoneminder, перечислять все его пункты в данной статье смысла нет, поэтому решим, что уважаемый читатель справился с этим, и теперь, если мы наберем в браузере на компьютере адрес_нашего_одноплатника/zm мы попадем в веб-админку видеонаблюдения. Здесь нам нужно добавить ip-адреса камер, задать параметры записи видео и прочее.

image

Теперь мы можем из внутренней сети смотреть видео с камер через браузер, причем как через проводную сеть, так и по вай-фаю.

image

Так давайте реализуем! Но задача то стояла смотреть видео через интернет с любой точки планеты — а это мы еще не реализовали. В голову приходят как минимум два варианта:

  1. Заходить через remote desktop наподобие тимвьювера. Увы, тимьювер более-менее корректно работает только на «малинках», здесь даже с бубном и заклинаниями ничего не добиться
  2. У нас есть выделенный ip, идем в настройки роутера, пробрасываем необходимые порты, настраиваем virtual server, теперь мы можем видеть админку zoneminder, к примеру, по адресу наш_белый_ip:123. Это хорошо, но что делать, если нет выделенного ip?
  3. Если выделенного ip нет, то вcпомним про vpn и dyndns. Этому посвящено большое кол-во статей, в том числе и на Хабре, ищите и найдете информацию

Теперь осталось добавить возможность смотреть видео с телефона. Качаем для нашего андроида приложение zoneminder client mobile (легко гуглится), а для iphone — Surveillance Pro.

image

image

Итого, за несколько тысяч рублей мы получаем собственный мини-сервер видеонаблюдения, который можно легко спрятать в кабель-канале и который потребляет электричества на сущие копейки, пару беспроводных камер, и возможность всегда с компьютера или телефона из любого места, где есть интернет, посмотреть что происходит в вашем офисе/гараже/подъезде.

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть