Стартовый набор для arduino uno r3 уроки

Как начать работу с Arduino Uno: полное руководство для начинающих

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

Почему так актуальна эта платформа? Как начать работу с ней? Как она может улучшить ваш стиль жизни? Все эти вопросы будут рассмотрены в данной статье. Для этого мы познакомимся с установкой среды Arduino IDE на ваш компьютер и загрузим в нее небольшую программу, реализующую мигание светодиода, который мы подключим к Arduino с использованием макетной платы.

Что такое Arduino

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

Arduino представляет собой платформу разработки с открытым исходным кодом, которая состоит из простого в использовании оборудования и среды программирования. Наиболее распространенным типом оборудования является Arduino UNO, а среда программирования называется Arduino IDE. Кроме Arduino UNO существует еще достаточно много аналогичных плат — Arduino Mega, nano, mini, но в данной статье в целях обучения мы будем использовать именно Arduino UNO. А Arduino IDE – это как раз та программная среда, с помощью которой мы будем программировать плату Arduino UNO.

Установка Arduino IDE

Прежде чем начать работу с Arduino необходимо установить среду программирования Arduino IDE на ваш компьютер/ноутбук. Все описанные далее шаги по установке данной программной среды будут ориентированы на операционную систему Windows, для остальных операционных систем последовательность действий будет примерно такой же. Если возникнут проблемы с другими системами, то помощь можно найти по следующим ссылкам – для пользователей Mac и пользователей Linux. Перед началом установки Arduino IDE убедитесь что вы обладаете правами администратора на вашем компьютере – это облегчит установку.

Шаг 1. Загрузите Arduino IDE с официального сайта — https://www.arduino.cc/download_handler.php.

Шаг 2. Запустите скачанный exe файл.

Шаг 3. В открывшемся окне кликните на “I Agree” чтобы согласиться с условиями лицензии Arduino.

Шаг 4. В окне опций установки отметьте все галочки (см. рисунок).

Шаг 5. На этом шаге необходимо выбрать место установки Arduino IDE. По умолчанию стоит путь установки в Program files на диске C – крайне рекомендуется оставить именно этот путь.

Шаг 6. На этом шаге вы можете наблюдать как Arduino IDE устанавливается на ваш компьютер (см. рисунок). После того как установка будет завершена нажмите кнопку “completed”.

Шаг 7. После завершения установки запустите на выполнение файл Arduino.exe. Откроется окно IDE с минимумом кода внутри него – см. рисунок.

Подключение вашей платы Arduino к компьютеру

После того как вы установили Arduino IDE на свой компьютер следующим логичным шагом будет подключение платы Arduino UNO к компьютеру. Чтобы сделать это просто используйте кабель для программирования (синего цвета) и соедините его с платой Arduino и USB портом вашего компьютера.

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

  1. Он запитывает плату Arduino UNO, то есть чтобы обеспечить выполнение программ на ней необходимо просто запитать ее с помощью USB кабеля.
  2. Через него программируется микроконтроллер ATmega328, находящийся на плате Arduino UNO. То есть код программы пересылается из компьютера в микроконтроллер именно по этому кабелю.
  3. Он может функционировать в качестве кабеля для последовательной связи, то есть с его помощью можно передавать данные с Arduino UNO в компьютер – это полезно для целей отладки программы.

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

Поскольку вы подключаете плату Arduino в первый раз к компьютеру необходимо некоторое время чтобы драйвера для нее успешно установились. Чтобы проверить правильно ли все установилось и определилось откройте «Диспетчер устройств (Device manager)» на вашем компьютере.

В диспетчере устройств откройте опцию «Порты» “Ports (COM & LPT)”, кликните на ней и посмотрите правильно ли отображается там ваша плата.

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

Если вы не можете в диспетчере устройств найти опцию “Ports (COM & LPT)”, то это означает, что ваша плата не корректно определилась компьютером. В большинстве случает это означает проблему с драйверами – по какой то причине они автоматически не установились для вашей платы. В этом случае вы должны будете вручную установить необходимые драйверы.

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

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

Загрузка программы мигания светодиода

Теперь загрузим нашу первую программу в плату Arduino при помощи программной среды Arduino IDE, которую мы только недавно установили. Установленная Arduino IDE содержит несколько примеров программ, которые будут весьма полезны для начинающих. Давайте откроем один из этих примеров программ используя следующий путь File -> Examples -> Basics -> Blink (как показано на рисунке).

