Название Arduino является в настоящее время этаким «модным» словом для большинства радиолюбителей и всех, кто мало-мальски знаком с электроникой, поскольку данная платформа позволяет создавать электронные устройства быстро и дешево. Наличие обширного онлайн сообщества данной платформы делает ее идеальным выбором для тех, кто только начал свое знакомство с электроникой и программированием. Даже людям, не имеющим технического образования (а именно для таких она и была первоначально создана), освоить Arduino будет достаточно просто.
Почему так актуальна эта платформа? Как начать работу с ней? Как она может улучшить ваш стиль жизни? Все эти вопросы будут рассмотрены в данной статье. Для этого мы познакомимся с установкой среды Arduino IDE на ваш компьютер и загрузим в нее небольшую программу, реализующую мигание светодиода, который мы подключим к 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 портом вашего компьютера.
Синий кабель для программирования может выполнять следующие три функции:
- Он запитывает плату 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 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 Uno (купить на AliExpress).
- Кабель для программирования.
- Светодиод (любого цвета).
- Кнопка.
- Резистор 1 кОм.
- Макетная плата.
- Соединительные провода.
Схема соединений
Представлена на следующем рисунке.
Кнопку подсоединим ко второму контакту Arduino, то есть одним концом кнопка будет подсоединена ко второму контакту Arduino, а вторым – к земле. То есть всегда когда мы будем нажимать кнопку на второй контакт Arduino будет подаваться земля.
Светодиод подсоединен к контакту 3 через резистор 1 кОм. То есть катод светодиода подсоединен к земле, а анод – к контакту 3 Arduino через резистор.
Программирование Arduino
Теперь, когда необходимая нам схема собрана, мы можем начать программирование платы Arduino UNO. Полный текст программы будет приведен в конце статьи, в этом разделе будет дано объяснение некоторых участков кода этой программы.
В каждой программе для Arduino должны обязательно присутствовать две функции – это функции void setup () и void loop (), иногда их называют «абсолютным минимумом», необходимым для написания программы. Все операции, которые мы запишем внутри void setup (), исполнятся только один раз, а операции, которые мы запишем внутри void loop () – будут исполняться снова и снова. Пример этих функций показан в коде ниже – именно в таком виде они создаются когда вы выбираете пункт меню File -> New.
void setup() { // put your setup code here, to run once: } void loop() { // put your main code here, to run repeatedly: } |
Начнем писать программу в функции setup (). Обычно в этой функции объявляются названия пинов (контактов). В нашей программе нам необходимо объявить всего два контакта: контакт 2 в качестве входного контакта и контакт 3 в качестве выходного контакта. Это можно сделать с помощью следующих строчек кода:
pinMode(2,INPUT); pinMode (3,OUTPUT); |
Но здесь необходимо внести небольшое изменение в программу – нам желательно чтобы контакт 2, который мы объявили в качестве входного контакта, никогда не был бы в «плавающем» состоянии. Это означает что входной контакт должен быть всегда подсоединен либо к +5 В, либо к земле. А в нашем случае при нажатии кнопки он будет подсоединен к земле, а при отжатой кнопке он будет находиться в плавающем состоянии. Чтобы исключить это нам необходимо задействовать внутренний подтягивающий резистор, который находится внутри микроконтроллера ATmega 328 (то есть снаружи мы этот резистор не видим). Для его задействования необходимо написать соответствующую строчку кода в программе.
С помощью этой строчки кода контакт 2 будет подключаться через подтягивающий резистор к напряжению +5 В всегда когда он не подсоединен к земле. То есть мы должны в одной из написанных нами строчек кода изменить слово INPUT на слово INPUT_PULLUP как показано ниже.
Теперь, когда мы закончили с функцией setup (), перейдем к функции loop (). В этой функции мы должны проверять не подсоединен ли контакт 2 к земле (то есть на его входе низкий уровень – LOW) и если он подсоединен в земле, то мы должны зажечь светодиод при помощи подачи на контакт 3 высокого уровня (HIGH). А если контакт 2 не подсоединен к земле (то есть кнопка не нажата), то мы должны держать светодиод в выключенном состоянии при помощи подачи на контакт 3 низкого уровня (LOW). В программе это будет выглядеть следующим образом:
if (digitalRead(2) == LOW) { digitalWrite(3,HIGH); } else { digitalWrite(3,LOW); } |
В этих строчках кода оператор digitalRead() используется для проверки статуса (состояния) входного контакта. Если контакт подсоединен к земле, то оператор digitalRead() возвратит значение LOW, а если оператор подсоединен к +5 В, то оператор возвратит значение HIGH.
Аналогично, оператор digitalWrite() используется для установки состояния выходного контакта. Если мы установим контакт в состояние HIGH, то на его выходе будет напряжение +5 В, а если мы установим контакт в LOW, то на его выходе будет 0 В.
Таким образом в нашей программе когда мы нажимаем кнопку на контакт 2 будет подана земля и, соответственно, на контакт 3 мы подаем высокий уровень +5 В (HIGH) чтобы зажечь светодиод. Если условие не выполняется – то есть на контакт 2 не подана земля, то мы на контакт 3 подаем низкий уровень 0 В (LOW) чтобы выключить светодиод.
На этом наша программа закончена, теперь загрузим код программы на нашу плату Arduino таким же образом как ранее мы загружали код программы мигания светодиодом.
Проверка работы схемы
После того как мы загрузили программу на нашу плату Arduino самое время проверить корректность ее работы. Схема соединений представлена выше. Чтобы проверить корректность работы программы необходимо нажать кнопку и проверить загорится ли при этом светодиод. Затем, когда мы отпустим кнопку (прекратим ее нажимать), светодиод должен погаснуть.
Если программа не работает или у вас есть какие-нибудь вопросы по представленному в этой статье материалу, то вы можете задать их в комментариях к данной статье. Будем надеяться, что ваш первый шаг в освоении Arduino будет все же успешным.
Полный текст программы выглядит следующим образом:
void setup() { pinMode(2,INPUT_PULLUP); pinMode (3,OUTPUT); } void loop() { if (digitalRead(2) == LOW) { digitalWrite(3,HIGH); } else { digitalWrite(3,LOW); } } |
Загрузка…
38 997 просмотров
Заказывался набор на «АлиЭкспресс», а именно вот здесь https://aliexpi.com/O4Yw. Спустя пару недель ожидания он наконец пришел.
Его стоимость около 1700 рублей, доставка бесплатная. На «Али» есть много подобных наборов, но я выбрал именно этот только потому, что была возможность отправки из РФ, но, к сожалению, трек-номер, который прислал продавец не работал, в остальном проблем не возникло.
Рекомендуем посмотреть видео версию:
Что в наборе
В посылке меня ждал добротный кейс-органайзер из толстого пластика. Он надежно закрывается двумя защелками, состоит из двух уровней, что позволяет более рационально сортировать его содержимое.
Открываем его и видим памятку, на которой изображены и подписаны все компоненты набора, памятку для определения номиналов резисторов, визитку диск, судя по тому, что на нём написано — там программы, библиотеки и какие-то уроки. Кстати, QR-код на диске ведёт на облако, где можно скачать содержимое диска, если у вас нет оптического привода.
Дальше нас встречает крупная коробка, а в ней беспаечная макетная плата. Она нужна для сборки различных схем с помощью перемычек, и, как видно из названия, без применения паяльника. Это очень удобно при обучении, во-первых, из-за простоты и скорости сборки, а во-вторых, вы не перегреете детали и не оторвете дорожек от плат. Плата разделена на три части. По краям расположены выводы для подключения питания, а посередине часть для сборки схем. На следующем рисунке вы видите, как они соединяются между собой.
Для питания схем, собранных на макетной плате в наборе есть преобразователь питания с двумя выходными напряжениями (3.3 и 5 вольт). Он легко устанавливается на плату и у него довольно простое устройство. Для формирования нужных напряжений используются линейные стабилизаторы AMS1117, а напряжения переключаются с помощью двух перемычек. То есть вы можете одни пару шин использовать для одного напряжения, а другую для другого, что крайне удобно, если часть модулей проекта питается от 3.3 вольт, а такое периодически встречается.
На верхнем уровне набора дальше идет в основном мелочевка, например, семисегментные индикаторы. В набор их входит пара, один четырёх разрядный, а другой одноразрядный.
Дальше мы видим датчик звука или шума, синий прямоугольник — это многооборотный подстроечный резистор, для регулировки чувствительности. У него есть аналоговый (AO) и цифровой выход (DO). Его можно использовать в проектах типа хлопкового выключателя или акустического датчика движения для управления освещением. Кстати, датчик построен на базе сдвоенного компаратора напряжения LM393.
Чтобы мы научились управлять двигателями постоянного тока нам положили небольшой коллекторный моторчик, такой как устанавливается в детских игрушках. К нему припаяны провода со штырьковыми наконечниками для подключения к макетной плате или в другой разъём типа dupont. Забавно, что к нему в комплект положили небольшой пропеллер, видимо, чтобы можно было наблюдать, как происходит управление электродвигателем и изменение скорости его вращения.
Для подключения кнопок, светодиодов, транзисторов к пинам микроконтроллера есть целый набор из 100 резисторов (10 номиналов по 10 штук). Номиналы, согласно описи набора с сайта продавца следующие: 10 Ом, 100 Ом, 220 Ом, 330 Ом, 1 кОм, 2 кОм, 5.1 кОм, 10 кОм, 100 кОм, 1 Мом. Но их соответствие мы проверим по мере изучения и сборки проектов из этого набора.
Ну а для удобной сборки проектов здесь есть перемычки типа «папа-мама», в виде шлейфа и перемычки типа «папа-папа», последние просто связаны в пучок.
Следующий у нас — модуль HC-SR04. Это ультразвуковой дальномер. Принцип его работы основан на принципе эхолокации, то есть у нас есть излучатель и приемник отраженного от объекта сигнала. У него четыре вывода — два для подключения питания и два сигнальных. Характеристики у него следующие:
- напряжение питания: 5 В;
- потребление в режиме тишины: 2 мА;
- потребление при работе: 15 мА;
- диапазон расстояний: 2–400 см;
- эффективный угол наблюдения: 15°;
- рабочий угол наблюдения: 30°;
Для управления нагрузкой, которая питается от сети 220В в наборе есть небольшое реле для монтажа на печатную плату. Его маркировка — SRD-05VDC-SL-C, из него мы видим, что номинальное напряжение управления (катушки) – 5 Вольт постоянного тока. У него есть 1 группа переключающих контактов (нормально-замкнутый и нормально-разомкнутый) Максимальный коммутируемый ток — 10А, а напряжение — 250 вольт переменного тока.
В наборе есть DHT-11 — модуль температуры и влажности. С его помощью можно собрать простую метеорологическую станцию и отправлять с неё данные на компьютер или выводить на дисплей, подключенный непосредственно к Arduino. Странно, что модуль припаян к плате под углом, выводы обрезаны так, что его нельзя положить на плату горизонтально. Он состоит из термистора и емкостного датчика влажности.
Следующим в наборе идёт Датчик уровня воды. Он представляет собой плату с печатными проводниками, уровень воды измеряется посредством измерения проводимости среды между печатными проводниками. Чем большую часть проводников покрывает вода, тем больше проводимость между ними.
В наборе есть два пакетика с мелочевкой, в них лежат:
- Светодиоды белого, желтого, синего, зеленого и красного цветов по 5 штук каждого и один RGB светодиод.
- Пара полупроводниковых выпрямительных диодов.
- Термистор.
- 2 фоторезистора.
- 2 биполярных NPN-транзисторов типа 2222а.
- 2 микросхемы — сдвиговый регистр 74HC595 (с его помощью можно «увеличивать» количество пинов, например, при подключении группы светодиодов или семисегментных индикаторов) и драйвер для двигателей постоянного тока (двухканальный, в нём два H-моста, благодаря чему возможно реверсирование и регулировка оборотов двух двигателей, а также подключение шаговых двигателей).
- Потенциометр.
- SW-520D — датчик наклона и вибрации, внутри него пара контактов и шарик, слышно его дребезжание если слегка потрусить. При наклоне шарик просто замыкает контакты.
- Два буззера (пищалки) — активная и пассивная.
- Микропереключатели (кнопки).
На втором уровне кейса нас встречает шаговый двигатель. Его используют там, где нужно точное позиционирование рабочего органа в пространстве, например, ЧПУ-станки, 3д-принтеры, спидометры. Для него также в наборе есть драйвер, построенный на микросхеме ULN2003A. Разъём на драйвере и штекер шагового двигателя унифицированы, что обеспечивает удобное подключение.
Особенности драйвера:
- номинальный ток коллектора одного ключа — 0,5А;
- максимальное напряжение на выходе до 50 В;
- защитные диоды на выходах позволяют работать на индуктивную нагрузку — реле, двигатели и пр.
Переходим непосредственно к плате Arduino UNO R3. К моему удивлению, она выполнена качественно, плохой пайки и несмытого припоя я не увидел, сердце платы — традиционный микроконтроллер ATmega328P, установленный в панельке, а качестве USB-UART преобразователя использует микросхема ATmega16U2, а не с CH340 как в большинстве китайских плат. К сведению, это часть схемы, которая отвечает за связь микроконтроллера с компьютером по USB. В комплекте идёт синий экранированный USB-шнурок, не слишком длинный, зато гибкий и качественный. Плата работает, при подключении питания мигает штатный светодиод (который к 13 порту подключен, видно в правой верхней части иллюстрации), что говорит о том, что выполняется предустановленный код мигалки.
В набор входит и один шилд для прототипирования и сборки схем, он представляет собой плату, которая устанавливается в разъёмы Ардиуно, на самом шилде есть пятачки для пайки, а также макетная плата. Также на нём продублированы все пины платы и есть кнопка сброса. Одной из особенностей Arduino является модульность, благодаря тому, что на шилдах также расположены разъёмы, которые дублируют разъёмы первой платы, вы можете установить много шилдов, получив таким образом своеобразный бутерброд.
Осталось совсем немного деталей, поэтому переходим дальше. жидкокристаллический дисплей с подсветкой. Он может отображать две строки по 16 символов, это говорится в маркировке «1602». С обратной стороны платы припаяна плата управления, на которую подаётся питание и сигнал. С одной из сторон дисплея располагается светодиод подсветки.
Следующая крупная деталь из набора — это клавиатура с гибким шлейфом. На его конце припаяны разъёмы типа «мама», что опять-таки позволяет удобно подключать её к Arduino.
Есть еще один двигатель — это сервопривод, достаточно популярная модель, самая маленькая и дешевая SG90. Его вал вращается на 180 градусов, и при таких небольших размерах развивается усилие на валу до 1.2кг/см. В комплекте идут различные адаптеры для подключения к механизмам.
Для освоения дистанционного управления нам положили ИК-пульт и модуль с ИК-приёмником. Кстати, поставляется без батареек.
Осталось 2 элемента в наборе — провод для подключения питания от кроны к плате Arduino или к источнику питания для макетной платы и джойстик.
Джойстик выполнен качественно, двигается по двум осям, есть микропереключатель (помечен стрелкой), так что он реагирует и на нажатия. Грибок выполнен из приятного прорезиненного материала, довольно плотный, напоминает стики от старых джойстиков PS2. Чтобы не было прокручиваний джойстика, посадочное место прямоугольной формы, такой же формы и шток, на который он надевается.
Заключение
Мне этот набор понравился. Все компоненты выполнены качественно, хотя часто в китайских модулях можно увидеть остатки немытого флюса и плохую пайку. Визуально здесь этого нет. Главным недостатком я отмечу то, что на некоторых элементах погнуты вывода, но их можно легко выправить пинцетом.
Безусловно заказать все эти детали отдельно будет дешевле, но такой набор позволяет начинающему получить всё необходимое и незамедлительно приступить к обучению.
Предыдущая
Обзоры и НовостиМастер-класс как заменить галогенные лампочки 12в на светодиодные
Следующая
ArduinoУрок по Arduino №1: подключаем, настраиваем, мигаем одноцветными и RGB-светодиодами
Руководство по освоению Arduino на русском языке с примерами и ссылками на программы.
В статье Вы найдете набор программ «скетчей» (наборов команд) для первых экспериментов с Arduino с подробными описаниями на русском языке.
А так же руководство с открытым исходным кодом для Arduino на русском языке. Краткое описание и пояснение особенностей языка программирования С и интерфейса Arduino.
Посмотреть/cкачать руководство по освоению Arduino (формат PDF, размер файла 1245 KБ) =>
Написать комментарий
- Регистрация
→
Обновить капчу (CAPTCHA)
0 комментариев
СОДЕРЖАНИЕ ►
- Учебники по Ардуино в формате pdf
- Книги по Ардуино для начинающих
- 25 крутых проектов с Ардуино
- С чего начать изучение Ардуино
- Что купить для изучения Ардуино
Чтобы начать изучать программирование Arduino с нуля, вам требуется набор литературы или проверенные источники в Интернете (как наш сайт), где размещены Уроки для начинающих на Ардуино с подробными инструкциями и комментариями. На этой странице вы узнаете, что лучше купить для изучения Ардуино в первую очередь, с чего начать изучать Ардуино и какие книги можно скачать для первых шагов.
Arduino книги с уроками и проектами на русском
Выполнив первые уроки, а большинство знакомство с микроконтроллером начинает с самого простого задания — подключения светодиода к плате, вы поймете, что сделать какое-то устройство или проект на Ардуино своими руками довольно просто. Суть микроконтроллеров в том, что они рассчитаны на любителей, у которых нет больших знаний в программирование и они даже полные чайники в электротехнике.
Учебники и книги по Ардуино для начинающих
Быстрый старт с набором Arduino (PDF) Книга содержит полезную информацию для ознакомления с Arduino и практические эксперименты с иллюстрациями. Авторы пособия подробно рассказали, как установить программное обеспечение на компьютер и изложили 14 простых проектов, где для работы необходимо минимум первоначальных электронных компонентов. |
|
Практическая энциклопедия Arduino Учебник содержит уже 33 урока по программированию Ардуино с использованием различных модулей и датчиков. Российские авторы изложили в своем учебнике практические уроки с цветными иллюстрациями и подробными комментариями, все скетчи из книги можно скачать из Интернета по ссылкам, указанным в уроках. |
|
Джереми Блум. Изучаем Arduino Учебник переведен на русский и содержит подробные уроки для программирования микроконтроллера от известного автора. К плюсам данной книги можно отнести ссылки на информационный сайт, а также наличие видео уроков от Джереми Блума на YouTube (они тоже переведены на русский язык и озвучены). |
|
Arduino и Raspberry Pi в проектах IoT (PDF) Книга рассчитана на опытных пользователей и содержит уроки по Ардуино для создания проектов с использованием Intemet of Things (Интернета вещей). Показана организация доступа к сети Интернет, отправка и получение данных с использованием IoT сервисов. Уделено внимание обмену данными с помощью GPRS/GSM Shield. |
Книги с интересными проектами на Ардуино
25 крутых проектов с Arduino (PDF) Книга содержит описание и руководство по сборке 25 крутых проектов на Ардуино. Марк Геддес написал руководство, где подробно расписано начало программирования в среде Arduino IDE, правила сборки электрических схем на макетной плате, даны инструкции с примерами интересных проектов для начинающих с нуля. |
|
Проекты с использованием Arduino (PDF) Учебник с наиболее глубоким изучением языка программирования Arduino, каждая команда разобрана автором в отдельном разделе с примером скетча. В учебнике есть раздел с обзором различных плат Arduino и подробно рассмотрено подключение радио модулей для создания проектов на дистанционном управлении. |
|
77 проектов для Arduino (PDF) Книга «77 проектов для Arduino» автор Петин В.А. подойдет как, для начинающих программистов, так и для тех, кто хорошо освоил Ардуино и хочет сделать самостоятельно интересные проекты на микроконтроллере. Начните сборку проектов на Ардуино с подборкой литературы от лучших авторов на нашем сайте. |
Скачать книги можно, как на компьютер, так и на телефон. Так как язык Arduino основан на языке программирования C++, то на мобильном устройстве можно начать изучать основы, а на компьютер скачать учебник по Ардуино на русском бесплатно и без регистрации. Первым делом рекомендуем вам прочитать, что такое Ардуино и что с ним можно сделать, особенно если вы еще не работали с этими платами.
С чего начать изучать Ардуино с нуля
Книга или учебник по Arduino на русском — это лишь теория и без практики здесь не обойтись. До того, как вы приступите к программированию микроконтроллера необходимо получить базовые знания по схемотехнике. Следует изучить основные радиоэлементы, их назначение, принцип работы, условные обозначения, как собирать электрические схемы. Для этого поможет следующая информация на нашем сайте:
- Основные законы электричества
- Радиоэлементы с фото и названиями
- Как собирать схемы на макетной плате
- Характеристики контроллеров Arduino
Для того чтобы программировать микроконтроллер Arduino следует установить на компьютере необходимое программное обеспечение, а также иметь всегда под рукой справочники по языку Arduino и описание ошибок в программе (скетче) для микроконтроллеров (они всегда будут появляться первое время). Для этого обратите внимание на следующую очень полезную информацию на нашем сайте:
- Установка Arduino на Windows
- Установка библиотек в Arduino
- Язык программирования Arduino
- Ошибки при компиляции Arduino
Что купить для изучения Ардуино с нуля
Совсем маленьким детям до 10 лет рекомендуем для начала купить наборы по сборке простых электрических схем без программирования, например, Знаток (есть различные комплектации конструктора) или Микроник. Если у ребенка появится интерес к электронике, то уже можно приобретать бесплатные учебники и заказывать стартовые наборы (эти комплекты в интернет магазинах называют Starter KIT).
Для детей можно заказать стартовые наборы на Алиэкспресс, где есть все необходимое для начала. Также можно посмотреть в интернете русские наборы на Arduino от Амперки и других производителей. Они будут стоить значительно дороже, но во многих есть инструкции на русском языке и уроки. С другой стороны, ничего не мешает выполнять уроки по Arduino на русском, используя недорогой набор из Китая.
На чтение 8 мин Просмотров 1.9к. Опубликовано 14.01.2023
Содержание
- Понятие Ардуино для начинающих
- Начало обучения
- Стартовый набор Ардуино
- Отличаем подделку Ардуино от оригинала
- Написание скетча
- Заключение
Понятие Ардуино для начинающих
Ардуино представляет из себя плату, в которую вводится скетч с помощью программы и компьютера. Ардуино является как бы головой собранного устройства и отвечает за многие процессы, в том числе это приём информации и передачи этой информации пользователю. Разберём пример для начинающих. Если мы возьмём ультразвуковой датчик, то он будет излучать ультразвук, который поможет прибору определить расстояние до какого-либо предмета. Информация будет передаваться на плату Ардуино, тем временем сама плата выведет нужное значение на дисплей. Её можно скачать с официального сайта: www.arduino.cc
Ардуино удобна для новичков по нескольким причинам, в том числе это простота использования. Для использования платы Ардуино не требуются дополнительные закупки аппаратуры к ней, сам скетч-код очень простой и пишется на упрощенном программном языке C++. Плата позволяет каждый раз усовершенствовать ваше устройство, можно добавлять как функционал, так и новые элементы, соответственно получать больше информации используя устройство. Работа с Ардуино начинается с написания первого скетча.
Начало обучения
Обучение работе с Ардуино следует начать с основных команд. Самое основное в системе Ардуино – это программирование платы. И соответственно, нужно научиться писать команды, чтобы далее уже загружать целый скетч на плату. Можно посмотреть множество видео, много статей из открытых источников и ознакомится с полезной информацией об этом процессе. В Интернете есть много информации по этому поводу. Начать обучение и знакомство с такой программой можно использовав различные симуляторы и системы, позволяющие использовать плату, не покупая её.
Что касаемо программной части системы, то нужно запомнить и принять во внимание основные команды, рассмотрим их в виде удобной и наглядной таблицы:
Основные команды для работы с программным кодом | |
Название | Описание команды |
Функция setup | выполняется в самом начале и только 1 раз сразу после включения или перезагрузки вашего устройства. Обычно в этой функции декларируют режимы пинов, открывают необходимые протоколы связи, устанавливают соединения с дополнительными модулями и настраивают подключенные библиотеки. Если для вашей прошивки ничего подобного делать не нужно, то функция все равно должна быть объявлена. |
Функция loop | выполняется после функции setup(). Loop в переводе с английского значит «петля». Это говорит о том что функция зациклена, то есть будет выполняться снова и снова. |
Само знакомство лучше всего начать через различные симуляторы, как и говорилось ранее. Там мы можем выполнить базовые схемы и подключения, а так же прописать к ним код, который покажет, правильно ввели мы его или нет. В основном, первые работы в симуляторе Ардуино выполняются с диодами. То есть сделать диод, который будет включаться и выключаться, позже добавить к нему кнопку, далее сделать мигающий и так далее. Тем самым каждый раз усложняя нашу схему.
Стартовый набор Ардуино
Допустим я новичок, что мне купить для самостоятельного изучения системы Ардуино? Такой вопрос актуален и очень интересен. Давай те же рассмотри, что купить новичку для ознакомления с этой темой. Составим список, который желательно купить себе для изучения:
- Плата Ардуино – как вы все поняли, платы от этой компании бывают разные, но чаще всего берут UNO или Nano. Плата Arduino Nano по своим размер маленькая, а соответственно не требует много место и дешевле, для базового ознакомления как раз таки она подойдёт. UNO как раз таки стандартная плата, которая имеет много разъёмов и она универсальна. Для вашего удобства, Ардуино создали макетную плату. Она полностью универсально и в ней не нужно ничего паять. Все элементы провода просто вставляются в отверстия. Для начинающих пользователей данной системы подойдёт отлично. В такую макетную плату вставляется и сама плата Arduino.
- Различные модули и датчики – конечно же без них сложно представить Ардуино, ведь для этих приборов она и предназначена. Существует огромный выбор датчиков и модулей. Всё зависит от ваших потребностей и бюджета. Из полезных, можно выделить датчик измеряющий давление, температуру и влажность, датчик измеряющий дальность до предмета и другое множество полезных модулей.
- Компоненты – сюда относят резисторы, конденсаторы, диоды, кнопки, светодиоды, транзисторы, фотодиоды и остальные мелкие составляющие приборов.
Для удобства, можно купить не по отдельности все компоненты, датчики, модули и платы, а сразу же в готовом наборе. Таких наборов много и они включают в себя самые необходимые компоненты для сборки устройства, чаще всего это резисторы, конденсаторы, RGB-светодиоды, дисплей и много-много датчиков. Для тренировки можно взять и небольшой набор компонентов и не забудьте соединительные провода.
Отличаем подделку Ардуино от оригинала
Отличить будет довольно сложно, но это возможно сделать. В основном, такие платы отличаются своей сильно заниженной ценой. При прошивке и подключении платы всплывают ошибки и отсутствие подключения к драйверам, это объясняется тем, что изделие сделано не правильно и сделано из некачественных компонентов. Внешне, плата сильно не отличается от оригинальной, разве что иногда цветом самого основания. Проблемы с совместимостью – один из признаков пиратской платы.
Иногда, продавцы специально продают поддельные платы вместо оригинальных, а как отличить? Существует специальный список, где содержатся официальный магазины, которые перепродают платы Ардуино, стоит для начала найти плату в нём. Если же данного магазина в списке нет, то следует насторожиться и лучше не покупать у этого продавца. Следует обратить внимание и на цену устройства. Оригинальные платы Ардуино поставляются в коробочках, вместе с инструкцией и наклейками.
Поддельные, в частности случаев поставляются просто в запечатанных пакетиках. Если посмотреть на колодки, куда припаиваются провода, то у них дублируются надписи на корпусе колодок сбоку. Шрифт у оригинальной платы чётки и без размытий, в отличии от подделок. Можно заметить и по самому качеству платы и по надписям, что это сделано руками поддельщиков, так как их оборудование не такое точно как у оригинального производителя Ардуино.
Нужно понимать, что если нацелено покупать поддельную плату, то велик риск, что придёт плата которая не работает во все и очень сильно ограничен функционал. А это значит, что о качестве изделия не может идти никакой речи. К тому же нужно понимать, что если плата дешёвая, то компоненты и программное обеспечение тоже дешёвые, а это значит, велик риск получить неисправность одного из элементов на плате. При этом плата в устройстве быстро выйдет из строя. Чип может быть заблокированным системой вашего компьютера, в целях защиты от пиратства.
Написание скетча
Для начинающих стоит начать с основных программ в языке Arduino. Здесь рассмотрим написание скетча Ардуино с нуля. Простой скетч написать не так уж сложно. Важно понять данную тему и разобраться с основными функциями и командами в данном языке. Основные функции в изучении системы программирования Ардуино:
- pinMode(PIN, type) – задаём нужный пин подключения проводами к модулю, компоненту или датчику.
- digitalWrite(PIN, state) – с помощью этой командой устанавливаем состояние на каком-либо пине, может быть значение либо один либо ноль.
- digitalRead(PIN) – возвращение в прежние состояние входа, может быть значение либо один либо ноль.
- delay(ms) – остановка процесса, на определенное время, к примеру со светодиодом, мигание, то есть светодиод горит, а вводя эту функцию, он на несколько миллисекунд приостановит свою работу, тем самым осуществит мигание.
- analogWrite(PIN, state) – установка нужного напряжение на выходе пина, выставляется до значения 255, а минимальное значение – ноль.
- analogRead(PIN) – возвращает прежнее значение напряжение на пине, значение составляет от нуля до 1023.
Разберём на примере, самое простое это сделать схему со светодиодом. Чтобы сделать так, чтобы светодиод загорался при нажатии на кнопку, добавим некоторые команды и изменим код, получаем:
// переменные с пинами подключенных устройств
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);
}
Не менее интересная тема это ШИМ , есть специальные входы на плате, которые позволяют использовать ШИМ. Он позволяет изменять напряжение на выходе, то есть в случае со светодиодом, он будет управлять его яркостью, подавая меньшее количество напряжения.
Заключение
Изучение Ардуино стоит начать с написания программы и изучения основных понятий. Скетч не так уж сложно и написать самому, ведь в интернете полно информации, как это сделать. Зная основные команды, можно без проблем написать нужный скетч для вашего устройства. Для улучшения и получения практических навыков можно посмотреть наборы с платой, датчиками, модулями и компонентами. Они позволят понять основы и то как работает программа.