Андрей Смирнов
Время чтения: ~16 мин.
Просмотров: 49

Уроки Ардуино: Башня из светящихся светодиодов — Продажа наборов Arduino для начинающих и не только

В этом уроке мы узнаем, как правильно выполнить подключение светодиода к плате Ардуино и как организовать управление им с помощью скетча. Для работы с проектами вам потребуется плата Arduino Uno, Nano или Mega, а также установленная на компьютер программа Arduino IDE.  Если у вас нет  возможности собрать схему своими руками, можно воспользоваться  встроенными светодиодами на плате контроллера. Главное, чтобы была возможность подключиться к

Подключение светодиода к Ардуино

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

Правила подключения

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

При подключении светодиодов важно знать два главных правила:

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

Полярность светодиодов

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

Polyarnost-svetodiodov.jpg
Полярность светодиодов

Что будет, если перепутать ножки местами и поменять полярность подключения? К счастью – ничего. Ничего не сгорит, но и светиться тоже ничего не будет. Диод, включенный неправильно, просто размыкает цепь. Естественно, до определенного предела, т.к. если мы подадим достаточно большой ток, то рано или поздно случится пробой и устройство перестанет работать совсем.

Ограничение по току

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

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

Схема подключения светодиода

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

podelyuchenie-svetodiod.jpg
Схема подключения светодиода

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

Схема подключения к плате Arduino Nano или Uno

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

Stunning-Wluff-Jaban-e1509615131819.png
Подключение светодиода напрямую к пину питания Ардуино

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

Начнем с отрицательных полюсов. Все минусы платы обозначены одним словом – GND, сокращенное от ground – земля («земля» или «корпус» – так часто называют общую линию для электрической схемы). На плате Arduino Uno или Nano можно найти три таких контакта: возле 13 пина и на другой стороне, в зоне разъемов питания.

Все остальные цифровые или аналоговые пины (с номерами или обозначениями A0-A5) могут быть и плюсами и минусами. Если мы укажем в программе, что на нужный нам порт надо подать напряжение (высокий уровень сигнала), то он становится плюсом. Если укажем низкий уровень сигнала, то пин станет «минусом». Не будем вдаваться в тонкости и расчеты, наша задача пока понять основы.

Пошаговая инструкция

Итак, нам нужно подключить светодиод к плате. Для этого мы соединяем длинную ножку к плюсу, т.е. к тому участку схемы, который ведет  к цифровому или аналоговому разъему платы. Но делаем это не сразу, а через резистор, который уже потом подключается к пину 13. Короткую ножку (минус) подключаем к минусу – к пину GND. Вот так это выглядит на схеме.

Подключение светодиода к Arduino Uno

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

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

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

Встроенный светодиод в Arduino Uno и Nano

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

Далеко не все “лампочки на плате” доступны нам для управления из скетча. Некоторые из них служат индикаторами обмена данными через те или иные протоколы (например, UART), другие информируют о включении питания и режиме работы платы. Светодиод, присоединенный к пину 13 платы может загореться и погаснуть при включении платы, а затем его работа определяется встроенным скетчем.

На некоторых вариантах плат количество источников света ограничено и 13 пин оказывается не подключенным. Это делается ради экономии потребляемой электроэнергии, ведь led-лампочка всегда приводит к повышенному потреблению электричества. В некоторых проектах, требующих увеличенного времени работы от аккумуляторов, “прожорливые лампочки” приходится выпаивать принудительно.

Подключение нескольких светодиодов

Для подключения нескольких светодиодов к ардуино нужно просто подключить каждый из них к своему цифровому порту по той же схеме. Например, для создания проекта «Мигалка» можно взять два светодиода красного и синего цвета, подключив через сопротивление их положительные (длинные ножки)контакты к 13 и 12 пину соответственно. Короткие ножки подключаются к минусу – земле.

Схема подключения светодиодов проекта Мигалка

Мы уже знаем, что на плате нас дожидаются три разъема с таким обозначением («GND»), можно подключать к любому. Если разъемов питания будет не хватать, у нас есть три варианта.

  • Сформировать нужные уровни питания на свободных пинах. Например, подав в скетче низкий уровень сигнала на пин 5, мы получим на этом разъеме необходимый нам «минус».
  • Использовать макетную плату, на которой есть отличные варианты для раздачи «плюсов и минусов» через общие линии питания (смотрите статью на нашем сайте).
  • Использовать специальные платы расширения Sensor Shield, у которых для каждого пина отдельно выводятся пины с питанием и землей.

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

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

Управление светодиодом

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

Включение и выключение светодиода в Ардуино

Включение светодиода произойдет в тот момент, когда мы подадим на пин, к которому он подключен, высокий уровень сигнала (напряжение). За это в Ардуино отвечает  функция digitalWrite со вторым параметром HIGH. Например, для светодиода, подключенного к пину 12 команда будет выглядеть так: digitalWrite (12, HIGH);

Чтобы выключить светодиод, мы используем ту же команду, но с параметром LOW: digitalWrite(12, LOW). Если мы вызовем первую команду, а потом чрез какой-то промежуток времени вторую, то у нас светодиод сначала загорится, а потом потухнет. Зациклив включение и выключение, мы получим постоянно включающийся и выключающийся мигающий маячок.

