Шилд что это такое
Перейти к содержимому

Шилд что это такое

  • автор:

Обзор шилдов Ардуино

Обзор шилдов Ардуино

Вначале стоит понять, о чем вообще пойдет речь, а вернее о том, что такое в сущности Arduino и при чем тут shield (в переводе с английского – щит).

Назначение устройства

Arduino UNO

Ардуино – во всех его модификациях UNO, NANO, MEGA и прочих – достаточно сложный контроллер по своим возможностям, скорее напоминающий полноценный компьютер. Arduino UNO

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

Сборка Arduino с несколькими shield

В своей основе, Ардуино – универсальный контроллер, в возможностях которого множество функций, выполняющих не только подачу управляющих сигналов, но и обработку обратной связи от датчиков, с использованием программного обеспечения, написанного начинающими или опытными специалистами. Сборка Arduino с несколькими shield

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

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

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

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

Рассмотрим наиболее популярные схемы шилдов Ардуино.

Gprs shield от «Амперки»

GPRS Shield

GPRS Shield

Устанавливается шилд на Ардуино и работает с ней в комплексе. Плата оснащена разъемом сим-карты, местом установки аккумулятора CR1225 для часов реального времени и точкой подключения съемной антенны GSM связи. Последнюю можно позже заменить на более мощную.

Основное предназначение у платы – соединение Ардуино с пользователем посредством сотовой связи.

Шилд хранения файлов

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

Основная направленность шилда – обеспечивать интерфейс между контроллером и SD картой хранения данных. Запись и чтение устройством поддерживается в распространенных файловых системах FAT12 и FAT32.

Шилд хранения файлов

Шилд хранения файлов

Младшая модель и ее схема

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

Shield, управляющий мощной нагрузкой

Shield управляющий мощной нагрузкой

Конечно, требовательность коммутируемых устройств здесь не превышает 220В при 5А постоянного тока, но можно подключить к выходам магнитные пускатели, с помощью которых уже управлять гораздо более мощным оборудованием. Shield, управляющий мощной нагрузкой

Понимание принципов платы расширения и управляющих сигналов Arduino можно определить по схеме устройства:

Схема платы расширения Arduino

ICStation 8 Channel EL Escudo Dos Shield for Arduino

К сожалению, описанное устройство не может коммутировать сети переменного тока. Для этого используется посредник, подключаемый далее – ICStation 8 Channel EL Escudo Dos Shield for Arduino. Это семисторный вид шилдов Arduino на 8 каналов. Благодаря ему микроконтроллер может управлять шинами переменного тока. ICStation 8 Channel EL Escudo Dos Shield for Arduino

Двигатели и Ардуино

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

Motor Shield

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

Схема подключения Motor Shield

Основа устройства – две мостовых микросхемы L293, контактные группы портов которых в точках подключения к Ардуино демонстрируются далее: Схема подключения Motor Shield

В верхнем левом углу можно видеть входы группы контроля, в которые поступает плюс, минус и управляющий сигнал. Где помечено стрелкой, обычно размещается перемычка, указывающая устройству, откуда оно берет энергию – от самой Ардуино или внешнего питания. Обычно в схеме используется напряжение 5В.

Подключение фазовых двигателей к Motor Shield

Для применения шилда с 4-мя фазовыми двигателями выполняется немного другой их монтаж с этой платой: Подключение фазовых двигателей к Motor Shield

Основная библиотека для управления – AFMotor.

Есть вариант исполнения от российского изготовителя. Его основное отличие – только одна мостовая L298, что соответственно уменьшает возможности устройства. Коммутация выполняется или одного шагового двигателя, или двух фазовых.

Шилд управления двигателями от Амперки

Плюсом можно назвать их поддерживаемую мощность – в параллельном режиме доступно питать 4-амперный мотор, рассчитанный на работу от 24В. Шилд управления двигателями от Амперки

Multi Servo Shield

Это еще не все, что относится к контролю моторов. Часто применяются роботизированные сборки, в которых намного больше, чем пара двигателей. Для них соответственно требуется много серво-шилдов. Большое их количество вполне заменит универсальный Multi Servo Shield. Его схема подключения: Multi Servo Shield

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

Питание

Power Shield

