Как общаться с «Ардуино»
Чтобы микроконтроллер понял, что необходимо сделать, нужно написать программу. Для этого был разработан специальный язык программирования, основанный на С++.
Инструкции работы платформы пишется в программной среде Arduino IDE. В ней уже есть рабочие примеры, изучив которые, можно получить базовое представление о том, как общаться с Arduino.
Существуют и специальные среды программирования, которые дают возможность не писать текст. Речь идет о визуальном программировании, графических средах для управления платами «Ардуино». Наиболее распространенные из них — Scratch, ArduBlock, FLProg.
Что можно сделать с помощью Ардуино?
Для начала работы с Ардуино нам достаточно любой платы. Большинство начинающих Ардуинщиков и любителей сделать что-либо своими руками начинают с Arduino Uno:
Arduino Uno R3
Даже если у вас есть есть только плата, то вы уже можете начать работать с ней.
Как я уже написал выше — один из первых и самых популярных уроков для начинающих — моргание встроенным на плату светодиодом.
Если первой платой, которую вы приобрели, стала Arduino Nano, то сразу же переходите к нашему большому руководству — Ардуино Нано для начинающих.
На базе Arduino создание устройств ограничивается только человеческой фантазией. Вы можете запрограммировать систему быстро среагировать на определённое изменение и сможете управлять:
- светом,
- моторами,
- разнообразными приводами,
- и т.п..
Самое интересное, что Ардуино применяется не только для домашнего использования, но и для промышленного.
Если вы только начинаете знакомство с микроконтроллерами, то рекомендуем вам начать с самых простых, которые есть на нашем сайте:
Разработка любых устройств зависит только от вашей фантазии, а Ардуино и множество дополнительных компонентов помогают в создании этих устройств своими руками.
ITrobo
Курс по Ардуино включает в себя:
Основы работы с Arduino: установка, структура программы, подключение светодиодов, проверка датчиков, создание сигнализации.
Мобильные роботы с Ардуино: motor shild, повороты, движение по линии, управление с телефона, перевороты.
Подключение датчиков и устройств: сервопривод, реле, радиомодуль, клавиатура, ЖК-дисплей, фоторезистор, датчики движения, влажности и света.
Уроки предоставляются бесплатно. Оформлены доступным текстом и иллюстрациями — уроки будут понятны и детям, и взрослым.
https://youtube.com/watch?v=0l5v7qb-nkk
Работа с Arduino IDE
Для работы платы и вашего будущего проекта необходимо написать и загрузить на Andruno скетч. Скетч (sketch) – программа, написанная специально для Adruno. Для выполнения данного пункта вам понадобятся:
- Ардуино;
- USB-кабель Type-A;
- Устройство, работающее на ОС Windows.
Скачайте бесплатную среду разработки для Ардуино с официального сайта производителя. Вместе с программой автоматически установятся драйвера для определения девайса при подключении к USB-порту. Если же Ардуино не определится – произведите ручную установку необходимых компонентов.
На схеме должен загореться зелёный светодиод при подключении к USB. Запустите приложение и приступайте к созданию собственного скетча. Проверка работоспособности и совместимости Arduino с ПО можно проверить при помощи встроенного скетча «LED». Запуск данного процесса должен вызвать мигание светодиода.
В меню Tool – Board выберите используемую плату. Далее следует загрузка скетча в Arduino при помощи кнопки «Upload». Успешное завершение данной операции подтверждается миганием светодиода оранжевого цвета на плате. Для подробного изучения Arduino IDE создано множество англоязычных и отечественных ресурсов, где рассказывается что такое Ардуино и как с ним работать.
Среда разработки оснащена стандартным менеджером добавления библиотек в виде исходного кода на языке C++. Данная возможность расширяет применение компонентов, добавляя новый функционал.
Программное обеспечение (IDE)
Программное обеспечение, используемое для программирования Arduino, представляет собой интегрированную среду разработки Arduino IDE. IDE представляет собой Java приложение, которое работает на множестве различных платформ, включая системы PC, Mac и Linux. Она разработана для начинающих, которые не знакомы с программированием. Она включает в себя редактор, компилятор и загрузчик. Также в IDE включены библиотеки кода для использования периферии, например, последовательных портов и различных типов дисплеев. Программы для Arduino называются «скетчами», и они написаны на языке, очень похожем на C или C++.
Загрузка прошивки
USBasp – ISP программатор для AVR (в том числе Arduino)
Что касается так называемого программатора: изначально способом загрузки прошивки в микроконтроллер является загрузка посредством ISP (in-system programming) программатора, который загружает прошивку напрямую в память микроконтроллера. Это способ хорош и надёжен, но он дороже и не такой универсальный как тот, который используется в Ардуино. Работает это так: вместо ISP программатора на плате стоит USB-TTL преобразователь, который позволяет Ардуино (на её стороне TTL – транзистор-транзистор логика) буквально общаться с компьютером (на его стороне – USB) и обмениваться данными. Но просто общаясь с компьютером загрузить прошивку не получится, поэтому в памяти микроконтроллера “живёт” загрузчик (он же bootloader), который умеет ловить данные, идущие с компьютера и загружать их во Flash память микроконтроллера. При каждом запуске микроконтроллера загрузчик ждёт команду от компьютера, мол желает ли тот загрузить новую прошивку. Если никто ему не отвечает какое-то время, он запускает уже имеющуюся в памяти МК прошивку. Отсюда вытекает несколько минусов:
- Загрузчик сидит во Flash памяти и занимает место (около 6%, что довольно-таки много)
- При подаче питания на МК прошивка стартует не сразу, каждый раз загрузчик ждёт команду от компьютера в течение какого-то времени (пару секунд), прежде чем передать управление имеющейся в памяти программе.
Оба этих минуса решаются частично или полностью:
- Можно прошить неофициальный загрузчик, который занимает меньше места в памяти и быстрее стартует
- Можно загружать скетчи напрямую через ISP, в этом случае вообще не будет потери места и задержек при запуске, так как загрузчика вообще не будет в памяти
Возвращаясь к USB-TTL преобразователю: почему именно такой способ загрузки прошивки выбрали разработчики Arduino? Да всё очень просто: микросхема USB-TTL преобразователя стоит дешевле микросхем, могущих в ISP (роль оных обычно выполняют микроконтроллеры), что прилично удешевляет платформу. Но самое главное – использование USB-TTL преобразователя добавляет нам возможность общаться с платой при помощи компьютера (смартфона, планшета) без использования дополнительного железа, т.е. мы можем как управлять какими-то устройствами (если это заложено в коде прошивки), так и получать от Ардуино данные, например показания с датчиков. Но самое-самое главное – это позволяет отлаживать код, вручную, но все таки отлаживать.
Программная часть
Когда система собрана, ее необходимо запрограммировать. Управление GSM выполняется специфическими функциями и АТ-командами. Устройство принимает их, интерпретирует и выдает определенный результат, отправляя/получая СМС или звонок. Команды задаются через программное обеспечение (такая возможность предусмотрена в IDE) или вводятся напрямую через утилиты работы с портами.
AT-команды
Как уже говорилось, GSM-модули управляются посредством передаваемых на них AT-команд. Это текстовые строки, обрабатываемые прошивкой и инициирующие те или иные действия.
Обычно они генерируются управляющим ПО, но могут быть отправлены и с клавиатуры, например, через утилиту монитора порта из поставки Arduino IDE.
Команды делятся на три вида:
- текстовые — на них контроллер дает ответ о поддержке введенной пользователем директивы или отсутствии таковой;
- чтение — просмотр параметров;
- запись — ввод и сохранение некоторых новых значений.
Набор команд может отличаться в зависимости от контроллера.
Получение и отправка СМС
Пример работы с короткими сообщениями для связки «Arduino + сотовый модуль»:
- в IDE выполняется директива AT+CMGF=1. Она указывает перейти в формат передачи текстового сообщения;
- далее вводится AT+CSCS=«GSM». Выбирается кодировка ASCII;
- AT+CMGS=«номер», где номер указывается полностью (в формате «+7…»);
- когда выполнена эта команда, вводится непосредственно текст сообщения, и по нажатию ctrl-Z отправляется на выбранный номер.
Если все сделано, интерфейс программы вернет ОК.
Для получения SMS:
- AT + CNMI = 2,2,0,0,0 — переход в состояние чтения;
- когда блок GSM получит сообщение, он отправит в порт строку +CMTI: «SM»,2. Цифра может отличаться, она обозначает номер СМС в очереди;
- для прочтения следует дать директиву AT+CMGR=2.
Прием голового звонка
Для выполнения потребуется включить библиотеку разработчика GSM.h:
Если SIM-карта защищена пин-кодом, его также следует определить в скетче:
При пустом коде значение этого поля просто остается пустым.
В обязательном порядке объявляется переменная отслеживания статуса подключения к мобильной сети:
Соединение выполняется посредством функции gsmAcess.begin(). Если процесс завершен успешно, функция возвращает строку GSM_READY.
Далее нужно указать, что сотовый модем переведен в режим приема звонка. За это отвечает функция vcs.hangCall(). Следующая важная функция — getvoiceCallStatus. При входящем звонке она вернет строку RECEIVINGCALL. А для определения номера звонящего следует воспользоваться retreiveCallingNumber.
При поднятой трубке скетч сообщит об этом строкой TALKING. После чего перейдет в режим ожидания ввода; для завершения разговора вводится символ перехода на новую строку.
Это основные функции и команды для данной задачи. Разумеется, в полном скетче потребуется определить гораздо больше параметров, которые можно найти в идущих с IDE примерах и официальной документации.
Использование библиотеки Narcoleptic
Эта библиотека позволяет вводить микроконтроллер в режим сна на определенное время с помощью одной функции – Narcoleptic.delay();. Аргументом данной функции является время в миллисекундах – используется точно так же как и стандартная функция delay();.
Рассмотрим ту же программу что и ранее, но с использованием данной библиотеки:
#include <Narcoleptic.h> void setup() { pinMode(LED_BUILTIN, OUTPUT); } void loop() { digitalWrite(LED_BUILTIN, LOW); Narcoleptic.delay(1000); digitalWrite(LED_BUILTIN, HIGH); Narcoleptic.delay(120); }
Как видно, код стал значительно проще, и в случае, когда нужны простые паузы между полезными действиями – эта библиотека является самым простым и удобным решением.
Что такое bluetooth модуль и его назначение
Bluetooth протокол необходим для быстрой передачи данных на небольших расстояниях. Но значительно чаще его применяют в проектах, с целью наладить управление микроконтроллером с близких расстояний. Соответственно, он будет удобен для построения тех же умных домов, если дополнить аппаратную составляющую приложением на смартфон.
Таким образом, первичное и главное назначение Ардуино блютуз – связь с вашим ПК и\или Андроидом по соответствующему протоколу. Это позволяет не только управлять разнообразными датчиками на микроконтроллере, но и, в случае необходимости, обновлять прошивку.
Полностью перепрошить устройство с его помощью не получится. Помимо этого, Android Arduino bluetooth может обеспечить связь между несколькими МК и приборами. Естественно, для этого на каждом из них должен быть установлен независимый модуль. HC-05 позволяет проложить несколько мостов по типу USAR-bluetooth-USART. При этом само устройство будет восприниматься в качестве ответного на USART. А организовывать связь уже будет аппаратная часть вашего проекта.
Модуль HC-06
У блютуз модуля под Ардуино, есть несколько преимуществ, перед стандартными дополнениями под другие МК:
- Инженеру нет необходимости изучать технологию протокола блютуз, чтобы написать софт или начать использовать уже готовые библиотеки.
- Простота использования в целом. Вам не нужно будет паять отдельную плату под распределение мощностей, просто подсоедините устройство к уже готовому МК через пины.
- Обширный выбор библиотек. Так как Ардуино имеет низкий порог вхождения, под все его модули можно найти большое количество библиотек, разного назначения. Но стоит отметить, что весомая их часть – бесполезны, ибо не работают или работают крайне плохо. Ведь пишет их сообщество, которое не изучало основы алгоритмизации и, в большинстве своём, в принципе, плохо разбирается в программировании. Из-за этого, во многих ситуациях, просто модифицировать чужой софт – не лучшее решение, и значительно проще написать свой.
Сфера же применения RC car Arduino bluetooth – огромна и ограничена лишь вашей фантазией. Например, вы можете купить обычную китайскую гарнитуру, припаять к ней пару модулей под Ардуино, так как они могут функционировать и без МК, и загрузить одну из готовых библиотек. После таких манипуляций наушники можно будет использовать в беспроводном режиме и исчезнет проблема с запутывающимися или гнущимися проводами. Это одна из банальных проблем реализации данного протокола в проекте, на деле их тысячи.
Предназначается bluetooth аудио модуль для бытового и коммерческого применения, чему способствуют его характеристики. Также стоит учитывать, что если вы собираетесь в дальнейшем связываться по одноимённому протоколу с ПК, то на большинстве современных устройств необходимо будет докупить блютуз по USB. Но вы можете также спаять его из МК, создав собственный bluetooth модуль для компьютера. Естественно, это не относится к ноутбукам, где поголовно устанавливаются одноимённые передатчики, и никак модифицировать их уже не требуется.
Общие сведения
WiFi Slot содержит на борту всё необходимое для быстрой и комфортной работы: USB-разъём для программирования и отладки, десять цифровых входов/выходов с поддержкой ШИМ-сигнала (восемь из которых восемь могут использоваться как аналоговый вход) и две служебные кнопки.
Больше нет нужды нажимать специальные кнопки при каждой прошивке. Специальная схема вводит плату в режим программирования при прошивке через USB-разъём.
Родным напряжением чипа является 3,3 В. Мы установили на плату мощный DC-DC преобразователь, который позволяет запитать плату от 5 В при помощи USB, Power Bank или Li-Ion-аккумулятора. Понижающий преобразователь обеспечит нагрузку током до 1 А. Забудьте о глюках при нехватке питания от маломощных регуляторов напряжения — тока хватит всем.
WiFi Slot позволяет подключить до четырёх Troyka-модулей. Используемые пины для связи сенсоров и модулей с WiFi Slot зависят от конкретного устройства, точнее: от типа его коммуникации, сигнала и протокола. Обратитесь к странице с обзором сенсоров, чтобы определить как организована коммуникация с каждым устройством. После чего можно приступать к работе с модулем.
Платформа программируется двумя способами:
5Общение с Arduino
Как же процессор узнаёт, что именно ему следует делать? Вы должны рассказать ему это. Написание сообщений для Arduino называется программирование. Существует язык для общения с микроконтроллером, упрощённый и адаптированный специально для Arduino. Освоить этот язык совсем не сложно при желании и определённой настойчивости, даже если вы никогда раньше не программировали.
И для упрощения этого процесса разработана специальная программная среда – Arduino IDE. В её состав включены десятки примеров хороших, работающих программ. Изучив их, вы очень быстро многое узнаете о языке общения с Arduino.
Внешний вид среды разработки для программирования Ардуино – Arduino IDE
Arduino позволит вашим программам выйти из виртуального мира в мир реальный. Вы сможете увидеть, как написанные вами программы заставляют мигать светодиод или вращать вал двигателя, а затем делать и более сложные и полезные вещи. Arduino позволит вам узнать много нового и интересного и в электронике, и в программировании. В итоге это может послужить вам отличным хобби, увлекательным занятием с детьми, замечательным и полезным времяпровождением.
Ну и напоследок, посмотрите, какие разные и замечательные проекты можно воплотить с помощью Ардуино!
Критерии выбора
Если проект разрабатывается самостоятельно или плата покупается для различных экспериментов, то стоит брать более универсальные модели. В этом плане зарекомендовало себя устройство Arduino Uno.
Также при выборе стоит обратить внимание на такие параметры:
- Количество выводов. Их не всегда хватает при подсоединении большого количества датчиков и внешних устройств. Например, для подключения простого ЖК-экрана может понадобиться от 6 выводов.
- Память. Загрузчик занимает заданный объем памяти контроллера. В отдельных случаях ее недостаточно (если программа громоздкая). То же касается ОЗУ.
- Питание. Есть платы с низким энергопотреблением и питанием (от 3,3 В), со стандартными показателями (5 В) или с возможностью подключения источника до 12 В (например, для автомобиля).
- Тактовую частоту, размер платы, наличие USB-порта.
Новая плата от Ардуино.
Проекты Arduino для начинающих
Если посмотреть на все проекты ардуино, информация о которых доступна в интернете, то можно их разделить на несколько основных групп:
Начальные учебные проекты, не претендующие на какое-то важное практическое использование, но помогающие разобраться в разных аспектах платформы.
Мигающие светодиоды – маячок, мигалка, светофор и другие.
Проекты с датчиками: от простейших аналоговых до цифровых, использующих разнообразные протоколы для обмена данными.
Устройства регистрации и отображения информации.
Машины и устройства с сервоприводами и шаговыми двигателями.
Устройства с использованием различных беспроводных видов связи и GPS.
Проекты для автоматизации жилья – умные дома на Arduino, а также отдельные элементы управления домашней инфраструктурой.
Разнообразные автономные машины и роботы.
Проекты для исследования природы и автоматизации сельского хозяйства
Необычные и креативные – как правило, развлекательные проекты.
По каждой из этих групп можно найти множество самых разнообразных материалов в книгах и на сайтах. В этой статье мы начнем знакомство с описанием наиболее простых проектов, с которых рекомендуется стартовать начинающим.
Как создавать проект на ардуино
Проект Ардуино – это всегда сочетание электронной схемы, некоторых связанных друг с другом аппаратных и механических устройств, системы питания и программного обеспечения, управляющего всем этим хаосом. Поэтому приступая к работе, вы должны твердо понимать, что создавая устройство в одиночестве, вы должны будете стать и программистом, и электронщиком, и конструктором.
Если речь идет не об учебном проекте, то вы обязательно столкнетесь со следующими этапами реализации с такими вот задачами:
- Придумать что-то, что будет полезно и (или) интересно для окружающих. Даже самый простой проект несет какую-то пользу – как минимум, он помогает изучать новые технологии.
- Собрать схему, подключить модули друг к другу и к контроллеру.
- Написать скетч (программу) в специальной среде и загрузить ее в контроллер.
- Проверить, как все работает вместе, и исправить ошибки.
- После тестирования – готовиться к созданию готового устройства. Это означает, нужно собрать устройство в каком-то пригодном для эксплуатации корпусе, предусмотреть систему питания, связи с окружающей средой.
- Если вы собираетесь распространять созданные вами устройства, то придется также заняться дизайном, системой транспортировки, задуматься о безопасности использования необученными пользователями и обучением этих самых пользователей.
- Если ваше устройство работает, оно протестировано и обладает какими-то преимуществами перед другими решениями, то можно попытаться сделать из вашего инженерного уже бизнес-проект, попробовать привлечь инвестиции.
Каждый из этих этапов создания проекта достоин отдельной статьи
Но мы уделим главное внимание этапам сборки электронных схем (основы электроники) и программирования контроллера
Электронные схемы
Электронные схемы обычно собираются с применением макетных плат, скрепляющих элементы друг с другом без пайки и скрутки. О том, как работают модули и схемы подключения можно узнать на нашем сайте. Обычно в описании проекта указаны способы монтажа деталей. Но для большинства популярных модулей есть уже десятки готовых схем и примеров в интернете.
Программирование
Создание и прошивка скетчей производится в специальной программе – среде программирования. Наиболее популярной версией такой среды является Arduino IDE. На нашем сайте вы сможете найти информацию о том, как скачать, установить и настроить эту программу.
Аппаратная часть Arduino
Для начала стоит уяснить, что собой представляет микроконтроллер. По логике, это небольшое устройство, к которому подключаются все остальные элементы системы. Ардуино должен координировать их работу при помощи прописанных в нём скриптов, выдавая соответствующие электрические сигналы. Для стандартного МК Ардуино сигналом является 5 вольт – это единичка, а отсутствие сигнала – нолик.
Именно на таком принципе построено программирование двоичным кодом. Но от такой системы мы уже давно ушли, и потому к устройству можно подключать трансформаторы переменного тока и дополнительные резисторы, ведь некоторым модулям требуется ток в 3.2-4.7 Вольт.
Соответственно, аппаратная часть Ардуино в стандартной комплектации представлена чипом с постоянной памятью, набором из резисторов и транзисторов, а также несколькими пинами. Такая простая конструкция позволяет пользователю самому навешивать «улучшения» по необходимости.
С «коробки» в микроконтроллер устанавливается стандартная прошивка, способная распознавать базовые АТ команды. Пользователь может переустановить её или перепрошить Ардуино по желанию, но стоит учитывать, что без должного опыта вы можете получить бесполезную и неработающую плату.
Как несложно догадаться, изначально Ардуино – это лишь инструмент, который позволяет координировать работу всей системы. А делает он это при помощи встроенных в него библиотек, которые можно устанавливать в систему дополнительно, по необходимости. Вплоть до того, что вы можете поставить вспомогательную карту памяти, если не хватает места. А сами же библиотеки написаны на низкоуровневом C++, который обеспечивает полный контроль над работой микроконтроллера, но имеет и ряд весомых недостатков, о которых мы и поговорим ниже.
Общая информация об Arduino
Arduino обрели особенно сильную популярность среди людей, которые только начинают заниматься электроникой. На то есть несколько причин. В отличие от большинства предшественников, Arduino не требует дополнительного оборудования (программатора) для загрузки кода на плату — используется простой USB-кабель. Оболочка для программирования — Arduino IDE использует упрощенную версию C++, что облегчает процесс обучения для новичков. Кроме того, Arduino использует стандартизированный форм фактор для большинства своих плат, благодаря чему появился целый комплект дополнительных «шилдов».
Arduino Uno показана на рисунке ниже:
Arduino Uno — одна из самых популярных плат в линейке и является отличным выбором для начинающих. Технические характеристики этой модели будут рассмотрены ниже.
Оболочка Arduino IDE:
Поверите или нет, но показанные на рисунке выше 10 строчек кода достаточно, чтобы заставить мигать встроенный на плату светодиод. Возможно, сам код для вас сейчас не очень понятен, но поверьте, он предельно логичен и лаконичен. После этой статьи и нескольких туториалов, вам не составит труда его реализовать самостоятельно.
В этой статье мы остановимся на следующих основных моментах:
- Какие проекты можно реализовать с Arduino
- Основные узлы плат Arduino
- Номенклатура самых удачных моделей Arduino
- Дополнительные (периферийные) устройства для Arduino
Рекомендуем также дополнительно почитать
Arduino предназначена не только для узкоспециализированных специалистов. При этом процесс их освоения будет гораздо легче и приятнее, если у вас за плечами базовые знания схемотехники и электротехники. Рекомендуем получить хотя бы общее понимание перечисленных ниже вещей прежде чем углубляться в удивительный мир Arduino:
- Что такое электричество?
- Закон Ома
- Электрическая цепь
- Интегральная схема (микросхема)
- Аналоговый сигнал
- Цифровой сигнал
Возможности
Зачем учиться работать с ардуино и электроникой в целом?
- Это невероятно интересное, техническое, развивающее мозги и относительно дешёвое “DIY” хобби с бесконечным количеством идей и их реализаций
- Возможность создания узко-специальных электронных устройств и станков, аналогов которым нет в продаже или они слишком дорогие. В том числе для личных нужд или для работы (знакомый ювелир сделал себе контроллер для муфельной печи, который стоит очень дорого).
- Возможность создания новых уникальных устройств с целью выхода на краудфандинг и старта продаж и своего бизнеса.
- Отличная практика в программировании и электронике, особенно перед обучением на соответствующую специальность.
- Возможности в целом: автоматизация процессов и “машин”, автоматическое регулирование процессов, дистанционное управление, мониторинг различных величин, носимые и стационарные электронные устройства различного назначения.
Почему Arduino становится такой популярной
Совсем недавно еще никто не слышал об Ардуино. И до сих пор многих отпугивают слова: программируемый микроконтроллер, одноплатный компьютер, система для разработки устройств автоматизации. На деле все гораздо проще. Именно благодаря простоте и дешевизне Ардуино получила такую популярность. Существуют и другие проекты со схожими целями. Но ардуино обладает рядом преимуществ:
- Низкая стоимость. Ардуино можно купить всего за 2$
- Кроссплатформенность. Программное обеспечение ардуино очень универсально. Есть версии для большинства операционных систем.
- Arduino IDE. Это очень простая в освоении и удобная в использовании среда разработки. Она устанавливается и настраивается всего за несколько кликов мышкой.
- Открытый исходный код. Это позволяет людям создавать свои собственные функции и библиотеки. В интернете огромное количество готовых программных решений для любых целей. Вам не придется самостоятельно разбираться в принципах действия модулей. Вы можете скачать и установить готовую библиотеку, написанную для конкретного модуля, и использовать ее.
Подключение вашей платы Arduino к компьютеру
После того как вы установили Arduino IDE на свой компьютер следующим логичным шагом будет подключение платы Arduino UNO к компьютеру. Чтобы сделать это просто используйте кабель для программирования (синего цвета) и соедините его с платой Arduino и USB портом вашего компьютера.
Синий кабель для программирования может выполнять следующие три функции:
- Он запитывает плату Arduino UNO, то есть чтобы обеспечить выполнение программ на ней необходимо просто запитать ее с помощью USB кабеля.
- Через него программируется микроконтроллер ATmega328, находящийся на плате Arduino UNO. То есть код программы пересылается из компьютера в микроконтроллер именно по этому кабелю.
- Он может функционировать в качестве кабеля для последовательной связи, то есть с его помощью можно передавать данные с Arduino UNO в компьютер – это полезно для целей отладки программы.
После того как вы подадите питание на плату Arduino UNO на ней загорится маленький светодиод – это свидетельствует о том, что на плату подано питание. Также вы можете заметить как мигает другой светодиод – это результат работы программы по управлению миганием светодиода, которая по умолчанию загружена в вашу плату ее производителем.
Поскольку вы подключаете плату Arduino в первый раз к компьютеру необходимо некоторое время чтобы драйвера для нее успешно установились. Чтобы проверить правильно ли все установилось и определилось откройте «Диспетчер устройств (Device manager)» на вашем компьютере.
В диспетчере устройств откройте опцию «Порты» “Ports (COM & LPT)”, кликните на ней и посмотрите правильно ли отображается там ваша плата.
При этом стоит отметить, что не стоит обращать внимание на то, какой номер порта отобразился у вашей платы Arduino – он может, к примеру, выглядеть как CCH450 или что то подобное. Этот номер порта просто определяется производителем платы и больше ни на что не влияет
Если вы не можете в диспетчере устройств найти опцию “Ports (COM & LPT)”, то это означает, что ваша плата не корректно определилась компьютером. В большинстве случает это означает проблему с драйверами – по какой то причине они автоматически не установились для вашей платы. В этом случае вы должны будете вручную установить необходимые драйверы.
В некоторых случаях в указанной опции диспетчера устройств может отобразиться два COM порта для вашей платы и вы не будете знать какой из них правильный. В этой ситуации отключите и снова подключите плату Arduino к компьютеру – какой из COM портов при этом будет появляться и исчезать, значит тот и правильный порт.
Следует помнить о том, что номер COM порта будет изменяться при каждом новом подключении вашей платы к компьютеру – не пугайтесь, в этом нет ничего страшного.
Номенклатура плат Arduino
Arduino производит разные платы, каждая из который имеет собственные особенности. Кроме того, Arduino придерживаются модели open source, благодаря чему другие могут модифицировать и производить клоны Arduino, расширять и изменять их функционал и форм-фактор. Ниже приведены короткие сведения о различных моделях Arduino.
Arduino Uno (R3)
Arduino Uno — отличный выбор для начинающих. Очень сбалансированная плата, на которой есть, все, что вам может понадобиться и минимум лишнего. На плате 14 цифровых пинов, которые работаю на вход и на выход (6 из них поддерживают ШИМ-модуляцию), 6 аналоговых входов. Подключается плата с помощью USB. Есть джек для отдельного источника питания, кнопка сброса и т.п. Для начала работы с микроконтроллером достаточно подключить плату к компьютеру с помощью USB кабеля.
LilyPad Arduino
Основная плата в линейки LilyPad Arduino! LilyPad разработана в первую очередь для использования на одежде. Пины соединяются с периферийными устройствами с помощью токопроводящей нити. Есть куча дополнительных плат расширений для LilyPad. Большинство из них спроектированы таким образом, что не боятся влаги.
RedBoard
Разработка SparkFun, которая программируется с помощью USB Mini-B кабеля в оболочке Arduino IDE. Основными преимуществами производитель называет: стабильность работы под ОС Windows 8 благодаря драйверам с необходимой цифровой подписью. На плате используется чип USB/FTDI, который меньше по габаритам по сравнению с чипом на Arduino UNO. Для заливки скетча на плату в IDE выбирается модель Arduino UNO. Регулятор напряжения рассчитан на питание в диапазоне от 7 до 15 вольт.
Arduino Mega (R3)
Arduino Mega — словно старший брат Uno. На плате много (54!) цифровых входов/выходов (14 из них поддерживают ШИМ-модуляцию). Благодаря большому количеству пинов, плата используется для комплексных проектов, в которых подключается большое количество периферии (например, сведодиодов или кнопок). Подключение к компьютеру реализуется таким же кабелем как и на Arduino Uno. Естественно, предусмотрен джек для адаптера.
Arduino Leonardo
Leonardo — первая разработка Arduino, в которой используется один микроконтроллер со встроенным USB. Это значит, что плата становится проще и дешевле. Так как плата подключается непосредственно к USB без конвертера, есть библиотеки, которые позволяют эмулировать компьютерную мышь, клавиатуру и многое другое!
Что такое Arduino?
Как я уже сказал, Arduino — это микроконтроллер, для того чтобы быть микрокомпьютером ему не хватает многих компонентов. Он очень прост и гибок, поэтому подходит для разработки различных проектов.
Arduino воспринимает окружающую среду с помощью различных кнопок, датчиков и других сенсоров. Также можно воздействовать на окружение путем контроля светодиодов, моторов, сервоприводов и реле. Проекты Arduino могут оставаться автономными или взаимодействовать с программным обеспечением, установленным на компьютере. Они могут взаимодействовать с другими Arduino, Raspberry Pi, NodeMCU и любыми другими устройствами.
Микроконтроллер Arduino очень сильно упрощает процесс создания проекта, даже если вы раньше не делали ничего в сфере программируемой электроники. В сети есть тысячи руководств среди которых вы сможете найти то, что нужно.
В дополнение к простоте Arduino, эта плата стоит достаточно дешево и имеет открытый исходный код. Самая популярная модель arduino для начинающих — Arduino Uno, основная на микроконтроллере ATMEGA 16U2 от фирмы Atmel. Есть много различных моделей, которые отличаются размером, мощностью, спецификациями и другими параметрами.
Схемы публикуются под лицензией Creative Commons, поэтому опытные электронщики и производители могут делать свои версии Arduino, это приводит к очень низкой стоимости распространения устройств.