10 интересных вещей, которые можно сделать на arduino

AlexGyver

Сайт для любителей техники предоставляет бесплатные текстовые уроки — максимально подробные уроки по программированию Arduino с разбором всех тонкостей и особенностей языка.

Есть также бесплатные видеоуроки. Цикл охватывает все стандартные операторы и функции Ардуино и построен таким образом, что от выпуска к выпуску у зрителя идёт плавное формирование “базы”, каждый последующий урок (видео урок) содержит в себе информацию из предыдущих, то есть уроки усложняются и становятся комплексными.

Что узнает ребенок:

  • Что такое Ардуино и зачем она нужна?
  • Что умеет Ардуино и что можно сделать на её основе?
  • Подключение датчиков к Ардуино
  • Питание Arduino от различных источников электричества
  • Математические операторы для работы с переменными
  • Особенности переменных и констант
  • Общение между компьютером и Arduino Через COM порт
  • Какие существуют типы реле? В чём достоинства и недостатки?
  • Как подключить реле и как им управлять?

И это еще не все. 16 видеоуроков расскажут все нюансы о программировании на 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 для подавления дребезга контактов. О дребезге контактов есть целый урок на моем сайте. Обязательно ознакомьтесь с этим материалом.

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

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

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

Датчик движения с Ардуино — проект для начинающих

Паковать крупные платы в большие корпуса в последние десятилетия стало моветоном.
Максимальное потребление тока 50 мА.
В верхнем меню программы размещен список пунктов. В этом окне вам необходимо выбрать, какая плата была подключена к вашему компьютеру. По сравнению с ней в Uno гораздо меньше пинов и памяти.
Однако разъем питания и разъем USB немного выпирают за пределы печатной платы. На Uno имеется возможность отключить линию автоматической перезагрузки разрывом соответствующей линии. При запуске контроллера сначала выполняется инициализация регистров конфигурации. Проблема с микроконтроллерами заключается в том, что при больших функциональных возможностях ведь в них кроме процессора есть еще довольно богатый набор периферийных устройств они имеют ограниченное число выводов.
Плата поддерживает три типа памяти: Flash — память объемом 32 кБ, используется для хранения программы. Встроенный светодиод, подключенный к цифровому выводу

Распиновка Arduino Nano v 3.0


Откройте монитор последовательного порта и наблюдайте полученные данные. Вход используется для подачи питания от внешнего источника в отсутствие 5 В от разъема USB или другого регулируемого источника питания.

IREF — пин для информирования внешних устройств о рабочем напряжении платы. Питание может подаваться от вывода VIN через регулятор напряжения, или от разъема USB, или другого регулируемого источника напряжения 5 В. Обычно применяется для подключения кнопки перезагрузки на плате расширения, закрывающей доступ к кнопке на самой плате Arduino.

Опорное напряжение для аналоговых входов. Кроме того, имеется 6 каналов с выходом широтно-импульсного модулятора ШИМ. Максимальное напряжение 20 В, но значение выше 12 В с высокой долей вероятности быстро выведет плату из строя. Кроме того, поскольку есть две версии модулей, один из них использует чип ATmega, а другой ATmega, то появляется вопрос, есть ли у них различия в подключении. Когда вы прошиваете контроллер своим скетчем, он записывается именно сюда.
Как работает транзистор? Режим ТТЛ логика / Усиление. Анимационный обучающий 2d ролик. / Урок 1

https://youtube.com/watch?v=VR2C9U_J-S8

Назначение устройства

Ардуино – во всех его модификациях UNO, NANO, MEGA и прочих – достаточно сложный контроллер по своим возможностям, скорее напоминающий полноценный компьютер.
Arduino UNO

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

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

Что касается Arduino Shield, – они представляют собой дополнительные платы расширения, зачастую размещаемые на основную самого контроллера и совместимые с ним контактно.

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

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

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

Рассмотрим наиболее популярные схемы шилдов Ардуино.

Модули

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

Датчики

Датчик температуры и относительной влажности DHT11 и его собрат DHT22

Датчик температуры DS18B20 в обычном или защищённом корпусе