Важным вопросом для Atmega, как, впрочем, и любого микрокомпьютера, служит питание. Существуют шилды, обеспечивающие его бесперебойность в случае утраты внешнего источника: Power Shield

Функция выполняется схемой с литий-ионным аккумулятором, размещаемым на своей плате в общий стек Ардуино. Обеспечивается полный автоматизированный контроль поступления внешнего напряжения и поддержка всей сборки в рабочем состоянии в случае его отсутствия.

Не оставлен без внимания и вопрос внешних коммуникаций. Шилды этого типа зачастую поставляются вместе с разъемами чтения SD-card.

W5100 и W5500

Самым простым из существующих на текущий момент считается W5100, более продвинутый – W5500. Последний обладает лучшей оптимизацией в плане быстродействия и энергосбережения. Основное предназначение обоих – связь посредством кабельных UDP сетей по протоколу TCP/IP. W5100 и W5500

Модуль LAN

Есть у этих плат и младший брат для соединения с Arduino NANO. Но он изготавливается в виде модуля, а не шилда, и лишен разъема для SD-card. Модуль LAN

Не забыты и беспроводные коммуникации по WIFI. К примеру, ниже представлен официальный шилд, использующий 802.11b/g соединения.

WIFI Shield

Как видно по фотографии, на схеме кроме разъема для SD-карт присутствует и мини-USB, через который можно производить обновление ПО самого устройства, в основе своей – микроконтроллера связи. WIFI Shield

Интерфейс с человеком

EasyVR Shield 3.0

Самое главное для любого компьютера – обеспечивать интерфейс с человеком. Здесь есть целый комплекс шилдов, от экрана с несколькими управляющими клавишами до системы распознавания голоса. Последняя представлена ниже: EasyVR Shield 3.0

Среди функций шилда не только контроль произносимого человеком, но и воспроизведение определенного текста, записанного в память устройства. Очень удобная возможность для организации своеобразного голосового диалога с Ардуино.

LCD Keyboard Shield

Конечно, говорить мало, нужно еще и видеть, что происходит. Здесь поможет LCD Keypad shield – шилд, обладающий двухстрочным экраном на 16 символов в каждой строке. Кроме отображения информации на его плате расположено несколько клавиш, позволяющих отдавать команды их нажатием контроллеру. LCD Keyboard Shield

Конечно, эта модель не единственная. В ее классе множество устройств. Для конкретно названой, из технических данных можно сообщить, что она использует для своей работы множество портов Ардуино. Распиновка платы с описанием входов:

Распиновка платы с описанием входов

Используемая библиотека для работы с дисплеем – LiquidCrystal.

Шилды, изменяющие модель контроллера

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

Nano Uno Shield

Хорошим примером может послужить Nano Uno shield, превращающий Ардуино НАНО в УНО. Nano Uno Shield

Объединяющий шилд

Arduino Sensor Shield

Существует целый класс плат, которые обладают возможностями объединения многих других, выводя выходы их на одну. Характерный представитель – Arduino Sensor Shield. Чего только на нем не присутствует – порты COM, I2C, 6 цифровых и 12 аналоговых, коннектор LCD двух видов, возможность присоединения Bluetooth, радио модуля, и ридера SD. Arduino Sensor Shield

Дополнительные возможности

Стопка подключенных Arduino More-Core Shield

В конце хотелось бы вспомнить Arduino More-Core Shield. Очень своеобразная вещь, в своей основе – дополнительный микроконтроллер, расширяющий возможности центрального с использованием процессора ATMega328. Этакое второе ядро системы, причем количество их можно наращивать, подключая колодки в общий стек. Стопка подключенных Arduino More-Core Shield

Перечислены, конечно, далеко не все виды и типы шилдов, рассказано было только о наиболее известных из них.

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

Электронный конструктор: Обзор лучших Shield-плат для Arduino

OFFZONE Moscow

Arduino — крохотная плата с большими возможностями, типичный представитель Open Hardware и одно из первых устройств, завоевавших широкую популярность у аппаратных хакеров. Не мудрено: удобный электронный конструктор позволяет даже новичкам быстро разобраться и начать с нуля разрабатывать собственные устройства.

Как быстро начать?

