====== Камера машинного зрения OpenMV H7 R2: инструкция, примеры использования и документация ======
Используйте платформу с интегрированным модулем видеокамеры [[amp>product/openmv-cam-h7-r2?utm_source=man&utm_campaign=openmv-cam-h7-r2&utm_medium=wiki|OpenMV H7 R2]] для реализации проектов с машинным зрением. На плате распаян дополнительный микроконтроллер для обработки данных изображения на лету и управления внешними устройствами.
{{ :products:openmv-cam-h7:openmv-cam-h7.1.jpg?nolink |}}
Камера OpenMV H7 R2 позволит сделать умную систему видеонаблюдения с распознаванием лиц, цифровое зрение для робота или систему сортировки на производстве.
===== Подключение и настройка =====
==== Шаг 1 ====
Подключите плату к компьютеру по USB. Для коммуникации используйте [[amp>product/usb-cable-micro?utm_source=man&utm_campaign=openmv-cam-h7&utm_medium=wiki|кабель micro-USB]].{{ :products:openmv-cam-h7:openmv-cam-h7-install.1.png?nolink |}}
==== Шаг 2 ====
[[:articles:openmv-ide-install|Установите и настройте интегрированную среду разработки OpenMV IDE.]]
===== Примеры работы =====
Все примеры работы с камерой вы найдёте на странице документации про [[:articles:openmv-ide-install#примеры_работы|среду разработки OpenMV IDE]].
===== Элементы платы =====
{{ :products:openmv-cam-h7:openmv-cam-h7-annotation.png?nolink |}}
==== Модуль камеры ====
Захват изображения осуществляет светочувствительная КМОП-матрица {{ :products:openmv-cam-h7:ov7725-datasheet.pdf |OV7725}} от компании OmniVision. Размер матрицы 1/3″ с максимальным разрешением 640×480 (VGA). Камера позволяет снимать видео в 8-битном режиме оттенков серого или цветном 16-битном формате RGB565 с частотой 75 кадров в секунду. Поддерживаются форматы сжатия MJPEG, GIF и несжатое видео RAW.
Объектив с фокусным расстоянием 2,8 мм и диафрагмой F2.0 крепится через байонет со стандартной резьбой M12 с шагом 0,5 мм, поэтому к OpenMV H7 подходят сменные объективы от GoPro и других портативных камер. На обратной стороне объектива установлен ИК-фильтр на 650 нм, который можно снять для съёмок в темноте.
Компания OpenMV также предлагает свои [[amp>collection/openmv-add-ons?utm_source=man&utm_campaign=openmv-cam-h7&utm_medium=wiki|фирменные объективы.]]
==== Микроконтроллер STM32F765VIT6 ====
Мозгом платы выступает 32-битный процессор {{ :products:openmv-cam-h7:stm32h743vi-datasheet.pdf |STM32H743VI}} от компании STMicroelectronics с вычислительным ядром ARM Cortex-M7. Контроллер отвечает за обработку изображения с [[#камерный_модуль|камерного модуля OV7725]], а также предоставляет доступ к 10 пинам ввода-вывода общего назначения (GPIO) для коммуникации с [[amp>collection/boards?utm_source=man&utm_campaign=openmv-cam-h7&utm_medium=wiki|внешними устройствами]].
Микроконтроллер предоставляет 2 МБ Flash-памяти и 1 МБ RAM-памяти.
==== Разъём micro-USB ====
Порт micro-USB предназначен для прошивки и питания платформы OpenMV H7. Для подключения к ПК понадобиться [[amp>product/usb-cable-micro?utm_source=man&utm_campaign=openmv-cam-h7&utm_medium=wiki|кабель micro-USB]].
==== Слот карты microSD ====
Слот предназначен для установки карты памяти формата [[amp>product/microsd-16gb?utm_source=man&utm_campaign=openmv-cam-h7&utm_medium=wiki|microSD]]. Внешняя память пригодится для записи и хранения тяжёлых медиафайлов.
==== Светодиодная индикация ====
^ Имя светодиода ^ Назначение ^
| LED RGB | Пользовательский RGB светодиод с общим анодом. Катоды красного, зеленного и синего цветов выведены на пины микроконтроллера. Используйте определения LED1 для управления красным, LED2 — зелёным и LED3 — синем цветом. При задании значения высокого уровня светодиод загорается, при низком — гаснет.|
| LED2 и LED3 | Два последовательно подключённых пользовательских ИК-светодиода к микроконтроллеру. Используйте определения LED4 для управления состоянием ИК-светодиодов. При задании значения высокого уровня светодиоды загораются, при низком — гаснут.|
==== Разъём питания ====
Для обеспечения автономности устройства на плате расположен разъём питания {{ :products:openmv-cam-h7:jst-ph-2.pdf |JST PH-2 Male}}. Для автономного питания камеры используйте [[amp>collection/accumulators?utm_source=man&utm_campaign=openmv-cam-h7&utm_medium=wiki|аккумуляторы]] или [[amp>collection/batteries?utm_source=man&utm_campaign=openmv-cam-h7&utm_medium=wiki|батарейки]] с [[amp>product/connector-jst-ph-2-pin?utm_source=man&utm_campaign=openmv-cam-h7&utm_medium=wiki|разъёмом JST PH-2]]. Диапазон входного напряжения от 3,6 до 5 вольт.
==== Регулятор напряжения ====
Понижающий DC-DC преобразователь {{ :products:openmv-cam-h7:pam2305aab330-datasheet.pdf |PAM2305AAB330}} обеспечивает питание [[#микроконтроллер_stm32f765vit6|микроконтроллера]] и другой логики платы при подключении питания через USB-порт или пин Vin. Диапазон входного напряжения от 3,6 до 5 вольт. Выходное напряжение 3,3 В с максимальным выходным током 250 мА.
По документации на регулятор {{ :products:openmv-cam-h7:pam2305aab330-datasheet.pdf |PAM2305AAB330}}, максимальный выходной ток составляет 1 А. Но в силу защиты платы от перегрева, в схеме используется ограничения до 250 мА.
===== Распиновка =====
[[this>_media/products:openmv-cam-h7:openmv-cam-h7-pinout.pdf|{{:products:openmv-cam-h7:openmv-cam-h7-pinout.png}}]]
==== Пины питания ====
* **VIN:** Пин для подключения внешнего источника напряжения в диапазоне от 3,6 до 5 вольт.
* **3V3:** Пин от [[#регулятор_напряжения|стабилизатора напряжения]] с выходом 3,3 вольта и максимальных током 250 мА. Регулятор обеспечивает питание микроконтроллера и другой обвязки платы.
* **GND:** Выводы земли.
==== Пины ввода/вывода ====
В отличии от большинства плат Arduino, родным напряжением OpenMV является 3,3 В, а не 5 В. Выходы для логической единицы выдают 3,3 В, а в режиме входа ожидают принимать 3,3 В. Но есть дополнительный бонус, все пины, кроме P6, толерантны к 5 вольтам, так что смело можете подключать свои любимые датчики к этой платформе.
* **Цифровые входы/выходы:** 10 пинов: ''P0''–''P9''\\ Логический уровень единицы — 3,3 В, нуля — 0 В. Максимальный ток выхода — 25 мА. К контактам подключены подтягивающие резисторы, которые по умолчанию выключены, но могут быть включены программно.
* **АЦП:** 1 пин: ''P6''\\ Позволяет представить аналоговое напряжение в цифровом виде. По умолчанию разрядность АЦП установлена в 12 бит. Диапазон входного напряжения от 0 до 3,3 В. При подаче большего напряжения микроконтроллер может выйти из строя.
* **ЦАП:** 1 пин: ''P6''\\ Позволяет выводить аналоговое напряжение из цифровых значений. Разрядность ЦАП не меняется и установлена в 12 бит.
* **ШИМ:** 9 пинов: ''P0''–''P2'' и ''P4''–''P9''\\ Позволяет выводить аналоговое напряжение в виде ШИМ-сигнала из цифровых значений. По умолчанию разрядность ШИМ установлена в 16 бит.
* **I²C** Для общения OpenMV H7 c [[amp>collection/boards?utm_source=man&utm_campaign=openmv-cam-h7&utm_medium=wiki|платами расширения]] и [[amp>collection/sensors?utm_source=man&utm_campaign=openmv-cam-h7&utm_medium=wiki|сенсорами]] по интерфейсу I²C.
* **I²C2**: пины ''SDA2/P5'' и ''SCL2/P4''
* **I²C4**: пины ''SDA4/P7'' и ''SCL4/P8''
* **SPI** Для общения OpenMV H7 c [[amp>collection/boards?utm_source=man&utm_campaign=openmv-cam-h7&utm_medium=wiki|платами расширения]] и [[amp>collection/sensors?utm_source=man&utm_campaign=openmv-cam-h7&utm_medium=wiki|сенсорами]] по интерфейсу SPI.
* **SPI2**: пины ''MOSI2/P0'', ''MISO2/P1'', ''SCK2/P2'' и ''SS/P3''
* **Serial/UART** Для общения OpenMV H7 c [[amp>collection/boards?utm_source=man&utm_campaign=openmv-cam-h7&utm_medium=wiki|платами расширения]] и [[amp>collection/sensors?utm_source=man&utm_campaign=openmv-cam-h7&utm_medium=wiki|сенсорами]] по интерфейсу UART.
* **UART1**: пины ''TX1/P1'' и ''RX1/P0''
* **UART3**: пины ''TX3/P4'' и ''RX3/P5''
* **CAN** Для общения OpenMV H7 c модулями по интерфейсу CAN.
* **CAN2**: пины ''TX2/P2'' и ''RX2/P3''
===== Принципиальная и монтажная схемы =====
==== Схема основного модуля ====
{{:products:openmv-cam-h7:openmv-cam-h7-base-schematic.png?direct&500 }}
{{ :products:openmv-cam-h7:openmv-cam-h7-base-layout-top.png?direct&130}}
{{ :products:openmv-cam-h7:openmv-cam-h7-base-layout-bottom.png?direct&130}}
==== Схема камерного модуля ====
{{:products:openmv-cam-h7:openmv-cam-h7-image-sensor-schematic.png?direct&500 }}
{{ :products:openmv-cam-h7:openmv-cam-h7-image-sensor-layout-top.png?direct&170}}
{{ :products:openmv-cam-h7:openmv-cam-h7-image-sensor-layout-bottom.png?direct&170}}
===== Габаритный чертёж =====
[[this>_media/products:openmv-cam-h7:openmv-cam-h7-dimensions.pdf|{{:products:openmv-cam-h7:openmv-cam-h7-dimensions.png}}]]
===== Характеристики =====
==== Параметры платформы ====
* Чипы: микроконтроллер STM32H743VI и камера OmniVision OV7725
* Входное напряжение питания:
* Через USB: 5 В
* Через пин Vin: 3,6–5 В
* Ток потребления в фоновом режиме: 110 мА
* Ток потребления в активном режиме: до 170 мА
* Максимальный выходной ток пина 3V3: 250 мА
* Напряжение логических уровней: 3,3 В
* Максимальный ток с пина или на пин: 25 мА
* Габариты: 45×36×30 мм
==== Микроконтроллер STM32H743VI ====
* Ядро: ARM Cortex®-M7
* Тактовая частота: 480 МГц
* Flash-память: 2 МБ
* RAM-память: 1 МБ
* Контакты ввода-вывода: 10 (9 толератны к 5 В)
* Контакты с прерываниями: 10
* Контакты с АЦП: 1
* Разрядность АЦП: 12 бит
* Контакты с ЦАП: 1
* Разрядность ЦАП: 12 бит
* Контакты с ШИМ: 3
* Разрядность ШИМ: 16 бит
* Аппаратные интерфейсы: 2× UART, 2× I²C, 1× SPI, 1× CAN
==== Камера OmniVision OV7725 ====
* Форм-фактор: 1/3″
* Разрешение: 640×480
* Фокусное расстояние объектива: 2,8 мм
* Диафрагма: F2.0
* ИК-фильтр: 650 нм (убираемый)
* Чёрно-белый режим: 8-бит
* Цветной режим: 16 бит (RGB565)
===== Ресурсы =====
* [[:articles:openmv-ide-install|Среда разработки OpenMV IDE]]
* [[amp>product/openmv-cam-h7-r2?utm_source=man&utm_campaign=openmv-cam-h7-r2&utm_medium=wiki|Камера машинного зрения OpenMV H7]] в магазине.
* [[https://github.com/amperka/hardware-drawings/blob/master/openmv-cam-h7.svg|Векторное изображение платформы OpenMV H7]]
* [[https://grabcad.com/library/openmv-h7-camera-1|3D-модель OpenMV H7]]
* [[https://docs.openmv.io/|Библиотека знаний по OpenMV от производителя]]
* {{ :products:openmv-cam-h7:openmv-h7-datasheet.pdf |Datasheet на модуль OpenMV H7}}
* {{ :products:openmv-cam-h7:stm32h743vi-datasheet.pdf |Datasheet на микроконтроллер STM32H743VI}}
* {{ :products:openmv-cam-h7:stm32h743vi-reference-manual.pdf |Reference Manual на микроконтроллер STM32H743VI}}
* {{ :products:openmv-cam-h7:ov7725-datasheet.pdf |Datasheet на датчик изображения Omnivision OV7725}}
* {{ :products:openmv-cam-h7:ov7725-software-application-note.pdf |Software Application Note на датчик изображения Omnivision OV7725}}