Датчик движения HC-SR505

Датчик расстояния ультразвуковой

Датчик газа MQ-6 (изобутан, пропан)

Датчик дождя

Дисплеи и индикаторы

Символьные дисплеи LCD 1602 и 2004

как вы догадались цифры обозначают количество отображаемых символов в строке и количество строк (1602 — 16 символов в 2 строки).

Точечные дисплеи

OLED дисплей 0,96 дюйма

Цветной TFT дисплей

Семисегментные индикаторы

Начало работы

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

Этапы

При организации системы «Умный дом» на базе Ардуино, стоит действовать по следующему алгоритму:

  • Инсталляция программного кода;
  • Конфигурация приложения под применяемое устройство;
  • Переадресация портов (для роутера);
  • Проведение тестов;
  • Внесение правок и так далее.

В Сети имеется весь необходимый софт на применяемое оборудование — его достаточно скачать с официального сайта и установить (ссылку смотрите выше).

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

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

Чтобы начать работать с Ардуино в Windows, сделайте следующие шаги:

  • Подготовьте необходимое оборудование — USB-кабель и Arduino.
  • Скачайте программу на странице arduino.cc/en/Main/Software.
  • Подсоедините плату с помощью USB-кабеля. Проследите, чтобы загорелся светодиод PWR.
  • Поставьте необходимый набор драйверов для работы с Ардуино. На этом этапе стоит запустить установку драйвера и дождаться завершения процесса. После жмите на кнопку «Пуск» и перейдите в панель управления. Там откройте вкладку «Система и безопасность» и выберите раздел «Система». После открытия окна выберите «Диспетчер устройств», жмите на название Ардуино и с помощью правой кнопки мышки задайте команду обновления драйвера. Найдите строчку «Browse my computer for Driver software!», кликните по ней и выберите соответствующий драйвер для вашего типа платы — ArduinoUNO.inf (находится в папке с драйверами). Это может быть UNO, Mega 2560 или другая.
  • Запустите среду разработки Ардуино, для чего дважды кликните на значок с приложением.
  • Откройте готовый пример (File — Examples — 1.Basics — Blink).
  • Выберите плату. Для этого перейдите в секцию Tools, а дальше в Board Menu.
  • Установите последовательный порт (его можно найти путем отключения и подключения кабеля).
  • Скачайте скетч в Ардуино. Кликните на «Upload» и дождитесь мигания светодиодов TX и RX на плате. В завершение система показывает, что загрузка прошла успешно. Через несколько секунд после завершения работы должен загореться светодиод 13 L (он будет мигать оранжевым). Если это так, система готова к выполнению задач.

Работа с роутером

Для полноценной работы «Умного дома» важно правильно обращаться с роутером. Здесь требуется выполнить следующие действия — открыть конфигурацию, указать адрес Arduino IP, к примеру, 192.168.10.101 и открыть 80-й порт

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

Умный дом на базе Raspberry Pi 3 своими руками, пошаговая инструкция

Простые проекты Ардуино

Давайте начнем наш обзор с традиционно самых простых, но очень важных проектов, включающих в себя минимальное количество элементов: светодиоды, резисторы и, конечно же, плату ардуино. Все примеры рассчитаны на использование Arduino Uno, но с минимальными изменениями будут работать на любой плате: от Nano и Mega до Pro, Leonardo и даже LilyPad.

Проект с мигающим светодиодом – маячок

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

Нам понадобится:

  • Плата Ардуино Uno, Nano или Mega со встроенным светодиодом, подключенным к 13 пину.
  • И все.

Что должно получиться в итоге:

Светодиод мигает – включается и выключается через равные промежутки времени (по умолчанию – 1 сек). Скорость включения и выключения можно настраивать.

Схема проекта

Схема проекта довольно проста:  нам нужен только контроллер ардуино со встроенным светодиодом, подсоединенным к пину 13. Именно этим светодиодом мы и будем мигать. Подойдут любые популярные платы: Uno, Nano, Mega и другие.

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

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

Программирование в проекте Ардуино

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

Открываем программу Arduino IDE, убеждаемся, что выбран нужный порт.