Для быстрого начала новичку проще всего купить готовую плату — стоит она примерно $30. На плате будет всего два чипа — микроконтроллер ATMEL и микросхема USB-интерфейса, к которой он подключен. Все остальные элементы добавляются самостоятельно по мере необходимости.

Программы для Arduino (называемые на сленге «скетчами») пишутся на языке Wiring. По сути, это обычный C++, расширенный специальными процедурами типа «digitalWrite» (записать значение в порт) или «analogRead» (прочитать значение из АЦП). Осваивается все это в один-два присеста, особенно если у тебя уже есть опыт программирования на C++. Написанные скетчи компилируются и загружаются в Arduino через USB с помощью среды ArduinoIDE (arduino.cc/en/Main/Software). Чтобы собрать простейший проект требуются какие-то минут тридцать, без необходимости глубокого погружения в даташиты ATMEL и конструкции ассемблера. Язык интуитивно понятен, а разобраться с нюансами поможет неплохой онлайн-хелп. Да и паять, кстати, тоже необязательно, если есть беспаечная макетка и набор проводков.

Все выводы микроконтроллера выведены на два аккуратных ряда колодок, к которым можно подключать датчики, кнопки, дисплеи и тому подобное. Однако, чем сложнее обвязка, тем больше с ней может быть геморроя. Если речь идет про пару светодиодов и кнопок, то никаких сложностей. Но вот если требуется управлять моторами или обмениваться данными через радиоинтерфейс, возникает ряд сложностей. Для борьбы с этим пороком и придумали шилд-платы — готовые платы для расширения функциональности.

Что такое Shield-плата?

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

Можно устанавливать несколько плат одновременно, главное, чтобы устройства не конфликтовали за одни и те же пины Arduino. Немного покопавшись в сети, можно найти таблицы со списком популярных шилдов и занятых ими пинов (shieldlist.org).

Дальше остается лишь подцепить соответствующую библиотеку к основному скетчу и опробовать работу схемы с помощью прилагаемого к библиотеке скетча-примера. При таком подходе время экономится дважды: сначала на разработку и отладку аппаратной части, а затем — программной. Однако по-настоящему удачных и популярных шилд-плат существует всего пара десятков. Чем хороший шилд отличается от плохого?

В первую очередь, на нем обязана быть кнопка сброса. Оценить это может любой, кто отлаживал Arduino с одетым шилдом — штатная кнопка сброса становится недоступной и упражнения по ее нажиманию при помощи подручных продолговатых предметов порядком раздражают. Хороший шилд также должен быть совместим с Arduino Mega — если у тебя расширенная версия Arduino на ATmega1280 или ATmega2560, еще не факт, что с ней заработает шилд, созданный для привычной Uno или Duemilanova. А все из-за того, что в Mega отвечающие за аппаратный SPI пины перенесли в другое место! Так что если шилд общается с Arduino по шине SPI, обязательно изучи его «брюхо» — надеяться на совместимость с Mega можно, если ты увидишь там не только штырьки, но и черный квадратный разъем-розетку 2х3. Ниже я подготовил обзор лучших готовых Shield-плат для решения частых задач.

Управление моторами

Если необходимо управлять моторами, смело используй шилд Motorshield, созданный талантливым американским инженером Лимором Фридом aka ladyada (ladyada.net/make/mshield/).

Главное преимущество шилда заключается в его универсальности, поскольку он поддерживает до четырех моторов прямого тока, до двух шаговых двигателей и двух серво-приводов. Можно комбинировать: например, один шаговый и два двигателя постоянного тока. Основу шилда обеспечивают две микросхемы счетверенного H-моста L293D, способные выдавать ток до 600 мА на канал и работать напряжениями от 4,5 до 36 В. Запараллелив входы одной микросхемы, можно отодвинуть ограничение по току до 1,2 А.

С помощью этого шилда можно, например, управлять одновременно моторами и рулевой тягой модели гоночного автомобиля, шаговыми двигателями координатного стола. Для более мощных нагрузок можно использовать Ardumoto с чипом L298 от фирмы Sparkfun (два канала с токами нагрузки до 2 А) или ее более продвинутую версию Monster Moto Shield (sparkfun.com/products/10182) на двух чипах VNH2SP30, способную отдавать уже до 30 А с предельным напряжением 41 В. Если дело дойдет до последнего варианта, не забудь посоветоваться со знающими спецами: все-таки нагрузки довольно приличные, возможно придется обзавестись дополнительным радиатором, чтобы не обжечься.

