Камера машинного зрения OpenMV M7: техническая документация

Используйте платформу с камерным модулем OpenMV M7 для реализации проектов с машинным зрением. На плате распаян дополнительный микроконтроллер для обработки данных изображения на лету и управления внешними устройствами.

Камера OpenMV M7 позволит сделать умную систему видеонаблюдения с распознаванием лиц, цифровое зрение для робота или систему сортировки на производстве.

Подключение и настройка

Шаг 1

Подключите плату к компьютеру по USB. Для коммуникации используйте кабель micro-USB.

Шаг 2

Примеры работы

Все примеры работы с камерой вы найдёте на странице документации про среду разработки OpenMV IDE.

Элементы платы

Камерный модуль

Захватом изображения занимается светочувствительная КМОП-матрица OV7725 от компании OmniVision. Размер матрицы 1/3″ с максимальным разрешением 640×480 (VGA). Камера может снимать видео в 8-битном режиме оттенков серого или цветном 16-битном формате RGB565 с частотой 60 кадров в секунду. Поддерживаются форматы сжатия MJPEG, GIF и несжатое видео RAW.

Объектив с фокусным расстоянием 2,8 мм и диафрагмой F2.0 крепится через байонет со стандартной резьбой M12 с шагом 0,5 мм, поэтому к OpenMV H7 подходят сменные объективы от GoPro и других портативных камер. На обратной стороне объектива установлен ИК-фильтр на 650 нм, который можно снять для съёмок в темноте.

Микроконтроллер STM32F765VIT6

Мозгом платы выступает 32-битный процессор STM32F765VIT6 от компании STMicroelectronics с вычислительным ядром ARM Cortex-M7. Контроллер отвечает за обработку изображения с камерного модуля OV7725, а также предоставляет доступ к 10 пинам ввода-вывода общего назначения (GPIO) для коммуникации с внешними устройствами.

Микроконтроллер работает на тактовой частоте 216 МГц, а также предоставляет 2 МБ Flash-памяти и 512 КБ SRAM-памяти.

Разъём micro-USB

Порт micro-USB предназначен для прошивки и питания платформы OpenMV M7. Для подключения к ПК понадобиться кабель micro-USB.

Слот карты microSD

Слот предназначен для установки карты памяти формата microSD. Внешняя память пригодится для записи и хранения тяжёлых медиафайлов. Платформа OpenMV поддерживает карточки до 64 ГБ.

Светодиодная индикация

Имя светодиода Назначение
LED RGB Пользовательский RGB светодиод с общим анодом. Катоды красного, зеленного и синего цветов выведены на пины микроконтроллера. Используйте определения LED1 для управления красным, LED2 — зелёным и LED3 — синем цветом. При задании значения высокого уровня светодиод загорается, при низком — гаснет.
LED2 и LED3 Два последовательно подключённых пользовательских ИК-светодиода к микроконтроллеру. Используйте определения LED4 для управления состоянием ИК-светодиодов. При задании значения высокого уровня светодиоды загораются, при низком — гаснут.

Регулятор напряжения

Линейный понижающий регулятор напряжение BD33IAWEFJ с выходом 3,3 вольта обеспечивает питание камеры и микроконтроллера. Максимальный выходной ток составляет 500 мА.

Распиновка

Пины питания

  • VIN: Пин для подключения внешнего источника напряжения в диапазоне от 3,6 до 5 вольт.
  • 3V3: Пин от стабилизатора напряжения с выходом 3,3 вольта и максимальных током 500 мА. Регулятор обеспечивает питание микроконтроллера и другой обвязки платы.
  • GND: Выводы земли.

Пины ввода/вывода

В отличии от большинства плат Arduino, родным напряжением OpenMV является 3,3 В, а не 5 В. Выходы для логической единицы выдают 3,3 В, а в режиме входа ожидают принимать 3,3 В. Но есть дополнительный бонус, все пины, кроме P6, толерантны к 5 вольтам, так что смело можете подключать свои любимые датчики к этой платформе.

  • Цифровые входы/выходы: 10 пинов: P0P9
    Логический уровень единицы — 3,3 В, нуля — 0 В. Максимальный ток выхода — 25 мА. К контактам подключены подтягивающие резисторы, которые по умолчанию выключены, но могут быть включены программно.
  • АЦП: 1 пин: P6
    Позволяет представить аналоговое напряжение в цифровом виде. По умолчанию разрядность АЦП установлена в 12 бит. Диапазон входного напряжения от 0 до 3,3 В. При подаче большего напряжения микроконтроллер может выйти из строя.
  • ЦАП: 1 пин: P6
    Позволяет выводить аналоговое напряжение из цифровых значений. Разрядность ЦАП не меняется и установлена в 12 бит.
  • ШИМ: 9 пинов: P0P2 и P4P9
    Позволяет выводить аналоговое напряжение в виде ШИМ-сигнала из цифровых значений. По умолчанию разрядность ШИМ установлена в 16 бит.
  • I²C Для общения OpenMV H7 c платами расширения и сенсорами по интерфейсу I²C.
    • I²C2: пины SDA2/P5 и SCL2/P4
    • I²C4: пины SDA4/P7 и SCL4/P8
  • SPI Для общения OpenMV H7 c платами расширения и сенсорами по интерфейсу SPI.
    • SPI2: пины MOSI2/P0, MISO2/P1, SCK2/P2 и SS/P3
  • Serial/UART Для общения OpenMV H7 c платами расширения и сенсорами по интерфейсу UART.
    • UART1: пины TX1/P1 и RX1/P0
    • UART3: пины TX3/P4 и RX3/P5
  • CAN Для общения OpenMV H7 c модулями по интерфейсу CAN.
    • CAN2: пины TX2/P2 и RX2/P3

Принципиальная и монтажная схема

Габаритный чертёж

Характеристики

Параметры платформы

  • Чипы: микроконтроллер STM32F765VIT6 и камера OmniVision OV7725
  • Входное напряжение через USB: 5 В
  • Входное напряжение через пин Vin: 3,6–5 В
  • Ток потребления в фоновом режиме: 110 мА
  • Ток потребления в активном режиме: до 200 мА
  • Максимальный выходной ток пина 3V3: 500 мА
  • Напряжение логических уровней: 3,3 В
  • Максимальный ток с пина или на пин: 25 мА
  • Габариты: 45×36 мм

Микроконтроллер STM32F765VIT6

  • Ядро: ARM Cortex®-M7
  • Тактовая частота: 216 МГц
  • Flash-память: 512 КБ
  • SRAM-память: 2 МБ
  • Пинов общего назначения: 10
  • Пинов с прерываниями: 10
  • Пинов толерантных к 5 вольтам: 9
  • Контактов с АЦП: 1 с разрядностью 12 бит
  • Контактов с ЦАП: 1 с разрядностью 12 бит
  • Контактов с ШИМ: 9 с разрядностью 16 бит
  • Аппаратные интерфейсы: 1× SPI, 1× CAN, 2× UART и 2× I²C

Камера OmniVision OV7725

  • Форм-фактор: 1/3″
  • Разрешение: 640×480
  • Фокусное расстояние объектива: 2,8 мм
  • Диафрагма: F2.0
  • ИК-фильтр: 650 нм (убираемый)
  • Чёрно-белый режим: 8-бит
  • Цветной режим: 16 бит (RGB565)

Ресурсы