Проверка порта Ардуино – выбираем порт с максимальным номером

Затем открываем уже готовый скетч Blink – он находится в списке встроенных примеров. Откройте меню Файл, найдите подпункт с примерами, затем Basics и выберите файл Blink.

Открываем пример Blink в Ардуино IDE

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

Кнопки компиляции и загрузки скетча
Информация в Arduino IDE – Загрузка завершена

Ждем немного (внизу можно отследить процесс загрузки) – и все. Плата опять подмигнет несколькими светодиодами, а затем один из светодиодов начнет свой размеренный цикл включений и выключений. Можно вас поздравить с первым загруженным проектом!

Проект маячка со светодиодом и макетной платой

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

Графическое изображение схемы подключения доступно на следующем рисунке:

Другие идеи проектов со светодиодами:

  • Мигалка (мигаем двумя свтодиодами разных цветов)
  • Светофор
  • Светомузыка
  • Сонный маячок
  • Маячок – сигнализация
  • Азбука Морзе

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

Минимальные знания

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

Конечно, нет необходимости покупать и штудировать научную литературу пачками, прежде чем вы начнете понимать, как реализовывать проекты на esp8266.

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

Для начала стоит выделить алгоритм разработки новой системы, а для этого давайте разберёмся, из чего она состоит.

Аппаратная часть

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

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

Ведь Ардуино – это всего лишь процессор вашей системы, а все остальные её комплектующие могут варьироваться в зависимости от потребностей. Это же позволяет экономить ресурсы, время и деньги инженера.

Программная часть

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

Здесь раскрывается прелесть системы, ведь, в отличие от «болванок», Ардуино уно проекты для начинающих могут и вовсе не потребовать с вас ни строчки кода.

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

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

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

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

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

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

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

Функция setup

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