Работа с Ethernet

Существуют два основных варианта шилдов для работы с Ethernet — на основе старого доброго чипа ENC28J60 от Microchip и более совершенного W5100 от Wiznet. Оба решения используют для обмена шину SPI, отнимая всего четыре пина Arduino. Но ENC28J60 появился много раньше и явно проигрывает продвинутому W5100: только 10 Мбит/с, нет аппаратной поддержки IP, UDP, TCP. Кроме того, W5100 позволяет работать с четырьмя сокетами (что означает поддержку до четырех одновременных соединений).

В общем, настоятельно рекомендую использовать именно W5100, потому что он существенно экономит ключевой ресурс микроконтроллера — оперативную память (SRAM), которую приходится экономить (у Atmega328 — всего один килобайт). Ну и все остальные преимущества предобработки налицо: пока W5100 сам переспрашивает пакеты по протоколу TCP и считает контрольные суммы заголовков, Atmegа может спокойно заниматься более важными вещами.

Другим образцовым примером является шилд Arduino Ethernet Shield (arduino.cc/en/Main/ArduinoEthernetShield) от команды Arduino. С его помощью можно создать скетч, который будет способен:

  • получать динамический IP-адрес по DHCP;
  • устанавливать время по протоколу NTP;
  • резолвить имена через DNS;
  • проходить авторизацию через RADIUS;
  • выполнять функции несложного Web-сервера или выступать в качестве Web-клиента, формируя запросы и осуществляя парсинг ответов.

Из схожих плат можно отметить разработку Freetronics — EthernetShield with PoE (freetronics.com/products/ethernet-shieldwithpoe). Идея питания Ethernet-устройства от той же линии Ethernet, к которой оно и подключено, родилась в 2001 году, а два года спустя стала официальным промышленным стандартом IEEE 802.3af. По собственному опыту замечу, что нет ничего удобнее для питания автономных коробочек, которые общаются по Ethernet и разбросаны по зданию в радиусе 100 метров от специального питающего коммутатора. Стоит такой шилд чуть дороже, требует приобретения дополнительной микроплатки модуля PoE и вместо SD-разъема имеет макетное поле.

Применение такому шилду — исключительно в неподвижных конструкциях, требующих взаимодействия по сети TCP/ IP. Например, отображение в браузер состояния подключенных датчиков или удаленное управление какими-то механизмами.

Сразу вспоминается проект «твиттер-цветочка», в котором связка Arduino+Ethernet при помощи воткнутого в землю датчика влажности через твиттер жаловалась на сухость и требовала немедленного полива. При всем многообразии применения EthernetShield хочу предупредить о том, что каждая библиотека, безусловно, экономит время, однако и отнимает несколько килобайт флеш-памяти микроконтроллера. Поэтому, если рано или поздно упрешься в предельный размер 30 Кб своей Arduino Duemilanova — подумай о замене на Mega 2560, памяти для скетчей будет раз в восемь с половиной больше.

Использование SD-карт

В проектах, связанных с накоплением какой-либо информации (например, GPS-координат), часто требуется нарастить объем доступной энергонезависимой памяти. Проще всего это сделать, подключив стандартную SD-карту. Для этого есть несколько готовых шилдов. Самый симпатичный из известных мне вариантов — microSD module, разработан испанской фирмой Libellium, специализирующейся на мониторинге окружающей среды (goo.gl/iHCy4).

Шилд занимает всего одну колодку пинов Arduino и позволяет работать с SD и SDHC-картами, предварительно отформатированными на в FAT16 (предпочтительнее) или FAT32. Единовременно можно работать только с одним файлом, длинные имена не поддерживаются.

Беспроводные шилды

Самые простые RF-модули на амплитудной модуляции (ASK), работающие в нелицензируемом диапазоне 433 и 313 МГц хоть и могут использоваться с Arduino через библиотеку VirtualWire, но все равно представляются мне довольно плохим вариантом.

Слишком сильно они подвержены помехам, устойчиво работают только на низких скоростях, не имеют аппаратного разделения на каналы — несколько одновременно работающих передатчиков будут мешать друг другу. Может быть, именно поэтому шилд-плат для них я пока не встречал.

