Самая простая программа для ардуино нано

Сегодняшней статьей продолжаем вводную часть к курсу/разделу, посвященному программированию Arduino, и среди прочего мы рассмотрим структуру простейшего скетча, при этом использовать на данный момент будем родную среду разработки – Arduino IDE. А начнем с того, что в деталях рассмотрим процессы установки, подключения платы и прошивки микроконтроллера — все это в наших планах на сегодня, приступаем!

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

Установка Arduino IDE.

Итак, переходим на официальный сайт проекта в раздел Software, где сразу получаем возможность скачать Arduino IDE для разных ОС (Windows/Linux/Mac OS):

Arduino для начинающих. Начало работы

Скачать Arduino IDE.

Выбираем нужный вариант и попадаем на страницу следующего вида:

Arduino IDE скачать.

Скачать Arduino IDE можно абсолютно бесплатно, здесь просто предлагается добровольно пожертвовать некую сумму в знак поддержки платформы. В случае отсутствия такого желания – кнопка «Just Download». Далее происходит типичный процесс скачивания, по окончанию которого запускаем скачанный дистрибутив (.exe файл). После этого следуют стандартные шаги, единственное что отмечу, оставляем включенной галочку «Install USB driver»:

USB drivers.

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

Установка Arduino IDE завершена.

Запускаем и получаем в распоряжение пустой скетч, к разбору которого и переходим.

Базовый скетч Arduino.

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

Создав пустой скетч в Arduino IDE, получаем файл следующего вида:

Новый скетч Arduino.

void setup() < // put your setup code here, to run once: >void loop() < // put your main code here, to run repeatedly: >

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

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

  • Функция setup()
  • Функция loop()

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

Функция loop() же, напротив, вызывается постоянно во время выполнения скетча, поэтому инструкции и действия, помещенные в нее, будут выполняться циклически. Все это можно изобразить в виде следующей диаграммы:

Структура скетча Arduino.

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

Подключение платы.

Двигаемся к следующему этапу, а именно к физической коммутации платы с ПК. Подключаем банально через USB-разъем:

Подключение Arduino к Arduino IDE.

В диспетчере устройств можем наблюдать появившееся устройство (точное название может варьироваться) в разделе «Порты (COM и LPT)»:

Виртуальный ком-порт.

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

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

В меню «Tools > Board» выбираем свою плату (у меня – Arduino Uno), никаких неожиданностей:

Выбор платы в Arduino IDE.

И в том же разделе «Tools» в пункте «Port» выбираем тот порт, который мы обнаружили на предыдущем шаге, то есть в моем случае это COM7:

Выбор порта.

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

Компиляция и прошивка скетча Arduino.

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

Читайте также:
Программа гиробой ev3 пример

Рабочая область Arduino IDE.

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

  • Скачать Arduino IDE — выполнено ✅
  • Установка Arduino IDE — выполнено ✅
  • Подключение платы — выполнено ✅
  • Разбор базового скетча — выполнено ✅

На этом и заканчиваем вводную часть, которая оказалась довольно обширной и плавно переходим к конкретным практическим примерам и проектам! Так что подписывайтесь на обновления, вступайте в наше сообщество, а любые вопросы пишите в комментариях, либо на форуме, я всегда рад помочь.

Источник: microtechnics.ru

Всё об Ардуино: что это, области применения и полезные компоненты

Самый дешёвый Arduino Nano

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

Что такое Ардуино – давайте рассмотрим поближе

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

Ардуино

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

Где можно применить Arduino

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

Набор Ардуино

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

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

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

Интерфейс приложения Ардуино Editor

Комплектов Arduino достаточно много. Это и оригинальные конструкторы Arduino, и совместимые с семейством китайские клоны. Все они различного размера, комплектации и, соответственно, возможностей. Рассмотрим некоторые из них. Кстати, по качеству не уступает оригиналам.

Комплект для начинающих Ардуино UNO R3

Если нужно все и сразу, но без излишеств, то, наверное, это самый подходящий вариант. В набор входит плата с микроконтроллером, макетная плата типа Breadboard с комплектом проводов, позволяющая производить соединения без пайки, 4-разрядный семисегментный индикатор, LCD-дисплей, кнопочная панель, матрица светодиодов 8×8 элементов, джойстик, сервопривод с драйвером, реле, ИК-пульт и комплект светодиодов, кнопок, конденсаторов и резисторов россыпью.

Комплект для начинающих Ардуино UNO R3jpg

Также в набор входят отдельные платки с датчиками:

  • звука;
  • уровня воды;
  • температуры и влажности;
  • RFID-считыватель c RFID-метками в виде ключа-таблетки и карточки;
  • цифровой часовой модуль.

Комплект для начинающих Arduino UNO R3jpg

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

Продвинутый набор Arduino UNO R3

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

Продвинутый набор Ардуино UNO R3

