Домашнее видеонаблюдение на Raspberry Pi
hard

Домашнее видеонаблюдение на Raspberry Pi

А также рабочее видеонаблюдение, уличное видеонаблюдение, офисное видеонаблюдение и гаражное видеонаблюдение.

Допустим, настало время озаботиться безопасностью и поставить дома камеры. Можно купить специальные камеры, модуль захвата видео и потратить на это много денег. А можно взять модуль Raspberry Pi с родной камерой, потратить в 10 раз меньше и получить то же самое. Ну, похожее.

Как будет работать

Мозгом нашей системы станет компьютер Raspberry Pi. Это одноплатный компьютер, на котором можно запустить полноценную операционную систему вроде Linux.

К компьютеру мы подключим камеру: у Pi есть собственный порт для неё, но можно также использовать веб-камеры с USB. Это будут наши глаза.

На Raspberry Pi мы поставим специальную операционную систему, заточенную под видеонаблюдение. Её интерфейс будет доступен через веб: можно вбить в браузере адрес нашей Raspberry Pi и получить доступ к камерам.

Операционка будет смотреть на камеры. Когда зафиксируется движение, она сфотографирует его и куда-нибудь отправит или сохранит на карточку.

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

Плата Raspberry Pi. Лучше всего взять третью или четвёртую версию. Если всё равно, где покупать — начните с Алиэкспресса. Когда освоитесь, то найдёте магазин по душе.

Камера. Для простоты будем использовать официальную камеру Raspberry Pi NoIR v2. Она плохо снимает в темноте, но для начала нам этого хватит. Хотите ночную съёмку — выбирайте IR-версию и не забудьте про инфракрасную подсветку. Подставка для камеры — дело вкуса, можно с ней, можно без неё. На работу она не повлияет, но устанавливать камеру будет удобнее.

Прошивка. Чтобы превратить Raspberry Pi в сервер видеонаблюдения, используем motionEyeOS. Это специальная версия операционной системы на базе Linux, где уже есть всё, что требуется для работы с камерой. Заходим на страницу проекта, выбираем нужное устройство и качаем. Устанавливать будем на следующем этапе.

Программа для прошивки. Etcher — просто и понятно. Скачиваете программу себе на компьютер и через неё заливаете файлы на карточку. Если перекинуть их просто так, ничего не получится.

Карта microSD и адаптер. Простая карточка на гигабайт или больше. Адаптер нужен для того, чтобы залить на флешку нужные файлы. Если у вас на компьютере или ноутбуке уже есть адаптер, используйте его.

Источник питания. Чтобы напряжение не проседало и всё работало стабильно, берите отдельный блок питания. У некоторых система работает от зарядки для мобильника, но тут уже на свой страх и риск.

Подготавливаем флешку

  1. Устанавливаем Etcher на компьютер и запускаем программу.
  2. Вставляем флешку в кардридер и подключаем его. Если кардридер встроен в компьютер — просто вставляем флешку.
  3. В Etcher выбираем прошивку, которую будем устанавливать, выбираем диск для записи — нашу флешку — и нажимаем кнопку Flash.
  4. Ждём, пока запись закончится, и достаём флешку.

Иногда попадаются бракованные или старые флешки с битыми элементами памяти, поэтому в этом случае просто замените её на другую.

Настраиваем Wi-Fi

В современных Raspberry Pi есть разъём для подключения локальной сети, но мы ради интереса попробуем работать по Wi-Fi.

На прошлом шаге после прошивки программа сама отключила флешку, поэтому, скорее всего, компьютер её уже не видит. Вытаскиваем, снова вставляем и создаём на ней файл

wpa_supplicant.conf

— он отвечает за настройку беспроводной сети на устройстве.

Этот файл нам нужно сохранить в UNIX-формате. Для этого можно использовать любой продвинутый текстовый редактор. У нас Sublime Text, поэтому мы заходим в настройки

Sublime Text → Preferences → Settings

и добавляем такую строчку:

"default_line_ending": "unix",

Сохраняем настройки, а потом тем же Sublime Text открываем наш файл wpa_supplicant.conf и пишем:

country=ru
update_config=1
ctrlinterface=/var/run/wpasupplicant
network=
scan_ssid=
ssid="
psk="
 }

Здесь нужно поменять MyNetworkSSID на название вашей сети, а YourPassword — на пароль для подключения к ней. Сохраняем и закрываем.

Запуск и настройка

Нам осталось:

  1. Соединить камеру и сам модуль Raspberry Pi специальным шлейфом (идёт вместе с камерой).
  2. Вставить карточку в Raspberry Pi.
  3. Подсоединить питание и включить блок в розетку.

После того, как это будет сделано, ждём 3–5 минут, пока загрузится система. В это время скачиваем сканер IP-адресов, чтобы найти айпи, который будет у нашей камеры после запуска. Мы используем Angry IP Scanner, но это дело привычки.

Как только система загрузилась и сканер нашёл наш модуль в сети — вбиваем его адрес в строку браузера и вводим логин admin. Пароля нет, поэтому первое, что нужно сделать после входа, — поменять пароль на свой.


По умолчанию пароля нет, а это плохо с точки зрения безопасности.


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


Что дальше

У вас есть веб-интерфейс операционной системы. Копаемся в меню и всё настраиваем. Например:

  • организовать запись видео по расписанию или по движению;
  • сменить IP на статичный, чтобы не искать его каждый раз;
  • cделать так, чтобы вам приходило письмо, когда кто-то проходит перед камерой;
  • добавить несколько камер;
  • поискать в интернете интеграцию motionEyeOS с Телеграмом и сделать собственного бота, который присылает вам фотографии с камер.

Обложка:

Даня Берковский

Корректор:

Ирина Михеева

Вёрстка:

Маша Климентьева

Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.
Вам может быть интересно
5 крутых вещей с Алиэкспресса для настоящих компьютерщиков

В подарок или себе. В основном себе.

easy
На стиле — подборка интересных CSS-свойств

Вы не поверите, до чего дошёл прогресс!

medium
Блокировщик соцсетей, который спасёт вашу продуктивность

И поднимет осознанность.

easy
Что означает ошибка IndentationError: expected an indented block

Самая популярная ошибка у начинающих программистов на Python.

easy
Как сделать игру на Python бесплатно

Без донатов!

medium
Играем в двадцать одно на компьютере

Свой проект с блек-джеком и JavaScript

hard
Мегапроект: расшифровщик аудио в текст… через облако Яндекса!

Сегодня мы будем эксплуатировать чужие облака.

hard
Создаём статичный сайт на Hugo

Превращаем простой текст в полноценный сайт.

medium
На что способен менеджер пакетов

Управляем программами как программисты

easy
hard
[anycomment]
Exit mobile version