Уроки Ардуино – учебник для начинающих

Название 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 Uno. Мы изучим ее подробнее на следующих уроках.

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

Вся работа над проектом разбивается на следующие этапы:

  1. Придумываем идею и проектируем.
  2. Собираем электрическую схему. Тут нам пригодится макетная плата, упрощающая монтаж элементов. Безусловно, понадобятся навыки работы с электронными приборами и умение пользоваться мультиметром.
  3. Подключаем плату Arduino к компьютеру через USB.
  4. Пишем программу и записываем ее в плату буквально нажатием одной кнопки на экране в специальной среде программирования Arduino.
  5. Отсоединяем от компьютера. Теперь устройство будет работать автономно – при включении питания оно будет управляться той программой, которую мы в него записали.

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

На экране показана программа (на сленге ардуинщиков текст программы называется “скетч”), которая будет мигать лампочкой, подсоединенной к 13 входу на плате Ардуино UNO. Как видим, программа вполне проста и состоит из понятных для знающих английский язык инструкций. В языке программирования Arduino используется свой диалект языка C++, но все возможности C++ поддерживаются.

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

Визуальную среду рекомендуется использовать школьникам младших классов, более старшим инженерам лучше сразу изучать “настоящий” Ардуино – это довольно просто, к тому же знания C++ никому не повредят.

В целом все выглядит довольно понятно, не так ли? Осталось разобраться в деталях.

Установка 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 с минимумом кода внутри него – см. рисунок.

ОБОРУДОВАНИЕ ТЕХНОЛОГИИ РАЗРАБОТКИ

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

Список уроков Следующий урок

Введение.

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

Сразу бросается в глаза, что программы написаны крайне непрофессионально.

  • Недостаточно хорошо обрабатываются сигналы аппаратных устройств, подключаемых к контроллеру. Например, простейшие элементы – кнопки. Существует дребезг кнопок, они могут быть подключены длинными проводами, чувствительными к помехам. В надежной системе обязательно применение цифровой фильтрации сигналов с кнопок или датчиков сухого контакта. Как правило, в примерах уроков просто считывается состояние сигналов кнопок.
  • Надежные программы микроконтроллеров требуют циклической переустановки переменных, контроля целостности данных.
  • Хороший стиль программирования микроконтроллеров подразумевает структурное программирование. Это не формальные слова. Как известно можно писать красивые, структурные программы на ассемблере, а можно и на C++ такого нагородить.
  • Наверное, самое главное это многозадачность. Почти во всех уроках – последовательные действия программы. Посмотрели состояние кнопки, затем зажгли светодиод, вызвали какую-то непонятную функцию… Результат достигается просто, но и результат какой-то ущербный.

