Создайте многокамерную систему видеонаблюдения с помощью Raspberry Pi и motionEyeOS

Несмотря на то, что на рынке существует бесчисленное количество коммерческих систем домашней безопасности CCTV, создание собственной версии для самостоятельной сборки с помощью Raspberry Pi (или другого одноплатного компьютера) предлагает преимущество настраиваемости в соответствии с вашими конкретными целями.

Специальный дистрибутив Linux под названием motionEyeOS позволяет легко настроить систему безопасности с одной или несколькими камерами. Затем он может обнаруживать движение с камеры и отправлять оповещения по электронной почте или push-уведомления. Мы покажем вам, как все наладить и запустить.

Что вам понадобится для настройки системы видеонаблюдения

  • Raspberry Pi: подойдет любая модель, включая Pi Zero и Compute Module.
  • Веб-камера USB, модуль камеры Raspberry Pi или модуль камеры высокого качества

Связанные: Raspberry Pi, Pico, Arduino и другие одноплатные компьютеры и микроконтроллеры

1. Установите motionEyeOS.

MotionEyeOS – это не приложение, а автономная операционная система, одна из многих ОС Raspberry Pi . Во-первых, вам нужно найти правильную версию для вашей модели Raspberry Pi. Перейдите к списку поддерживаемых устройств и щелкните последнюю версию для своей платы, чтобы загрузить образ диска в виде файла .xz.

Есть два основных способа установки motionEyeOS на Raspberry Pi. Веб-сайт motionEyeOS предлагает утилиту для записи изображений для компьютеров Linux и macOS, позволяющую записывать образ диска на карту microSD для использования в Raspberry Pi. Это предлагает дополнительную настройку беспроводного сетевого подключения и установку статического IP-адреса. Подробнее см. Руководство по установке .

Второй метод, который мы будем использовать здесь, поскольку он также работает на машинах с Windows, – это записать образ диска с помощью стандартного инструмента Raspberry Pi Imager, который можно загрузить с веб-сайта Raspberry Pi .

С помощью встроенного кард-ридера или USB-адаптера вставьте карту microSD, чтобы прикрепить ее к компьютеру, и откройте Raspberry Pi Imager. Нажмите « Выбрать ОС», затем прокрутите список до конца и выберите « Использовать нестандартный» .

Перейдите к файлу motionEyeOS.xz, который вы скачали ранее. Теперь нажмите « Выбрать SD-карту» и выберите вставленную карту microSD, которая, вероятно, называется чем-то вроде Generic Storage Device Media.

Наконец, нажмите « Записать», чтобы записать изображение на карту.

2. Предварительно настройте беспроводное соединение.

Перед использованием карты microSD в Raspberry Pi вам необходимо предварительно настроить учетные данные беспроводной сети.

Откройте текстовый редактор (например, Text Editor в macOS или Notepad в Windows) и введите следующие строки, заменив значения ssid и psk на SSID (имя) и пароль для вашего собственного беспроводного маршрутизатора. Вам также следует изменить код страны на ту, в которой будет работать устройство.

 country=US
update_config=1
ctrl_interface=/var/run/wpa_supplicant

network={
scan_ssid=1
ssid="MyWiFiSSID"
psk="MyWiFiPassword"
}

Сохраните файл под именем wpa_supplicant.conf в корне вашей карты microSD, где вы должны увидеть другие файлы, такие как bootcode.bin и kernel.img . Если файл сохраняется с суффиксом .txt, удалите его, чтобы он назывался просто wpa_supplicant.conf .

3. Настройка камеры

Если вы используете модуль камеры Raspberry Pi или камеру высокого качества, подключите его к порту камеры Raspberry Pi. Если вы используете веб-камеру, подключитесь к USB-порту Raspberry Pi.

Вставьте карту microSD в Raspberry Pi и включите его. При подключении к монитору вы увидите список выполняемых команд. Как только ваш файл wpa_supplicant.conf будет успешно прочитан, он подключится к вашей сети и покажет IP-адрес Raspberry Pi после того, как интерфейс wlan0 получит IP-адрес:.

В качестве альтернативы, если ваш Raspberry Pi не подключен к монитору, вы всегда можете узнать IP-адрес, посетив страницу настроек вашего беспроводного маршрутизатора в веб-браузере на другом устройстве и найдя устройство с именем, начинающимся с meye- .

4. Доступ к веб-интерфейсу.

В веб-браузере на другом компьютере или устройстве введите IP-адрес Raspberry Pi, и вы должны увидеть экран входа в систему. Просто введите admin в качестве имени пользователя без пароля.

Если у вас подключен модуль камеры Raspberry Pi или камера высокого качества, он должен быть обнаружен автоматически, и вы увидите изображение с камеры в веб-интерфейсе. При использовании USB-камеры в появившемся меню « Добавить камеру» выберите « Локальная камера V4L2 для типа камеры» и « Камера USB2.0: камера USB2.0 для камеры».

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

В качестве альтернативы вы можете использовать несколько плат Raspberry Pi, каждая с камерой, и назначить другой Raspberry Pi в качестве концентратора для обработки их потоков. Это полезно, если вы хотите расположить камеры в разных комнатах.

Также есть возможность использовать обычный компьютер с Linux в качестве центрального сервера.

5. Сконфигурируйте пользовательские настройки.

