Сервер видеонаблюдения с помощью Raspberry Pi

RaspiWebcamStr

Один из самых популярных проектов на Raspberry Pi — это создание сервера видеонаблюдения с возможностью трансляции в интернет. Многие используют подобные системы в качестве охранных систем (и я в том числе), но сущестуют и другие способы применения. Если вы придумали что то интересное, можно написать об этом в комментариях. Подобный проект обойдется примерно в £60 — £70, но я использовал некоторые дополнительные компоненты, которые были у меня в наличии (и, получается, ничего не стоили). Я использовал вебкамеру Logitech Quickcam в своем проекте.

Что нам понадобится:

  • Raspberry Pi
  • SD карта объемом 8 Гб или более
  • Вебкамера
  • Доступ в интернет с помощью Ethernet или WiFi адаптера
  • USB концентратор с внешним питанием
  • Клавиатура
  • Мышь (для настройки WiFi)

Итак, начнём с установки на SD карту свежей версии Debian «Wheezy», которую можно скачать здесь. Для установки образа на компьютере с Windows можно использовать утилиту Win32DiskImager, а для компьютеров Mac использовать эту программу. (Подробнее об установке образов написано здесь)

После завершения копирования образа, вставляем SD карту в Raspberry Pi. Подключаем сетевой кабель или беспроводной адаптер, а также клавиатуру. И, наконец, не забудьте подключить USB концентратор и подать на него питание.

После включения Raspberry Pi, установите часовой пояc, в соответствии со своим местоположением, с помощью утилиты raspi-config.

Обратите внимание, что для входа в свежеустановленной системе нужно использовать имя пользователя pi с паролем raspberry.

Если используется подключение к сети по WiFi:

Для настройки беспроводного адаптера и подключения к WiFi с помощью графического интерфеса необходимо ввести команду:

startx

После этого можно будет настроить беспроводное подключение. По окончании, щелкните мышью в левый нижний угол экрана и выберите пункт Log out для возврата в командную строку.

Теперь пришло время обновить систему. Наберите в командной строке:

sudo apt-get update
sudo apt-get upgrade

и дождитесь завершения. Теперь необходимо установить Motion — программное обеспечение, которое будет заниматься трансляцией видео с помощью встроенного вебсервера. Для этого, введите:

sudo apt-get install motion

и подождите. По завершении установки, подключите вебкамеру к порту USB концентратора с внешним питанием.

Теперь нужно внести изменения в конфигурационный файл программы Motion. Для этого выполните команду:

sudo nano /etc/motion/motion.conf

Откроется редактор с конфигурационным файлом, в который можно внести исправления. Наиболее важными являются эти параметры:

daemon = OFF (исправить на ON – этот параметр где-то в начале файла)
webcam_localhost = ON (исправить на OFF – этот параметр где-то в 
                       конце файла)

Нажмите Ctrl + X для сохранения, а затем ‘y’ для подтверждения операции и, наконец, Enter для указания имени файла.

Теперь можно запускать сервер Motion:

sudo service motion start

Подождите примерно 60 секунд, затем введите в браузер IP адрес Raspberry Pi. Оптимальным выбором браузера будет Firefox последней версии.

Адрес выглядит так: 192.168.X.X:8081

Убедитесь, что в конце строки указан порт 8081 для того, чтобы увидеть изображение. Для доступа к настройкам используйте порт 8080 вместо 8081.

Порт 8081 – видео
Порт 8080 – веб интерфейс конфигурации

Обратите внимание, что вы сможете получить доступ к камере только внутри вашей локальной сети. Подключиться из другого места к домашнему видео серверу не получится. Для того, чтобы подключаться извне, настройте перенаправление входящих соединений на домашнем маршрутизаторе.

Поздравляю! Вы только что настроили свой собственный сервер видеонаблюдения на своём Raspberry Pi! Желаю успехов и не стесняйтесь распространять текст этой статьи!

Примечание: если видеосервер показывает серый прямоугольник вместо изображения — введите команду ls /dev/video в терминале, для того чтобы определить название видеоустройства. По умолчанию в файле /etc/motion/motion.conf указано video0. Если ваша вебкамера имеет другое название — исправьте конфигурационный файл, затем перезапустите Motion.

Внимание! Всё, что описано в данной статье вы повторяете на свой страх и риск! Я не несу ответственности за любые последствия. Статья представляет собой только руководство.

Оригинал статьи

Сервер видеонаблюдения с помощью Raspberry Pi: 24 комментария

  1. Что-то непонятно. Один раз запустилось видео с камеры. Теперь ничего не получается. Может надо настроить iptables? Ну там порты открыть может надо

    • Ну вообще сервер motion настраивается предельно просто, попробуйте установить его на чистую систему. Локально открывается?
      Правила iptables можно очистить командами:
      iptables -F
      iptables -X
      В таком состоянии все должно работать

  2. Опять какая-то ерунда. Браузер не видит изображение с камеры. Пишет невозможно отобразить страницу. Хотя в настройки по порту 8080 входит и все можно изменить.
    Если войти в саму малину, то скриншоты сохраняются с камеры. Получается что все работает, но доступа именно к он-лайн просмотру нет

    • Ну алгоритм проверки тот же:
      1. Проверить, что камера подключена и определилась (lsusb и ls /dev/video* )
      2. Проверить, что motion запущен (ps ax | grep motion)
      Эти два шага надо сделать, чтобы убедиться, что камера и motion не отваливаются, скинув несколько кадров.

      3. Очистить таблицу iptables ( iptables -F )
      4. Очистить кэш браузреа или попробовать открыть с другого компьютера или другим браузером

  3. lsusb выводит /dev/video0
    ps ax | grep motion выводит
    2193 ? Sl 0:26 /usr/bin/motion
    3066 pts/1 S+ 0:00 grep —color=auto motion
    Скриншоты уже не сохраняются, хоть и настроил по движению. Камеру проверил, в windows 7 работает

    • Попробуйте на чистой sd карте создать новый образ системы и в нее установить motion. Наверняка где то в настройках ошибка.

      Я специально проверил еще раз статью, motion работает и настройки в статье указаны верные.

  4. Почему-то не заходит на 8080 =( Настройки меняю только через motion.conf. Видео выдаёт только 1 кадр в секунду. Используемая камера — logitech c 270.

    • Не заходит по сети или прямо с Raspberry Pi? Если первое, то проверьте параметр control_localhost. Но вообще, мне кажется, что некоторые камеры так загружают процессор, что настройки перестают работать. По крайней мере я что то подобное видел.
      1 кадр в секунду это вполне нормальный результат, делайте скидку на возможности пишки.

  5. сейчас уже много дешёвых IP камер с wi-fi ,к примеру Defender Multicam WF-10HD ,вот если с этих камер собирать видео на Raspberry Pi и записывать на USB диск с последующим просмотром !!!! Вот этот проект будет весьма актуален !!!

    • Параметр framerate в файле /etc/motion/motion.conf определяет количество кадров в секунду (от 2 до 100 в теории, но думаю Raspberry Pi много не потянет)

        • Это много от чего зависит. Нужно проверять экспериментально.
          (Зависит от камеры, от того куда пишете видео, от того, какие еще задачи выполняются на Raspberry Pi и т.п. Все упирается в производительность «пишки»)

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