Если взять, к примеру, мою программу контроллера для холодильника на элементе Пельтье. Как ее сделать по такому принципу? Как с помощью простых последовательных операций выполнить все необходимые действия? Эта программа написана на ассемблере PIC контроллера. Она выполняет множество параллельных операций:

  • С периодом 10 мс опрашивает три кнопки, обеспечивает цифровую фильтрацию сигналов кнопок, устранения дребезга.
  • Каждые 2 мс регенерирует данные светодиодных семисегментных индикаторов и светодиодов.
  • Формирует сигналы управления и считывает данные с двух датчиков температуры DS18B20 с интерфейсом 1-wire. Необходимо каждые 100 мкс формировать новый бит чтения или записи для каждого датчика.
  • Каждые 100 мкс считывает аналоговые значения выходного тока, выходного напряжения, напряжения питания.
  • Усредняет значения выходных тока и напряжения за 10 мс, вычисляет мощность на элементе Пельтье.
  • Постоянно работает сложная система регуляторов: стабилизация тока, напряжения, мощности на элементе Пельтье;
  • ПИД (пропорционально интегрально дифференциальный) регулятор температуры.
  • Обрабатываются защитные функции, проверка целостности данных.
  • Обеспечивает чтение и запись внутреннего EEPROM.
  • Ну и, конечно, общее управление системой, логика работы.
  • Все эти операции надо выполнять циклически с разными периодами циклов. И ничего нельзя пропускать или приостанавливать. Такую программу невозможно реализовать простой последовательностью действий.

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

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

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

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

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

    Общие сведения об Ардуино.

    Ардуино (Arduino) это название аппаратно-программных средств для создания простых электронных систем автоматики и робототехники. Система имеет полностью открытую архитектуру и ориентирована на непрофессиональных пользователей.

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

    Аппаратная часть представляет собой электронные платы с микроконтроллером, сопутствующими элементами (стабилизатор питания, кварцевый резонатор, блокировочные конденсаторы и т.п.), портом для связи с персональным компьютером, разъемами для сигналов ввода-вывода и т.п.

    Благодаря простоте разработке устройств система Ардуино получила крайне широкое распространение. В одном Яндексе до 150 тысяч запросов ”Ардуино” в месяц. Несмотря на простоту разработки проектов, используя Ардуино, могут быть созданы достаточно сложные системы, особенно после появления высокопроизводительных вариантов контроллеров.

    В платах Ардуино используются микроконтроллеры Atmel AVR с прошитым в них загрузчиком. С помощью загрузчика записывается программа в микроконтроллер из персонального компьютера без применения аппаратных программаторов.

    Для программировании Ардуино используется язык C/C++, с некоторыми особенностями.

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

    Список уроков Следующий урок

    Поддержать проект

    5

    Автор публикации

    не в сети 3 дня

    Эдуард

    214

    Комментарии: 1748Публикации: 178Регистрация: 13-12-2015

    Подключение вашей платы 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.ru

    Данный документ разъясняет, как подключить плату Arduino к компьютеру и загрузить ваш первый скетч.

    1. Необходимое железо — Arduino и USB-кабель
    2. Программа — среда разработки для Arduino
    3. Подсоедините плату
    4. Установите драйвера
    5. Запустите среду разработки Arduino
    6. Откройте готовый пример
    7. Выберите вашу плату
    8. Выберите ваш последовательный порт
    9. Загрузите скетч в Arduino
    Необходимое железо — Arduino и USB-кабель

    В этом руководстве предполагается, что вы используете Arduino Uno, Arduino Duemilanove, Nano или Diecimila.

    Вам потребуется также кабель стандарта USB (с разъемами типа USB-A и USB-B): такой, каким, к примеру, подключается USB-принтер. (Для Arduino Nano вам потребуется вместо этого кабель с разъемами А и мини-В).

    Программа – среда разработки для Arduino

    Найдите последнюю версию на странице скачивания.

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

    Подсоедините плату

    Arduino Uno, Mega, Duemilanove и Arduino Nano получают питание автоматически от любого USB-подключения к компьютеру или другому источнику питания. При использовании Arduino Diecimila убедитесь, что плата сконфигурирована для получения питания через USB-подключение. Источник питания выбирается с помощью маленького пластикового джампера, надетого на два из трех штырьков между разъемами USB и питания. Проверьте, чтобы он был установлен на два штырька, ближайших к разъему USB.

    Подсоедините плату Arduino к вашему компьютеру, используя USB-кабель. Должен загореться зеленый светодиод питания, помеченный PWR.

    Установите драйвера

    Установка драйверов для Arduino Uno на Windows7, Vista или XP:

    • Подключите вашу плату и подождите, пока Windows начнет процесс установки драйвера. Через некоторое время, несмотря на все её попытки, процесс закончится безрезультатно.
    • Нажмите на кнопку ПУСК и откройте Панель управления.
    • В панели управления перейдите на вкладку Система и безопасность (System and Security). Затем выберите Система. Когда откроется окно Система, выберите Диспетчер устройств (Device Manager).
    • Обратите внимание на порты (COM и LPT). Вы увидите открытый порт под названием «Arduino UNO (COMxx)».
    • Щелкните на названии «Arduino UNO (COMxx)» правой кнопкой мышки и выберите опцию «Обновить драйвер» (Update Driver Software).
    • Кликните «Browse my computer for Driver software».
    • Для завершения найдите и выберите файл драйвера для Uno – «ArduinoUNO.inf», расположенный в папке Drivers программного обеспечения для Arduino (не в подкаталоге «FTDI USB Drivers»).
    • На этом Windows закончит установку драйвера.

    См. также: пошаговые скриншоты для установки Uno под Windows XP.

    Установка драйверов для Arduino Duemilanove, Nano или Diecimila в Windows7, Vista или XP:

    Когда вы подключите плату к компьютеру, Windows запустит процесс установки драйвера (если до этого вы не подключали к компьютеру плату Arduino).

    В Windows Vista драйвер скачается и установится автоматически (это действительно работает!)

    В Windows XP откроется Мастер установки нового оборудования (Add New Hardware wizard).

    • На вопрос «Подключиться к узлу Windows Update для поиска программного обеспечения? (Can Windows connect to search for software?)» выберите ответ «Нет, не в этот раз (No, not this time)». Нажмите «Далее».
    • Выберите «Установить из списка или указать местонахождение (Advanced) (Install from a list or specified location (Advanced))» и нажмите «Далее».
    • Убедитесь, что выбрано «Искать наиболее подходящий драйвер в указанном месте (Search for the best driver in these locations)»; снимите флажок «Искать на съемных носителях (Search removable media)»; выберите «Добавить область поиска (Include this location in the search)» и укажите папку drivers/FTDI USB Drivers в дистрибутиве Arduino. (Последнюю версию драйвера можно найти на FTDI веб-сайте). Нажмите «Далее».
    • Мастер начнет поиск и затем сообщит вам, что обнаружен «USB Serial Converter». Нажмите «Готово (Finish)».
    • Снова появится мастер установки нового оборудования. Выполните все те же шаги с теми же опциями и указанием того же пути для поиска. На этот раз будет обнаружен «USB Serial Port».

    Проверить, что драйвера действительно установлены можно, открыв Диспетчер устройств (Windows Device Mananger) (он находится во вкладке Оборудование(Hardware) панели Свойства системы(System)). Найдите «USB Serial Port» в разделе «Порты (Ports)» – это и есть плата Arduino.

    Запустите среду разработки Arduino

    Дважды щелкните на приложении для Arduino.

    Откройте готовый пример

    Откройте мгновенный пример скетча «LED» по адресу: File > Examples > 1.Basics > Blink.

    Выберите вашу плату

    Вам нужно выбрать пункт в меню Tools > Board menu, соответствующий вашей плате Arduino.


    Выбор Arduino Uno

    Для Duemilanove Arduinoплат с ATmega328 (проверьте на плате надпись на микросхеме) выберите Arduino Duemilanove или Nano с ATmega328. Вначале платы Arduino выпускались с ATmega168; для них выберите Arduino Diecimila, Duemilanove, или Nano с ATmega168. Подробно о пунктах меню платы можно прочитать на странице «Среда разработки».

    Выберите ваш последовательный порт

    Выберите устройство последовательной передачи платы Arduino из меню Tools | Serial Port. Вероятно, это будет COM3 или выше (COM1 и COM2 обычно резервируются для аппаратных COM-портов). Чтобы найти нужный порт, вы можете отсоединить плату Arduino и повторно открыть меню; пункт, который исчез, и будет портом платы Arduino. Вновь подсоедините плату и выберите последовательный порт.

    Загрузите скетч в Arduino

    Теперь просто нажмите кнопку «Upload» в программе – среде разработки. Подождите несколько секунд – вы увидите мигание светодиодов RX и TX на плате. В случае успешной загрузки в строке состояния появится сообщение «Done uploading (Загрузка выполнена)». (Замечание. Если у вас Arduino Mini, NG или другая плата, вам необходимо физически кнопкой подать команду reset непосредственно перед нажатием кнопки «Upload»).

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

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

    Теперь загрузим нашу первую программу в плату 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.

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

    Подводим итоги урока

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

    В следующих уроках мы с вами узнаем, как работает контроллер, разберем устройство платы Arduino Uno и запустим свой первый проект.

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

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

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

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

    Рейтинг
    ( 2 оценки, среднее 5 из 5 )
    Понравилась статья? Поделиться с друзьями:
    Для любых предложений по сайту: [email protected]