Arduino Nicla Vision — камера и машинное зрение: характеристики и распиновка

Arduino Nicla Vision — компактная плата серии Nicla (линейка Arduino Pro) для машинного зрения на периферии. На плате размером около 23 × 23 мм размещены двухъядерный микроконтроллер STM32H747AII6 (Arm Cortex-M7 до 480 МГц и Cortex-M4 до 240 МГц), 2-мегапиксельная камера GC2145, лазерный датчик расстояния Time-of-Flight, шестиосевой IMU, цифровой микрофон, модуль Wi-Fi и Bluetooth и криптоэлемент. Это не одноплатный компьютер с Linux: плата выполняет программу на Arduino C++ с ядром Arduino Mbed OS Nicla Boards либо использует альтернативную прошивку OpenMV на MicroPython. Производитель — Arduino.

По описанию Arduino, плата позволяет снимать, анализировать и отправлять данные в облако. Целевые области — беспроводные сенсорные сети, объединение данных, искусственный интеллект и машинное зрение. Форм-фактор Nicla разработан Arduino как стандарт для беспроводных сенсорных сетей. Плата питается от USB, от одноэлементного Li-Ion / Li-Po аккумулятора или от вывода VIN; на плате есть контроллер питания и индикатор остатка заряда.

Цифровые выводы работают с уровнем VDDIO_EXT, который программно настраивается на 1,8 или 3,3 В. Аналоговые входы A0–A2 имеют отдельные ограничения по напряжению; документация Arduino и OpenMV приводит разные указания, поэтому это различие рассмотрено ниже. Для сравнения: Portenta H7 использует тот же микроконтроллер в большем формате с разъёмами High Density.

Плата Arduino Nicla Vision, вид сверху

Основные характеристики Arduino Nicla Vision

  • Микроконтроллер: STM32H747AII6 — двухъядерный Arm Cortex-M7 до 480 МГц и Cortex-M4 до 240 МГц
  • Память микроконтроллера: 2 МБ Flash и 1 МБ SRAM
  • Внешняя Flash-память: 16 МБ QSPI (AT25QL128A, 128 Мбит)
  • Камера: GC2145, 2 Мп CMOS, угол обзора 80°, фокусное расстояние 2,2 мм, диафрагма F2,2
  • Датчик расстояния: VL53L1CBV0FY/1 (Time-of-Flight, лазер 940 нм, дальность до 400 см при полном поле зрения)
  • IMU: LSM6DSOX (6 осей: 3-осевой акселерометр и 3-осевой гироскоп, со встроенным ядром машинного обучения)
  • Микрофон: MP34DT06JTR (цифровой MEMS, всенаправленный, отношение сигнал/шум 64 дБ)
  • Беспроводной модуль: Murata LBEE5KL1DX-883 на базе Infineon CYW4343W: Wi-Fi 802.11 b/g/n 2,4 ГГц до 65 Мбит/с, Bluetooth Classic и BLE 4.2; внешняя антенна подключается через Micro U.FL
  • Безопасность: NXP SE050C2 (Common Criteria EAL 6+, защищённая память до 50 КБ)
  • Питание: USB 4,8–5,5 В; VIN 3,5–5,5 В; одноэлементный аккумулятор Li-Ion / Li-Po 3,5–4,7 В; PMIC MC34PF1550A0EP и индикатор заряда MAX17262REWL+T
  • Уровень цифровой логики: VDDIO_EXT 1,8 или 3,3 В (программируется)
  • Потребление (измерения Arduino): глубокий сон — около 374 мкА; захват изображения — около 105 мА
  • Рабочая температура: от −40 до +85 °C
  • Интерфейсы: SPI, I²C, UART, 4 цифровых вывода Low Power IO, 3 аналоговых входа
  • USB: Micro-USB 2.0 High-Speed (до 480 Мбит/с, через внешний PHY USB3320C)
  • Размеры: около 22,86 × 22,86 мм
  • Способ программирования: Arduino IDE (пакет Arduino Mbed OS Nicla Boards), OpenMV IDE (MicroPython); обновление прошивки STM32 по BLE через WebBLE и через ESLOV

Технические характеристики

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

STM32H747AII6 — двухъядерный микроконтроллер: Cortex-M7 (до 480 МГц, FPU двойной точности, кэш L1) и Cortex-M4 (до 240 МГц, FPU, инструкции DSP). Ядра взаимодействуют через механизм Remote Procedure Call (RPC), позволяющий вызывать функции другого ядра. В режиме OpenMV основной интерпретатор работает на Cortex-M7; для использования M4 требуется отдельная прошивка.

Структурная схема Arduino Nicla Vision

Камера и датчик расстояния

  • GC2145 — 2-мегапиксельный CMOS-датчик с 10-битным АЦП на кристалле, размер пикселя 1,75 мкм, угол обзора 80°, фокусное расстояние 2,2 мм, F2,2 ± 5 %, геометрические искажения менее 1 %.
  • VL53L1CBV0FY/1 — миниатюрный модуль Time-of-Flight с невидимым инфракрасным VCSEL-излучателем на 940 нм. Заявленная дальность обнаружения — до 400 см при полном поле зрения. Датчик расположен под камерой.

⚠ Лазер класса 1. По документации Arduino, излучатель соответствует классу 1 по IEC 60825-1:2014 при предусмотренных условиях эксплуатации. Не увеличивайте мощность лазера и не используйте оптику для фокусировки луча. Применение нештатных настроек и процедур может привести к опасному воздействию излучения.

Память

В STM32H747 находятся 2 МБ Flash и 1 МБ SRAM. Дополнительно установлена внешняя QSPI-flash AT25QL128A объёмом 128 Мбит (16 МБ), используемая для хранения программного кода и данных. Отдельной EEPROM нет.

Датчики и безопасность

  • LSM6DSOX — 3D-акселерометр (±2/±4/±8/±16 g) и 3D-гироскоп (±125/±250/±500/±1000/±2000 °/с), FIFO до 4 КБ, встроенное ядро машинного обучения для распознавания жестов.
  • MP34DT06JTR — цифровой всенаправленный MEMS-микрофон с отношением сигнал/шум 64 дБ и акустической перегрузочной точкой 122,5 dBSPL.
  • NXP SE050C2 — криптоэлемент с сертификацией Common Criteria EAL 6+, поддержкой RSA/ECC, AES, 3DES, HMAC, CMAC и SHA, а также защищённой памятью до 50 КБ и SCP03 для защиты обмена по шине.

Цифровые и аналоговые выводы

На разъёмах J1 и J2 доступны три аналоговых входа A0–A2, цифровые линии D0–D3, SPI (SS, COPI, CIPO, SCK), I²C (SDA, SCL) и UART (TX — D1, RX — D2). D0–D3 также обозначены как Low Power IO. Цифровые выводы проходят через преобразователи уровней и используют VDDIO_EXT: по умолчанию 3,3 В, с возможностью переключения на 1,8 В. Выводы LPIO рассчитаны на малые токи; они не предназначены для питания внешних нагрузок.

⚠ Уровни логики и аналоговые входы. Цифровые выводы J1/J2 работают с VDDIO_EXT (1,8–3,3 В), поэтому подавать на них 5 В нельзя. Для аналоговых входов A0–A2 в документации есть расхождение: datasheet Arduino указывает, что они могут принимать до 3,3 В, но руководство OpenMV описывает их как входы с опорным уровнем 1,8 В и предупреждает о риске повреждения при подаче 3,3 В. При использовании OpenMV соблюдайте предел 1,8 В; до проверки конкретной конфигурации безопаснее ограничивать аналоговый сигнал этим уровнем и применять делитель напряжения.

Распиновка Arduino Nicla Vision

Интерфейсы связи

  • I²C: SDA и SCL на разъёме J2; шина I²C1 проходит через преобразователь уровней NTS0304 с внутренними подтягивающими резисторами 10 кОм. Внешние подтягивающие резисторы R9 и R10 на плате не установлены. Та же шина доступна через разъём ESLOV.
  • SPI: SS, COPI, CIPO и SCK на разъёме J1; сигналы проходят через преобразователь уровней TXB0108.
  • UART: D1 (TX) и D2 (RX) на разъёме J2.
  • ESLOV (J5): 5-контактный разъём с выводами 5V, INT, SCL, SDA и GND. Плата может работать как ведомое устройство ESLOV-контроллера; через этот интерфейс также можно обновлять прошивку.

USB

Разъём Micro-USB (J7) используется для питания, программирования и связи с компьютером. Для USB 2.0 High-Speed до 480 Мбит/с установлен внешний ULPI-трансивер USB3320C; на линиях данных предусмотрена ESD-защита.

Беспроводная связь

Модуль Murata LBEE5KL1DX-883 на базе Infineon CYW4343W обеспечивает Wi-Fi IEEE 802.11 b/g/n в диапазоне 2,4 ГГц (режим точки доступа, клиента или одновременный AP/STA, до 65 Мбит/с) и Bluetooth Classic / BLE. Одна внешняя антенна через разъём Micro U.FL (J6) используется обоими радиоинтерфейсами.