Полярную противоположность представляют платы семейства Xbee, основанные на протоколах Zigbee, идеально подходящие для организации распределенных сенсорных сетей с автономным питанием. Каждая такая плата сама по себе является устройством с микроконтроллером на борту, и от шилда требуется совсем немного — обеспечить согласование с Arduino. Называются такие шилды обычно «Xbee Shield», но не всегда — например, Libellium разработал Communication Shield (goo.gl/OZDxl). Шилд обязательно содержит два ряда колодок, к которым пристыковывается модуль в формате Xbee.

Единственный недостаток, пожалуй, это цена самого модуля Xbee. Взамен получаем скорость до 250 Кбит/с, дальность в пределах прямой видимости до 90 метров (модификация Xbee PRO может добивать до 1,2 км), шифрование, экономное энергопотребление и возможность ретрансляции данных (два модуля прозрачно общаются друг с другом через третий).

Давно замечено, что если в компании заходит речь про беспроводные сети, первым делом почему-то вспоминают про WiFi, гораздо реже — про Bluetooth. В качестве примеров подойдут WiFly Shield от SparkFun (sparkfun.com/products/9954) и Bluetooth module от Libellium (cooking-hacks.com/index.php/arduinobluetoothmodule-89.html). Последний выполнен в формате Xbee и будет работать с любым переходным шилдом для Xbee, а программная настройка из Arduino напоминает диалог с модемом — через последовательный порт и AT-команды. Кстати, в свое время была выпущена оригинальная плата Arduino BT (arduino.cc/en/Main/ArduinoBoardBluetooth), которая не имела USB-интерфейса, но программировалась и подключалась к компьютеру именно через Bluetooth. Большого распространения она не получила — может быть, в силу увеличения цены.

Для обмена данными через GSM обычно используется мобильник, способный работать по последовательному порту на уровнях TTL.
Но сейчас таких все меньше и меньше — их вытесняет USB, для работы с которым требуется быть хостом (а не девайсом, каковым является Arduino). Но, к счастью, производители уже давно штампуют законченные GSM-модули, к которым остается при крутить внешнюю антенну и разъем симки. За примером далеко ходить не надо — GPRS Quadband module for Arduino от Libellium (goo.gl/KueFH), который базируется на GPRS-модеме от SAGEM.
Особенность именно этой модели — GRPS-модуль съемный, и можно передавать не только данные — разведен выход на внешний спикерфон.

Разные шилды

Подводя краткий итог, можно с уверенностью сказать — решения почти всех типичных задач давно существуют в виде шилдов. Но не стоит думать, что на этом все заканчивается. Вот несколько примеров: Radiation Sensor Board от Libellium (счетчик Гейгера).

И вроде бы идея не нова — но все равно, пока Фукусима не грянула, никому в голову не пришло запустить подобное в серийное производство. Другая интересная идея заложена в основу Seeeduino Stalker — она способна при необходимости быть и Arduino-совместимой платой, и шилдом, что достигается при помощи двух параллельных рядов контактов. В настоящий момент идет активная разработка USB Host Shield — он позволит подключать к Arduino устройства, подключаемые в обычных условиях к компьютеру. Существует также масса шилдов для индикации — начиная с семисегментных дисплеев, заканчивая TFT-экранами с тачскином. Меня больше всего заинтересовал LoL-Shield. Вроде бы простая матрица из светодиодов, но на принципе хекосплексирования. Этот хитрый прием использует возможность пинов Atmega находиться в трех состояниях (0, 1 и высокое сопротивление). В результате усердной пайки 126 светодиодов, получаем полноценную матрицу 9х14, не израсходовав даже всех пинов Arduino, а в качестве примеров к библиотеке предлагаются игры «Жизнь», «Тетрис», «Пинг-понг» и «Space Invaders».
Поэтому, если у тебя есть свободное время и оригинальная идея — обязательно найди время поделиться с сообществом — глядишь, тебе и схему поправят, и с разводкой помогут. Ведь нет ничего более захватывающего, чем коллективное творчество.

Шилд своими руками

