Что такое Arduino?
Arduino – это платформа для прототипирования электроники с открытым исходным кодом, основанная на гибком, простом в использовании аппаратном и программном обеспечении. Она создана для художников, дизайнеров, инженеров, любителей и всех, кто хоть немного интересуется программируемой электроникой, созданием интерактивных объектов или сред.
Проекты Arduino могут быть автономными или общаться с программным обеспечением, запущенным на компьютере. Они могут общаться с другими Arduinos, Raspberry Pi, NodeMCU или почти чем-либо другим. Arduino измеряет данные окружающей среды, считывая данные с разных устройств, компонентов и датчиков. Они могут влиять на окружающую среду, управляя светодиодами, двигателями, сервоприводами, реле и многим другим.
Независимо от того, вы новичок, который только начинает работать с электроникой и встроенными системами, или профессиональный инженер, который планирует свой следующий крупный дизайнерский проект, Arduino имеет широкий выбор разнообразных плат, поэтому предложит вам именно такую, которая лучше отвечает вашим конкретным требованиям. Для любителей и инженеров платформа Arduino была и является идеальным местом для быстрого создания прототипов и проверки дизайна. Но большинство пользователей не может выйти за пределы популярных плат разработки Arduino, таких как Arduino UNO, Mega и т.д. Поэтому эта серия статей сосредоточена на том, чтобы представить все разные типы плат разработки Arduino и провести быстрое сравнение их функций и приложений.
Вы можете спросить, почему выбирать Arduino? Arduino действительно упрощает процесс создания проекта программируемой электроники, что делает его отличной платформой для начинающих. Вы можете легко начать работу над ним без опыта работы с электроникой. Есть тысячи доступных учебных пособий, и они разного уровня сложности, поэтому вы можете быть уверены, что сложность может быть намного повышена, когда овладеете основами.
Схемы для плат опубликованы по лицензии Creative Commons, поэтому опытные любители и другие производители могут создавать собственные версии Arduino, просто копируя или потенциально расширяя и улучшая стандартный функционал плат.
Давайте перечислим все имеющиеся официальные семейства плат Arduino:
1. Классическое семейство (Classic Family)
В классическом семействе вы найдете такие платы как легендарная Arduino UNO и другие классические платы, такие как Leonardo и Micro. Эти платы считаются основой проекта Arduino и пользуются успехом на протяжении многих лет (и дальше в будущем).
Платы микроконтроллеров:
Arduino UNO R4 Minima
Arduino UNO R4 WiFi
Arduino UNO R3
Arduino Leonardo
Arduino UNO Mini Limited Edition
Arduino Micro
Arduino Zero
Arduino UNO WiFi Rev2
Платы расширения:
Arduino Motor Shield Rev3
Arduino 4 Relay Shield
Arduino Ethernet Shield Rev2
2. Семейство Mega (Mega Family)
В семействе Mega вы найдете платы для проектов, требующих увеличенной вычислительной мощности и большего количества контактов GPIO.
Платы микроконтроллеров:
Arduino Mega 2560 Rev3
Arduino Due
Arduino GIGA R1 WiFi
3. Семейство MKR (MKR Family)
Семейство MKR – это серия плат, которые можно комбинировать для создания удивительных проектов без каких-либо дополнительных схем. Каждая плата оснащена радиомодулем (кроме MKR Zero), обеспечивающим связь Wi-Fi, Bluetooth®, LoRa®, Sigfox, NB-IoT. Все платы семейства основаны на 32-разрядном процессоре Cortex-M0 SAMD21 с низким энергопотреблением и оснащены криптографическим чипом для безопасной связи. Платы семейства MKR разработаны для работы с датчиками окружающей среды, GPS, Ethernet, управления двигателями, матрицей RGB и т.д.
Платы микроконтроллеров:
Arduino MKR 1000 WiFi
Arduino MKR WiFi 1010
Arduino MKR FOX 1200
Arduino MKR WAN 1300
Arduino MKR WAN 1310
Arduino MKR GSM 1400
Arduino MKR NB 1500
Arduino MKR Vidor 4000
Arduino MKR Zero
Платы расширения:
Arduino MKR ENV Shield Rev2
Arduino MKR GPS Shield
Arduino MKR IMU Shield
Arduino MKR RGB Shield
Arduino MKR THERM Shield
Arduino MKR ETH Shield
Arduino MKR 485 Shield
Arduino MKR CAN Shield
Arduino MKR MEM Shield
4. Семейство Nano (Nano Family)
Семейство Nano – это набор миниатюрных плат с множеством функций. Оно варьируется от недорогого базового Nano Every до многофункционального Nano 33 BLE Sense/Nano RP2040 Connect, которые имеют радиомодули Bluetooth®/Wi-Fi. Эти платы также имеют набор встроенных датчиков, таких как температура/влажность, давление, жесты, микрофон и т.д. Их также можно программировать с помощью MicroPython и поддерживают машинное обучение.
Платы микроконтроллеров:
Arduino Nano
Arduino Nano Every
Arduino Nano 33 BLE
Arduino Nano 33 BLE Sense
Arduino Nano ESP32
Arduino Nano 33 IoT
Arduino Nano RP2040 Connect
Именно детальному рассмотрению плат Nano Family и посвящена данная статья.
Сначала давайте посмотрим на положительные и отрицательные стороны семейства Arduino Nano.
Плюсы:
- Это отличная платформа для новичков. Одним из преимуществ Arduino в целом является огромное сообщество, стоящее за ней. Что бы вы ни хотели сделать, скорее всего, кто-то другой попробовал это первым. Есть бесчисленное количество блогов и сообщений на форумах, охватывающих все, что может представить начинающий мастер. Независимо от того, нужна ли вам помощь с кодом или подсказки по созданию правильной электронной схемы для сборки, пользователи Arduino со всего мира готовы помочь. На официальном сайте Arduino есть краткое руководство по началу работы с Nano (https://docs.arduino.cc/hardware/nano), а плату можно программировать непосредственно с вашего браузера с помощью веб-редактора Arduino (https://create.arduino.cc/editor).
- Маленький размер делает это семейство плат идеальным для компактных проектов.
- Функционально такие же, как и их большие собратья.
- Размещается на стандартной макетной плате, что облегчает создание прототипов. Arduino Nano имеет, казалось бы, небольшое, но значительное преимущество перед другими, более крупными платами Arduino. Поскольку она не страдает от такого же неравномерного расстояния между контактами, как в оригинальных дизайнах Arduino (то, что якобы ошибка в оригинальном файле дизайна), она подойдет на стандартную макетную плату. Это имеет очевидные преимущества. Независимо от того, вы только начинаете заниматься электроникой, является ли опытным "ветераном", способность работать таким образом позволит быстро создавать прототипы проектов без пайки или выполнения дизайна.
Минусы:
- Отсутствие встроенного подключения (только для Nano и Nano Every) ограничивает возможность использования в проектах Интернета вещей (IoT).
- Возможно ограниченный объем встроенной памяти может усложнить использование в сложных проектах.
Чтобы легче воспринимать возможности платы, мы разделим все платы на три основные категории:
- Платы начального уровня
- Платы с расширенными возможностями
- Платы для Интернета вещей
1. Платы начального уровня
Эти типы плат Arduino являются лучшим выбором для начала работ. В этой категории большинство плат имеют низкую тактовую частоту или ограниченное количество портов ввода/вывода. Все эти платы питаются от 8-разрядных микроконтроллеров. Большинство из них легко изучать и создавать проекты. Более того, на рынке доступны различные модули и платы расширения для них, особенно ориентированные на эти платы базового уровня.
1.1. Arduino Nano
Arduino Nano – это компактная версия Arduino UNO, то есть она имеет более или менее все функциональные возможности Arduino UNO, но в компактном форм-факторе. Единственными существенными отличиями от UNO является отсутствие разъема питания постоянного тока, использование порта Mini-B USB и микросхема преобразователя USB-TTL. Nano использует FT232, специальную микросхему моста USB-UART от FTDI вместо ATMega16U2. Поэтому это также очень популярный выбор среди разработчиков, как и UNO, из-за его небольшого размера и низкой цены. Это идеальный микроконтроллер для изучения электроники и программирования, а его размер делает его отличным для встраивания в проекты, требующие малого форм-фактора.
Основные параметры:
- MCU: ATmega328
- НАПРЯЖЕНИЕ I/O: 5 В
- ПАМЯТЬ: SRAM: 2 КБ / Flash: 32 КБ
Arduino Nano имеет 20 цифровых, 6 ШИМ и 8 аналоговых контактов. На данный момент Nano базируется на Atmel ATmega328P и впервые увидел свет в 2008 году.
Она программируется, как и следовало ожидать, через Arduino Software IDE.
Команда Arduino пишет: "Разработанный с мыслью о производителях, Nano представляет собой небольшое, мощное и доступное решение для ежедневных проектов. Сохраняя качество и надежность Arduino, они облегчают, чем когда-либо, воплощение ваших проектных идей в реальность. Они совместимы с классическими платами Arduino, имеют низкое энергопотребление и оснащены более мощными процессорами."
Arduino Nano – самый дешевый настоящий Arduino, который вы можете купить.
1.2. Arduino Nano Every
Arduino Nano Every – это плата нового поколения в малом форм-факторе. Как мы уже упомянули выше, Arduino Nano является лучшей платой для многих проектов, нуждающихся в небольшом и дешевом решении. Мы могли бы назвать Arduino Nano Every, обновленным Arduino Nano с гораздо большими функциями. Nano Every работает на более мощном процессоре ATMega4809. Она имеет на 50% больше памяти для программ и на 200% больше оперативной памяти, что позволит нам использовать эту плату для больших программ. Зубчатые отверстия позволяют использовать Nano Every на печатной плате без необходимости штифтов.
Лучшая базовая плата для беспроблемных IoT-проектов (но без функции беспроводной связи): маленькая, простая в использовании и по низкой цене – в классическом форм-факторе Nano! Идеально подходит для всех, от образования до робототехники: вы можете создать дверной замок RFID, систему домашней автоматизации или использовать микроконтроллер MIDI для создания музыки с помощью недорогого Nano.
Основные параметры:
- MCU: ATMega4809
- НАПРЯЖЕНИЕ I/O: 5 В
- ПАМЯТЬ: SRAM: 6 КБ / Flash: 48 КБ
Arduino Nano Every – идеальная плата для тех, кто любит работать с Arduino, но имеет ограниченный бюджет. Arduino Nano Every стоит почти половину цены оригинального Arduino Nano.
Nano Every имеет 22 цифровых, 5 ШИМ и 8 аналоговых контактов. Описанные как доступные, надежные, компактные и простые в программировании новые члены семейства Nano совместимы с классическими платами Arduino. Самый дешевый способ входа, как упоминалось выше, – через плату Every, которая базируется на микроконтроллере ATMega4809. Производители могут использовать его в основе макетной платы или припаянв к печатной плате, и он может заменить классический Nano, где проекты требуют немного больше режимов.
Arduino Nano является лучшей платой для многих проектов, нуждающихся в небольшой и легкой в использовании плате микроконтроллера. Небольшие размеры и низкая цена делают Nano Every особенно подходящим для носимых изобретений, недорогой робототехники, электронных музыкальных инструментов и общего использования для управления меньшими частями крупных проектов.
2. Платы с расширенными функциями
Платы Arduino в этой категории предназначены для проектов, где требуются расширенные функции и высокая производительность..
2.1. Arduino Nano 33 BLE
Nano 33 BLE – это более мощная плата от Arduino в том же форм-факторе, что и популярная Arduino Nano. Несмотря на тот же размер, она мощнее Nano. Она питается от более совершенного NRF52480 от Nordic Semiconductors, 32-разрядного процессора ARM Cortex-M4, работающего на частоте 64 МГц. Больший размер флэш-памяти на 1 МБ и SRAM на 256 КБ делают ее лучшим выбором там, где требуется много памяти. Главная особенность этой платы есть в самом названии – BLE, Bluetooth Low Energy. Nano 33BLE может быть как клиентом BLE, так и хост (главным) Bluetooth устройством. В эту эпоху, когда все связано, этот функционал позволит разрабатывать энергосберегающие носители.
Самая компактная плата Arduino с Bluetooth® и Bluetooth® Low Energy и встроенным инерционным датчиком для научных экспериментов, требующих беспроводной связи на коротком расстоянии.
Основные параметры:
- MCU: nRF52840/u-blox® NINA-B306 (Bluetooth®)
- НАПРЯЖЕНИЕ I/O: 3,3 В
- ПАМЯТЬ: SRAM: 256 КБ / Flash: 1 МБ
- БОРТОВЫЙ ДАТЧИК: IMU
Nano 33 BLE снабжается 9-осевым инерциальным измерительным блоком (IMU), что означает, что она содержит акселерометр, гироскоп и магнитометр с разрешением по 3 осям каждый. Это делает Nano 33 BLE идеальным выбором для более продвинутых робототехнических проектов, обучающих трекеров, цифровых компасов и т.д.
Если вы использовали Arduino Nano в своих проектах, Nano 33 BLE является эквивалентной заменой. Ваш код все еще будет работать, но помните, что он работает при напряжении 3,3 В. Это означает, что вам нужно просмотреть свой оригинальный дизайн, если он не совместим с 3,3 В. Кроме того, основными отличиями от классического Nano есть лучший процессор, разъем micro-USB и, как уже упоминалось, 9-осевой IMU.
2.2. Arduino Nano 33 BLE Sense Rev2
Также доступен другой вариант Nana33 BLE под названием Arduino Nano 33 BLE Sense (Rev 2) с некоторыми дополнительными датчиками на борту. К примеру, 9-осевой инерционный датчик, датчик влажности и температуры, барометрический датчик, микрофон, датчик жестов, приближения, светового цвета и интенсивности света.
Arduino Nano 33 BLE Sense имеет те же функции Bluetooth, что и Nano 33 BLE.
BLE Sense оснащен набором встроенных датчиков:
- 9-осевой инерционный датчик делает эту плату идеальной для портативных устройств.
- Датчики влажности и температуры могут использоваться для очень точных измерений условий окружающей среды.
- Барометрический датчик, позволяющий сделать простую метеостанцию.
- Микрофон для захвата и анализа звука в реальном времени.
- Датчик жестов, приближения, цвета и света и интенсивность света. Благодаря этому вы сможете в своих проектах оценить освещенность комнаты, а также то, двигается ли кто-то у платы.
Arduino Nano 33 BLE Sense Rev2 – это плата Arduino с поддержкой искусственного интеллекта, поэтому главной особенностью этой платы, помимо впечатляющего выбора датчиков, есть возможность запускать на ней программы Edge Computing (AI) с помощью TinyML. Вы можете создавать свои модели машинного обучения с помощью TensorFlow Lite и отправлять их на свою плату с помощью Arduino IDE.
С Arduino Nano 33 BLE Sense Rev2 вы можете создавать:
- носимые устройства, которые с помощью ИИ могут распознавать движения.
- устройство мониторинга комнатной температуры, которое может предлагать или изменять изменения в термостате.
- устройство распознавания жестов или голоса, используя микрофон или датчик жестов вместе с возможностями ИИ на доске.
Узнайте, как пользоваться библиотекой Tensor Flow Lite, следуя этим инструккциям, или узнайте, как обучить свою плату с помощью Edge Impulse.
3. Платы для Интернета вещей (IoT)
Сегодня многие продукты, которые мы используем, поддерживают IoT от простого коммутатора до всех бытовых приборов. Типы плат Arduino, которые мы собираемся рассмотреть, разработаны для таких приложений. Давайте посмотрим, что это за платы в семействе Arduino Nano и в чем их особенности.
3.1. Arduino Nano ESP32
Эта плата сочетает в себе всю мощность хорошо известного ESP32-S3 с полной поддержкой экосистемы Arduino, что позволяет производителям исследовать мир Arduino и MicroPython без осложнений. Просто раскройте свой творческий потенциал и начните строить следующий проект IoT.
Основные параметры:
- MCU: ESP32-S3
- НАПРЯЖЕНИЕ I/O: 3,3 В
- ПАМЯТЬ: SRAM: 512 КБ / Flash: 16 МБ
Ключевые особенности Nano ESP32:
- Компактный размер: разработанная с учетом форм-фактора Nano, компактный размер этой платы делает ее идеальной для встраивания в отдельные проекты.
- Wi-Fi® и Bluetooth®: используйте мощность микроконтроллера ESP32-S3, хорошо известного в сфере Интернета вещей, с полной поддержкой Arduino для беспроводной связи и Bluetooth®.
- Поддержка Arduino и MicroPython: легко переключайтесь между программированием Arduino и MicroPython с помощью простых шагов. Дополнительную информацию можно найти на https://docs.arduino.cc/tutorials/nano-esp32/getting-started-nano-esp32.
- Совместимость с Arduino IoT Cloud: быстро и легко создавайте проекты IoT с помощью нескольких строк кода. Стандартные настройки заботятся о безопасности, позволяя вам отслеживать и контролировать свой проект из любого места с помощью программы Arduino IoT Cloud app. (Доступно с августа 2023 г.)
- Поддержка HID: эмулируйте устройства человеческого интерфейса, такие как клавиатуры или мыши через USB, открывая новые возможности для взаимодействия с компьютером.
3.2. Arduino Nano 33 IoT
Как следует из названия, эта плата имеет тот же форм-фактор, что и Nano. Плата питается от маломощного 32-разрядного ARM Cortex M0, Atmel SAMD21. Подключение WiFi и Bluetooth производится с помощью модуля u-blox NINA-W102. Плата также оснащена крипточипом Microchip ECC60r, который обеспечивает безопасную связь. Кроме того, встроенный 6 aixs IMU позволяет использовать плату в проектах, требующих или реализующих такие функции, как вибрационный сигнал, балансировка шагомера и относительное позиционирование. Эта плата также совместима с большинством облачных сервисов IoT, таких как Arduino IoT Cloud, Blynk, IFTTT, AWS IoT Core, Azure, Firebase и т.д. Arduino Nano 33 IoT – это очень интересная плата для проектов IoT.
Эта плата пригодится, если вы планируете создать свой собственный автоматизированный дом, интерактивную игру или умный сад, автоматическую кормушку для домашних животных, умный детектор парковки для легкого авто или управление потреблением энергии дома.
Основные параметры:
- MCU: SAMD21 Arm® Cortex®-M0+/u-blox® NINA-W102 (Wi-Fi® и Bluetooth®)
- НАПРЯЖЕНИЕ I/O: 3,3 В
- ПАМЯТЬ: SRAM: 256 КБ / Flash: 1 МБ
- БОРТОВЫЙ ДАТЧИК: IMU
С Arduino Nano 33 IoT мир IoT (Интернета вещей) становится намного доступнее. Эту плату Arduino можно программировать в Arduino Create. Когда вы сделаете это, вы можете создать информационную панель в облаке Arduino IoT, где вы сможете читать все данные с датчиков. С этой панели можно управлять освещением или приводами, например, с помощью виртуальной кнопки. Arduino Nano 33 IoT имеет встроенный модуль WiFi и BLE, чтобы вы могли легко подключить свой проект беспроводным способом.
Nano Every имеет 22 цифровых, 11 ШИМ и 8 аналоговых контактов.
3.3. Nano RP2040 Connect
И последняя, но не менее важная, Arduino Nano RP2040 Connect – новейшее дополнение к семейству Arduino. Она содержит довольно популярный первый собственный чип Raspberry Foundation, RP2040. RP2040 – это двухъядерный ARM Cortex M0+ SoC, работающий на частоте 133 МГц и имеющий 264 КБ SRAM и 16 МБ внешней флеш-памяти. На плате есть NINA-W102 для подключения Wi-Fi и BLE, имеется встроенный микрофон для активации звука, управления звуком и даже распознавания голоса. На борту также есть 6-осевой IMU. Плата также совместима с RPi Pico.
Arduino Nano RP2040 Connect позволяет создать ваш следующий разумный проект. Вы когда-нибудь хотели иметь автоматизированный дом? Или умный сад? Что ж, теперь это легко с платами, совместимыми с Arduino IoT Cloud. Это означает, что вы можете подключать устройства, визуализировать данные, контролировать и делиться своими проектами из любой точки мира. Независимо от того, новичок вы или профессионал, у нас есть широкий выбор планов, чтобы гарантировать, что вы получите нужные вам функции.
Arduino Nano RP2040 Connect – это премиальный выбор для устройств RP2040 и идеальный вариант для обновления ваших проектов и раскрытия потенциала новых.
Основные особенности:
- Радиомодуль u-blox NINA-W102 делает это единственной подключенной опцией RP2040. Он обеспечивает полное подключение Wi-Fi 802.11b/g/n, а также Bluetooth® и Bluetooth® Low Energy v4.2
- На этой крохотной плате размещена пара очень полезных датчиков. Имеется встроенный микрофон для включения звука, управления звуком и даже распознавания голоса AI. Шестиосный интеллектуальный IMU с возможностями искусственного интеллекта сообщает доске, в каком направлении она двигается, и добавляет датчик падения и активацию двойным прикосновением.
- Благодаря 16 МБ флэш-памяти, внешней по отношению к микропроцессору, есть много места для вашего кода и потребностей в хранилище.
- Программируемые контакты ввода/вывода имеют функции, о которых большие платы только мечтают; 22 цифровых, 18 с ШИМ и 8 аналоговых.
- Совместим с Raspberry Pi® Pico. Он полностью поддерживает всю программную экосистему RP2040.
- Поддерживает язык программирования Arduino, IDE 2.0 и все добавленные библиотеки.
- Полная поддержка MicroPython. Nano RP2040 Connect идет с БЕСПЛАТНОЙ лицензией OpenMV для проектов машинного зрения.
Программируйте и управляйте Nano RP2040 Connect непосредственно с веб-браузера. Скачайте эскизы по беспроводной связи с помощью мгновенного дистанционного управления с бесплатной программы для смартфона Arduino IoT Remote.
Основные параметры:
- MCU: Raspberry Pi RP2040/u-blox® NINA-W102 (Wi-Fi® и Bluetooth®)
- НАПРЯЖЕНИЕ I/O: 3,3 В
- ПАМЯТЬ: SRAM: 264 kB / Flash: 16 MB IC
- БОРТОВЫЙ ДАТЧИК: IMU / Микрофон
Заключение
Мы надеемся, что теперь вы лучше разобрались в различных платах Arduino и их особенностях. Итак, какой именно Arduino – самый лучший для вас, полностью будет зависеть от ваших потребностей. Если вы новичок или выполняете проекты, не требующие большой вычислительной мощности или встроенной связи, вы можете выбрать базовые Nano, поскольку они дешевы и просты в программировании. Если вам требуется более совершенная плата, вы можете выбрать одну из приведенных выше, в зависимости от ваших требований.
Ну а для облегчения выбора, можете воспользоваться этой таблицей, сравнивающей все вышеприведенные модели: