Поиск

Рекомендовать

Календарь

Ноябрь 2018
ПнВтСрЧтПтСбВс
   1234
567891011
12131415161718
19202122232425
2627282930  

Кто на сайте?

Сейчас на сайте находятся:
 2 гостей 

Счетчик

Сегодня11
Вчера37
За эту неделю187
За этот месяц92
Всего104851
Главная Автоматика Контроллеры Arduino Разновидности плат Arduino
Баннер

Разновидности плат Arduino

 

1-¯-250x250

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

Ниже обо всех нюансах, подробно и с картинками. Для тех кому лень читать, озвучу важный вывод с некоторым опережением. Все «размеры» и разновидности ардуино-плат абсолютно совместимы друг с другом — если вас заинтересовал проект на ArduinoNano — ничто вам не помешает реализовать его на обычной Arduino(Freeduino) или ArduinoMega(SeeduinoMega), причём ни в коде ни в схеме переделывать ничего не придётся. Можно и наоборот, например, с «меги» на "мини" — лишь бы выводов/памяти хватило (часто в проектах применяются откровенно избыточные платы), изучайте характеристики. Так же никакой разницы нет в выборе конкретной платы внутри размерного ряда — берём проект для ArduinoDiecimila(DFRduino) и спокойно делаем его на UNO(CraftDuino) и наооборот! Тем более нет НИКАКОЙ принципиальной разницы, кто сделал эту плату и как она называется — это не айфон — качественно можно собрать такую плату и в подвале. Как, известно ардуино придумали в Италии, оригинальные платы там и делают. С них и начнём.

Оригинальные платы Arduino.


Сами итальянцы выпускают плату в нескольких основных форм-факторах:
Arduino xxx — стандартный размер, 20входо-выходов, полная совместимость со всеми шилдами.
ArduinoMega xxx — увеличенный размер, 70входо-выходов, совместимость не со всеми шилдами.
ArduinoNano xxx — уменьшеный размер, 22входо-выхода, не совместима с шилдами.
ArduinoMini ххх — ещё меньший размер, 20входо-выхоов, не совместима с шилдами, не имеет USB.

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


Arduino xxx
Разновидности плат Arduino
Стандартный и самый распространённый размер. Когда говорят «ардуина» («обычная ардуина») — обычно все сразу представляют именно такие платы.
Самые первые платы были в этом этом форм-факторе, соответственно именно он пережил больше всего реинкорнаций (USB-версии в хронологическом порядке выхода):
Extreme, NG, Diecimila, Duemilanove, Uno, Leonardo.
Вы не поверите, но ощутимая разница для пользователя наблюдается только в Леонардо=))
Сейчас на оф. сайте предлагается к покупке только Leonardo и Uno, однако интернет завален вариантами Duemilanove (наша CraftDuino именно её разновидность=) и не зря — всё что нужно среднему пользователю было воплощено ещё в Arduino Extreme, с тех пор поменялось крайне мало=)
Все эти платы имеют одинаковое количество входов-выходов, собранных на одинаковые разъёмы (для подключения перефирии и шилдов), программируются по USB, и имеют микроконтроллер ATMega на борту. На ранних версиях стоял ATMega8, потом стали ставить ATMega168, потом ATMega328.

На «восьмёрке» только 3 ШИМ выхода, 8Кб под скетч 1Кб оперативки, но для многих приложений хватает=) У ATMega168 уже 6 ШИМ каналов и 16Кб под ваши нужды, а у 328-й 32Кб под программы и уже 2Кб оперативки. Кстати не вся флеш-память доступна пользователю, часть её занимает бутлоадер.

На всех платах до UNO стоял чип-преобразователь USB-UART FT232, позволяющий втыкать плату прямо в USB и программировать без программатора. При втыкании в системе появлялся виртуальный COM-порт, который и используется средой разработки Ардуино для программирования.

Arduino UNO