В качестве примера создадим свой собственный LCD-шилд. Схема подключения популярного алфавитно-цифрового ЖКИдисплея 1602 на контроллере HD44780 возможна в двух вариантах — восьмибитной шиной или четырехбитной. Самое время открыть стратегию шилдостроения Arduino: пинов много не бывает! Стараемся использовать их по минимуму и поэтому выбираем четырехбитную схему (на наше счастье, поддержка такой схемы входит в дистрибутив ArduinoIDE, в виде библиотеки LiquidCrystal).

Используем для построения нашего шилда специальную заготовку — протошилд, который представляет собой макетную плату с небольшими изысками. Самая главная его ценность — это правильно расставленные отверстия для пинов, для идеальной стыковки с Arduino. Так уж получилось, что все колодки пинов расположены на сетке с шагом 2,54 мм, кроме одной (если бы не этот досадный факт, можно было бы взять любой кусочек «дырчатой макетки» и впаять в него стыковочные вилки PLS). Сделано это было специально, чтобы реципиент по рассеянности не вставил шилд наоборот и не пожег на корню будущий шедевр.
Обрати внимание, что схема предусматривает наличие переменного резистора для регулировки контрастности. Это важно! Если забить на это, при правильной в остальном схеме и скетче ничего видно не будет. Подойдет любой на 10-20 кОм, а конкретно на этом протошилде он уже и так предусмотрен — правда подключен ко входу analog0, поэтому придется припаять лишний проводок.

Возьмем кусочек штыревой гребенки PLS и распаяем сначала на контакты дисплея, а затем — на шилд. После этого надо взять монтажный провод и аккуратно, по очереди, зачистить и напаять проводки от дисплея к пинам Arduino согласно схеме — благо, она несложная. У меня интуитивным образом получилось упрятать большую часть под дисплей.

19 шилдов для Arduino на все случаи жизни

Шилд – это плата дополнения. Я предлагаю разделить шилды на полноразмерные и отдельные модули. Полноразмерные своими очертаниями повторяют форму платы Arduino, будь то UNO, Nano или MEGA. Отдельные модули – это платы произвольной формы, созданные для выполнения определенного набора функций. И те и другие могут быть как универсальными, так и для выполнения узконаправленных задач.

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

Содержание статьи

Arduino UNO с набором шилдов

Универсальная плата для удобного макетирования

Начнем с шилда, который не несёт в себе никаких особенных функций, а создан для удобства монтажа ваших проектов. Итак первый в нашем обзоре облегчит монтаж проектов с платой Arduino Nano, правда толку от малых размеров «НАНО» в таком случае ноль.

На плате расположен разъём для подключения штекера от блока пиитания, стабилизатор напряжения, а также клеммные колодки. Они подписаны и соответствуют выводам «Нанки». Кроме того присутствует кнопка «сброс» и светодиод «Питание».

Универсальная плата для удобного макетирования

Второй шилд предназначен для платы Uno. На нем расположена беспаечная макетная плата для сборки проекта и выводы, дублирующие те, что на самой ардуине – удобное решение.

Шилд для платы Uno

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

Вот пример такой платы для Ардуино версии Мега.

Плата для Ардуино версии Мега

Проводная и беспроводная связь

С помощью этих плат можно организовать управление микроконтроллером по сети через кабель Ethernet, например, или беспроводов – через GSM-связь, вставив сим-карту.

w5100

Эта плата называется w5100 – содержит Ethernet модуль и модуль SD-кардридера. Это значит, что можно хранить данные, например лог измерений датчиков на карту памяти и управлять системой через web-интерфейс. Чтобы связать с ним ардуино пользуйтесь библиотеками:

Обратите внимание внешне он повторяет концепцию Arduino UNO R3, кроме того, он подойдет и на Mega.

Если W5100 вам кажется слишком крупным – то ENC28J60 займет меньше места. К сожалению в нем уже отсутствует SD-модуль.

ENC28J60

Минусом является то, что он не может быть монтирован на плату, а выполнен в виде отдельного модуля.

W5500 – еще один вариант Ethernet-шилда. По своей сути – это доработанная версия W5100, оптимизированная в плане скорости и энергоэффективности.

W5500

Обратите внимание, на полноразмерных шилдах все пины дублируются клеммной колодкой. К сожалению, шилды используют порты. Конкретно этот задействует MOSI, MISO, SCK, и пин 10, для сигнала CS (выбор адресата для связи).