Бывают ситуации, когда светодиод горит не очень ярко и непонятно, что тут пошло не так. На самом деле нужно в первую очередь проверить, не забыли ли вы сконфигурировать пин в качестве выходного. Это делается добавлением функции pinMode (обычно в блоке setup()). Для нашего варианта функция будет выглядеть так: pinMode(12, OUTPUT);

Управление яркостью светодиода

Мы можем не только включать или выключать свет, но и управлять его яркостью. Для этого используется специальная технология с красивым названием ШИМ. Подключившись к пинам контроллера, поддерживающим ШИМ, можно регулировать интенсивность свечения с помощью функции analogWrite(). Мы должны указывать ей в качестве параметров номер пина и значение из диапазона от 0 до 255. Чем больше число, тем ярче будет светить лампочка. Например, для пина 3 пример будет выглядеть так: analogWrite(3, 255) или analogWrite(3, 100). В первом случае яркость будет максимально возможная, во втором – гораздо меньше.

Нужно помнить, что далеко не все пины контроллера поддерживают ШИМ. У Arduino Uno, Nano, основанных на ATMEGA328, шим поддерживают пины 3, 5, 6, 9, 10, 11. У платы Mega таких пинов гораздо больше.

Заключение

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

Можно подключать несколько светодиодов, но следить, чтобы не выйти в итоге за пределы ограничений по току. Можно не просто включать или выключать свет, но и управлять  его яркостью. Для этого используем пины, поддерживающие ШИМ и функцию analogWrite.

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

Ардуино: управление светодиодом

Как известно, первая программа, которую человек пишет при изучении программирования называется «Hello World!». Суть этой программы сводится к тому, чтобы после запуска на экране появилась указанная простая фраза.

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

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

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

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

А вот так выглядят светодиоды «в живую».

Это обычные одноцветные светодиоды. А бывают еще двух, и даже трехцветные. Вот так, например, выглядит трехцветный (RGB) светодиод:

У этого светодиода сразу четыре ноги. Одна — катод, а три другие — аноды для трех разных цветов.

В современной микроэлектронике применяются миниатюрные светодиоды для поверхностного монтажа. Такие индикаторы, например, имеются на Ардуино Уно для информирования пользователя о состоянии системы. Вот он светит зелененьким цветом:

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

Катод светодиода подключим к минусу (земля), анод же соединим с выводом №2 через токозадающий резистор 220 Ом.

Принципиальная схема подключения светодиода

Внешний вид макета

Резистор помогает решить две задачи. Во-первых, при подключении к источнику питания, светодиод старается бесконтрольно пропустить через себя как можно больше тока. Это может привести к самосожжению самого светодиода и к повреждению контроллера! Обычному светодиоду нужно всего 20 мА тока.

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

Учитывая эти два пожелания, мы можем рассчитать номинал нашего токозадающего резистора. Закона Ома в студию!

I = U/R;
R = U/I = (5В-2В)/20мА = 150 Ом

Итак, мы выяснили, что токозадающий резистор для классических выводных светодиодов имеет номинал 150 Ом, именно его мы и установим в схему.

Вообще, если под рукой нет резистора на 150Ом, можно любой другой большего номинала. Просто светодиод будет гореть менее ярко. Big deal.

Теперь, когда светодиод подключен а Ардуино, настало время программирования.

Для вывода высокого или низкого уровня сигнала на один из контактов общего назначения, в редакторе программ Arduino IDE используется функция digitalWrite. Вызов этой функции имеет вид:

digitalWrite( номер_контакта, уровень_сигнала );

где аргумент уровень_сигнала может принимать два значения: HIGH (высокий, +5В) или LOW (низкий, заземлен).

Другими словами, если написать:

digitalWrite( 2, HIGH );

то Ардуино соединит ногу №2 с питанием +5В и светодиод, ясен пень, вспыхнет!

Если же напишем:

digitalWrite( 2, LOW );

Анод светодиода замкнется на землю, и светодиод погаснет 🙁

С этим понятно. Остался еще один момент. Чтобы контакт №2 именно выводил сигнал, а не принимал его, потребуется использовать специальную функцию для установки режима контактов — pinMode. Формат этой функции таков:

pinMode( номер_контакта, режим_контакта );

где аргумент режим_контакта может принимать значения: OUTPUT (вывод) и INPUT (ввод).

То есть нам, чтобы помигать светодиодом, надо будет добавить в программу строчку:

pinMode( 2, OUTPUT );

Итоговая программа для мигания светодиодом будет иметь вид:

В программе присутствует еще одна полезная функция — delay. Это просто пауза, задаваемая в миллисекундах. delay (1000) — означает паузу в 1000 миллисекунд, что равно одной секунде.

Все! Загружаем программу на Ардуино, и смотрим на мигающий светодиод! Вы сделали это сами. Запрограммировали микроконтроллер! Круто, не правда ли?:)

