Какой контроллер Arduino выбрать

Очень часто новички задаются вопросом, какой купить контроллер, чем они отличаются, и где их лучше покупать. Тем более что разновидностей контроллеров довольно большое количество. В этой статье постараемся простым языком рассказать о вариантах контроллеров и их аналогах.
Но прежде, самый частый вопрос: чем отличаются контроллеры итальянский, российский, китайский, оригинал, копия, подделка?
Платформа Arduino является открытой. Это значит, что любой может взять файлы с официального сайта и произвести точно такой же контроллер как оригинал или доработать его и выпустить свой контроллер с любыми изменениями. Получается любой абсолютно легально может выпускать свои контроллеры. Например, таким образом мы выпускаем контроллеры Smart Uno и Smart Leonardo, которые собираются в России, с контролем качества и расширенной гарантией, и ничем не уступающие своим итальянским аналогам. Или контроллеры Smart Nano, которые мы немного доработали, чтобы ими было удобнее пользоваться. Например, заменили USB разъём на более простой и популярный USB micro. Но доработки и качество сборки плат бывают разными. Например, очень много китайских производителей для удешевления производства используют свои китайские USB-преобразователи, и тогда подключение контроллера к компьютеру может вызвать большие трудности. Довольно часто заменяется и сам микроконтроллер на более дешёвый аналог, что может привести к полностью нерабочей плате. Не забывайте обращать внимание и на качество сборки, потому как некоторые производители зачастую могут что-то не установить на плату, выпустить с повреждёнными элементами. Обращайте внимание на цену - качественный контроллер не может стоить очень дешево.
Ассортимент контролеров Arduino часто пугает новичков, и ставит перед выбором много вопросов. Давайте попробуем разобраться какой контроллер для каких задач нужен, чтобы выбор контроллера стал более понятен.
Arduino Uno (Smart Uno). Это, можно сказать, стандарт линейки контролеров Arduino. Для него написано много скетчей, и в интернете можно найти огромное количество проектов. Он является самым простым и понятным для новичков, потому как многие обучающие наборы (в том числе линейка наборов "Смарт") построены на применении именно этого контроллера. Контроллер поддерживает все базовые интерфейсы (UART, I2C, SPI). Плата легко подключается к компьютеру с помощью USB-кабеля - что тоже является дополнительным удобством работы с контроллером. В основном памяти и мощности чипа достаточно для выполнения относительно простых и распространённых задач.
Итак, контроллер Uno:
  • прост в использовании
  • подходит для повседневных распространённых задач
  • имеет все базовые интерфейсы
Arduino Leonardo (Smart Leonardo). Leonardo отличается в первую очередь от предыдущей платы чипом, на котором он построен. Чип ATmega32u4 имеет встроенную USB-связь, что устраняет необходимость во вторичном преобразователе. Это позволяет Leonardo отображаться на подключенном компьютере в виде мыши и клавиатуры в дополнение к виртуальному последовательному COM-порту, а при прошивке контролера не занимает выводы 0 и 1. Также плата поддерживает большее количество аналоговых входов.
  • подойдёт для небольших проектов
  • большее количество аналоговых входов
  • имеет встроенную USB-связь
Arduino Nano (Smart Nano). Данные контроллеры очень похожи по функционалу на линейку Uno, ведь построены платы на одном и том же контроллере (ATmega328P). Основное отличие плат Nano - в их формфакторе - такие платы намного меньше по размеру, что делает удобным размещение их в малых корпусах, либо в местах где есть ограничение пространства. Также платы имеют выводы (ножки) типа "папа" - что удобно для размещения на беспаечных макетных платах.
Подводя итог:
  • похож по функциям на Uno
  • плата небольшого размера
  • удобен для макетных плат
Arduino Mini. Уже по названию можно понять, что основное отличие данного типа контроллеров - в миниатюрности платы. Специально создан для небольших мест, куда требуется уместить много всего. Контроллер, опять же, очень напоминает Uno, ведь он построен на чипе ATmega328P. Однако, данная плата, не имеет встроенного USB-TTL конвертера, или говоря более простыми словами, не может подключиться к компьютеру напрямую через-USB кабель. Для программирования контроллера, потребуется приобрести отдельно USB-TTL конвертер, который и будет являться соединяющим звеном между контроллером и компьютером. Обратите внимание, что основная версия данного типа плат не имеет "ножек", к которым можно подключать внешнюю периферию. Поэтому, если вы приобретаете данный вид контроллера, вам нужно обладать паяльником.
Итак, что нужно знать перед покупкой:
  • миниатюрный размер платы
  • невозможно напрямую подключить к USB порту компьютера
  • нужно припаивать "ножки" самому
Arduino Micro (Pro Micro). Форм фактор платы напоминает по размерам предыдущие две. Но в отличие от них является аналогом платы Leonardo. Отсюда и все преимущества Leonardo, но в миниатюрном корпусе.  То есть он также имеет встроенную USB-связь, что устраняет необходимость во вторичном преобразователе. Это позволяет отображаться на подключенном компьютере в виде мыши и клавиатуры в дополнение к виртуальному последовательному COM-порту, а при прошивке контролера не занимает выводы 0 и 1. Плата также поддерживает большее количество аналоговых входов.
  • имеет миниатюрный размер платы
  • есть USB выход
  • встроенная USB-связь
Arduino Mega (Smart Mega). Здесь тоже название говорит о назначении. Данная плата имеет очень большое количество выводов - сюда можно подключить намного больше внешних устройств. У микроконтроллера намного больше мощности и памяти, что позволяет выполнять уже более сложные и нетривиальные задачи. Основные интерфейсы (UART, I2C, SPI) имеются в нескольких вариантах. Это также является большим плюсом для подключения внешней периферии. Однако, по-размеру, данная плата больше, что может послужить минусом для проектов, требовательных к размерам.
Запомним:
  • большой размер платы
  • микроконтроллер намного мощнее
  • намного больше выводов для подключения внешних устройств
Arduino Due. Пожалуй, одна из самых мощных контроллерных плат из всей линейки Arduino. Имеет самый мощный из вышеперечисленных контроллеров, обладающий большой тактовой частотой и памятью. Подойдёт для крупных и сложных Arduino-проектов. Будьте внимательны, в отличие от большинства плат, пины данного контроллера работают на 3.3 В. Подача на вывод 5В может повредить контроллер.
Сводно:
  • плата большого размера
  • самой мощный микроконтроллер линейки
  • выводы поддерживают только 3.3 В