⚠ Антенна. Подключите внешнюю Wi-Fi/Bluetooth-антенну к разъёму Micro U.FL. Не оставляйте радиомодуль работать без предусмотренной антенны и не заменяйте её антенной с неподходящим разъёмом или характеристиками.

Питание и аккумулятор

Питание можно подать через Micro-USB (J7), разъём ESLOV (J5), разъём аккумулятора (J4) или контакт VIN. Приоритет источников: USB выше ESLOV; оба этих входа имеют приоритет над аккумулятором и VIN. От переполюсовки защищены USB и ESLOV благодаря идеальным диодам LM66100; вход аккумулятора такой защиты не имеет. Вход NTC на разъёме батареи необязателен, но термистор позволяет PMIC отключить питание при перегреве аккумулятора. MAX17262 измеряет остаточную ёмкость батареи.

Основные шины питания: +3V1 питает микроконтроллер, генераторы, USB-трансивер и радиомодуль; +2V8A — камеру и ToF-датчик; +1V8 — микроконтроллер, камеру, USB-трансивер, радиомодуль, IMU, микрофон, криптоэлемент, flash-память и преобразователи уровней. Для аналоговой части микроконтроллера предусмотрена отдельная шина VDDA, для камеры — +1V8CAM.

Схема питания Arduino Nicla Vision: USB, ESLOV, аккумулятор, PMIC и шины питания

⚠ Аккумулятор. Используйте только одноэлементный Li-Ion / Li-Po аккумулятор с соблюдением полярности: на входе батареи нет защиты от переполюсовки. Не подключайте аккумулятор одновременно через J4 и площадки J3 — это два способа подключения одной батареи, а не два независимых входа. NTC-термистор необязателен, но обеспечивает температурную защиту.

Размеры и конструкция

Размеры платы — около 22,86 × 22,86 мм. Выводы расположены по краям: J1 — 8 контактов, J2 — 9 контактов. Между рядами контактов J2 находятся восемь площадок для отладки SWD/JTAG, доступа к шине PMIC и питанию 1,8 В. Для монтажа плата рассчитана на установку на несущую плату; на ней также предусмотрены четыре крепёжных отверстия.

Чертёж Arduino Nicla Vision с размерами платы

Интерфейсы и разъёмы

  • Micro-USB (J7); разъём аккумулятора (J4) и площадки J3 для VBAT/NTC;
  • J1 (8 контактов: аналоговые входы, SPI и D0) и J2 (9 контактов: I²C, UART, D3, VDDIO_EXT, GND и VIN);
  • Площадки J2 Fins — SWD/JTAG, шина PMIC и +1V8;
  • ESLOV (J5); Micro U.FL (J6) для антенны;
  • Кнопка Reset; RGB-светодиод и отдельный красный светодиод.
Расположение элементов на Arduino Nicla Vision (вид сверху)
Расположение элементов на Arduino Nicla Vision (вид снизу)
Nicla Vision с аккумулятором: типичная сборка для удалённого машинного зрения

Программирование

Для программирования на Arduino C++ установите пакет Arduino Mbed OS Nicla Boards через менеджер плат Arduino IDE. Также поддерживается Arduino Cloud Editor. Для машинного зрения можно использовать OpenMV IDE с прошивкой MicroPython. Это альтернативные программные среды и прошивки: перед загрузкой кода необходимо выбрать подходящую платформу.

Прошивку STM32 можно обновлять по воздуху через WebBLE; также предусмотрено обновление через ESLOV. Для восстановления загрузчика используйте USB: если программа заблокировала работу платы и она недоступна, дважды нажмите Reset сразу после подачи питания. Это переводит устройство в режим загрузчика DFU.


Распиновка

Таблицы составлены по datasheet (ABX00051) и полной схеме выводов Arduino. Все контакты J1 и J2, кроме площадок Fins, используют уровень VDDIO_EXT. Аналоговые входы A0–A2 имеют отдельную аппаратную цепь и ограничения, описанные выше.

Разъём J1

КонтактФункцияОписание
1D0 / LPIO0Цифровой вывод 0, Low Power IO 0
2A2 / D18Аналоговый вход 2 / цифровой 18
3SSSPI Slave Select
4COPISPI, управляющий → периферия
5CIPOSPI, периферия → управляющий
6SCKSPI, тактирование
7A1 / D17Аналоговый вход 1 / цифровой 17
8A0 / D16Аналоговый вход 0 / цифровой 16

Разъём J2

