Рубрики
Проекты на Raspberry Pi

Подключение камеры к плате Raspberry Pi Zero W

Модуль камеры для Raspberry Pi (Pi camera) – это крошечная плата, которую можно подключить к плате Raspberry Pi для захвата изображений и стриминга видео. Ранее на нашем сайте мы рассматривали подключение камеры к плате Raspberry Pi и использование ее для различных приложений в следующих проектах:

В этой же статье мы рассмотрим подключение модуля камеры к плате Raspberry Pi Zero W для захвата изображений и записи видео. Камера к плате Raspberry Pi Zero W подключается по интерфейсу CSI (Camera Serial Interface – последовательный интерфейс камеры). Этот интерфейс специально был создан для взаимодействия с камерами, используется только для передачи данных пикселей и поддерживает высокие скорости передачи. Камера взаимодействует с процессором платы Raspberry Pi Zero W BCM2835 через шину CSI, высокоскоростную линию передачи данных, которая осуществляет передачу данных пикселей от камеры к процессору. Эта шина данных размещена в ленточном кабеле, соединяющем камеру и плату.

Общие принципы работы модуля камеры для семейства плат Raspberry Pi

Камера для Raspberry Pi подключается непосредственно к плате по интерфейсу CSI. Она позволяет захватывать изображения с разрешением 5 Мп и записывать видео HD качества 1080p со скоростью 30 кадров в секунду. Последняя доступная сейчас версия камеры – 1.3. Основой камеры является датчик Omnivision 5647 с разрешением 5 мегапикселей (2592*1944 пикселей), специально разработанный для семейства плат Raspberry Pi и производимый организацией Raspberry Pi Foundation. На следующем рисунке показан внешний вид модуля камеры (вид сверху и снизу).

Камера подключается к плате Raspberry Pi с помощью 15-контактного ленточного кабеля к уникальному 15-контактному интерфейсу MIPI Camera Serial Interface (CSI), который был специально разработан для работы с камерами. Шина CSI передает данные с очень высокой скоростью напрямую от камеры к процессору платы BCM2835. Модуль камеры располагается на маленькой плате с размерами 25mm x 20mm x 9mm и весит всего около 3 грамм. Компактный размер модуля камеры делает его идеальным решением для применения в смартфонах и других приложениях, в которых размеры и вес компонентов имеют критическое значение. Камеры способна захватывать статические изображения с разрешением 2592 x 1944 пикселей. Также она поддерживает запись видео в форматах 1080p @ 30fps, 720p @ 60fps и 640x480p 60/90. Для работы с модулем камеры необходимо на плату Raspberry Pi установить последнюю версию операционной системы.

Технические характеристики модуля камеры:

  • полностью совместима с платами Raspberry Pi моделей A & B и семейством плат Raspberry Pi Zero;
  • содержит датчик 5MP Omnivision 5647;
  • захват статических изображений в разрешении: 2592 x 1944;
  • поддерживаемые форматы видеозаписи: 1080p @ 30fps, 720p @ 60fps и 640x480p 60/90;
  • отличающийся от других кабель для подключения к семейству плат Raspberry Pi Zero.

Подключение модуля камеры к плате Raspberry Pi Zero W

Перед тем как подключать камеру к плате Raspberry Pi Zero W необходимо выбрать правильный кабель для ее подключения к этой плате. На следующем рисунке показан 15-контактный кабель для подключения камер к платам Raspberry Pi. Этот кабель имеет одинаковое число контактов на обоих концах и подходит для подключения камеры к платам Raspberry Pi 3 & 4.

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

После выбора правильного кабеля нам его нужно подключить к камере и плате Raspberry Pi Zero W. Вначале мы подключаем его к плате. На следующем рисунке показан правильный способ подключения данного кабеля к плате Raspberry Pi Zero W.

После этого подключим кабель к модулю камеры – на следующем рисунке представлен его правильный вариант подключения.

Итак, вам необходимо выполнить 2 шага для подключения камеры к плате Raspberry Pi Zero W:

  1. Подключить широкий конец кабеля к модулю камеры чтобы его проводники смотрели в ту же сторону, что и линзы камеры.
  2. Немного приподнять край платы Raspberry Pi Zero W (аккуратно, чтобы не повредить края разъема CSI – они достаточно хрупкие) и вставить меньший конец кабеля в разъем на плате чтобы проводники кабеля были обращены в направлении тыльной стороны платы.

Внешний вид подключенного модуля камеры к плате Raspberry Pi Zero W показан на следующем рисунке.

Настройка платы Raspberry Pi Zero W для работы с камерой

После того как мы подключили камеру к плате Raspberry Pi Zero W подадим питание на плату с помощью кабеля micro-USB.

Для настройки платы Raspberry Pi Zero W для работы с камерой выполните следующую последовательность шагов.

1. После загрузки платы Raspberry Pi Zero W откройте просмотрщик VNC (VNC viewer) и нажмите в нем на кнопку Raspberry Pi configuration. После этого в настройках включите использование (enable) модуля камеры.

2. Откройте окно терминала и введите следующую команду:

Эта команда используется для захвата изображений с модуля камеры. В результате выполнения данной команды плата Raspberry Pi Zero W произведет захват изображения с камеры и сохранит его под именем image.jpg. Вы можете указать любое имя для сохраняемого изображения, например, ввести команду Raspistill –o xyz.jpg.

3. На этом шаге мы напишем код программы на python для захвата изображений. Для этого в окне терминала введите команду nano image1.py, в результате выполнения которой создастся файл image1.py, вставьте в него следующие строчки кода и сохраните изменения.

Запустите эту программу на выполнение с помощью команды python image1.py. Захват и сохранение изображения произойдут сразу после выполнения этой команды. На следующем рисунке показана пара изображений, захваченных с помощью камеры, подключенной к нашей плате.

4. Теперь приступим к записи видео с камеры. Команда «raspivid» позволяет производить захват видео с модуля камеры. Для записи видео с камеры можно использовать следующий формат команды:

В результате выполнения данной команды произойдет запись 10-секундного (это время задается с помощью параметра 10000 в команде) видеоролика с модуля камеры. Записанный видеоролик будет сохранен в домашний каталог платы Raspberry Pi Zero W.

Видео, демонстрирующее работу проекта

Источник статьи

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

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