Основы программирования на Arduino

Основы программирования АрдуиноС помощью чего можно легко изучить основы электроники и робототехники ? Ответ на этот вопрос очевиден. Конечно же, с помощью Ардуино!

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

Подойдет ли мне Arduino?

Если вас сильно интересует электроника, и вы хотите уже сейчас начать программировать свои собственные проекты (схемы), тогда Arduino станет идеальным для этого решением.

Пример с использованием Arduino
Пример с использованием Arduino и LCD экрана

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

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

Что я могу делать с Arduino?

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

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

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

Примеры проектов, которые можно без проблем создать на Ардуино:

  1. Простые мобильные роботы
  2. Устройства для дома (автоматические жалюзи, датчики света)
  3. Приспособления, полезные на каждый день (простой будильник, часы)
  4. Игровое оборудование (простые игры и легкие игрушки)
  5. И еще много других проектов, которые только можно придумать!

Что такое Ардуино?

Arduino — это готовый «комплект разработчика» с популярным микроконтроллером AVR. Создан согласно соответствующим нормам, благодаря которым:

  • Не требует помощи программиста
  • Без проблем совместим со специальным компилятором.
  • Можете купить «бесконечное» количество плат расширения (например, двигателей, дисплея, исполнительных модулей).
Вы найдете информацию о компонентах в конце этой статьи!

Однако реальная сила Arduino заключается в специальном языке программирования, основанном на C / C ++. Начиная свою работу с микроконтроллерами, стоит изучить основы их конструкции и то, как они работают.

Логотип Arduino
Логотип Arduino

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

Arduino — это модули с микроконтроллерами, которые можно легко программировать с использованием общедоступных библиотек на языке C / C ++.

Преимущества Arduino

Проект начали разрабатывать в 2005 году в Италии. С тех пор он собрал вокруг себя толпу последователей и фанатичных пользователей. С самого начала Arduino была подготовлена ​​для людей, которые раньше мало занимались или вообще не занимались программированием микроконтроллеров. Отличная среда, удобный синтаксис и низкая цена сделали Ardunio чрезвычайно популярным.

Arduino Community Logo

Пользователей данной платформы огромное множество. Это дает много преимуществ. С точки зрения пользователя-новичка, три являются наиболее важными:

  • Огромное количество готовых решений. На Arduino разрабатываются различные проекты. Если вы придумали что-то «новое» и интересное, знайте, что 90% этого уже было сделано на Arduino раньше, а описание проекта было размещено в Интернете.
  • Такая популярность платформы означает, что производители подготовили бесчисленное количество разновидностей схем и расширений — вы узнаете об этом позже.
  • Большое количество пользователей в сообществах всегда придут на помощь, если застрял в важном пункте своего проекта.

Arduino — выбор аппаратной платформы

Arduino — это открытая аппаратная платформа. Это означает, что предоставляются все материалы, необходимые для создания собственного набора средств разработки, работающего в соответствии с этим стандартом. По этой причине вы найдете много разных плат, совместимых с Arduino.

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

Arduino — это проект, который постоянно растет — как с точки зрения программирования, так и с точки зрения оборудования. Плата UNO версии 3 в настоящее время предлагается Arudino как та, которая сможет использовать новейшие библиотеки и платы расширения в течение длительного времени.
Arduino UNO R3
Arduino UNO R3 — передняя и задняя стороны

Внимание! Уже некоторое время оригинальные платы Ардуино производятся в бирюзовом цвете. Однако синие версии (как показано выше) все еще доступны в продаже.

Плата Arduino UNO R3

Сердцем системы является популярный 8-битный микроконтроллер Atmel AVR ATmega328, работающий на частоте 16 МГц.

Проще говоря, работа с такой частотой означает, что микроконтроллер способен выполнять 16 миллионов операций в секунду. Это очень много!

Специальные разъемы, обычно расположенные по бокам данной платы, являются выходами наиболее важных сигналов. Имеется 14 программируемых цифровых входов / выходов. Шесть из них могут использоваться как выходы ШИМ (например, для управления двигателем), а еще 6 — как аналоговые входы. Там же мы найдем кнопку сброса и источник питания.

Arduino можно запитать несколькими способами. Наиболее популярные методы:

  • Питание от USB-кабеля
  • Питание от подключаемого блока питания (оптимально 7–12 В) или от блока батарей

Наиболее важные элементы отмечены на рисунке ниже:

Arduino UNO R3 плата

  1. Разъем USB — используется для питания, программирования и связи с компьютером
  2. Разъем питания (оптимально 7 В — 12 В)
  3. Стабилизатор напряжения — входное напряжение с разъема 2 снижено до 5В
  4. Кнопка сброса — сбрасывает плату Arduino.
  5. Микроконтроллер, отвечающий за связь с компьютером по USB
  6. Разъем для программирования микроконтроллера из пункта 5
  7. Сигнальный разъем
  8. Сигнальный разъем
  9. Светодиод, указывающий на подключение напряжения к Arduino
  10. Выход программатора для микроконтроллера из пункта 13.
  11. Сигнальный разъем
  12. Разъем питания
  13. Сердце Arduino , главный микроконтроллер AVR ATmega328
  14. Светодиоды, сигнализирующие о передаче на / от компьютера
  15. Светодиод доступеный пользователю
  16. Керамический резонатор, тактирующий микроконтроллер (точка 13) с частотой 16 МГц
  17. Перемычка, которая отключает автоматический сброс Arduino
  18. Контактные площадки с сигналами микроконтроллера из пункта 5, используются крайне редко в очень специфических и нестандартных ситуациях.