При этом откроется программа Blink – ее цель состоит в том чтобы заставить мигать встроенный светодиод на плате Arduino. После открытия программы нам необходимо выбрать правильную плату Arduino – чтобы сделать это выберите пункт меню Tool -> Boards -> Arduino UNO/Genuino как показано на рисунке ниже.

Далее мы должны выбрать правильный порт для нашей платы. Ранее мы увидели, что для нашей платы был определен порт COM13. В вашем случае это может быть другой порт. Но для нашего рассматриваемого случая мы должны выбрать пункт меню Tools -> Port -> COM13.

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

После нажатия этой кнопки вы увидите надпись “Compiling sketch” и затем, если загрузка программы прошла успешно, вы увидите сообщение “Done Uploading” как показано на рисунке ниже.

Если у вас на данном этапе возникают какие либо ошибки, не рассмотренные в данной статье, то вы их можете попробовать найти в статье про 10 самых распространенных ошибок при работе с Arduino.

Теперь попробуем написать программу, которая будет зажигать светодиод при нажатии кнопки.

Необходимые компоненты

  1. Плата Arduino Uno (купить на AliExpress).
  2. Кабель для программирования.
  3. Светодиод (любого цвета).
  4. Кнопка.
  5. Резистор 1 кОм.
  6. Макетная плата.
  7. Соединительные провода.

Схема соединений

Представлена на следующем рисунке.

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

Светодиод подсоединен к контакту 3 через резистор 1 кОм. То есть катод светодиода подсоединен к земле, а анод – к контакту 3 Arduino через резистор.

Программирование Arduino

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

В каждой программе для Arduino должны обязательно присутствовать две функции – это функции void setup () и void loop (), иногда их называют «абсолютным минимумом», необходимым для написания программы. Все операции, которые мы запишем внутри void setup (), исполнятся только один раз, а операции, которые мы запишем внутри void loop () – будут исполняться снова и снова. Пример этих функций показан в коде ниже – именно в таком виде они создаются когда вы выбираете пункт меню File -> New.

Источник

Аrduino для начинающих

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

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

Что такое Arduino и для чего оно нужно?

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

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

проекты на Arduino

Стартовый набор Arduino

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

Базовый набор ардуино для начинающих: Купить
Большой набор для обучения и первых проектов: Купить
Набор дополнительных датчиков и модулей: Купить
Ардуино Уно самая базовая и удобная модель из линейки: Купить
Беспаечная макетная плата для удобного обучения и прототипирования: Купить
Набор проводов с удобными коннекторами: Купить
Комплект светодиодов: Купить
Комплект резисторов: Купить
Кнопки: Купить
Потенциометры: Купить

Среда разработки Arduino IDE

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

Язык программирования Ардуино

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

Для программирования Arduino используется упрощенная версия языка C++ с предопределенными функциями. Как и в других Cи-подобных языках программирования есть ряд правил написания кода. Вот самые базовые из них:

  • После каждой инструкции необходимо ставить знак точки с запятой (;)
  • Перед объявлением функции необходимо указать тип данных, возвращаемый функцией или void если функция не возвращает значение.
  • Так же необходимо указывать тип данных перед объявлением переменной.
  • Комментарии обозначаются: // Строчный и /* блочный */

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

Все прошивки для Arduino должны содержать минимум 2 функции. Это setup() и loop().

Функция setup

Функция setup() выполняется в самом начале и только 1 раз сразу после включения или перезагрузки вашего устройства. Обычно в этой функции декларируют режимы пинов, открывают необходимые протоколы связи, устанавливают соединения с дополнительными модулями и настраивают подключенные библиотеки. Если для вашей прошивки ничего подобного делать не нужно, то функция все равно должна быть объявлена. Вот стандартный пример функции setup():

В этом примере просто открывается последовательный порт для связи с компьютером и пины 9 и 13 назначаются входом и выходом. Ничего сложного. Но если вам что-либо не понятно, вы всегда можете задать вопрос в комментариях ниже.

Функция loop

Функция loop() выполняется после функции setup(). Loop в переводе с английского значит «петля». Это говорит о том что функция зациклена, то есть будет выполняться снова и снова. Например микроконтроллер ATmega328, который установлен в большинстве плат Arduino, будет выполнять функцию loop около 10 000 раз в секунду (если не используются задержки и сложные вычисления). Благодаря этому у нас есть большие возможности.

Макетная плата Breadbord

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

Версия Windows Mac OS X Linux
1.8.2
Макетная плата на 800 точек с 2 шинами питания, платой подачи питания и проводами: Купить
Большая макетная плата на 1600 точек с 4 шинами питания: Купить
Макетная плата на 800 точек с 2 шинами питания: Купить
Макетная плата на 400 точек с 2 шинами питания: Купить
Макетная плата на 170 точек: Купить
Соединительные провода 120 штук: Купить

