Новая плата Arduino Nano RP2040 Connect

И без того большое семейство плат Arduino пополнилось новой записью, Arduino Nano RP2040 Connect, в которой микроконтроллер RP2040, разработанный Raspberry Pi Foundation, интегрирован с Wi-Fi и Bluetooth-модулем u-blox NINA-W102, а также радиомодулем и богатым набором передовых датчиков, способных поддерживать даже алгоритмы искусственного интеллекта.

Фактически, на плате есть цифровой микрофон, который поддерживает функции голосовой активации, шестиосевой инерционный датчик движения (IMU), небольшой светодиод RGB и флэш-память (16 МБ), способная удовлетворить даже самые требовательные приложения.

Новая плата наследует от Raspberry Pi RP2040 программную поддержку MicroPython и языка C / C ++, основанных на SDK, разработанных для платы Raspberry Pi Pico.

Как и все другие платы в семействе Arduino, последнее дополнение поддерживает собственные среды программирования, такие как хорошо известная Arduino IDE (теперь в версии 2.0), Arduino CLI, IoT Cloud и веб-редактор.

Последний позволяет программировать и контролировать работу Nano RP2040 Connect прямо из веб-браузера. Таким образом, можно загружать программы по воздуху с помощью мгновенного дистанционного управления из бесплатного приложения для смартфонов Arduino IoT Remote.

Для платы был выбран микроконтроллер RP2040, потому что он представляет собой «объединяющую черту» между мирами Raspberry и Arduino, идеальное решение для всех тех приложений, которые не требуют сложности и производительности «полного» Raspberry Pi.

Еще одна примечательная особенность - принадлежность платы к семейству Arduino Nano Mbed OS, группе плат с общим малым форм-фактором (площадь основания «Nano», всего 18 × 43 мм) и поддержкой приложений Интернета вещей на базе ARM.

Операционная система Mbed OS. В настоящее время это семейство включает три платы: Nano 33 BLE, Nano 33 BLE Sense и Nano RP2040 Connect (Nano 33 IoT не входит в его состав, поскольку не поддерживает систему Mbed OS).

На рисунке 1 показан вид в три четверти платы Arduino Nano RP2040 Connect, здесь в версии без установленных контактных разъемов.



Arduino Nano RP2040 Connect

Блок-схема

Блок-схема платы показана на рисунке 2.

Сердцем является микроконтроллер RP2040, способный обмениваться данными со средой разработки и отладки хоста через классическое USB-соединение, а также с внешней флеш-памятью объемом 16 Мбайт через четырехканальный последовательный порт SPI.

Источник питания 3,3 В обеспечивается регулятором MP2322 с источником входного сигнала, который можно выбрать из порта USB (V USB) или от внешнего источника питания (V IN ).

Модуль Wi-Fi / Bluetooth NINA W102 подключается к микроконтроллеру через интерфейсы C, SPI и UART, и к нему подключен светодиод RGB.

Что касается других датчиков, микрофон MEMS подключается к микроконтроллеру через цифровой аудиоинтерфейс с модуляцией плотности импульсов (PDM), а шестиосевой датчик движения и модуль аутентификации подключаются через шину I2C. Внешний генератор MEMS, работающий на частоте 12 МГц.

Блок-схема платы

Компоненты

Основные компоненты платы выделены на рисунке 3.

Основные компоненты платы

Прежде всего, у нас есть чип RP2040, 32-разрядный двухъядерный микроконтроллер на базе ARM Cortex M0 +, работающий на частоте 133 МГц, в сопровождении встроенной памяти SRAM объемом 264 КБ.

Превосходная производительность и высокая эффективность этого MCU позволяют ему поддерживать алгоритмы машинного обучения, разработанные с помощью TinyML, TensorFlow Lite или Edge Impulse.

Помимо полной поддержки MicroPython (доступна с июля 2021 года), плата поставляется с бесплатной лицензией OpenMV для проектов машинного зрения.



Возможности, предлагаемые микроконтроллером RP2040, включают:

Контроллер прямого доступа к памяти;

Контроллер USB 1.1 и PHY с поддержкой хоста и устройства;

Восемь конечных автоматов с программируемым вводом-выводом;

Программируемый ввод-вывод для расширенной периферийной поддержки;

Четырехканальный АЦП с внутренним датчиком температуры;

Две встроенные ФАПЧ для генерации USB и тактовой частоты ядра;

Поддержку нескольких режимов пониженного энергопотребления;

Внутренний регулятор напряжения для подачи основного напряжения;

Расширенную высокопроизводительную шину и расширенную периферийную шину.