В веб-интерфейсе щелкните значок с тремя вертикальными линиями в верхнем левом углу, чтобы открыть панель настроек. В меню « Настройки» измените параметр « Столбцы макета» на 1, если используется одна камера, чтобы вид заполнял весь экран.

Меню устройства Video позволяет изменять разрешение, поворот и частоту кадров для выбранной камеры. Вы также можете переименовать камеру во что-нибудь описательное, например, в комнату, в которой она находится. После изменения любых настроек меню нажмите кнопку « Применить» , чтобы применить их.

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

Чтобы просмотреть видеоролики, снятые с помощью функции обнаружения движения, щелкните изображение с камеры в реальном времени, а затем выберите треугольный значок кнопки воспроизведения. Также можно просматривать неподвижные изображения, снятые камерой – либо вручную, либо путем установки режима захвата в меню « Фотографии» на «По движению» .

7. Отправка уведомлений по электронной почте.

Меню « Уведомления о движении» позволяет отправлять себе электронное письмо при обнаружении движения. После включения введите адрес электронной почты, на который хотите отправить уведомление. Вам нужно будет ввести другие настройки для вашей учетной записи.

При использовании Gmail установите SMTP-сервер на smtp.gmail.com, SMTP-порт на 587 и учетную запись SMTP на первую часть вашего адреса электронной почты (то есть без @ gmail.com). Пароль SMTP – это тот пароль, который вы используете для входа в свою учетную запись Gmail. Адрес отправителя можно оставить пустым или задать произвольный адрес. Включите TLS .

В другой вкладке браузера, перейдите в меню Безопасность для вашего аккаунта Google и установить менее безопасный доступ приложений к на – после получения уведомления безопасности, подтвердить , что именно вы изменили его. Учтите, что вы делаете это на свой страх и риск. Для этого мы создали новую специальную учетную запись Gmail.

Теперь вы должны иметь возможность отправлять тестовое электронное письмо из motionEyeOS, не вызывая оповещения системы безопасности Google. Обратите внимание, что при использовании нескольких камер вам необходимо настроить уведомления по электронной почте для каждой отдельно.

Чтобы получать изображение с уведомлением по электронной почте, рекомендуется установить для параметра « Интервал времени прикрепленных изображений» значение от 5 до 30. Вам также необходимо установить для режима захвата значение «Запуск по движению» в меню « Фотографии» .

8. Добавьте push-уведомления.

Вы также можете отправлять push-уведомления с помощью параметра « Выполнить команду» в меню « Уведомления о движении» . Например, чтобы использовать сервис Pushover, который предлагает приложения для Android, iOS и рабочего стола, вам необходимо создать короткий скрипт Python для его запуска.

Подпишитесь на Pushover . Имейте в виду, что после 30-дневной бесплатной пробной версии вам нужно будет сделать разовую покупку в приложении за 5 долларов, чтобы продолжить его использование.

После этого нажмите Create an Application / API Token . Запишите предоставленный для него токен / ключ API, а также свой ключ пользователя на панели управления.

Скачать: Pushover для iOS | Android (доступна бесплатная пробная версия)

Используя шаблонный код с веб-сайта Pushover, вы можете создать свой скрипт Python:

 import httplib, urllib
conn = httplib.HTTPSConnection("api.pushover.net:443")
conn.request("POST", "/1/messages.json",
urllib.urlencode({
"token": "abc123",
"user": "user123",
"title": "CCTV alert"
"message": "Motion detected on camera 1!",
"url": "http://IP.ADD.RE.SS",
"url_title": "View live stream",
}), { "Content-type": "application/x-www-form-urlencoded" })
conn.getresponse()

Заменить абв123 с API вашего приложения маркеров и user123 с вашим ключом пользователя. Замените IP.ADD.RE.SS на IP-адрес вашей установки motionEyeOS.

Чтобы разместить это в своей системе motionEyeOS, вам необходимо подключиться по SSH с другого компьютера с помощью приложения Terminal (или WinSCP в Windows), введя:

 ssh admin@&IP_ADDRESS

Замените IP_ADDRESS IP-адресом вашей системы motionEyeOS. Теперь введите:

 cd /data

Теперь, когда вы находитесь в каталоге данных, создайте новый файл с именем pushover.py :

 nano pushover.py

Вставьте или введите в него свой скрипт Python и сохраните его, нажав Ctrl + X , а затем Y. Теперь сделайте его исполняемым с помощью:

 chmod +x pushover.py

Либо в WinSCP в Windows нажмите F9 , установите разрешения на 0775 и нажмите ОК .

Протестируйте скрипт, запустив:

 python pushover.py

Вы должны получить уведомление со звуковым сигналом от motionEyeOS в вашем приложении Pushover.

Вернувшись в меню «Уведомления о движении» веб-интерфейса motionEyeOS, включите параметр « Выполнить команду» и введите python /data/pushover.py в поле «Команда», чтобы указать ему запустить сценарий Python.

Нажмите кнопку Применить . Обратите внимание, что вы можете применить другой сценарий Run A Command для каждой камеры в вашей настройке, чтобы вы могли создать несколько сценариев Python, каждый из которых говорит, какая камера обнаружила движение.

Создание собственной системы видеонаблюдения своими руками

Поздравляем, теперь вы настроили собственную настраиваемую систему безопасности видеонаблюдения с использованием Raspberry Pi, в комплекте с электронной почтой и push-уведомлениями, чтобы предупредить вас о присутствии любых злоумышленников, обнаруженных на камере.