void setup() { Serial.begin(9600); // Открываем serial соединение pinMode(9, INPUT); // Назначаем 9 пин входом pinMode(13, OUTPUT); // Назначаем 13 пин выходом }

Функция loop

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

All-Arduino

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

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

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

После прохождения курса вы сможете реализовать проекты любой сложности. Курс по работе с arduino для новичков рассчитан на 8 часов.

Бесплатные учебники по Ардуино на русском

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

Книги и учебники по Ардуино для начинающих

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

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

Учебник переведен на русский и содержит подробные уроки для программирования микроконтроллера от известного автора. К плюсам данной книги можно отнести ссылки на информационный сайт, а также наличие видео уроков от Джереми Блума на 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+

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

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

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

Настройка Arduino IDE

После установки необходимо настроить программу. Сделать это очень легко:

1. Сначала подключите вашу ардуинку к компьютеру с помощью USB кабеля.

2. Потом перейдите в «Пуск >> Панель управления >> Диспетчер устройств«. Там надо найти «Порты COM и LPT». В этом списке будет указана ваша arduino и порт к которому она подключена (COM2). Запомните это значение.

Arduino Uno в диспетчере устройств

3. Теперь запускаем Arduino IDE и сразу идем в меню «Инструменты >> Порт«. Там необходимо выбрать тот COM порт, который вы запомнили.

Выбор COM порта

4. Далее надо выбрать плату. Для этого в меню»Инструменты >> Платы» выбираете модель вашей платы.

Выбор платы ардуино

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

Справочник языка Ардуино

Операторы

  • setup()
  • loop()

Синтаксис

  • ; (точка с запятой)
  • {} (фигурные скобки)
  • // (одностроковый коментарий)
  • /* */ (многостроковый коментарий)
  • #define
  • #include

Битовые операторы

  • & (побитовое И)
  • | (побитовое ИЛИ)
  • ^ (побитовое XOR или исключающее ИЛИ)
  • ~ (побитовое НЕ)
  • << (побитовый сдвиг влево)
  • >> (побитовый сдвиг вправо)
  • ++ (инкремент)
  • — (декремент)
  • += (составное сложение)
  • -= (составное вычитание)
  • *= (составное умножение)
  • /= (составное деление)

  • &= (составное побитовое И)
  • |= (составное побитовое ИЛИ)

Данные

Типы данных

  • void
  • boolean
  • char
  • unsigned char
  • byte
  • int
  • unsigned int
  • word
  • long
  • unsigned long
  • short
  • float
  • double
  • string — массив символов
  • String — объект
  • массивы

sizeof()

Библиотеки

  • EEPROM
  • SD
  • SPI
  • SoftwareSerial
  • Wire

Функции

Цифровой ввод/вывод

  • pinMode()
  • digitalWrite()
  • digitalRead()

Аналоговый ввод/вывод

  • analogReference()
  • analogRead()
  • analogWrite() — PWM

Только для Due

  • analogReadResolution()
  • analogWriteResolution()

Расширенный ввод/вывод

  • tone()
  • noTone()
  • shiftOut()
  • shiftIn()
  • pulseIn()

Время

  • millis()
  • micros()
  • delay()
  • delayMicroseconds()

Математические вычисления

  • min()
  • max()
  • abs()
  • constrain()
  • map()
  • pow()
  • sqrt()
  • sq()

Тригонометрия

  • sin()
  • cos()
  • tan()

Случайные числа

  • randomSeed()
  • random()

Биты и байты

  • lowByte()
  • highByte()
  • bitRead()
  • bitWrite()
  • bitSet()
  • bitClear()
  • bit()

Внешние прерывания

  • attachInterrupt()
  • detachInterrupt()

Прерывания

  • interrupts()
  • noInterrupts()

Прототипирование/макетирование

Для сборки макета нам необходимы следующие элементы: светодиод, резистор, проводки (перемычки), макетная плата(Breadboard). Для того, чтоб ничего не спалить, и для того, чтоб всё успешно работало, надо разобраться со светодиодом. У него есть две «лапки». Короткая – минус, длинная – плюс. На короткую мы будем подключать «землю» (GND) и резистор (для того, чтоб уменьшить силу тока, которая поступает на светодиод, чтоб не спалить его), а на длинную мы будем подавать питание (подключим к 13 пину). После подключения, загрузите на плату скетч, если вы ранее этого не сделали. Код остаётся тот же самый.

На этом у нас конец первой части

Спасибо за внимание

Советы по работе с проектами «Ардуино»

Разработка «конструкторов» на базе Arduino требует прохождения стандартных этапов, характерных для любых проектов:

Поиск идеи

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

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

Для освоения базовых навыков сборки и программирования полезной будет книга «25 крутых проектов с Arduino» Марка Геддеса.

Благодаря этому изданию путь в мир «Ардуино» станет приятным и увлекательным.

Самые доступные и простые проекты для новичков

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

В целях обучения часто разрабатываются следующие технические решения:

  • модули с мигающими светодиодами (маячки, светофоры и пр.);
  • устройства с датчиками, работающие через протоколы обмена данными;
  • аппаратные средства регистрации и отображения информации;
  • машины с интегрированными сервоприводами и шаговыми двигателями;
  • беспроводные устройства связи.

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

https://youtube.com/watch?v=ZbAqbnkv8WM

Создание проекта

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

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

Для этого потребуется ряд умений и личных характеристик:

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

Электронные схемы

Сборка электронных схем — важный этап разработки. Здесь необходимы базовые знания в области электроники. Понять правила выполнения схем поможет ГОСТ 2.701-84 «Единая система конструкторской документации. Схемы. Виды и типы. Общие требования к выполнению».

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

Особенности программирования

Программы для «Ардуино» называются скетчами. Они создаются и прошиваются в специальной среде разработки. Наиболее популярная версия — Arduino IDE.

Положить начало изучению C/C++ можно, поняв 3 основных раздела: об операторах, данных и функциях. Перечисленных знаний достаточно, чтобы создавать простые роботизированные системы.

Первые шаги

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

  1. Прикупить все соответствующие расходники. Помимо плат и модулей, это также платформы, канифоль и медные пластины, если вы планируете проектировать материнку самостоятельно.
  2. Найти как можно более подробное пособие по вашему проекту и постараться разобраться в том, что там делают, а не просто скопировать. Больше разных интересных проектов и инструкций вы найдете в нашей рубрике Уроки.
  3. Модифицировать ваш проект. Хорошие системы являются масштабируемыми, то есть вы можете добавить к ним какой-то функционал, и они продолжат быть комфортными в работе и управлении кодом.

Особенности проектов

Большинство электронщиков предпочитают создавать свои проекты на основе микроконтроллера Аrduino Uno, о которой и мы писали уже несколько раз.

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

  1. Довольно простой в использовании интерфейс. Понятно, где какой контакт, и к чему прикреплять соединительные провода.
  2. Чип на плате подключается прямо к USB-порту. Преимущество этой установки заключается в том, что последовательная связь – это очень простой протокол, который проверен временем, а USB делает соединение с современными компьютерами очень удобным.
  3. Легко найти центральную часть микроконтроллера, которая представляет собой чип ATmega328. Он имеет больше аппаратных функций, таких как таймеры, внешние и внутренние прерывания, пины PWM и несколько режимов ожидания.
  4. Устройство с открытым исходным кодом, поэтому большое количество радиолюбителей могут исправить баги и неполадки в программном обеспечении. Это облегчает отладку проектов.
  5. Тактовая частота равна 16 МГц, что достаточно быстро для большинства приложений и не ускоряет работу микроконтроллера.
  6. Очень удобно управлять мощностью внутри него, и она имеет функцию встроенного регулирования напряжения. Также микроконтроллер можно отключить от USB-порта без внешнего источника питания. Можно подключить внешний источник питания до 12 В. Причем микропроцессор сам определит нужное напряжение.
  7. Наличие 13 цифровых контактов и 6 аналоговых контактов. Эти пины позволяют подключать оборудование к плате Arduino uno со стороннего носителя. Контакты используются в качестве ключа для расширения вычислительной способности Arduino uno в реальном мире. Просто подключите свои электронные устройства и датчики к разъемам, которые соответствуют каждому из этих контактов.
  8. Имеется в наличии разъем ICSP для обхода USB-порта и сопряжения с Arduino напрямую в качестве последовательного устройства. Этот порт необходим, чтобы перезагрузить чип, если он поврежден и больше не может использоваться на вашем компьютере.
  9. Наличие 32 КБ флэш-памяти для хранения кода разработчика.
  10. Светодиод на плате подключается к цифровому контакту 13 для быстрой отладки кода и упрощения этого процесса.
  11. Наконец, у него есть кнопка для сброса программы на чипе.

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

Arduino uno может воспринимать окружающую среду, получая вход от различных датчиков, и способен влиять на окружающую среду, контролируя свет, двигатели и другие исполнительные механизмы. Микроконтроллер запрограммирован с использованием языка программирования Arduino (на основе проводки) и среды разработки Arduino (на основе обработки).

Теперь переходим непосредственно к проектам на Аrduino uno.

Arduino UNO: порты ввода вывода, питание

Рабочее напряжение — 5 В при подключении через USB с любых устройств (компьютер, ноутбук, зарядка от смартфона и т.д.). При одновременном подключении внешнего адаптера (аккумулятора, кроны, блока питания), питание автоматически переключается, но плату можно по-прежнему программировать через компьютер. Рекомендуемое питание Arduino Uno от батареек или аккумулятора от 7 до 12 В.

Arduino Uno питание от блока питания 12 вольт

Arduino UNO: питание от внешнего источника

5V     – на пин Ардуино подает 5В, его можно использовать для питания устройств
3.3V – на пин подается напряжение 3.3В от внутреннего стабилизатора
GND – вывод земли
VIN  – пин для подачи внешнего напряжения
IREF – пин для информирования о рабочем напряжении платы

Можно питание на микроконтроллер подать через порт VIN с помощью проводов. «Плюс» от внешнего источника подается на порт VIN, а «Минус» на GND (заземление). Подача внешнего напряжения 5 Вольт на пин 5V не допустимо, так как питание Genuino Arduino Uno обходит стороной стабилизатор, что может привести к поломке. Все цифровые порты на плате выдают стабилизированное напряжение в 5 Вольт.