Если вам нужна беспроводная связь – ваш выбор это Wi-fi шилды, если есть интернет и роутер, а если этого нет – GSM-модули или GPRS Шилды.

Wi-fi шилд

На фото официальный шилд. На нём установлен слот под Micro SD-карту памяти, а связывается с микроконтроллером он по SPI-протоколам, через Mini-USB можно обновлять его программное обеспечение. Поддерживает 802.11b/g.

GPRS-шилд

GPRS-шилд от «Амперки» вы видите выше. Вы можете заменить антенну на более мощную. Ближе к зрителю виден слот для SIM-карты, чуть дальше слот под батарейку CR1225. Батарейка на плате нужна для хота часов реального времени, а это немаловажное дополнение к возможностям GPRS-шилда. Вы можете отправлять СМС на него и с него.

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

Микроконтроллер на javascript от «Амперки»:

Как хранить данные на Arduino?

В проектах не вся информация помещается в память микроконтроллера. Иногда требуется хранить некоторые объемы информации. Первое, что приходит на ум, уже сказано – это запись информации с датчиков, чтобы в дальнейшем изучать как изменяется окружающая среда с течение часов, дней, лет. Отличным примером является – домашняя метеостанция. Это полезно не только ученым-исследователям, но и любителям для общего образования и развития.

Шилд для хранения данных

Это скорее не шилд, а модуль. Он миниатюрен и легок для повторению, кстати, вот его схема.

Схема

Есть и полноразмерный шилд хранения данных. Работает с SD-картами памяти, на борту есть модуль часов реального времени, которые питаются от батарейки CR1220 напряжением в 3 В, что является неплохим бонусом.

Шилд для хранения данных

Научитесь разрабатывать устройства на базе микроконтроллеров и станьте инженером умных устройств с нуля: Инженер умных устройств

Управляем мощной нагрузкой с микроконтроллера

Первое что может прийти в голову – это реле. С их помощью можно коммутировать как цепи постоянного тока, так и с бытовой электросетью 220 Вольт они справятся на ура.

Конкретно тот модуль что изображен ниже может коммутировать 1 кВт 220 В нагрузки (или 5А) по каждому из каналов, для повышения мощности можно либо запараллелить несколько каналов, либо включать этим реле магнитный пускатель. В таком случае реле со шилда будут играть роль промежуточных усилителей.

Плата с промежуточными реле

Конечно вы можете коммутировать реле так, как я описал в статье «Подключение внешних устройств к Ардуино», через транзистор и подобрать нужно реле по току, но использовать готовую плату будет надежнее, удобнее и выглядит лучше.

У реле есть один недостаток – ограниченное количество срабатываний – это следствие выгорания контактов. Это бывает из-за возникновения дуги, при размыкании мощной нагрузки (особенно индуктивного характера – это двигателя и т.п.). Сделать такой шилд можно по следующей схеме:

А вот как это выглядит в сборе:

Плата в сборе

Поэму для включения нагрузки переменного тока можно использовать тиристоры и симисторы. Одна проблема – прямо к ардуине подключать их нельзя, при пробое pn- перехода управляющего электрода, 220 В могут оказаться на плате микроконтроллера и сжечь его. Выход из этой ситуации – использования оптосимистора.

Так как это задача часто становится перед изобретателями, было разработано готовое решение – симисторный shield, его полное название — ICStation 8 Channel EL Escudo Dos Shield for Arduino. Он изначально предназначался для управления свечением «гибкого неона».

ICStation 8 Channel EL Escudo Dos Shield for Arduino

У него есть 8 каналов, к которым подключается сеть переменного тока и нагрузка.

Шилды для двигателей

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

Мотор-ШИЛД для ардуино может управлять электродвигателями постоянного тока (4 штуки) или двумя шаговыми моторчиками.

Мотор-ШИЛД для ардуино

Он построен на базе двух L293. Эта микросхема представляет собой сборку из двух H мостов, это позволяет управлять с возможностью реверса двумя ДПТ, либо 1 шаговым биполярным двигателем. Схемы подключения соответсвенно:

Управление двигателем

А в левом верхнем углу платы есть две колодки под сервоприводы (плюс, минус и управляющий сигнал). Красным кругом обведено место куда устанавливается перемычка джампер. Если она стоит – то эта плата питается от базовой платы ардуино, а если нет — от внешнего источника на 5 В.