Atmega8U2
На UNO решили заменить хардварный преобразователя USB-UART, на микроконтроллер Atmega8U2 (в более поздних ревизиях 16U2)- в него залита специальная прошивка, делающая ровно то же что и FT232.
Что это дало?
Поднялась скорость прошивки — теперь вместо ~10секунд надо ждать ~3c =)
А главное, в этот МК-конвертор можно залить свою прошивку, и превратить ардуино в мышку, клавиатуру или миди устройство… наверняка кому-то это очень надо=)
Только делается это как-то не очень по-ардуиновски, и примеров пока крайне мало=( ИМХО, фича, совсем не для начинающих.Atmega8U2/16U2
Так что, если ваша цель изменение протокола обмена платы и компа, вы хотите делать трушную клаву-мышь-МИДИдевайс ( вот, кстати, «не трушный» миди-пульт, на самой обычной ардуине=) тогда конечно вам нужна именно UNO. И если вам предстоит писать обьёмную прошивку для этого (использовать исходники большого обьёма), тогда нужно искать последнюю ревизию UNO — с Atmega16U2 (у неё в два раза больше памяти программ)
Да, тут ещё стоит оговориться — эта Atmega8U2/16U2 на самом деле делает не ровно то же, что FT232, она не реализует очень удобной фичи — BitBang-а, так что превратить плату в программатор таким нехитрым образом уже не получится.
Но всё же можно.

«стандарт» arduino 1.0 pinout

Ещё зоркие должны были заметить появление новых пинов на разъёмах UNO. Ага, появились — на «верхнем левом» коннекторе — SDA и SCL — пины интерфейса i2c, но они дублирующие (SDA и SCL и так сидят на 4 и 5 аналоговых входах) и функционал это не расширяет. Плюс «нижний левый» коннектор подрос, то же на 2 пина — резервный и IOREF. Резервный пин болтается в воздухе — никуда не подключен, а на IOREF глухо засажен на 5 вольт (схема). Когда-нибудь это всё, наверное пригодится… а на данный момент — старые шилды встают в UNO, как родные, новые шилды (коих пока крайне мало 1, 2 3 4 ), полностью совместимы со старыми платам хотя и грозят уткнуться в неё новыми пинами — их, возможно, придётся подогнуть или откусить.
Резюмируя моё сугубо личное мнение — нет никаких поводов гоняться именно и только за UNO, кроме случая когда вы собираетесь переписать прошивку USB-UART конвертора, а если вы не знаете что это — то вам точно нет никакой необходимости именно в уне=)
Тут всё то же про уну но по-короче=)

Arduino Leonardo

Arduino Leonardo

Вот это действительно шаг вперёд — всё на одном чипе, USB независим ни от UART ни вообще от каких бы то ни было пинов!
Итак, плата построена на ATmega32u4 и по сравнению с предыдущими моделями прокачалась.
На 0,5кБ увеличилась оперативка, ШИМ-выходов стало на 1 больше, аналоговых входов стало 12 (6 сидят где у всех Ардуино-плат, новые +6 разбросаны по цифровым пинам) и, как уже говорилось, разделены USB и UART.
Так же незатейливо поддерживаются, не только виртуальный ком порт, но и мышь и клавиатура, гораздо проще чем это реализовано в UNO.
Ну и, конечно, разъём micro-USB=)
Правда «шаг вперёд» вышел с нюансами — долго боролись с разнообразными глюками и затягивали выход, пара всё-таки осталась (функции tone и attachInterrupt), к тому же бутлоадер теперь занимает 4кб! А ещё в любой скетч для леонардо пихается поддержка USB — blink для Duemilanove/UNO займёт 1084 байт, а для Leonardo — 4858 байт=\
Физически леонардо имеет ту же разводку что и UNO, так что так же совместим со старыми шилдами.

Arduino Mega xxx


Серия прокачанных плат (по размеру и характеристикам) представлена моделями (в хронологическом порядке): Mega, Mega2560 и Arduino ADK.