Еще одной особенностью этого набора является наличие большего числа «рассыпухи». Например, в комплекте можно найти сотню резисторов различных номиналов от 10 Ом до 1 МОм, диоды, пять видов транзисторов и несколько конденсаторов различных номиналов. Это дополнение предназначено для использования уже опытными людьми, освоившими базовые навыки построения электронных модулей и умеющих читать принципиальные схемы.

Обучающий набор Ардуино для детей и взрослых

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

Обучающий набор Arduino для детей и взрослых

Также имеются дополнительные датчики:

  • датчик влажности почвы;
  • газовый датчик;
  • пироэлектрический датчик, реагирующий на движение.

Обучающий набор Arduino для детей и взрослых

Дополнительные датчики позволяют построить с помощью конструктора некое подобие охранной сигнализации и продемонстрировать ее работу. На прилагающемся диске имеется руководство пользователя на английском языке и примеры проектов.

Читайте также:
Алгоритм запуска программы paint

Оригинальный Arduino UNO R3

Это даже не набор, а просто одна плата UNO R3 с микроконтроллером, плюс USB-кабель и коробочка. Плата та же самая, какая использовалась в описанных выше комплектах.

Оригинальный Arduino UNO R3

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

Всё об Ардуино: что это, области применения и полезные компоненты

Или если предполагается использовать платку в составе какой-то отдельной штуки со своей периферией. В общем, если нужен отдельно контроллер, то такая возможность тоже есть.

Самый дешёвый Arduino Nano

В случае, когда плата Ардуино UNO R3 избыточна, например, если не нужны лишние светодиоды, и элементы питания, или, если плата с контроллером должна быть меньших размеров, то решением может быть плата Nano. В отличие от UNO размером 69×54 мм, Nano занимает площадь всего в 19×42 мм. Кстати, стоит она тоже примерно в два-три раза дешевле.

Самый дешёвый Arduino Nano

Нюансом является то, что у используемого на плате Nano микропроцессора вдвое меньший объем флеш-памяти и оперативной памяти по сравнению с микропроцессором на UNO R3. Хотя, для большинства проектов, особенно, если это касается проектов начинающих, это не важно. Также в комплект не входит USB-кабель.

Комплект проводов для работы плат Ардуино

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

Комплект проводов

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

Сервоприводы

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

Сервопривод

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

Модуль для беспроводного управления 433 МГц

Стандартный набор состоит из приемника и передатчика на 433 МГц, либо только из приемника или только из передатчика – на выбор. Штука оказывается полезной для организации беспроводной связи между разными платами. Например, одна может управлять другой, или передавать по радио данные с датчиков.

Модуль для беспроводного управления 433 МГц

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

Wi-Fi модуль

Управление платой Arduino можно организовать и с помощью смартфона. Для этого понадобится расширение в виде Wi-Fi приемопередатчика. Платка-расширение очень простая и компактная.

Wi-Fi модуль

Занимает всего 14×25 мм. А необходимые библиотеки для взаимодействия с ней главной платы Arduino вместе с примерами доступны в интернете, поэтому ее подключение также не составляет труда.

Модули реле

Для построения систем «умный дом» или для использования Arduino в составе автомобильной электросети важным элементом является реле. Этот элемент позволяет управлять системами с напряжением, большим, чем напряжение питания Arduino и сильноточными электрическими цепями без вреда плате. Без этого элемента не обойтись при управлении мощными электродвигателями или освещением.

Модуль реле для Arduino

На выбор доступны несколько модулей. С одним реле, точно таким же, какой входит в базовые комплекты UNO R3, с одним реле и индикационными светодиодами, с двумя реле, с четырьмя или с восемью. Каждое из них управляется сигналами напряжением 5 вольт, но рассчитано на коммутацию электрических цепей напряжением до 250 вольт при токе 10 ампер или до 125 вольт при токе 15 ампер.

Друзья, если вам понравилась статья, то ставьте лайк и добро пожаловать на наш Техно-Блог !

Источник: android-magazine.ru

Скетч бегущий огонь на ардуино

Продолжаем уроки в которых мы используем Arduino, резисторы и светодиоды. Мы уже делали Светофор, полицейский стробоскоп, отправляли сигнал sos и пр.
Сегодня мы будем делать бегущие огни. Бегущие огни уже были в другом блоке уроков на Arduino: Урок 2 — Подключаем сдвиговый регистр 74НС595 к Arduino. «Бегущие» огни
При подключении к сдвиговому регистру всего при подключении по 3 проводам мы можем управлять 8 светодиодами. Но вот чтобы подключить 10 светодиодов, нужно подключать 2 сдвиговых регистра и использовать всего 2 выхода из 8 доступных в регистре. Это не очень логично. Иногда бывает проще подключить к плате Arduino нужное количество светодиодов.

Что я и планирую сделать. В примере будет 5 самых простых режимов бегущих огней на Arduino.

Для урока нам понадобится:

  • Arduino UNO или Arduino Nano
  • Плата макетная беспаечная
  • Резисторы 220 ОМ
  • Соединительные провода папа-папа
  • Светодиоды 3 или 5 мм.

Подключим наши 10 светодиоды вот по такой схеме.

