Программируемая светодиодная лента. Светодиодная лента WS2812B - изготовление новогодней подсветки окна

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

1. Вводная информация о светодиодах

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

Основных назначений у них два :

Демонстрация работы оборудования или оповещение о каком-либо событии;
применение в декоративных целях (подсветка и визуализация).

Внутри светодиод состоит из красного (red), зеленого (green) и синего (blue) кристаллов, собранных в одном корпусе. Отсюда такое название – RGB (рис.1).

2. С помощью микроконтроллеров

С помощью него можно получить множество различных оттенков света. Управление RGB-светодиодом осуществляется с помощью микроконтроллера (MK), например, Arduino (рис.2).

Конечно, можно обойтись простым блоком питания на 5 вольт, резисторами в 100-200 Ом для ограничения тока и тремя переключателями, но тогда управлять свечением и цветом придется вручную. В таком случае добиться желаемого оттенка света не получится (рис.3-4).

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

3. Контроллер для управление RGB

Для разгрузки выводов МК применяются специальные контроллеры WS2801 (5 вольт) или WS2812B (12 вольт) (рис.5).

С применением отдельного контроллера нет необходимости занимать несколько выходов MK, можно ограничиться лишь одним сигнальным выводом. МК подает сигнал на вход «Data» управляющего контроллера светодиода WS2801.

В таком сигнале содержится 24-битная информация о яркости цвета (3 канала по 8 бит на каждый цвет), а также информация для внутреннего сдвигового регистра. Именно сдвиговый регистр позволяет определять, к какому светодиоду информация адресовывается. Таким образом можно соединять несколько светодиодов последовательно, при этом использовать все так же один вывод микроконтроллера (рис.6).

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

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

В интернет-магазинах можно встретить адресные светодиодные ленты, когда в одном метре умещается до 144 штук (рис.8).

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

5. Недостаток адресуемых светодиодов

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

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

6. Применение адресуемых светодиодных лент

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

Получается интересное решение, если светодиодную ленту использовать в качестве фоновой подсветки Ambilight для монитора компьютера (рис.10-11).

Если вы будете использовать микроконтроллеры на базе Arduino, вам понадобится библиотека FastLed для упрощения работы со светодиодной лентой ().

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

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

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

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

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

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

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

iMLed16x3_Pro (16ch,2А/ch) от Impuls Light

Размер контроллера 20 на 10 см, и 3,5 см высотой, при весе всего 200 грамм. Контроллер способен управлять до 16 каналами, при напряжении от 5 до 25 вольт, причем максимальный ток в 32 ампера, для 16 каналов по 2 ампера, достигается при 12 вольтном питании светодиодов.

Загрузка программы осуществляется через USB-кабель, при помощи идущего в комплекте фирменного приложения DynamicLight, с помощью которого пользователь получает возможность писать программы в 1336 шагов для одного контроллера с размером шага по времени от 5 миллисекунд до 4 минут.

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

В распоряжении пользователя 16 каналов либо 5 независимых групп для RGB. Можно подключать монохромные модули и ленты, пиксельные светодиоды и RGB-кластеры на напряжение от 5 до 24 вольт.

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

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

Чтобы создать больше каналов для вывески, или подать больший ток на элементы, достаточно синхронизировать между собой несколько контроллеров iMLed16x3_Pro по принципу master-slave, и затем соединить контроллеры между собой двухжильным кабелем.

Dominator 810 от RUNLINE

Контроллер имеет размеры 11,5 на 6,5 см, и 4 см в высоту, при небольшом весе в 330 грамм. Контроллер способен управлять до 8 каналами, при напряжении в диапазоне от 4 до 25 вольт, причем максимальный суммарный ток составляет 40 ампер, а максимальный ток на канал — 10 ампер.

Загрузка программы осуществляется по USB, при помощи идущего в комплекте фирменного ПО Led controller, с помощью которого пользователь получает возможность писать программы в 65000 шагов для одного контроллера с повторами, и с длительностью кадра по времени от 1,6 миллисекунд до 4 секунд. Создать динамический сценарий любой сложности при помощи приложения можно за считанные минуты.

Для программирования доступно 8 каналов. Можно подключать монохромные модули, ленты, пиксельные светодиоды и табло на напряжение от 4 до 25 вольт.

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

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

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

Андрей Повный


Я взял влагозащищенную версию, которая у продавца обозначается как «White 4m 60 IP67», это лента в силиконе. Пришла на катушке, в фольгированном пакетике:


На одном метре 60 светиков, залитых силиконом:


С обратной стороны двухсторонний скотч для крепления к поверхности:


Посмотрим на отдельную секцию ленты:


Видим: линии отреза по контактам, собственно контакты с двух сторон: DIN - входные данные, DO - выходные данные, +5V - плюс питания, GND - минус питания, C1 - керамический конденсатор, ну и собственно сам светодиод припаянный 4-мя контактами. Направление передачи данных указано черным треугольником.

Cами светодиоды WS2812B представляют собой сборку из микросхемы и 3-х светодиодов (красный, синий и зеленый), благодаря специальному протоколу, микросхема принимает данные только для своей сборки, остальные данные передает дальше по цепочке. Благодаря этому, каждой отдельной сборке можно передать информацию о яркости ее каждого светодиода (красного, синего и зеленого) и получить нужный цвет.

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

