Не знаете, с чего начать изучение Arduino? Проект «Занимательная робототехника» представляет учебный курс «Arduino для начинающих». Серия представлена 10 уроками, а также дополнительным материалом. Уроки включают текстовые инструкции, фотографии и обучающие видео. В каждом уроке вы найдете список необходимых компонентов, листинг программы и схему подключения. Изучив эти 10 базовых уроков, вы сможете приступить к более интересным моделям и сборке роботов на основе Arduino. Курс ориентирован на новичков, чтобы к нему приступить, не нужны никакие дополнительные сведения из электротехники или робототехники.
Краткие сведения об Arduino
Что такое Arduino?
Arduino (Ардуино) — аппаратная вычислительная платформа, основными компонентами которой являются плата ввода-вывода и среда разработки. Arduino может использоваться как для создания автономных интерактивных объектов, так и подключаться к программному обеспечению, выполняемому на компьютере. Arduino как и Raspberry Pi относится к одноплатным компьютерам.
Как связаны Arduino и роботы?
Ответ очень прост — Arduino часто используется как мозг робота.
Преимущество плат Arduino перед аналогичными платформами — относительно невысокая цена и практически массовое распространение среди любителей и профессионалов робототехники и электротехники. Занявшись Arduino, вы найдете поддержку на любом языке и единомышленников, которые ответят на вопросы и с которым можно обсудить ваши разработки.
Подробнее об Arduino читайте в нашей публикации «Arduino: 10 лет вместе».
Как настроить Ардуино?
Одним из главных преимуществ конструктора является его безопасность относительно настроек пользователя. Ключевые настройки, потенциально опасные для Arduino, являются защищенными и будут недоступны.
Поэтому даже неопытный программист может смело экспериментировать и менять различные опции, добиваясь нужного результата. Но на всякий случай очень рекомендуем прочитать три важных материала по тому как не испортить плату:
- Как уберечь Arduino и другие платы от кривых рук
- 10 способов «убить» микроконтроллер Arduino
- Как безопасно подключать внешние устройства к микроконтроллеру?
Алгоритм классической настройки программы Arduino выглядит так:
- установка IDE, которую можно загрузить ниже или здесь или с сайта производителя;
- установка программного обеспечения на используемый ПК;
- запуск файла Arduino;
- вписывание в окно кода разработанную программу и перенос ее на плату (используется USB кабель);
- в разделе IDE необходимо выбрать тип конструктора, который будет использоваться. Сделать это можно в окне «инструменты» — «платы»;
- проверяете код и жмете «Дальше», после чего начнется загрузка в Arduino.
1.8.7 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit Linux ARM | Код на Github |
1.8.6 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit Linux ARM | Код на Github |
1.8.5 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit Linux ARM | Код на Github |
1.8.4 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit Linux ARM | Код на Github |
1.8.3 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit Linux ARM | Код на Github |
1.8.2 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit Linux ARM | Код на Github |
1.8.1 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit Linux ARM | Код на Github |
1.8.0 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit Linux ARM | Код на Github |
1.6.13 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit Linux ARM | Код на Github |
1.6.12 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit Linux ARM | Код на Github |
1.6.11 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit Linux ARM | Код на Github |
1.6.10 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit Linux ARM | Код на Github |
1.6.9 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit Linux ARM | Код на Github |
1.6.8 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit | Код на Github |
1.6.7 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit | Код на Github |
1.6.6 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit | Код на Github |
1.6.5 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit | Код на Github |
1.6.4 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit | Код на Github |
1.6.3 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit | Код на Github |
1.6.2 | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit | Код на Github |
1.6.1 | Windows Windows Installer | MAC OS X MAC OS X Java 7+ | Linux 32 Bit Linux 64 Bit | Код на Github |
1.6.0 | Windows Windows Installer | MAC OS X MAC OS X Java 7 | Linux 32 Bit Linux 64 Bit | Код на Github |
1.5.8 BETA | Windows Windows Installer | MAC OS X MAC OS X Java 7 | Linux 32 Bit Linux 64 Bit | Код на Github |
1.5.7 BETA | Windows Windows Installer | MAC OS X MAC OS X Java 7 | Linux 32 Bit Linux 64 Bit | Код на Github |
1.5.6-r2 BETA | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit | Код на Github |
1.5.5 BETA | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit | Код на Github |
1.5.4 BETA | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit | Код на Github |
1.5.3 BETA | Windows Windows Installer | MAC OS X | Linux 32 Bit Linux 64 Bit | Код на Github |
1.5.2 BETA | Windows | MAC OS X | Linux 32 Bit Linux 64 Bit | Код на Github |
1.5.1 BETA | Windows | MAC OS X | Linux 32 Bit Linux 64 Bit | Код на Github |
1.5 BETA | Windows | MAC OS X | Linux 32 Bit Linux 64 Bit | Код на Github |
Урок 1. Мигающий светодиод на Arduino
На первом уроке вы научитесь подключать светодиод к Arduino и управлять его мигать. Это самая простая и базовая модель.
Светодиод — полупроводниковый прибор, создающий оптическое излучение при пропускании через него электрического тока в прямом направлении.
Текст и видео урока «Мигающий светодиод».
Урок 3. Подключение потенциометра на Arduino
В этом уроке вы научитесь подключать потенциометр к Arduino.
Потенциометр — это резистор с регулируемым сопротивлением. Потенциометры используются как регуляторы различных параметров – громкости звука, мощности, напряжения и т.п. Это также одна из базовых схем. В нашей модели от поворота ручки потенциометра будет зависеть яркость светодиода.
Текст и видео урока «Потенциометр».
Урок 7. Фоторезистор на Arduino
На этом уроке нашего курса вы научитесь подключать фоторезистор к Arduino.
Фоторезистор — резистор, сопротивление которого зависит от яркости света, падающего на него.
В нашей модели светодиод горит только если яркость света над фоторезистором меньше определенной, эту яркость можно регулировать в программе.
Текст и видео урока «Фоторезистор».
Программирование
Программирование Arduino легко: сначала вы используете редактор кода IDE для написания программы, а затем компилируете и загружаете её одним кликом.
Программа для Arduino включает в себя две основные функции:
- setup()
- loop()
Вы можете использовать функцию setup() для инициализации настроек платы. Эта функция выполняется только один раз, при включении платы.
Функция loop() выполняется после завершения функции setup(), и в отличие от функции setup() она работает постоянно.
Урок 8. Датчик движения (PIR) на Arduino. Автоматическая отправка E-mail
На этом уроке нашего курса вы научитесь подключать датчик движения (PIR) к Arduino, а также организовывать автоматическую отправку e-mail.
Датчик движения (PIR) — инфракрасный датчик для обнаружения движения или присутствия людей или животных.
В нашей модели при получении с PIR-датчика сигнала о движении человека Arduino посылает компьютеру команду отправить E-mail и отправка письма происходит автоматически.
Текст урока «Датчик движения (PIR). Автоматическая отправка E-mail».
Набиваем руку
Для того чтобы уверенно реализовывать сложные задумки, пользоваться программной средой и Ардуино начинающим необходимо «набить руку». Для этого рекомендуется для начала освоить более легкие задачи и проекты.
Самый простой проект, который вы можете сделать — заставить светодиод, который расположен на плате Ардуино напротив порта, мигал каждую секунду.
Для этого необходимо:
- подключить конструктор к ПК,
- открыть программу, в разделе «сервис» ищем блок «последовательный порт»
- выбираем необходимый интервал
- после чего необходимо добавить код, который есть в Arduino IDE в разделе «Примеры».
Первыми проектами в Ардуино для начинающих могут стать:
- мигающий светодиод;
- подключение и управление датчиком температуры;
- подключение и управление датчиком движения;
- подключение фоторезистора;
- управление сервоприводом.
Урок 9. Подключение датчика температуры и влажности DHT11 или DHT22
На этом уроке нашего вы научитесь подключать датчик температуры и влажности DHT11 или DHT22 к Arduino, а также познакомитесь с различиями в их характеристиках.
Датчик температуры и влажности — это составной цифровой датчик, состоящий из емкостного датчика влажности и термистора для измерения температуры.
В нашей модели Arduino считывает показания датчика и осуществляется вывод показаний на экран компьютера.
Текст урока «Подключение датчика температуры и влажности DHT».
Функции программ
Ниже приведен список наиболее часто используемых функции при программировании Arduino:
- pinMode – устанавливает вывод в режим входа или выхода;
- analogRead – считывает аналоговое напряжение на аналоговом входном выводе;
- analogWrite – записывает аналоговое напряжение в аналоговый выходной вывод;
- digitalRead – считывает значение цифрового входного вывода;
- digitalWrite – задает значение цифрового выходного вывода в высокий или низкий уровень;
- Serial.print – пишет данные в последовательный порт в виде удобочитаемого текста ASCII.
Урок 11. Подключение модуля часов реального времени DS3231
На последнем уроке нашего курса вы научитесь подключать модуль часов реального времени из семейства DS к плате Arduino, а также познакомитесь с различными интересными схемами.
Модуль часов реального времени — это электронная схема, предназначенная для учета хронометрических данных (текущее время, дата, день недели и др.), представляет собой систему из автономного источника питания и учитывающего устройства.
Текст и видео урока «Подключение модуля часов реального времени DS3231».
Приложение. Готовые каркасы и роботы Arduino
Начинать изучать Arduino можно не только с самой платы, но и с покупки готового полноценного робота на базе этой платы — робота-паука, робота-машинки, робота-черепахи и т.п. Такой способ подойдет и для тех, кого электрические схемы не особо привлекают.
Приобретая работающую модель робота, т.е. фактически готовую высокотехнологичную игрушку, можно разбудить интерес к самостоятельному проектированию и робототехнике. Открытость платформы Arduino позволяет из одних и тех же составных частей мастерить себе новые игрушки.
Обзор готовых игрушек-роботов Arduino.
Еще один обзор готовых ардуино-роботов.
Еще один вариант — покупка каркаса или корпуса робота: платформы на колесиках или гусенице, гуманоида, паука и т.п. В этом случае начинку робота придется делать самостоятельно.
Обзор каркасов для роботов Arduino и других плат.
Первый проект
Вот мы и дошли до нашего первого проекта. Давайте соединим Ардуино, светодиод и кнопку. Этот проект отлично подойдет начинающим.
Схема у нас будет такая:
Светодиод загорится после нажатия на кнопку, а после следующего нажатия погаснет. Сам скетч или программа для Ардуино будет такой:
// пины подключенных устройств int switchPin = 8; int ledPin = 11; // переменные для хранения состояния кнопки и светодиода boolean lastButton = LOW; boolean currentButton = LOW; boolean ledOn = false; void setup() { pinMode(switchPin, INPUT); pinMode(ledPin, OUTPUT); } // функция для подавления дребезга boolean debounse(boolean last) { boolean current = digitalRead(switchPin); if(last != current) { delay(5); current = digitalRead(switchPin); } return current; } void loop() { currentButton = debounse(lastButton); if(lastButton == LOW && currentButton == HIGH) { ledOn = !ledOn; } lastButton = currentButton; digitalWrite(ledPin, ledOn); }
Вы могли заметить функцию debounse, о которой мы еще не писали. Она нужна для подавления дребезга контактов.
После того, как Вы разберетесь с начальными навыками работы с платой можно приступать к реализации более сложных и многогранных задач. Конструктор позволяет создать RC-машинку, управляемый вертолет, создать свой телефон, управляемый катер, создать систему «умный дом» и т.д.
Для ускорения освоения работы с платой Ардуино рекомендуем вам начать делать устройства из нашей рубрики Уроки, где по шагам описаны процессы создания самых интересных устройств и гаджетов.