КонтактФункцияОписание
1SDAI²C, данные
2SCLI²C, тактирование
3D1 / LPIO1 / UART_TXЦифровой 1, Low Power IO 1, передача UART
4D2 / LPIO2 / UART_RXЦифровой 2, Low Power IO 2, приём UART
5D3 / LPIO3Цифровой 3, Low Power IO 3
6GNDЗемля
7VDDIO_EXTОпорное напряжение цифровой логики
8N/CНе подключён
9VINВход питания

Площадки J2 Fins (отладка)

КонтактФункцияОписание
P1SDA_PMICI²C PMIC, данные (PF0)
P2SCL_PMICI²C PMIC, тактирование (PF1)
P3TMS / SWDIOДанные SWD/JTAG (PA13)
P4TCK / SWCLKТактирование SWD/JTAG (PA14)
P5NRSTСброс микроконтроллера
P6TDO / SWOВыход данных отладки (PB3)
P7+1V8Шина питания 1,8 В
P8VOTP_PMICЗарезервирован для заводского программирования — оставить неподключённым

Возможности и особенности

  • Камера, датчик расстояния, IMU и микрофон на плате размером около 23 × 23 мм.
  • Двухъядерный микроконтроллер STM32H747 и режимы малого потребления.
  • Wi-Fi, Bluetooth и криптоэлемент SE050C2.
  • OpenMV и MicroPython: готовая среда для задач компьютерного зрения.
  • Контроль аккумулятора: зарядное управление PMIC, индикатор остатка заряда и вход NTC.
  • Обновление прошивки STM32 через WebBLE или ESLOV.

Для чего подходит Arduino Nicla Vision

  • Складская логистика: обнаружение посылок, чтение QR-кодов и визуальная оценка объектов;
  • Автоматический оптический контроль (AOI) на производстве;
  • Беспроводные сенсорные сети и предиктивное обслуживание, например анализ вибраций по данным IMU;
  • Машинное зрение на периферии с локальной обработкой изображений и передачей результатов в облако.

Преимущества

  • Камера, Time-of-Flight, IMU и микрофон в одном компактном модуле.
  • Достаточно производительный двухъядерный процессор для периферийной обработки.
  • Wi-Fi, Bluetooth и аппаратный криптоэлемент.
  • Компактные размеры и возможность автономного питания от аккумулятора.

Ограничения

  • Мало внешних выводов: для удобного подключения периферии может понадобиться несущая плата.
  • Логика цифровых выводов 1,8–3,3 В; подключение 5-вольтовых сигналов напрямую недопустимо.
  • Аналоговые входы имеют ограничение по уровню; для OpenMV следует использовать диапазон 0–1,8 В.
  • Выводы через преобразователи уровней рассчитаны на сигналы, а не на питание нагрузок.
  • На входе аккумулятора нет защиты от переполюсовки.
  • Wi-Fi работает только в диапазоне 2,4 ГГц; для беспроводной связи нужна внешняя антенна.
  • ToF-излучатель относится к лазерным изделиям класса 1; запрещено повышать его мощность или фокусировать луч оптикой.

Arduino Nicla Vision и похожие платы

ХарактеристикаNicla VisionNicla VoicePortenta H7
МикроконтроллерSTM32H747AII6nRF52832 + NDP120STM32H747XI
ЯдраCortex-M7 480 МГц + M4 240 МГцCortex-M4F + нейропроцессорCortex-M7 480 МГц + M4 240 МГц
Камера2 Мпнетнет (доступна через отдельный Vision Shield)
Wi-Fiестьнетесть (H7 и H7 Lite Connected)
Размер~23 × 23 мм~23 × 23 мм66 × 25 мм

См. также Nicla Voice, Nicla Sense ME и Portenta H7.


Заключение

Arduino Nicla Vision — компактная плата для машинного зрения с 2-мегапиксельной камерой, лазерным датчиком расстояния, IMU, микрофоном, Wi-Fi и Bluetooth. Она подходит для промышленных сенсорных узлов и прототипов систем компьютерного зрения на периферии.

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


Материалы

Иллюстрации (фотографии, структурная схема, виды сверху и снизу, схема выводов, схема питания и чертёж) взяты из документации Arduino к Nicla Vision (SKU ABX00051); схема выводов распространяется под лицензией CC BY-SA 4.0, права на остальные материалы принадлежат Arduino.

Оставьте комментарий

Отправляя комментарий, вы соглашаетесь с обработкой ваших данных (имя, адрес электронной почты, текст комментария) в соответствии с политикой конфиденциальности.