Для ардуино разработана хорошая библиотека для данных сборок . Которая позволяет раскрашивать каждую сборку в свой цвет. Также у Adafruit есть библиотека для экранов из данных сборок и неплохие примеры использования.

Мы уже видели на этом сайте замечательные результаты творчества с применением WS2812B: , .

Мне захотелось сделать управляемую ленту в окошко с применением данной ленты. Клеить ленту будем в оконный проем, поэтому потребуется 2 метра ленты. Собрав прототип простой гирлянды и загрузив пример, идущий в комплекте с библиотекой Adafruit_NeoPixel: strandtest, я убедился что принципиально все работает. Фактически в библиотеке задается один пин контроллера который подключается ко входу Din первой сборки.
Схема:


С типовым скетчем и типовым подключением никаких проблем не возникло.

Но ведь нам требуется управлять линейкой удаленно… Вот тут и начинаются грабли.

Первым делом я решил подключить ик приемник и управлять с пульта. Собрал схему помигал светодиодом и подключил ленту… Реакции не было… Точнее я подключив консоль получал случайного вида коды кнопок, нажав 10 раз на одну кнопку и увидев только разные коды, я задумался. Первая мысль была помеха по питанию, ведь кроме включения ленты ничего не менялось. Прочитал на о рекомендации впаять на вход ленты электролит напряжением 6.3 Вольта и емкостью не меньше 1000 мкФ, конечно же сразу это сделал, результат нулевой… Начал копать код библиотеки Adafruit_NeoPixel и обнаружил, что при передаче данных на светодиоды библиотека полностью блокирует прерывания. Отключение блокировки привело к тому что лента вела себя очень странно, прерывания происходили на любой мусор попавший на вход ик приемника…

Расстроившись в неудаче при такой простой схеме, начал думать про второй контроллер, отвечающий за прием ик сигналов и управляющий основным… Если кому то хочется сделать ик-управляемую ленту на WS2812B, то это единственный разумный вариант. Конечно есть еще и экзотические, например, вводить промежутки времени когда гирлянда не меняет свое состояние и принимать в них ик-сигналы - но это уже совсем рогатый метод…

В итоге принято решение использовать bluetooth и с телефона управлять гирляндой, благо несколько штучек модулей HC-06 у меня лежали без дела. Для индикации текущего режима работы гирлянды решил использовать дисплей на TM1637, обзор которого присутствует . Итоговая схема:

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

Теперь про управление, конечно написать свое красивое приложение заманчивая идея, но времени на это не было и я воспользовался приложением для android - , в режиме кнопок настроил нужные коды и стало все хорошо. Есть возможность подписать каждой кнопке посылаемый код и обозначение. Большего мне и не было нужно. Все эффекты пронумеровал получилось 10 различных, 10 кнопок задействованы под эффекты, и 1 кнопка на то чтобы включить последовательную смену эффектов.

Bluetooth модуль конфигуририровал с помощью программки , очень удобно, можно изменить название устройства при поиске и скорость:


HC-06 следует подключить к компьютеру с помощью стандартного USB-TTL ковертора.

Подключив к лабораторному блоку питания, выяснил, что моя лента (2 метра) потребляет в пике, когда все включено 2.1 А при напряжении 5В. Поставил блок питания на 3А, купленный в офлайне:


неделя непрерывной работы, проблем не выявила.

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


Делаем печатную плату в программе Sprint Layout, ИК приемник, я все таки оставил, так как возможно иное применение коробочки, либо как-то удастся разрешить проблему с ним:


Процесс изготовления методом ЛУТ я описывал ранее в .
Вот так выглядела плата с нанесением тонера:


Травление:


Собираем устройство:


Для подключения гирлянды я использовал разъем для наушников, по нему же подается питание на устройство. Провод для подключения блока питания к ленте я использовал ПВС 2x0.5, а для подключения устройства к ленте телефонный кабель 4 жилы, землю сделал из 2-х жил.
Итоговое устройство:






Ну и его эффекты:










Конечно лучше всего смотреть гирлянду на видео:

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

Материалы и инструменты

    Программируемая светодиодная лента, контроллёр Arduino и соответствующий источник питания;

    Клещи для нарезки светодиодных лент;

    Брус из тополя или более твёрдой древесины, длиной вдвое большей, чем длина светодиодной ленты;

    Настольный отрезной станок и инструмент для выборки пазов, либо фрезерный станок;

    Наждачная бумага;

    Столярный клей;

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

Монтаж

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

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

На сайте Adafruit имеется хорошее учебное руководство по программированию и список всех необходимых устройств.

Как только ваша программа начнет работать, вы сможете с помощью контролёра Arduino создавать всевозможные световые эффекты.

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



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

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



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

На YouTube можно посмотреть видеозапись, детально описывающую эту операцию:

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

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

Мы выбрали угол наклона около 22 градусов.

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




Чтобы получить блестящий и профессионально выглядящий результат, а также удостовериться, что все прокладки хорошо ложатся в пазы мы провели БОЛЬШУЮ шлифовку.

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



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

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