Arduino Mega
В платы успешно втыкаются почти все шилды, но из-за разного (с «обычными» ардуинами) расположения выводов SPI-интерфейса, шилды использующие его с цифровых пинов 11,12,13 будут не совместимы. Пример — старый эзернет шилд. На новом SPI берётся со стандартной вилки ISP и всё отлично работает и на «мегах», и на «обычных» дуинах.
На платах куча выводов:
54 цифровых Arduino Mega 2560 R3
из них 15 — с ШИМ
16 — аналоговых,
Куча памяти:
128/256кб — флэш,
8кб оперативки,
4кб еепрома
и целых 4 хардварных UART-а!Arduino ADK


«Мега» построена на ATmega1280, а «2560» и «ADK» на ATmega2560, поэтому различаются платы обьёмом памяти, к тому же у свежих — 2560 и ADK — USB-часть выполнена на ATmega8U2 (на более поздних ревизиях 2560 — на ATmega16U2), тут всё как у УНО.
А у ADK ещё и USB-host имеется, от которого ожидается большая дружба с Android-телефонами=)

Arduino Nano

Arduino Nano


Маленькая платка с mini-USB. Шилды к ней не подходят, но сама она удобно втыкается в макетку.
Ранние версии использовали ATmega168, сейчас стоят 328.
Â В качестве USB-UART моста стоят FT232.

Arduino Mini

Arduino Mini
Ещё меньшая плата. (Да-да, именно, тут какой-то исторический ляп — ардуино мини, почему-то значительно меньше ардуино нано=)
Пережила несколько версий — имеющих незначительные отличия в назначении некторых выводов.
С шилдами не совместима, но удобна для встраивания в законченные девайсы — ничего лишнего. Ардуино мини


На мини нет USB — программируется она с помощью переходника USB-Serial (например на базе той же FT232).
Так же на плате стоит весьма маломощный стабилизатор, а из светодиодов — только индикатор питания и то на последних версиях=).
Есть варианты платы работающие на 3,3В и 8МГц, раньше ставили ATmega168, сейчас стоят 328.

Тээкс, разобрались с итальянскими оригиналами, пройдёмся по творчеству остальных ардуино-делов.

Проект ардуно — полностью открытый (доступна вся техническая документация необходимая для производства) и платы благополучно копируют и творчески перерабатывают все кому не лень=)
Ограничение касается только названия «Arduino» — его нельзя использовать для обзывания не итальянских плат (китайцы, естественно, плевали=) поэтому более законопослушные производители изгаляются с производными, много уже напридумали, кстати=)

Всё, что наплодили неитальянцы, можно условно разделить на три группы: «клоны», «совместимые» и «ардуино-подобные».

Клоны Arduino

FreeduinoDFRduinoChinduino

Тут всё просто — берём документацию с сайта ардуино и тупо сдаём на производство, при желании изменив цвет маски и название (некоторые китайцы не желают=) 
Такие платы («клоны») полностью повторяют ардуину и полностью совместимы с ней. То есть, разница между клоном и оригиналом — только в производителе (+иногда в цвете=) — соответственно различия могут быть только в качестве сборки, качестве компонентов, строгости выходного контроля. С качеством — всё на совести производителя/продавца и на ваше эстетическое восприятие/везение.
В целом, повторюсь — не айфон, никаких космических технологий для сборки таких плат не нужно, и обеспечить достойное качество вполне может средний китайский подвал=) ИМХО за оригиналом гоняться особого смысла нет.
 Да, чуть не забыл, у оригинальных плат в комплекте коробочка из тонкого, экологически чистого, цветного картона. И брошюрка с заверениями об экологичности и протестированности платы, а также повествующая, о том, что производители отказываются нести ответственность за использование платы в аэрокосмических/автомобильных/военных/ядерных/медицинских целях.

Arduino - Совместимые

FreeduinoDiavolino

eleven-obliqueSeeeduinoНекоторые, наверное, более сознательные товарищи, пошли не путём копирования, а решили что-то добавить в проект (помимо своего названия и цвета маски) и повыдумывали ворох своих плат полностью совместимых с ардуино — условно их можно назвать «совместимыми переработками» (переосмысленим=)

