Светодиодная лента на базе WS2812B
Отличие адресной LED-ленты от стандартной RGB заключается в том, что яркость и соотношение цветов каждого элемента регулируются отдельно. Это позволяет получить световые эффекты, принципиально недоступные для других типов осветительных приборов. Управление свечением адресной LED-ленты производится известным способом – с помощью широтно-импульсной модуляции. Особенностью системы является оснащение каждого светодиода своим собственным ШИМ-контроллером. Микросхема WS2812B представляет собой трехцветный светоизлучающий диод и схему управления, объединенные в одном корпусе.
Внешний вид светодиода с драйвером.
Элементы объединяются в ленту по питанию параллельно, а управляются по последовательной шине – выход первого элемента подключается к управляющему входу второго и т.д. В большинстве случаев последовательные шины строятся на двух линиях, по одной из которых передаются стробы (синхроимпульсы), а по другой – данные.
Внешний вид адресной ленты.
Шина управления микросхемы WS2812B состоит из одной линии – по ней передаются данные
Данные кодируются в виде импульсов постоянной частоты, но с разной скважностью. Один импульс – один бит
Длительность каждого бита составляет 1,25 мкс, нулевой бит состоит из высокого уровня длительностью 0,4 мкс и низкого 0,85 мкс. Единица выглядит, как высокий уровень в течение 0,8 мкс и низкий 0,45 мкс. Каждому светодиоду отправляется посылка из 24 бит (3 байт), дальше следует пауза в виде низкого уровня в течение 50 мкс. Это означает, что дальше будут передаваться данные для следующего LED, и так для всех элементов цепочки. Завершается передача данных паузой в 100 мкс. Это означает, что цикл программирования ленты завершен, и можно отправлять следующий набор пакетов данных.
Данные для управления адресной лентой.
Такой протокол позволяет обойтись для передачи данных одной линией, но требует точности выдержки временных интервалов. Расхождение допускается не более 150 нс. Кроме того, помехозащищенность такой шины очень низкая. Любые помехи достаточной амплитуды могут быть восприняты контроллером, как данные. Это накладывает ограничения на длину проводников от схемы управления. С другой стороны, это дает возможность проверки исправности ленты без дополнительных приборов. Если на светильник подать питание и дотронуться пальцем до контактной площадки шины управления, некоторые светодиоды могут хаотически загораться и гаснуть.
Технические характеристики элементов WS2812B
Для создания систем освещения на основе адресной ленты надо знать важные параметры светоизлучающих элементов.
Габариты LED | 5×5 мм |
Частота модуляции ШИМ | 400 Гц |
Потребляемый ток на максимальной яркости | 60 мА на один элемент |
Напряжение питания | 5 вольт |
Arduino и WS2812B
Популярная в мире платформа Ардуино позволяет создавать скетчи (программы) для управления адресными лентами. Возможности системы достаточно широки, но если их на каком-то уровне перестанет хватать, полученных навыков будет достаточно, чтобы безболезненно перейти на С++ или даже на ассемблер. Хотя начальные знания проще получить на Arduino.
Ардуино и адресная светодиодная лента
Этот проект – простой способ начать работу, но идеи, которые он охватывает, могут быть расширены для действительно эффектного освещения. С помощью всего лишь нескольких компонентов вы можете создать свой собственный восход солнца. Если у вас есть стартовый комплект с 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 для начинающих.
Варианты исполнения блоков питания для светодиодных лент
В зависимости от функционального назначения электронный балласт выпускается в следующих вариантах исполнения:
В виде компактного сетевого БП. Такие устройства выглядят как обычные зарядки для мобильных устройств.
Компактные сетевые блоки питания для светодиодных лент
Данное решение можно назвать эконом вариантом, поскольку из всех видов исполнения оно самое низкое по стоимости. Обратная сторона – низкая мощность, как правило, она не превышает 30-36 Вт (встречаются китайские изделия на 60 Вт, но в них этот параметр сильно завышен). Основная сфера применения – подключение простой подсветки. Главное достоинство – не требуется монтаж, драйвер достаточно воткнуть в розетку, предварительно подключив к выходу ленту.
Компактный блок, помещенный в герметичный пластиковый корпус. Максимальная мощность таких устройств 75 Вт. Встречающийся на китайской продукции показатель 100 Вт не соответствует действительности.
Герметичный компактный электронный балласт, закрытый от внешнего воздействия
Отличительные особенности: небольшой вес, компактные размеры, защита от влаги и пыли
Это практически идеальный вариант для организации подсветки в потолочных нишах, если не принимать во внимание высокую стоимость адаптера (почти вдвое дороже аналогов с негерметичным корпусом)
Электронный балласт в герметичном корпусе из алюминия. Этот вариант исполнения рассчитан на суровые условия эксплуатации. Сфера применения таких БП — освещение наружной рекламы, подсветка зданий и других объектов, где производится монтаж светодиодов большой мощности. Установка в качестве адаптера бытовых источников света экономически не обоснована.
Блоки питания Arlight в герметичном алюминиевом корпусе
Отличительные особенности: устойчивость к механическому воздействию и деструктивным природным факторам (дождь, снег, УФ излучение). Что касается мощности, то с учетом нередкого изготовления таких адаптеров по спецзаказам, она может быть в довольно широком диапазоне. У типовых изделий этот параметр, как правило, от 80 до 200 Вт. Цена значительно выше, чем у других вариантов исполнения.
Негерметичный балласт. Наиболее популярный БП, широко применяется для питания освещения квартир, офисов и торговых залов. Стоит немного дороже компактного сетевого блока, но может быть значительно мощнее при тех же габаритах.
БП в негерметичном исполнении
Мощные устройства данного типа могут быть оборудованы принудительной вентиляцией, обеспечивающей охлаждение электронных компонентов, что продлевает срок службы адаптеров. Изготавливаются под напряжение 12 или 24 В. Невысокая цена и широкий ассортимент, позволяющий подобрать наиболее оптимальный вариант, сделали такие БП наиболее популярными. https://www.youtube.com/watch?v=xsyVQBIUFR0
Подключение адресной светодиодной ленты WS2812B к Arduino
Опубликовано: 23.02.2017 20:25
Введение
Приветствую всех. Мы продолжаем знакомить Вас со светодиодными лентами. На этот раз мы рассмотрим адресную RGB светодиодную ленту WS2812B. Лента основана на светодиодах WS2812B в корпусе LED 5050, куда в корпус производители поместили не только три встроенных светодиода (Красный, Зеленый, Синий), но и управляемый ШИМ драйвер, управляющий их яркостью. Благодаря этому мы можем получить произвольный цвет, изменяя яркость встроенных светодиодов, а так же управлять отдельно взятым пикселем на ленте. Собственно, три встроенных разноцветных светодиода вместе с ШИМ драйвером и образуют светодиод WS2812B.
На фото справа вы можете увидеть этот самый светодиод WS2812B, где большой черный прямоугольник это ШИМ драйвер, а вот три встроенных в него светодиода настолько малы, что их с трудом видно, и можно отследить только по золотым нитям, идущим от драйвера к трем разноцветным светодиодам.
Технические характеристики
Теперь давайте немного пройдемся по техническим характеристикам из datasheet который мне удалось раскопать в интернете.
20мА на один встроенный светодиод, то есть
Остальное можете посмотреть самостоятельно в даташите.
Подключение
Подключается светодиодная лента довольно-таки просто, необходимо подать на +5V и GND, плюс (+) и минус (-) от 5В блока питания, а контакт DIN соединить с портом Arduino, как правило, по умолчанию используется 6-й порт Arduino, но вы вправе выбрать и любой другой свободный порт. Так же рекомендуется соединить земли Arduinoи блока питания, как нарисовано на рисунке ниже.
Выбор RGB ленты
Для этого проекта нам понадобится именно RGB светодиодная лента, та — что с четырьмя контактами.
Также существуют варианты RGB с тремя, пятью и даже шестью контактами, все они для нашего проекта без переделок не подойдут.
Вариант с тремя контактами – это адресная лента. Для управления такой лентой нужная другая схема и другой программный код, поэтому рассмотрим этот вариант в отдельной статье.
Вариант с пятью и шестью контактами это RGBW и RGBWW ленты. Как вы уже догадались, буква W обозначает дополнительно припаянный белый светодиод, а WW два белых светодиода, такие ленты используются в случаях, если белым нужно светить гораздо ярче чем остальными цветами.
Обычная четырехконтактная лента способна светить белым цветом и без дополнительных светодиодов, просто включив все три своих цвета в равных пропорциях.
2 Подключение RGB светодиода с общим анодом к Arduino
Схема подключения RGB светодиода с общим анодом
показана на рисунке. Анод подключаем к «+5 В» на плате Arduino, три другие вывода — к произвольным цифровым пинам.
Обратите внимание, что мы подключаем каждый из светодиодов через свой резистор, а не используем один общий. Желательно делать именно так, потому что каждый из светодиодов имеет свой КПД
И если подключить их все через один резистор, светодиоды будут светиться с разной яркостью.
Для быстрого расчёта номинала резистора, подходящего к выбранному вами светодиоду, можно воспользоваться онлайн-калькулятором расчёта светодиодов .
БИБЛИОТЕКА GYVERRGB
GyverRGB v1.15
Мощная библиотека для удобного управления RGB светодиодами и лентами для Arduino
- 1530 значений для colorWheel
- Работа в пространстве RGB
- Работа в пространстве HSV
- Установка цвета в формате HEX
- Установка цветовой температуры
- 16 предустановленных цветов
- Настройка полярности ШИМ
- Функция плавной смены цвета
- Ограничение тока (по расчёту)
- Регулировка общей яркости
- Поддержание яркости LED ленты по мере разряда АКБ
- Возможность управления 6-ю RGB диодами/лентами с одной Arduino (встроенный генератор ШИМ на ВСЕХ 20 пинах atmega328)
- Режим с настройкой частоты ШИМ
- Матрица коррекции LUT
- Коррекция по минимальному сигналу ШИМ
- CRT гамма-коррекция яркости
Поддерживаемые платформы: все Arduino (используются стандартные Wiring-функции)
Эффективность (светоотдача)
Отношение светового потока к потребляемой мощности (Лм/Вт)
Это та величина, которая в первую очередь попадает во внимание специалистов, потому что именно по эффективности определяется применимость светодиодов для систем освещения. Для сравнения:
- лампочка накаливания: 8-12 лм/Вт;
- люминесцентные (энергосберегающие) лампы : 30-40 Лм/Вт
- современные светодиоды: 120-140 Лм/Вт
- газоразрядные лампы (ДРЛ): 50-60 Лм/Вт
Показатели очень хорошие, что позволяет успешно конкурировать с люминесцентными, натриевыми, галогеновыми лампами. Более того, светодиоды уже выигрывают по этому показателю у газоразрядных ламп, т.к. весь световой поток у них идет в одну полуплоскость, поэтому не требуются разного рода отражатели.
Цветовая температура
Цветовая температура используемых светодиодов: 2500 Кельвинов- 9500 Кельвинов.
- -2500-3000 Кельвинов: теплый белый свет. (warm white или сокращенно WW) Он ближе к лампам накаливания.
- -4000-5000 Кельвинов: нейтральный белый свет.( white neutral или сокращенно NW)
- -6500-9500 Кельвинов: холодный белый свет. (cold white или сокращенно CW)
Будет интересно Что такое фотодиод
По источникам независимых исследований, именно нейтральный белый свет является наиболее комфортным для офисной работы, и в нем предметы становятся наиболее четкими. Нашей компанией используются светодиоды с нейтральным светом .Кроме того, в осветительных приборах мы используем цветные светодиоды (основные цвета : красный, синий, зеленый, желтый) и светодиоды RGB(полноцветный светодиод).
Размеры светодиода
Мощность светодиодов.
- малой мощности: до 0,5 Вт (20-60 мА);
- средней мощности:0,5-3Вт (100-700 мА);
- большой мощности: более 3-х ватт (1000м А и более).
Угол свечения как правило 120-140 градусов, в индикаторных 15-45 градусов.
Деградация (ресурс) светодиодов
Очень важный показатель. Многие производители декларируют около 100 тысяч часов и даже более. Какие факторы оказывают влияние на ресурс светодиодов? В первую очередь это токовая деградация. Если через диод пропустить силу тока большую, чем та, на которую он рассчитан, то наступает быстрая деградация. Как правило: в пределах первых 1000 часов. Этим пользуются недобросовестные производители. Следующий фактор – температурная деградация. Светодиод в процессе работы нагревается. И, если не отводить тепло, то диод быстро потускнеет.
Для отвода тепла применяется много конструкторских решений. В наших светильниках применяется плата с алюминиевой подложкой. Подложка в свою очередь имеет механический контакт с корпусом светильника, что дополнительно отводит тепло. Главное: в точке пайки светодиода соблюдать температурный режим не более 65 градусов Цельсия. В наших светильниках это достигается. Соответственно, находясь в рабочем режиме, ресурс диодов в предлагаемых светильниках составляет декларируемые 40-50 тысяч часов.
Индикаторные светодиоды (ILT)
Сегодня являются лидерами в повсеместном использовании. Появившись в 60-х годах, они быстро завоевали популярность, вытеснив лампы накаливания, используемых в качестве подсветки и индикации. А использование в данных светодиодах кристаллы с повышенной яркостью позволяют использовать их в мощных светоизлучающих устройствах (фонари, стоп-сигналы, индикаторные огни, светофоры, DIP-ленты и т.д.). На сегодняшний день практически ни одна бытовая техника не обходится без индикаторного светодиода. Существуют следующие стандартные типоразмеры индикаторных светодиодов : 3; 5; 4,8; 8 и 10мм. Рабочий ток таких светодиодов как правило 20-40мА, световая отдача может доходить для белого света 3-5Лм со светодиода. Угол излучения у данных светодиодов либо узкий (15-45 градусов), либо широкий (110-140 градусов).
Что это такое?
LED-сборка расцветки RGB – дополнение для светоленты, светящейся исключительно белым светом. В простейшем случае, когда RGBW-полос не нашлось под рукой, рядом с белыми светолентами прокладывают цветные – либо поодиночке (для каждого цвета), либо все сразу, чередуя друг с другом белый, красный, зелёный и синий цвета свечения.
Прогресс не стоит на месте – в продаже появились составные светодиоды, вырабатывающие белый, красный, зелёный и синий цвета. В такой составной светодиод встроены 4 простых светокристалла, каждый из которых даёт свой цвет. Для управления предусмотрена либо 5-контактная (5-проводная) линия, либо двухпроводная, по которой подводится питание к светодиоду, имеющему примитивный микроконтроллер. В последнем случае в «мультисветодиод» помещены 5 кристаллов: 4 светоизлучающих, один (простейший чип) управляющий. В качестве чипа предусмотрен мультивибратор (диммер), последовательно подающий питание от самого себя, которое приходит по внешней двухпроводной линии, на соответствующие светокристаллы.
Аналог RGBW – пятикомпоненный (5-криталльный) светодиод, в котором содержится ещё и жёлтый. Сборка RGBW стала бы RGBWY-светодиодом. Такая модификация многоэлементных светодиодов не нашла применения на практике – жёлтый цвет воспроизводится одновременным свечением красного и зелёного светокристаллов. Близко расположенные друг по отношению к другу светокристаллы, когда наблюдатель находится в одном-двух метрах (и дальше) от них, сливаются в его поле зрения в единую светоточку. Эта особенность зрения, открытая ещё Ломоносовым и подтверждённая на практике Гельмгольцем, позволяет создавать произвольный оттенок из видимых глазу 16777216 вариаций. Изменяя, например, яркость свечения красного и зелёного, человек видит на RG-светодиоде красновато-желтоватый оттенок света.
RGBW-ленты имеют интересную особенность – светокомпенсацию. Если белый светокристалл внезапно откажет, то с помощью красного, синего и зелёного, которые пока ещё работают, можно воссоздать динамический беловатый свет – от холодного до тёплого, выставив соответствующую яркость. Соотношение яркостного сигнала этих трёх светодиодов для простого белого (без оттенения по шкале цветовой температуры) следующее: 30% света даёт красный, 59% – зелёный, 11% – синий.
Если немного убавить свечение зелёного и добавить синего – оттенок будет холодным белым. Если синий убавить, а прибавить красный – оттенок станет тёплым белым. И так далее. В промышленных светолентах данным процессом руководит не человек, а специальное устройство – диммерный микроконтроллер, который задаёт оттенки и частоту, алгоритм их изменения по времени.
Встроенный микроконтроллер с жёстко заданными режимами свечения располагается в каждом из светодиодов: при включении такой светоленты все четыре светоэлемента светятся одновременно. Плавное или резкое циклическое переключение задаётся с помощью внешнего диммера. Адресное (алгоритмическое) – при помощи дополнительной цифровой (трёхпроводной линии связи).
Подведём итог. Светодиоды W – белые являются основными. Это светоэлементы, дающие свет для повседневной жизнедеятельности людей дома и на работе. Кристаллы R, G и B – красный, зелёный и синий дают фоновую подсветку. Так, в светодиодных люстрах, управляемых с пульта, подсветку владелец выбирает самостоятельно. Например, на Новый год пользователи часто включают RGBW-ленту или светильник в режиме «бегущих огней», как на ёлочной гирлянде: красный, зелёный и синий мигают последовательно или с разной периодичностью.
Подсвечиваемый таким образом потолок получает нарядный, праздничный вид. Пользователи, предпочитающие резкое мигание, мерцание плавному переходу из одного цвета в другой, выбирают другой режим. Использование произвольно программируемых микроконтроллеров Arduino позволило каждому владельцу такой светоленты задавать свой алгоритм, не ограничиваясь одной или несколькими заводскими предустановками.
Гибкие ленты RGBW – на 5, 12 и 24 вольта, в отличие от 220-вольтовых, режутся на секторы короче 0,5 или 1 метра. Потолок, стены и пол, обладающие ступенчатыми переходами, обкладываются по периметру с применением коротких и длинных отрезков, соединяемых 90-градусными коннекторами, создающими повороты ленты на этот угол. А значит, помещение с динамоподсветкой обретает элегантный и законченный облик. Простейшие светоленты без диммерного переключения подключаются напрямик. Им потребуется блок питания (адаптер, драйвер) с двумя независимыми напряжениями на выходе: 2 вольта – для цветных светодиодов, 3 – для белых.
Ардуино – принцип действия
плата Arduino
Плата Ардуино – это устройство, на котором установлен программируемый микроконтроллер. К нему подключены различные датчики, органы управления или encoder и, по заданному скетчу (программе), плата управляет моторами, светодиодами и прочими исполнительными механизмами, в том числе и другими платами Ардуино по протоколу SPI. Контроль устройства может осуществляться через дистанционный пульт, модуль Bluetooth, HC-06, Wi-Fi, ESP или internet, и кнопками. Одни из самых популярных плат – Arduino Nano и Arduino Uno, а также Arduino Pro Mini – устройство на базе микроконтроллера ATmega 328
Внешний вид Arduino Pro MiniВнешний вид Arduino UnoВнешний вид Arduino micro
Программирование осуществляется в среде Ардуино с открытым исходным кодом, установленным на обычном компьютере. Программы загружаются через USB.
Плавное изменение цвета
Мы не зря подключили RGB-светодиод к выводам 3, 5 и 6
Как известно, эти выводы позволяют генерировать ШИМ сигнал разной скважности. Другими словами, мы можем не просто включать или выключать светодиод, а управлять уровнем напряжения на нем
Делается это с помощью функции analogWrite. Сделаем так, что наш светодиод будет переходить между цветами радуги не скачкообразно, а плавно.
const byte rgbPins = {3,5,6}; int dim = 1; void setup() { for(byte i=0; i i++){ pinMode( rgbPins, OUTPUT ); } // начальное состояние - горит красный цвет analogWrite(rgbPins, 255); analogWrite(rgbPins, 0); analogWrite(rgbPins, 0); } void loop() { // гасим красный, параллельно разжигаем зеленый for(int i=255; i>=0; i--){ analogWrite( rgbPins, i/dim ); analogWrite( rgbPins, (255-i)/dim ); delay(10); } // гасим зеленый, параллельно разжигаем синий for(int i=255; i>=0; i--){ analogWrite( rgbPins, i/dim ); analogWrite( rgbPins, (255-i)/dim ); delay(10); } // гасим синий, параллельно разжигаем красный for(int i=255; i>=0; i--){ analogWrite( rgbPins, i/dim ); analogWrite( rgbPins, (255-i)/dim ); delay(10); } }
Переменная dim определяет яркость свечения. При dim = 1 имеем максимальную яркость. Загружаем программу на Ардуино. Your browser does not support the video tag.