Первый проект на Arduino

Давайте соберем первое устройство на базе Ардуино. Мы просто подключим тактовую кнопку и светодиод к ардуинке. Схема проекта выглядит так:

Управление яркостью светодиода

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

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

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

ШИМ Arduino

Широтно-импульсная модуляция (ШИМ) — это процесс управления напряжением за счет скважности сигнала. То есть используя ШИМ мы можем плавно управлять нагрузкой. Например можно плавно изменять яркость светодиода, но это изменение яркости получается не за счет уменьшения напряжения, а за счет увеличения интервалов низкого сигнала. Принцип действия ШИМ показан на этой схеме:

ШИМ ардуино

Когда мы подаем ШИМ на светодиод, то он начинает быстро зажигаться и гаснуть. Человеческий глаз не способен увидеть это, так как частота слишком высока. Но при съемке на видео вы скорее всего увидите моменты когда светодиод не горит. Это случится при условии что частота кадров камеры не будет кратна частоте ШИМ.

В Arduino есть встроенный широтно-импульсный модулятор. Использовать ШИМ можно только на тех пинах, которые поддерживаются микроконтроллером. Например Arduino Uno и Nano имеют по 6 ШИМ выводов: это пины D3, D5, D6, D9, D10 и D11. В других платах пины могут отличаться. Вы можете найти описание интересующей вас платы в этом разделе.

Для использования ШИМ в Arduino есть функция analogWrite(). Она принимает в качестве аргументов номер пина и значение ШИМ от 0 до 255. 0 — это 0% заполнения высоким сигналом, а 255 это 100%. Давайте для примера напишем простой скетч. Сделаем так, что бы светодиод плавно загорался, ждал одну секунду и так же плавно угасал и так до бесконечности. Вот пример использования этой функции:

Аналоговые входы Arduino

Как мы уже знаем, цифровые пины могут быть как входом так и выходом и принимать/отдавать только 2 значения: HIGH и LOW. Аналоговые пины могут только принимать сигнал. И в отличии от цифровых входов аналоговые измеряют напряжение поступающего сигнала. В большинстве плат ардуино стоит 10 битный аналогово-цифровой преобразователь. Это значит что 0 считывается как 0 а 5 В считываются как значение 1023. То есть аналоговые входы измеряют, подаваемое на них напряжение, с точностью до 0,005 вольт. Благодаря этому мы можем подключать разнообразные датчики и резисторы (терморезисторы, фоторезисторы) и считывать аналоговый сигнал с них.

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

Подключение фоторезистора к Ардуино

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

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

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

19 комментариев

Добрый день, господа!
Очень интересный сайт. Много полезной информации и подача материала спокойная.
Мне нравиться.
Вопрос у меня. Чую попал на грамотных спецов.
Приобрел я на Али китайскую чудо технику — лазерный гравировщик-выжигатель (2 Ватт.).
Плата управления Arduino Nano, драйвера на двигатели на красных платках.
Как водится описание слабое, информация. да все по-китайски. Начал разбираться.
Собрал, заработала машина, задымила. Поправил конфигурацию, на одной оси сделал инверсию.
Самое отвратительное — это ПО. Только зайчиков выжигать. Решил сменить.
Залил GRBL v1.1, программу взял LaserGRBL (версия из последних).
Программа увидела девайс, подключилась на СОМ, ожила, тут бы обрадоваться, да нет.
G-код готовится правильно, но команды включения М3 и выключения М5 лазера, которые прописаны в коде, не выполняются.
Лазер включается при включении девайса, и находится включенным все время, даже в остановленном состоянии (G-код еще не запущен, передвижения нет). При быстром передвижении лазера по рисунку он не выключается и все время жгет, рисуя за собой прожженную черту.
Подскажите, пожалуйста, как заставить лазер отключаться согласно G-коду? Как заставить девайс выполнять команды G-кода М3 и М5? Пробовал в конфигурации ставить и $32=1, и $32=0 — никак не реагирует. Жгет без остановки. Перепрошивал v1.1 — бесполезно.
Мне уже 65 отроду. Некогда досконально изучать Arduino. Говорят, что не поступают команды на лазер.
Да тут и ежику понятно. Как это можно исправить? В настройках галочку с ШИМ снял.
Подскажите, пожалуйста.
С уважением Владимир

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

Хороший сайт. Спасибо.

Благодарен автору за полезное дело.
Помогать учиться, это самое лучшее занятие для человека.

Источник

Adblock
detector