Например:
FreeduinoJapanino
Freetronics Eleven
Seeeduino
CraftDuino
Diavolino
Japanino
и ещё многие-многие=)
Как правило доработки и переработки носят довольно эстетический характер (не несут принципиальных изменений функционала или характеристик) иначе платы потеряли бы совместимость. Обычно это дополнительные разъёмы, ArduinoProдругое расположение светодиодов и кнопок, своя разводка, применение других компонентов (в других корпусах, других размеров), другие схемы питания, сброса, USB-части.
Повторюсь, этот класс плат полностью совместим с ардуино — и шилды можно втыкать и с ИДЕ работают как родные. Ярчайший пример — указанные на оф. сайте у итальянцев плfта ArduinoPro (упрощена схема питания и убрана USB-часть) на самом деле их придумали и делает Sparkfun=)
Естественно, основным размером плат не ограничиваются — есть версии и мини- и нано- и мега- совместимых переработок, правда в этих случаях совместимость не такая уж важная вещь.

Тут я всё талдычу совместимо-несовместимо, пора уточнить что имеется ввиду.
Совместимость с ардуино складывается из двух вещей:

1.Совместимости с платами расширениями — шилдами. Для этого расположение и вид разъёмов должен быть как на итальянской Arduino Duemilanove/UNO. Так, например, самая что ни на есть итальянская-оригинальная «Нано» с шилдами не совместима=)
Естественно провода и скотч никто не отменял — соединить можно что угодно=)

2.Програмная совместимость. (программная часть проекта ардуино — это среда разработки(ИДЕ), библиотеки и скетчи)
На платах ардуино установлены микроконтроллеры фирмы Atmel, семейства ATMega — ATMega8/168/328 — на всех кроме Мега(ATMega1280/2560) и Леонардо(ATMega32U4).
Обычно тактируются эти МК кварцевым резонатором на 16МГц (Реже 8МГц)
Питаются МК на платах от (реже 3,3В)
Загрузка скетчей происходит через бутлоадер(специальная программа-загрузчик заранее прошитая в МК), хотя в последних версиях среды появилась опция прошивки скетча через программатор, так что это уже, пожалуй, не критерий=)
Так вот, ЛЮБАЯ плата удовлетворяющая перечисленным условиям (Тип контроллера, частота, напряжение питания, наличие бутлоадера) сможет использовать все наработки сообщества Arduino — и скетчи, и библиотеки, и писать всё это можно будет в той же среде Arduino, и загружать оттуда же.
При наличии прямых рук, можно подпилить библиотеки для использования не в среде ардуино или среду для использования плат с нехарактерными МК или частотами их работы. Но вроде как у нас тут начинающие рассматриваются — какие правки среды и библиотек?!
Так что будем считать программно совместимыми только те платы, которые корректно заработают без всяких допиливаний.



Ардуино-подобные
Некоторые идут дальше и вносят более существенные изменения теряя совместимость (с шилдами) такие платы можно назвать ардуино-подобными.

К ним можно смело отнести, расположенные в официальном зоопарке:
ArduinoFio — плата для портативных устройств с питанием от литиевых батарей.
LilyPadLilyPad — круглая плата для «электронной одежды» ArduinoProMini
ProMini, значительно отличающаюсяя версия ардуино мини.
Всех их, тоже выдумал и клепает Sparkfun=)



Менее известные общественности примеры — древняя Roboduino — плата для управления кучей сервоприводов. Несмотря на общие с ардуиной очертания — шилды в неё втыкать не выйдет, да и не предполагалось=)
roboduino
Менее похожая на родоначальника Rainbowduino, — для управления светодиодными матрицами,
Rainbowduinoи ни на что не похожая гибкая версия Seeeduino Film от Seeedstudio.
film

Или вот ещё мегакомбайн-всё-в-одном DINo Internet Ethernet IO board тоже совместим лишь программно.
arduino_internet
Собственно, как мы уже сказали, ардуино-подобной может считаться (и является) любая плата с ATMega8/168/328/32U4/1280/2560, 16/8Мгц, 5/3,3В, так что в этом месте классификация/перечесление срывается в бесконечность=)


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


 

Добавить комментарий


Защитный код
Обновить