Отдельные сигнальные разъемы будут подробно описаны в следующей статье.

Клоны, или Ардуино (не) оригинал

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

Мы можем разделить клонов на два типа:

  • Полностью подделка, имитирующая оригиналы
  • Платы, совместимые со стандартом Arduino

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

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

Arduino — необходимые элементы

В дополнение к вышеупомянутой Arduino UNO в первых 7 статьях будет использоваться несколько дополнительных компонентов. Обязательно пригодятся USB-кабель и соединительные провода. Вдобавок цветные светодиоды и кнопки. Также понадобится текстовый дисплей 2×16 символов.

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

Набор необходимых элементов для Ардуино представлен на фото ниже:

Набор элементов для Arduino
Набор элементов для Arduino

Могли ли бы быть цены на наборы ниже? Конечно! Однако в таких наборах вы бы не нашли такие элементы, как дисплей, сервопривод, датчик расстояния, фоторезисторы и двигатель (мотор).

Нужны ли они в комплекте? Точно да! Все детали из наборов вы сможете использовать в своих будущих проектах.

Вводное слово

В первой статье (той, которую вы читаете) мы займемся установкой оборудования. Мы предполагаем, что у вас оно еще неу становлено. Однако для дальнейшего изучения Arduino оно вам понадобится.

Установка Arduino IDE

Перед тем как приступить к программированию, вам необходимо установить соответствующую программу (среду). Последнюю версию Arduino IDE можно скачать с официального сайта проекта. Размер установщика примерно 192 МБ.

Скриншоты ниже взяты из старой версии Arduino. Скачайте последнюю версию, все будет работать точно так же!

Установка стандартная. Вначале мы принимаем лицензию на продукт:

Установщик Arduino
Установщик Arduino

Затем нажмите несколько раз дальше и станьте счастливыми пользователями Arduino IDE. Попутно стоит обратить внимание на устанавливаемые вами компоненты:

Выбор компонентов Arduino IDE
Выбор компонентов Arduino IDE

После завершения установки на рабочем столе должен появиться новый значок:

Значок Arduino
Значок Arduino

Если программа была установлена ​​правильно, после ее запуска мы увидим приветственный экран:

Заставка Arduino
Заставка Arduino

И через некоторое время откроется редактор:

Редактор Arduino
Редактор Arduino

Если у вас уже есть Arduino…

Ранее мы писали, что мы не будем заниматься программированием в этой статье. Однако, если у вас уже есть Arduino, вы можете сделать что-нибудь очень простое, чтобы проверить, все ли работает. Сначала запустите редактор Arduino IDE. Затем выберите в меню:

Файл -> Примеры -> 01. Basics -> Blink

Откроется отдельное окно с программным кодом (пока не будем вдаваться в его структуру). Он должен выглядеть примерно так:

Пример программы для Arduino
Пример программы для Arduino

Теперь подключите ваш Arduino к компьютеру. Используйте для этого USB-кабель, питание подключать не нужно. Все, что вам нужно, это один кабель! Теперь компьютер обнаружит новое оборудование и установит драйверы.

Когда оборудование будет готово к использованию, проверьте, какой COM-порт назначен вашей плате. Сделать это можно, зайдя в диспетчер устройств:

Компьютер -> Свойства -> Диспетчер устройств

Выбор COM-порта
Выбор COM-порта

В нашем примере это был COM 2, но ваш может быть совершенно другим. Неважно.

Теперь мы можем вернуться к настройкам Arduino IDE. Здесь нам предстоит выбрать два варианта. Сначала мы сообщаем компилятору, какую плату мы используем. Затем указываем проверенный ранее номер COM-порта.

Мы отметили эти две операции на скриншотах ниже:

Выбор платыНастройка COM-порта
Выбор платыНастройка COM-порта
IDE Arduino показывает только доступные COM-порты. Для нас это был только COM2, их может быть больше. Главное правильно выбрать.

Плата подключена. Теперь мы можем приступить к загрузке программы. Для этого нам нужно выбрать два варианта:

  1. Проверить
  2. Загрузка
ПроверитьЗагрузка
ПроверитьЗагрузка

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

Вторая команда отвечает за отправку программы на плату Arduino UNO. После нажатия кнопки « Загрузка» на плате должны мигать светодиоды TX и RX. Это означает, что данные передаются с / на компьютер.

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

Программа успешно перенесена на Ардуино
Программа успешно перенесена на Ардуино

Конечно, то, что программа была отправлена ​​правильно, можно наблюдать и на Arduino. Как мы уже писали ранее, на плате имеется 1 светодиод. После загрузки программы он должен мигать. Как показано ниже:

Мигает светодиод на плате
Мигает светодиод на плате

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

Вывод

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

С Уважением, МониторБанк

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