Для закрепления рекомендуем сделать несколько простых устройств со светодиодами.

  1. Проблесковые маячки. Пусть в схеме будет два светодиода: красный и желтый. Нужно написать программу, которая будет мигать двумя светодиодами одновременно. Когда один загорается, другой гаснет. И наоборот.
  2. Сигнал SOS. Светодиод должен мигнуть три раза с периодом 500 мс, затем три раза с периодом 1000 мс, и, наконец, еще три раза опять быстро — 500 мс. Таким образом, светодиод будет передавать сигнал SOS, который на азбуке Морзе состоит из трёх точек, трех тире и еще трёх точек.

6+

amperka-nabor.png

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

720px-Arduino_Logo.svg_-300x204.pngКраткие сведения: Arduino (ардуино) — популярная аппаратная вычислительная платформа, основными компонентами которой являются плата ввода-вывода и среда разработки. Arduino может использоваться как для создания автономных интерактивных объектов, роботов, так и подключаться к программному обеспечению, выполняемому на компьютере. Платы имеют аналоговые и цифровые порты,  к которым можно подключить практически любое простое устройство: кнопка, датчик, мотор, экран. Подробнее об Arduino вы можете прочитать в одном из наших постов.

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

Итак, видео-инструкция сборки мигающего светодиода на Arduino. Очень просто. Всего 2 минуты!

Для подключения мигающего светодиода на Arduino и управления им вам понадобится:

  • плата Arduino
  • breadboard
  • 2 провода «папа-папа»
  • светодиод
  • резистор.

Также вам потребуется программа Arduino IDE, которую можно скачать с сайта Arduino.

Все эти комплектующие входят в большинство начальных комплектов, их также можно приобрести по отдельности. Наборы Arduino можно купить на официальном сайте и в интернет-магазинах,  наиболее привлекательные цены, постоянные спецпредложения и бесплатная доставка на сайтах AliExpress и DealExtreme. Если нет времени ждать посылку из Китая — рекомендуем интернет-магазин DESSY.

Breadboard представляет из себя сетку из гнезд, которые обычно соединяются так:

схема-действия-breadboard1.jpg

Breadboard

Для удобства приводим схему подключения светодиода на Arduino:схема-подключения-1-светодиода2.jpg

Схема подключения светодиода на Arduino

Для работы этой модели подойдет следующая программа (программу вы можете просто скопировать в Arduino IDE):

int led = 8; void setup() { pinMode(led, OUTPUT); } void loop() { digitalWrite(led, HIGH); delay(1000); digitalWrite(led, LOW); delay(1000); }

И тоже самое с построчными комментариями (на первых порах вы можете использовать готовые программы, не вникая в синтаксис и алгоритм): int led = 8;  //объявление переменной целого типа, содержащей номер порта к которому мы подключили второй провод void setup()  //обязательная процедура setup, запускаемая в начале программы; объявление процедур начинается словом void { pinMode(led, OUTPUT); //объявление используемого порта, led - номер порта, второй аргумент - тип использования порта - на вход (INPUT) или на выход (OUTPUT) } void loop() //обязательная процедура loop, запускаемая циклично после процедуры setup { digitalWrite(led, HIGH); //эта команда используется для включения или выключения напряжения на цифровом порте; led - номер порта, второй аргумент - включение (HIGH) или выключение (LOW) delay(1000); //эта команда используется для ожидания между действиями, аргумент - время ожидания в миллисекундах digitalWrite(led, LOW); delay(1000); }

На этом первый урок закончен!

Смотрите также:

Учебный курс «Arduino для начинающих»: главная страница.

Посты по урокам:

  1. Первый урок: Светодиод.
  2. Второй урок: Кнопка.
  3. Третий урок: Потенциометр.
  4. Четвертый урок: Сервопривод.
  5. Пятый урок: Трехцветный светодиод.
  6. Шестой урок: Пьезоэлемент.
  7. Седьмой урок: Фоторезистор.
  8. Восьмой урок: Датчик движения (PIR) на Arduino. Автоматическая отправка E-mail.
  9. Девятый урок: Подключение датчика температуры и влажности DHT.

Все посты сайта «Занимательная робототехника» по тегу Arduino.

Наш YouTube канал, где публикуются видео-уроки.

Не знаете, где купить Arduino? Все используемые в уроке комплектующие входят в большинство готовых комплектов Arduino, их также можно приобрести по отдельности. Подробная инструкция по выбору здесь. Низкие цены, спецпредложения и бесплатная доставка на сайтах AliExpress и DealExtreme. Если нет времени ждать посылку из Китая — рекомендуем интернет-магазины Амперка и DESSY. Низкие цены и быструю доставку предлагает интернет-магазин ROBstore. Смотри также список магазинов.

Автор: Александр Гагарин.

Используемые источники:

  • https://arduinomaster.ru/uroki-arduino/podklyuchenie-svetodioda-k-arduino/
  • https://robotclass.ru/tutorials/arduino-led/
  • http://edurobots.ru/2014/03/arduino-svetodiod/

Рейтинг автора
5
Подборку подготовил
Максим Уваров
Наш эксперт
Написано статей
171
Ссылка на основную публикацию
Похожие публикации