Особенности подключения и управления адресной светодиодной лентой

Устройство

Конструкция монохромной светодиодной ленты

Конструкция монохромной светодиодной ленты:

  • гибкая печатная плата выполнена из диэлектрического материала толщиной 2-3 мм, ширина 8-20 мм. На одной из сторон нанесены токоведущие линии, соединяющие рабочие элементы, на второй – самоклеящаяся поверхность для крепления к поверхности.
  • SMD диод устанавливаемый на поверхность платы таким образом, чтобы угол рассеивания света составлял 120 градусов.
  • Ограничивающий резистор.
  • Питающие провода.

Принципиальная электрическая схема led платы

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

Мигание светодиодами NeoPixel в ленте

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

Arduino

#include <Adafruit_NeoPixel.h>

#define PIN 6
#define NUMPIXELS 7

Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

void NeoBlink(int num, int wait)
{
for (int i = 0; i < num; i++)
{
pixels.setPixelColor(i, 35, 35, 35);
}
pixels.show();
delay(wait);
for (int j = 0; j < num; j++)
{
pixels.setPixelColor(j, 0, 255, 0);
}
pixels.show();
delay(wait);
}

void setup()
{
pixels.begin();
pixels.setBrightness(50);
}

void loop()
{
NeoBlink(7, 500);
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34

#include <Adafruit_NeoPixel.h>
 
#define PIN        6
#define NUMPIXELS 7
 
 

Adafruit_NeoPixelpixels(NUMPIXELS,PIN,NEO_GRB+NEO_KHZ800);

voidNeoBlink(intnum,intwait)

{

for(inti=;i<num;i++)

{

pixels.setPixelColor(i,35,35,35);

}

pixels.show();

delay(wait);

for(intj=;j<num;j++)

{

pixels.setPixelColor(j,,255,);

}

pixels.show();

delay(wait);

}
 

voidsetup()

{

pixels.begin();

pixels.setBrightness(50);

}
 

voidloop()

{

NeoBlink(7,500);

}

Правильная покупка светодиодной ленты на AliExpress.

Что еще можно сказать по сечению проводов? Например, лента 2812 на один диод потребляет порядка 60мА. При длине подсветки в 5 метров ток составит 18 Ампер!

По всем расчетным таблицам для такого тока требуются провода сечением 2,0-2,5мм2. Даже на самой ленте медные дорожки такого сечения не обеспечивают.

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

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

Но как это проверить, не покупая изделие? Элементарно – запросите информацию по весу ленты. После этого сравните одинаковые модели от разных производителей.

Так например, у ленты длиной 5м (60 светодиодов на метр) при весе менее 100гр просадки напряжения начинаются уже через 1,5 метра!

Объясняется это очень тонкими медными дорожками или некачественной медью в них.

Способы управления цветом свеченияRGB светодиодных лент

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

Принцип работы простейшего контроллера на выключателях

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

Резисторы R1-R3 служат для ограничения тока и их можно устанавливать в любом месте цепи питания кристаллов одного цвета. По этой схеме можно подключать RGB ленты, рассчитанные на напряжение питания как 12 В, так и 24 В.

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

Принцип работы электронного контроллера

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

Так как для работы светодиодной ленты требуется, как правило, напряжение постоянного тока 12 В (реже 24 В), то для подключения ее к электросети переменного тока 220 В применяется блок питания или адаптер, преобразующий переменное напряжение в напряжение постоянного тока, которое через разъемное соединение подается на блок контроллера.

Рассмотрим принцип работы RGB контроллера на примере самого простого и широко применяемого контроллера модели LN-IR24. Он состоит из трех функциональных узлов – контроллера управления RGB, силовых ключей и микросхемы инфракрасного сенсора (ИК). Микросхема контроллера прошита на требуемый алгоритм работы светодиодной ленты. Управление микросхемой контроллера осуществляется сигналом, поступающим с микросхемы сенсора ИК. На ИК сенсор управляющий сигнал поступает при нажатии кнопок на пульте дистанционного управления.

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

Arduino FastLED описание библиотеки

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

Ошибка ‘FastLED.h no such file or directory’

Первое, с чем сталкивается каждый начинающий программист и долго не может понять в чем причина — это ошибки компиляции Ардуино при загрузке скетча. Ошибка FastLED.h no such file or directory означает, что на компьютере не установлена библиотека FastLED.h. Проблему достаточно просто устранить, установив FastLED. Это правило действует и при возникновении такой ошибки с другими библиотеками.

Описание команд библиотеки FastLED на русском

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

#include <FastLED.h> // подключаем библиотеку

#define NUM_LEDS 100 // указываем количество светодиодов на ленте
#define PIN 4                    // указываем пин для подключения ленты

CRGB leds;

void setup() {
   // основные настройки для адресной ленты
   FastLED.addLeds <WS2812, PIN, GRB>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
   FastLED.setBrightness(50);
}

Кроме основных настроек в процедуре void setup() еще указывается яркость для светодиодов с помощью команды — максимальное значение 255. Яркость можно поменять в любом месте программы, в том числе и в процедуре void loop(). В основном цикле будем включать последовательно пиксели разными цветами, которые задаются с помощью RGB палитры (объединим код для платы).

#include <FastLED.h> // подключаем библиотеку

#define NUM_LEDS 100 // указываем количество светодиодов на ленте
#define PIN 4                    // указываем пин для подключения ленты

CRGB leds;

void setup() {
   // основные настройки для адресной ленты
   FastLED.addLeds <WS2812, PIN, GRB>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
   FastLED.setBrightness(50);
}

void loop() {
   leds = CHSV(0, 0, 255); // задаем для первого пикселя синий цвет
   FastLED.show(); // отправляем информацию на ленту
   delay(500);

   leds = CHSV(0, 255, 0); // задаем для второго пикселя зеленый цвет
   FastLED.show(); // отправляем информацию на ленту
   delay(500);

   leds = CRGB::Red; // задаем для третьего пикселя красный цвет
   FastLED.show(); // отправляем информацию на ленту
   delay(500);

   leds = CRGB::White; // задаем для четвертого пикселя белый цвет
   FastLED.show(); // отправляем информацию на ленту
   delay(500);
}

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

Сфера применения

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

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

Или создать неповторимый вид своего дома, закрепив ее по периметру фасада. Промышленность выпускает ленты не только для использования в помещениях, но и для улицы. Для этого подойдут изделия со степенью защиты IP65-IP68. Часто светодиодные ленты применяют для создания цветовой подсветки и в автомобиле.

Адресуемый светодиод

Это RGB-светодиод, только с интегрированным контроллером WS2801 непосредственно на кристалле. Корпус светодиода выполнен в виде SMD компонента для поверхностного монтажа. Такой подход позволяет расположить светодиоды максимально близко друг другу, делая свечение более детализированным.

Стоит учесть, что один светодиод потребляет при полной яркости всего 60-70 мА, при подключении ленты, например, на 90 светодиодов, потребуется мощный блок питания с током не менее 5 ампер. Ни в коем случае не питайте светодиодную ленту через контроллер, иначе он перегреется и сгорит от нагрузки. Используйте внешние источники питания.

Что такое светодиодная лента

Светодиодная лента (СДЛ) – это светоизлучающая электрическая конструкция в виде гибкой печатной платы (ленты) с равномерно нанесенными на неё источниками света – светодиодами (LED) и ограничителями электрического тока – резисторами (сопротивлениями).

Пример СДЛ

Глоссарий:

LED элемент, СД – светодиод.

Резистор – элемент электрической схемы, ограничивающий рабочий электрический ток.

Диэлектрик – материал не проводящий электрический ток.

RGB контроллер – устройство управления RGB лентой.

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

АКБ – аккумуляторная батарея.

БП – блок питания

SMD – светодиодный прибор, устанавливаемый на поверхность гибкой платы.

Гибкая плата – основание ленты, на которую наносятся led элементы.

Драйвер – устройство, источник рабочего электрического тока для светодиодной ленты.

Выбор контроллера для адресной ленты

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

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

Что касается выбора мощности блока питания, то здесь
ориентируйтесь на следующий показатель. Один светодиод для моделей sw2812b – это
примерно 60мА при белом свете.

Считайте их общее количество в ленте, берите запас в 30% и подбирайте подходящий блок.

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

Питание можно подать и напрямую, но наличие контроллера
обязательно.

Характеристики светодиодных лент

Мощность СДЛ напрямую зависит от типа используемых CMD диодов и плотности их размещения (установленное количество на 1 метр).

Тип светодиодаКоличество светодиодов на 1 мПотребляемая мощность 1 м ленты
SMD 352860 шт.4.8 Вт
SMD 3528120 шт.9.6 Вт
SMD 3528240 шт.19.2 Вт
SMD 505030 шт.7.2 Вт
SMD 505060 шт.15 Вт
SMD 5050120 шт.25 Вт

Зная потребляемую мощность СДЛ можно выбрать мощность блока питания (БП), которая выбирается с учётом 20% запаса.

Рабочее напряжение

Светодиодные элементы работают от стабильного постоянного напряжения значением 12, 24 или 36 Вольт. Для получения такого уровня напряжения используется led-драйвер, который преобразует переменное напряжение 220 В в постоянное с необходимым уровнем рабочего напряжения.

Led драйвер на 24 В

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

Существует модификация СДЛ, работающей от сети 220 В. Её применение в домашних условиях не безопасно. Чаще всего такие СДЛ применяются в местах с высокой степенью защиты (например, декоративное уличное освещение).

Тип SMD светодиода

Тип диода обозначается четырьмя цифрами XXYY, где XX – длина,YY – ширина.

Например, SMD 3528 длиной 3,5 мм, ширина – 2,8 мм.

Виды SMD диодов

Подробнее о SMD-диодах можете узнать тут

Плотность установки светодиодов

Данная характеристика определяет количество кристаллов, установленных на 1 метре платы. Чем больше кристаллов, тем ярче СДЛ.

Распространены СДЛ с плотностью 30, 60 и 120 светодиодов на 1 погонный метр. Для подсветки применяют значение 30 и 60, для освещения – 60 и 120.

Плотность установки диодов

Плотность установки диодов

Цвет свечения светодиода

Цвет свечения СДЛ выбирается в зависимости от её назначения. Для локального освещения – белый цвет теплого или холодного оттенка, для дизайнерских решений – красный, синий, зеленый, желтый или многоцветная RGB лента.

Интенсивность свечения (яркость) 

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

Характеристика3528505056305730-055730-1
Световой поток, лм5154040100
Мощность, Вт0.060.20.50.51

Яркость определяется как произведение длины СДЛ (в метрах) на количество установленных светодиодов (на 1 метре) и на значение яркости одного диода.

Характеристики платы

Ширина платы подбирается с учетом места её установки, как правило, это от 8 до 10 мм для эксплуатации в стандартных каналах и домашних условиях, от 10 до 20 мм – герметичные влагозащищенные СДЛ для улицы и эксплуатации под водой.

Длина платы рассчитывается по длине поверхности, на которой будет производиться установка. В стандартных катушках выпускается от 3 до 25 метров.

Цвет выбирается исходя из её назначения: прозрачный, белый, коричневый и серый цвета.

Резка

Для достижение необходимой длины СДЛ разрезается в специальных местах не разрывая схему подачи напряжения.

Обозначение места резки

Разрез проводится в местах окончания одного из блок-участков, для каждого типа СДЛ установлена своя кратность.

Вид светодиодной лентыКратность резки
SMD 3528 60 LED 12V3 светодиода – 5 см
SMD 3528 120 LED 12V6 светодиодов – 5 см
SMD 3528 240 LED 24V12 светодиодов – 5 см
SMD 5050 30 LED 12V3 светодиода – 10 см
SMD 5050 60 LED 12/24V6 светодиода – 10 см
SMD 5050 120 LED 24V12 светодиода – 10 см

Маркировка

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

Таблица маркировки светодиодных лент

Ардуино и адресная светодиодная лента

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

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

Светодиодная лента Ардуино – Яркие идеи.

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

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

● Светодиодная лента 5v WS2811/12/12B; Все три модели имеют встроенные микросхемы и работают одинаково.

● 1 x Arduino Uno или аналогичная совместимая плата;

● 1 x резистор 220-440 Ом;

● 1 x конденсатор microFarad 100-1000 (все, что между этими двумя значениями, отлично подойдет);

● Макет и монтажные провода;

● Блок питания 5 В.

Настройте схему, как показано на рисунке:

Обратите внимание, что конденсатор должен быть правильной ориентации. Вы можете понять, какая сторона прикрепляется к рейке земля, ища знак минуса (-) на корпусе конденсатора

На этот раз мы задействуем Arduino, используя источник питания 5 В. Это позволит устройству работать автономно

Вы можете понять, какая сторона прикрепляется к рейке земля, ища знак минуса (-) на корпусе конденсатора. На этот раз мы задействуем Arduino, используя источник питания 5 В. Это позволит устройству работать автономно.

Во-первых, убедитесь, что ваша плата может работать с 5 В, прежде чем присоединить ее к источнику питания. Почти все платы работают на 5V через USB-порт, но штыри питания на некоторых могут иногда пропускать регуляторы напряжения и превращать их в поджаренные тосты.

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

Светодиодная лента Ардуино – Бегущий огонь или световая волна

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

Присоедините свой Arduino к компьютеру и откройте Arduino IDE. Убедитесь, что у вас правильный номер платы и порта, выбранный в меню «Сервис»> «Сервис и инструменты»> «Порт».

Мы будем использовать библиотеку FastLED для тестирования нашей установки. Вы можете добавить библиотеку, нажав на Эскиз> Включить библиотеку> Управление библиотеками и поиск FastLED. Нажмите «Установить», и библиотека будет добавлена в среду IDE.

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

Все, что вам нужно изменить, — это переменная DATA_PIN, чтобы она соответствовала значку 13 и переменной NUM_LEDS для определения количества светодиодов, находящихся в полосе, которую вы используете. В этом случае я применяю только небольшую линию из 10 светодиодов, вырезанных из более длинной полосы.

Используйте большее количество для красивейшего светового шоу!

Загрузите эскиз на свою плату, отсоедините USB-кабель и включите источник питания 5 В.

Наконец, подключите VIN Arduino к линии электропередач и наслаждайтесь представлением.

Светодиодная лента Ардуино – Безграничные возможности

Демо-эскиз демонстрирует некоторые из многих возможных комбинаций эффектов, которые могут быть достигнуты с помощью светодиодных лент. Наряду с тем, что они являются украшением интерьера, их также можно использовать для практических целей. Хорошим проектом будет создание вашей собственной атмосферы для медиацентра или рабочего места.
Хотя эти полосы определенно функциональнее, чем SMD5050, пока не списывайте со счетов стандартные 12-вольтовые светодиодные полосы. Они являются непревзойденными с точки зрения цены. Плюсом будет то, что существует огромное количество приложений для светодиодных лент.

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

RGB-контроллеры в сложных свето-системах

Управление цветом — важная функция, выполняемая RGB-контроллерами. С технической точки зрения устройства представляют собой многоканальные декодеры, где каждый канал выполняет роль диммера. Регулировка цвета происходит автоматически. Для получения эффектных динамических сценариев к каждому каналу декодера RGB подключают светодиоды разного цвета. Одновременное включение каналов позволяет создавать новые необычные световые композиции

При выборе устройства RGB нужно обратить внимание на технические параметры модели:

  1. Напряжение. Преимущественно используют контроллеры на 12, 24 или 32 В. Контроллер подключают в разрыв цепи между блоком питания и светодиодной лентой.
  2. Мощность устройства. Определяет число светодиодных изделий, которые можно подключить к контроллеру-декодеру RGB. В технических характеристиках указана максимальная мощность.
  3. Набор программ. В памяти устройства заложены типовые программы для получения разных световых эффектов. Спецификация режимов не приводится, указывается количество программ.
  4. Тип управления контроллером-декодером RGB. Электронные устройства управляются дистанционным пультом (инфракрасный и радиоволновый диапазон) или при помощи кнопок.

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

Список необходимого

  • Мозг устройства – Ардуино Нано – 1 шт. — 150 р.
  • Датчик движения — HC-SR505 – 1 шт. — 60 р.
  • Сенсорная кнопка TTP-223 – 1 шт. — 20 р.
  • Транзистор IRF-3205 — 3 шт. -150 р.
  • Резистор 10 К 0,25 Вт – 3 шт. – 6 р.
  • Резистор 20 Ом 0,25 Вт – 3 шт. – 6 р.
  • Макетная плата под пайку размерами 90х50 мм – 1 шт. 100 р.
  • Корпус 100х60 — 1 шт. 60 руб.

Итого 14 деталей на общую сумму примерно 600 рублей + сама светодиодная RGB лента в зависимости от формата планируемой подсветки.

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

Ардуино и адресная светодиодная лента

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

Светодиодная лента Ардуино — Яркие идеи.

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

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

● Светодиодная лента 5v WS2811/12/12B; Все три модели имеют встроенные микросхемы и работают одинаково.

● 1 x Arduino Uno или аналогичная совместимая плата;

● 1 x резистор 220-440 Ом;

● 1 x конденсатор microFarad 100-1000 (все, что между этими двумя значениями, отлично подойдет);

● Макет и монтажные провода;

● Блок питания 5 В.

Настройте схему, как показано на рисунке:

Обратите внимание, что конденсатор должен быть правильной ориентации. Вы можете понять, какая сторона прикрепляется к рейке земля, ища знак минуса (-) на корпусе конденсатора

На этот раз мы задействуем Arduino, используя источник питания 5 В. Это позволит устройству работать автономно

Вы можете понять, какая сторона прикрепляется к рейке земля, ища знак минуса (-) на корпусе конденсатора. На этот раз мы задействуем Arduino, используя источник питания 5 В. Это позволит устройству работать автономно.

Во-первых, убедитесь, что ваша плата может работать с 5 В, прежде чем присоединить ее к источнику питания. Почти все платы работают на 5V через USB-порт, но штыри питания на некоторых могут иногда пропускать регуляторы напряжения и превращать их в поджаренные тосты.

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

Светодиодная лента Ардуино — Бегущий огонь или световая волна

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

Присоедините свой Arduino к компьютеру и откройте Arduino IDE. Убедитесь, что у вас правильный номер платы и порта, выбранный в меню «Сервис»> «Сервис и инструменты»> «Порт».

Мы будем использовать библиотеку FastLED для тестирования нашей установки. Вы можете добавить библиотеку, нажав на Эскиз> Включить библиотеку> Управление библиотеками и поиск FastLED. Нажмите «Установить», и библиотека будет добавлена в среду IDE.

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

Все, что вам нужно изменить, — это переменная DATA_PIN, чтобы она соответствовала значку 13 и переменной NUM_LEDS для определения количества светодиодов, находящихся в полосе, которую вы используете. В этом случае я применяю только небольшую линию из 10 светодиодов, вырезанных из более длинной полосы.

Используйте большее количество для красивейшего светового шоу!

Наконец, подключите VIN Arduino к линии электропередач и наслаждайтесь представлением.

Светодиодная лента Ардуино — Безграничные возможности

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

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

2Управление светодиодами WS2812B (или WS2812)

Если просто подать на светодиодную ленту напряжение, ничего не произойдёт. Светодиоды ждут определённый сигнал, который будет ими управлять. Для управления используется последовательный однопроводный интерфейс. Биты “0” и “1” кодируются импульсами различной длины.

Коды нуля, единицы и сброса светодиода WS2812B

На диаграмме обозначены:

  • T0H – время выдержки высокого уровня при передаче кода логического нуля;
  • T0L – время выдержки низкого уровня при передаче кода логического нуля;
  • T1H – время выдержки высокого уровня при передаче кода логической единицы;
  • T1L – время выдержки низкого уровня при передаче кода логической единицы;
  • Treset – время сигнала оповещения об окончании управляющей последовательности.

Причём временные допуски заданы весьма жёстко. Так, для WS2812B время T0H = T1L и составляет 0,35 мкс, а время T1H = T0L и составляет 0,9 мкс. Для светодиода WS2812 временные параметры более изощрённые: T0H = 0,35 мкс, T1H = 0,7 мкс, T0L = 0,8 мкс, T1L = 0,6 мкс. Но длительность передачи одного бита и там, и там составляет 1,25 мкс.

Для указания цвета светодиода используется 24-битная схема RGB: под каждый из трёх каналов отводится по 8 бит. И расположены цвета в следующем порядке:

Кодирование цвета в пространстве RGB для светодиода WS2812B

То есть для того чтобы выставить желаемый цвет на первом светодиоде в цепочке, необходимо сформировать 24-битный код и подать его на вход DIN цепочки. Если мы хотим выставить цвет на двух светодиодах, необходимо сформировать уже 48-битный сигнал и так же подать его на вход DIN цепочки. И так далее. Чем больше светодиодов в цепочке – тем более длинную последовательность мы должны подать на её вход. Получив управляющий сигнал, контроллер светодиода берёт из неё первые 24 бита и выставляет тот цвет, который указан в этих 24 битах. Затем он отбрасывает эти 24 бита, а оставшуюся часть последовательности передаёт дальше. Там ситуация повторяется. Когда вся последовательность обработана или когда приходит сигнал сброса Reset, светодиоды запоминают состояние и не меняют его, пока не придёт новый управляющий сигнал.

Осталось дело за малым: передать цепочке светодиодов WS2812B осмысленную управляющую последовательность.

На этот счёт есть такая идея. По сути нам необходимо передавать 24-битные значения цвета в соответствии с положением светодиода в матрице 10 на 10. Аналогичным образом данные хранятся в графических файлах формата *.BMP. Только у них в начале файла ещё присутствует заголовок, который содержит дополнительную информацию: размер изображения, сколько бит приходится на один пиксель, есть ли сжатие и т.д. Вот как в деталях устроен формат BMP:

Внутреннее устройство формата BMP

Можно в любом графическом редакторе (например, Paint .NET) нарисовать изображение размером 10 на 10 пикселей (или такого, какой размерности у вас светодиодная панель), сохранить его в 24-битном формате, а затем взять массив байтов из раздела Image Data Pixel Array с данной схемы, и таким образом мы получим управляющий массив для загрузки светодиодной панели.

Обратите внимание, что в массиве данных о точках изображения BMP содержатся заполнители (Padding), которые дополняют строку байтов до числа, кратного 4. Т.е., например, в нашем случае строка содержит 10 пикселей по 24 бита на цвет (3 байта)

Соответственно, строка будет содержать 3×10=30 байтов. Но 30 не кратно 4. Ближайшее число, кратное 4, это 32. Соответственно, в файле BMP будет на каждую строку изображения на 2 байта заполнителя больше. Байты-заполнители нужно пропускать и не включать в управляющий массив.

Ах, да, чуть не забыл. В файле изображения BMP данные о цвете хранятся в формате R-G-B, а светодиод WS2812 принимает цвет в формате G-R-B. Необходимо поменять местами цвета, иначе все изображения будут совсем не тех цветов, которые мы ожидаем.

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

В этом примере мы будем использовать функцию random(num1, num2) чтобы сгенерировать случайное число в интервале от num1 и num2 и на основе этого выбрать цвет и светодиод.

Arduino

#include <Adafruit_NeoPixel.h>

#define PIN 6
#define NUMPIXELS 7

Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

#define DELAYVAL 500 // Time (in milliseconds) to pause between pixels

void setup() {
pixels.begin();
}

void loop() {
pixels.clear();
pixels.setPixelColor(random(0, 7), random(0, 255), random(0, 255), random(0, 255));
pixels.show();
delay(500);
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

#include <Adafruit_NeoPixel.h>
 
#define PIN        6
#define NUMPIXELS 7
 
 

Adafruit_NeoPixelpixels(NUMPIXELS,PIN,NEO_GRB+NEO_KHZ800);

 
#define DELAYVAL 500 // Time (in milliseconds) to pause between pixels
 

voidsetup(){

pixels.begin();

}
 

voidloop(){

pixels.clear();

pixels.setPixelColor(random(,7),random(,255),random(,255),random(,255));

pixels.show();

delay(500);

}

Поделитесь в социальных сетях:FacebookXВКонтакте
Напишите комментарий