В живую будет выгладить так.

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

Читайте также:
ИП усн 2 программа как работать

Вместе с данными светодиодами на плате Arduino UNO буду включаться светодиода RX и TX. Но как я говорил в данном случаи ни чего старшного в этом нет.

Описывать все режимы не буду. В видео немного поясняю. Немного корява и может не совсем понятно. Но я думаю по комментариям к коду можно разобраться.

Первый пример бегущих огней на Arduino, последовательное включение одного светодиода с 1 по 10. По пинам на ардуино будет с 0 по 9. Это нужно учитывать при написании кода.

Немного изменим данный пример и сделаем 2 цикла. Получим включение всех светодиодов и выключение в обратном направлении.

Объединив код первого и второго примера получим включение одного светодиода в прямом и обратном направлении. Во втором цикли ставим j-2, потому что у нас пины начинаются с 0, а число светодиодов с 1 до 10. Также чтобы 10 светодиод не включался 2 раза вычитаем еще 1.

Сходящиеся огни. Тут все по аналогии. Добавим переменную в которой будим рассчитывать половину светодиодов. Поэтому количество светодиодов должно быть четным. Либо что-то делать с центральным светодиодом.

Можно оставить его постоянно включенным или наоборот всегда включенным.

И по аналогии делаем расходящиеся огни.

Как видно без использования сдвигового регистра код получается намного проще и меньше строчек. Один минус количество ограничено. Максимум 20 светодиодов можно подключить к Arduino Uno и 22 к Arduino NANO. Думаете что я ошибся с цифрами. Подписывайтесь на канал.

И в следующем уроке в данном блоке уроков я покажу как можно это реализовать.

Машинка на радиоуправлении.

Сборка ЧПУ фрезерного станка.

Продолжаем уроки в которых мы используем Arduino, резисторы и светодиоды. Мы уже делали Светофор, полицейский стробоскоп, отправляли сигнал sos и пр.
Сегодня мы будем делать бегущие огни. Бегущие огни уже были в другом блоке уроков на Arduino: Урок 2 — Подключаем сдвиговый регистр 74НС595 к Arduino. «Бегущие» огни
При подключении к сдвиговому регистру всего при подключении по 3 проводам мы можем управлять 8 светодиодами. Но вот чтобы подключить 10 светодиодов, нужно подключать 2 сдвиговых регистра и использовать всего 2 выхода из 8 доступных в регистре. Это не очень логично. Иногда бывает проще подключить к плате Arduino нужное количество светодиодов.

Что я и планирую сделать. В примере будет 5 самых простых режимов бегущих огней на Arduino.

Для урока нам понадобится:

  • Arduino UNO или Arduino Nano
  • Плата макетная беспаечная
  • Резисторы 220 ОМ
  • Соединительные провода папа-папа
  • Светодиоды 3 или 5 мм.

Подключим наши 10 светодиоды вот по такой схеме.

В живую будет выгладить так.

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

Вместе с данными светодиодами на плате Arduino UNO буду включаться светодиода RX и TX. Но как я говорил в данном случаи ни чего старшного в этом нет.

Описывать все режимы не буду. В видео немного поясняю. Немного корява и может не совсем понятно. Но я думаю по комментариям к коду можно разобраться.

Первый пример бегущих огней на Arduino, последовательное включение одного светодиода с 1 по 10. По пинам на ардуино будет с 0 по 9. Это нужно учитывать при написании кода.

Немного изменим данный пример и сделаем 2 цикла. Получим включение всех светодиодов и выключение в обратном направлении.

Объединив код первого и второго примера получим включение одного светодиода в прямом и обратном направлении. Во втором цикли ставим j-2, потому что у нас пины начинаются с 0, а число светодиодов с 1 до 10. Также чтобы 10 светодиод не включался 2 раза вычитаем еще 1.

Сходящиеся огни. Тут все по аналогии. Добавим переменную в которой будим рассчитывать половину светодиодов. Поэтому количество светодиодов должно быть четным. Либо что-то делать с центральным светодиодом.

Можно оставить его постоянно включенным или наоборот всегда включенным.

И по аналогии делаем расходящиеся огни.

Как видно без использования сдвигового регистра код получается намного проще и меньше строчек. Один минус количество ограничено. Максимум 20 светодиодов можно подключить к Arduino Uno и 22 к Arduino NANO. Думаете что я ошибся с цифрами. Подписывайтесь на канал.

И в следующем уроке в данном блоке уроков я покажу как можно это реализовать.

Большой сборник эффектов для адресной светодиодной ленты на чипах WS2812b в одном большом скетче! Эффекты собраны и оптимизированы со всех уголков интернета. Также добавлена функция адаптивного изменения яркости от уровня внешнего освещения (нужен фоторезистор).

12.12.2018 – исправлены обе прошивки, теперь код компилируется в свежих версиях Arduino IDE! Перекачайте архив
04.04.2019 – добавлена прошивка с переключением режимов кнопкой. Перекачайте архив

Источник: rufus-rus.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru