====== Камера машинного зрения 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}}