Светодиодная лента Ардуино — Подключение
Настройте свою схему следующим образом:
1. Подключите контакты Arduino 9, 6 и 5 к концам затвора трех МОП-транзисторов и подключите резистор 10 кОм в соответствии с заземлением. 2. Подключите ножки источника к заземлению. 3. Подключите дренажные опоры к разъемам Green, Red и Blue на светодиодной ленте. 4
Подключите шину питания к разъему +12v светодиодной полосы (обратите внимание, что на изображении выше провод питания черный, чтобы соответствовать цветам разъемов на моей светодиодной полосе). 5
Подключите заземление Arduino. 6. Подключите стабилизатор питания 12 В в сеть. Большинство светодиодных полосок имеет разъемы Dupont, к которым легко подключиться. Если у вас нет таких, вам понадобится припаять провода к диодной ленте. Не паникуйте, если вы новичок в пайке — это легкая работа. В интернете есть множество руководств по началу работы с паяльником, с которыми можно ознакомиться, если пайка доставляет вам трудности. Для этого проекта мы будем управлять нашей платой Arduino по USB . Вы можете выбрать питание платы с помощью вывода VIN, но перед этим убедитесь, что вы знаете ограничения мощности для своего устройства.
Как подключить LED ленту через транзистор
Схема подключения светодиодной ленты к Ардуино через транзистор
Скетч для плавного включения светодиодной ленты
void setup() { pinMode(10, OUTPUT); // объявляем пин 10, как выход } void loop() { // плавное включение for(int i=0; i<=255; i++) { analogWrite(10, i); delay(5); // ставим задержку для эффекта } //плавное затухание for(int i=255; i>=0; i--) { analogWrite(10, i); delay(5); // ставим задержку для эффекта } }
Пояснения к коду:
- Используем для плавного зажигания LED ленты 10 пин с ШИМ сигналом;
- Для этого примера датчик движения к Ардуино можно не подключать.
Скетч для плавного включения от датчика движения
unsigned long counttime; byte w = 1; #define LED 10 // назначаем порт для реле #define PIR 2 // назначаем порт для датчика void setup() { pinMode(LED, OUTPUT); // объявляем пин LED, как выход pinMode(PIR, INPUT); // объявляем пин PIR, как вход } void loop() { delay(200); // если есть движение - плавно включаем свет и заходим в цикл while (w == 2) if (digitalRead(PIR) == HIGH) { for (int i = 0; i <= 255; i++) { analogWrite(LED, i); delay(5); } w = 2; while (w == 2) { if (digitalRead(PIR) == HIGH) { delay(200); // если движения нет - свет не выключаем, а заходим в цикл while (w == 0) if (digitalRead(PIR) == LOW) { w = 0; } } } } // если движения нет - включаем счетчик и заходим в цикл while if (digitalRead(PIR) == LOW) { counttime = millis(); w = 0; while (w == 0) { delay(200); // если движения нет в течении 10 секунд - выключаем свет и выходим из цикла if (millis() - counttime > 10000) { for (int i = 255; i >= 0; i--) { analogWrite(LED, i); delay(5); } w = 1; } // если обнаружено движение - переходим в цикл (w == 2), не выключая свет if (digitalRead(PIR) == HIGH) { w = 2; } } } }
Пояснения к коду:
- в выражении можно поставить любое значение в миллисекундах, при котором свет не будет выключаться;
- задержка Ардуино может влиять на скорость срабатывания датчика, но позволяет немного разгрузить процессор.
Как задать цвет свечения rgb лентой по wi-fi.
Мы определили команду и параметры приема для задания цвета ленты. Для удобства мы будем принимать значения в стандартном виде RGBA(100,255,255,255). Яркость у нас определяется значением пин, т.е. если мы дадим команду analogWrite (LED_R, 255), то у нас загорится красный цвет и яркость будет равна 25%. Зная это мы будем приводить наш стандартный вид к виду удобному arduino. Для этого нам необходимо принимаемое значение цвета(по стандарту максимум 255) умножить на 4 и умножить на процент яркости(параметр A). Отсюда получается — нам нужна функция, которая распарсит 4 параметра(A,Red,Green,Blue), приведет их в необходимый вид для ардуино и зажжет нужный цвет. Получается на стороне платы мы работаем с тремя значениями RGB, а яркость уходит в значение цвета. Потом обнуляем переменную с принимаемыми значениями.
Варианты управления адресной светодиодной лентой.
Есть несколько способов управлять адресной светодиодной лентой:
Аппаратный при помощи контроллера SPI
На эту тему вы можете почитать нашу специальную статью. В этой статье мы максимально подробно описали принципы управления по протоколу SPI.
Аппаратный при помощи UART-интерфейса
На эту тему вы можете почитать нашу специальную статью. В этой статье мы максимально подробно описали принципы управления с помощью UART.
Программный
Достоинство первых двух способов – это возможность освободить драйвер от части работы по передаче бит информации о цвете пикселю. Недостатки этих способов – во-первых, ограниченное количество линий управления пикселями, во-вторых, требуется дополнительное разбитие байтов информации о цвете на пачки битов (что частично съедает свободное время контроллера в моменты аппаратной передаче бит).
Светодиодная лента
Светодиодная лента — это группа из светодиодов, размещённых на гибком и клейком основании. Лента может быть длиной от 30 см до 5 м.
Существует два типа лент: с синхронизированными светодиодами и адресными. Для гирлянды понадобится второй тип. В этой ленте к каждому светодиоду подключён специальный чип. Эти чипы соединены последовательно. Всего лишь по одному проводу, подключенному к первому чипу, можно управлять цветом отдельно каждого светодиода в ленте.
Традиционная адресная светодиодная лента
У таких адресных светодиодных лент множество форм-факторов. Есть традиционные формы лент или же матрицы. Есть ленты с отдельными светодиодами, которые лучше всего подойдут на роль гирлянды. Вот некоторые их них:
- раздельные адресные светодиоды;
- светодиоды в виде бочонков;
- полусферические светодиоды (вариант 1, вариант 2);
- светодиоды в виде ёлочных шишек;
- светодиоды в раздельных сферах;
- светодиоды наподобие гирлянды.
Для примера будет использоваться последний тип адресной ленты:
Как устроен RGB-светодиод и его назначение
Светодиодная лента состоит из 3 цветных кристаллов и 4 выходов: 12 (общий вывод), R (Red), G (Green), B (Blue). Основные комплектующие помещены в пластиковый корпус. Также в некоторых моделях RGB LED Arduino присутствуют встроенные резисторы. Они подключены к цветным выходам. Анодные и катодные электроды обладают самыми длинными выводами.
Одной из самых современных моделей RGB Ардуино является адресная светодиодная лента. Она состоит из диодов и контроллера. В это устройство по умолчанию встроены 3 полевых транзистора, что позволяет регулировать цвет светодиодов по отдельности.
Устройство светодиоида.
Для питания резисторов и выводов нужно подключить адресную ленту к следующим приборам:
- Powerbank 5V: лента подсоединяется к данному устройству при помощи USB-штекеров. Емкость Powerbank 5V составляет 3350 мА*ч, что позволяет питать светодиоды током с силой 3А.
- Батарейки АА: используются в количестве 3 шт. Общая емкость этих приборов составляет 180 мА*ч. Они подают ток с напряжением до 5,5 В. Рекомендуется использовать батарейки AA, изготовленные из лития или апкалина.
- Никелевые аккумуляторы: имеют напряжение до 1,4 В. Для питания RGB Arduino требуется не менее 4 аккумуляторов из никеля. Емкость сборки составляет 2700 мА*ч.
- Литиевые аккумуляторы: имеют напряжение 4,2 В. В процессе эксплуатации значение этого показателя снижается до 3 В. Литиевые аккумуляторы позволяют сохранять полную яркость светодиодов. Они питают диоды током с силой до 2 А.
В зависимости от способа подачи электрического тока светодиоды будут гореть разными цветами. Если подать питание на 3 цветных светодиода одновременно, то кристаллы станут белыми. Для настройки цветовой гаммы Arduino RGB используются контроллеры с пультом управления. Они состоят из 3 полевых транзисторов и микропроцессора. Это приспособление позволяет настроить цветовую гамму светодиодов на дальнем расстоянии. Работа контроллеров с пультом управления обеспечивается при помощи скетчей, написанных в программной среде Ардуино.
Выделяют 2 основные модели RGB LED Arduino:
- WS2811: светодиоды питаются от чипа WS2811, расположенного отдельно от RGB-ленты. Питание устройства составляет 12 В.
- WS2812b: представляет собой ленту с напаянными светодиодами. В диоды встроены чипы WS2812b. Они позволяют менять окрас светодиодов по отдельности. Питание ленты WS2812b составляет 5 В.
Основными преимуществами RGB LED Arduino являются простота конструкции и высокий КПД. Эти приспособления активно используются при изготовлении осветительных приборов и декоративных подсветок. Также технология RGB нашла применение в трехмерной графике и WEB-разработке.