После MCU второй сильной стороной этой платы, безусловно, является возможность подключения, которая стала возможной благодаря радиомодулю u-blox NINA W102, недорогому и легко адаптируемому устройству.

Модуль также добавляет еще четыре аналоговых GPIO (RP2040 имеет только четыре аналоговых контакта), в результате чего общее количество до восьми, что соответствует другим платам Arduino Nano.

Радиомодуль, оснащенный встроенной антенной, основан на двухъядерном процессоре Xtensa LX6, который, в свою очередь, можно программировать независимо от RP2040 с помощью интерфейса SWD и специальных контактных площадок, расположенных на задней стороне платы.

На практике модуль NINA W102 использует тот же процессор, что и модуль ESP32, одна из самых популярных аппаратных платформ для производителей, наряду с Arduino и Raspberry Pi.

Светодиод RGB подключен к радиомодулю и может управляться с помощью той же библиотеки (WiFiNINA), разработанной для самого модуля.

Связь, используемая в приложениях IoT, требует высокой степени безопасности, чтобы сохранить согласованность передаваемых данных во всех рабочих условиях и предотвратить потенциальные атаки извне.

Для этого разработчики включили мощный криптографический сопроцессор Microchip ATECC608A, уже используемый на платах семейства Arduino MKR.

Криптографический сопроцессор, характеризующийся особенно низким энергопотреблением, обеспечивает поддержку безопасной загрузки, аппаратную поддержку асимметричной подписи, проверки, согласования ключей, аппаратную поддержку симметричных алгоритмов (SHA-256 и HMAC, AES-128) и работу в сети.

Сенсорное оборудование включает шестиосевой IMU ST LSM6DSOX, который сочетает в себе трехмерный акселерометр и трехмерный гироскоп со специальным ядром машинного обучения.

Компонент, предназначенный в основном для рынка мобильной связи, где постоянная работа требует особо низкого энергопотребления, предлагает следующие технические характеристики:

Трехмерный гироскоп;

Трехмерный акселерометр;

Расширенный шагомер, детектор шагов и счетчик шагов;

Обнаружение значительного движения, обнаружение наклона;

Стандартные прерывания: свободное падение, пробуждение, ориентация 6D / 4D, щелчок и двойной щелчок;

Программируемый конечный автомат: акселерометр, гироскоп и внешние датчики;

Ядро машинного обучения;

Встроенный датчик температуры.



Устройство можно легко запрограммировать с помощью специальной библиотеки Arduino LSM6DSOX.

Другой важный датчик - это всенаправленный цифровой микрофон, который можно использовать для активации звука, управления звуком и даже распознавания голоса.





Микрофон MP34DT05 улавливает и анализирует звук в реальном времени и может использоваться для создания голосового интерфейса для любого проекта.

ST MP34DT05-A - это сверхкомпактный, маломощный, всенаправленный цифровой МЭМС-микрофон с емкостным чувствительным элементом и интерфейсом IC. Чувствительный элемент, способный обнаруживать акустические волны, изготавливается с использованием процесса MEMS, в то время как интерфейс IC изготавливается с использованием процесса CMOS, который обеспечивает внешний цифровой сигнал в формате PDM.

MP34DT05-A - цифровой микрофон с низким уровнем искажений, отношением сигнал / шум 64 дБ и чувствительностью –26 дБ полной шкалы ± 3 дБ. Устройство можно запрограммировать с помощью специальной библиотеки Arduino PDM.

Что касается программируемых контактов ввода / вывода, на плате имеется восемь аналоговых входных контактов и 22 цифровых входа / выхода (из которых 20 могут быть сконфигурированы как генераторы ШИМ или как внешние прерывания).

Встроенный пользовательский светодиод также доступен на контакте 13.

На рисунке 4 показана полная распиновка платы Arduino Nano RP2040 Connect, которая также доступна с предварительно установленными контактами заголовка.

Расположение выводов хорошо организовано: все аналоговые выводы и выводы питания находятся на левом заголовке, а цифровые выводы - на правом. Как показано на рисунке 2, микроконтроллер RP2040 обеспечивает поддержку связи UART, SPI и I2C.

Распиновка платы Arduino Nano RP2040 Connect

Что касается приложений, Arduino Nano RP2040 Connect может быть адаптирован для широкого спектра сценариев использования, включая:

Граничные вычисления: TinyML можно использовать для обнаружения аномалий, обнаружения кашля, анализа жестов и многого другого.

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

Голосовой помощник: Arduino Nano RP2040 Connect включает в себя всенаправленный микрофон, который можно использовать в качестве персонального цифрового помощника, обеспечивая голосовое управление в различных проектах.

Arduino Nano RP2040 Connect на Алиэкспресс

Яков Кузнецов


Источник: http://electrik.info