Подключение черытрех двигателей к плате

С помощью этого модуля от отечественного производителя можно управлять двумя двигателями постоянного тока, в нём тоже есть джампер объединяющий линии питания микроконтроллера или разъединающий их – для питания от отдельного источника.

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

Можно управлять двигателями, которые рассчитаны на диапазон напряжение от 5 до 24 Вольт. Вместо 2-х DC-моторов можно использовать 1 однофазный шаговый или запараллелить каналы и подключить 1 мощный DC мотор с током до 4А, а это не мало – 48 Вт при напряжении питания в 24 В.

Для подключения сервопривода нужно три провода – плюс, минус и сигнал, но что делать, если у вас много серв? Ваша плата превратится в месиво из перемычек. Чтобы это избежать есть Мультисерво шилд.

Здесь тоже есть возможность разделения цепей питания, как это было в предыдущем варианте. Итого можно подключить 18 сервоприводов (на плате нумерация от 0 до 17).

Плата для управления сервоприводом

Везде есть своя специфика, шилды для необычных задач…

В атмеге328, сердце нашей платы, есть АЦП. Главная проблема в том, что на плате ардуино уно мы видим всего лишь 6 аналоговых входов. Что делать если у нас больше аналоговых датчиков?

Можно собрать две ардуино в единую сеть. Одну использовать в качестве основной, а вторую вспомогательную для изменений и с первой отправлять на сервер сигналы измерений или выводить их на экран… Но это сложно: нужно тратить память на дополнительные строки программного кода для реализации такой системы.

А что если умножить каждый вход на 16? Итого у нас может быть до 16*6=96 аналоговых входов. Это реально с помощью мультиплексора. Он просто переключает по очереди 16 аналоговых каналов на один аналоговый выход, который вы подключаете к такому же входу любого мироконтроллера.

Плата расширения для подключения аналоговых датчиков

Распознавание голоса

Средствами микроконтроллера Атмега о-о-очень трудно релизовать функцию распознавания голоса, но ардуинщики могут не отчаиваться, есть специальное решение – EasyVR Shield 3.0.

Это готовое, но дорогое решение, на момент написания статьи он стоит почти 100 долларов в России. Сначала шилд запишет вашу команду, затем сравнит её с тем что записано в памяти, определив номер – выполнит её.

Вы можете устроить «диалог с компьютером», он может воспроизводить то, что в нём записано. Без дополнительных усилителей рекомендуется «общаться» с этой платой с расстояния не более 60 см.

Распознавание голоса

Выводим изображение

LCD Keypad shield – это настоящая панель управления. На нём расположен дисплей LCD1602 (16 символов в две строки), и набор кнопок. Из-за них задействовано довольно много портов, например A0 и с D4 по D7 под клавиатуру, а порт D10 – ШИМ-регулятор яркости подсветки. D8 и D9 – сброс и включение.

LCD Keypad shield

На самом деле существует много дисплеев совместимых с ардуино. Вернее тех, о которых написано больше всего информации и вы легко их запустите в своей системе. Довольно популярен в кругах самодельщиков дисплей от NOKIA 5110, на выбор есть и OLED и TFT экраны, работающие по I2C. Но они не в «шилдовом» исполнении.

Плата расширения с дисплеем

Дисплеи для Ардуино:

Автономное питание

Довольно необычный шилд в этой подборке, который выполняет обычную задачу. Power shield – это литий-ионный аккумулятор со всеми необходимыми защитами и разъёмом для зарядки. Вроде бы ничего особенного, но это обеспечит завершенный вид вашему проекту, а цепи питания не придется размещать рядом с основными платами.

Power shield

Лучшие магазины Ардуино на Алиэкспресс

Где купить Аrduino Shield и другие электронные компоненты?

Проверенные продавцы Ардуино:

Заключение

Использование шилдов для всех задач проекта позволит избежать излишнего числа перемычек и соединений, а это снизит количество ошибок и лишних перемычек. После сборки вы получите многоэтажный бутерброд из плат заводского изготовления. Такой подход иногда называют «модульная конструкция». Между прочим, это облегчит обслуживание, ремонт и наладку оборудования.

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

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

Ваш адрес email не будет опубликован.