Управление RGB лентой с помощью Arduino и драйвера L298N

Управление светодиодной rgb лентой через arduino

Ардуино идеально подходит для управления любыми устройствами. Микропроцессор ATmega с помощью программы-скетча манипулирует большим количеством дискретных выводов, аналогово-цифровых входов/выводов и ШИМ-контроллерами.

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

Принцип управления нагрузкой через Ардуино

Плата Ардуино имеет два типа портов вывода: цифровой и аналоговый (ШИМ-контроллер). У цифрового порта возможно два состояния – логический ноль и логическая единица. Если подключить к нему светодиод он либо будет светиться, либо не будет.

Аналоговый выход представляет собой ШИМ-контроллер, на который подаётся сигнал частотой около 500Гц с регулируемой скважностью. Что такое ШИМ-контроллер и принцип его работы можно найти в интернете. Через аналоговый порт возможно не только включать и выключать нагрузку, а и изменять напряжение (ток) на ней.

Синтаксис команд

  • Цифровой вывод:
  • pinMode(12, OUTPUT);
    — задаём порт 12 портом вывода данных;digitalWrite(12, HIGH);
    — подаём на дискретный выход 12 логическую единицу, зажигая светодиод.
  • Аналоговый вывод:

analogOutPin = 3;
– задаём порт 3 для вывода аналогового значения;analogWrite(3, значение);
– формируем на выходе сигнал с напряжением от 0 до 5В. Значение – скважность сигнала от 0 до 255.

При значении 255 максимальное напряжение.

Способы управления светодиодами через Ардуино

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

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

Виды транзисторных ключей

  • Биполярный;
  • Полевой;
  • Составной (сборка Дарлингтона).

При подаче высокого логического уровня (digitalWrite(12, HIGH);)
через порт вывода на базу транзистора через цепочку коллектор-эмиттер потечет опорное напряжение на нагрузку. Таким образом можно включать и отключать светодиод.

Аналогичным образом работает и полевой транзистор, но поскольку у него вместо «базы» сток, который управляется не током, а напряжением, ограничительный резистор в этой схеме необязателен.

Биполярный вид не позволяет регулировать мощные нагрузки. Ток через него ограничен на уровне 0,1-0,3А.

Полевые транзисторы работают с более мощными нагрузками с током до 2А. Для ещё более мощной нагрузки используют полевые транзисторы Mosfet с током до 9А и напряжением до 60В.

Управление светодиодной rgb лентой через arduino

Вместо полевых можно использовать сборку Дарлингтона из биполярных транзисторов на микросхемах ULN2003, ULN2803.

Микросхема ULN2003 и принципиальная схема электронного коммутатора напряжения:

Управление светодиодной rgb лентой через arduino

Принцип работы транзистора для плавного управления светодиодной лентой

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

Управление светодиодной rgb лентой через arduino

Подключив транзистор к аналоговому порту Ардуино, присваиваем ему значение от 0 до 255, изменяем напряжение, подаваемое на коллектор либо сток от 0 до 5В. Через цепочку коллектор-эмиттер будет проходить от 0 до 100% опорного напряжения нагрузки.

Для управления светодиодной лентой arduino необходимо подобрать транзистор подходящей мощности. Рабочий ток для питания метра светодиодов 300-500мА, для этих целей подойдет силовой биполярный транзистор. Для большей длины потребуется полевой транзистор.

Схема подключения LED ленты к ардуино:

Управление светодиодной rgb лентой через arduino

Управление RGB лентой с помощью Andurino

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

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

Управление светодиодной rgb лентой через arduino

Аналогично построено и управление RGB лентой Arduino:

Управление светодиодной rgb лентой через arduino

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

Управление светодиодной rgb лентой через arduino

Скетч управления яркостью светодиодной ленты Arduino

  1. int led = 120;
    устанавливаем средний уровень яркости
  2. void setup() pinMode(4, OUTPUT);
    устанавливаем 4й аналоговый порт на вывод
    pinMode(2, INPUT);
  3. pinMode(4, INPUT);
    устанавливаем 2й и 4й цифровой порт на ввод для опроса кнопок
    >
    void loop()
  4. button1 = digitalRead(2);
  5. button2 = digitalRead(4);
    if (button1 == HIGH)
    нажатие на первую кнопку увеличит яркость
    led = led + 5;
  6. analogWrite(4, led);
    >
    if (button2 == HIGH)
    нажатие на вторую кнопку уменьшит яркость
    led = led — 5;
  7. analogWrite(4, led);
    >

При удержании первой или второй кнопки плавно изменяется напряжение, подаваемое на управляющий контакт электронного ключа. Тогда и произойдет плавное изменение яркости.

Модули управления Ардуино

  • Для создания полноценного драйвера управления светодиодной лентой можно использовать модули-датчики.
  • ИК-управление
  • Модуль позволяет запрограммировать до 20 команд.
  • Радиус сигнала около 8м.

Цена комплекта 6 у.е.

По радиоканалу

Четырёхканальный блок с радиусом действия до 100м

Цена комплекта 8 у.е.

  1. Позволяет включать освещение еще при приближении к квартире.
  2. Бесконтактное
  3. Датчик расстояния способен по движению руки увеличивать и уменьшать яркость освещения.
  4. Радиус действия до 5м.

Цена модуля 0,3 у.е.

На этом занятии мы будем использовать цифровые и аналоговые выходы с «широтно импульсной модуляцией» на плате Arduino для включения RGB светодиода с различными оттенками. Использование RGB LED ленты позволяет создать освещение интерьера с любым оттенком цвета. Расскажем про устройство и распиновку полноцветного (RGB) светодиода и рассмотрим директиву #define
в языке C++.

Теоретическая часть

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

В качестве мозгов идеально подходит Arduino. В её программу можно записать любой алгоритм изменения цветов, а также её можно управлять как с помощью модулей Arduino, так и удаленно по Ethernet, Ик-порту, Bluetooth, используя соответствующие модули.

Arduino Leonardo

Для реализации задуманного я выбрал Arduino Leonardo. Она одна из самых дешевых плат Arduino, и она имеет много выводов с поддержкой ШИМ.

И так, источник ШИМ у нас имеется, остаётся придумать с силовыми ключами. Если побродить по интренет магазинам, то выяснится, что не существует модуля Arduino для управления RGB лентами. Или просто универсальных модулей с силовыми транзисторами. Также можно найти огромное количество сайтов радиолюбителей, которые делают платы с силовыми ключами сами.

Однако есть способ проще! Нас выручит модуль Arduino для управления двигателями. Этот модуль имеет все необходимое для нас — на нем установлены мощные ключи на 12В.

Пример такого модуля является «L298N Module Dual H Bridge Stepper Motor Driver Board Modules for Arduino Smart Car FZ0407». Такой модуль основан на микросхеме L298N, которая представляет из себя 2 моста. Однако мостовое включение полезно для двигателя (от этого он может менять направление вращения), а в случае RGB ленты, оно бесполезное.

Мы будем использовать не весь функционал этой микросхемы, а только 3 её нижних ключа, подключив ленту как показано на рисунке.

Как подключить адресную ленту к Ардуино

Для этого занятия понадобится:

  • Arduino Uno / Arduino Nano / Arduino Mega;
  • лента WS2812B;
  • макетная плата;
  • 1 резистор от 100 до 500 Ом;
  • провода «папа-папа».

WS2812B светодиоды довольно энергоемкие, один светодиод потребляет до 60 мА при максимальной яркости. Для ленты со 100 диодами потребуется блок питания на 6 и более Ампер. Микроконтроллер Arduino и светодиодная лента могут быть подключены к разным источникам питания, но «земля» должна быть общая. Дело в том, что пин GND тоже участвует в управлении адресной лентой от платы Ардуино Уно.

Схема подключения адресной ленты 5VСхема подключения адресной ленты 5 Вольт к Ардуино

WS2812B Arduino Uno Arduino Nano Arduino Mega
GND GND GND GND
5V 5V 5V 5V
DO 10 10 10

Для работы с лентой используются три популярные библиотеки — FastLED, AdafruitNeoPixel и LightWS2812. Все библиотеки доступны для скачивания на нашем сайте. Работать с библиотеками FastLED и Adafruit NeoPixel просто, отличаются они в функциональности и объеме занимаемой памяти. После сборки этой простой схемы и установки библиотек, загрузите скетч для адресной светодиодной ленты.

Скетч. Тестирование адресной ленты WS2812

Пояснения к коду:

  1. нумерация светодиодов в ленте начинается с нуля, поэтому если мы хотим включить первый светодиод, то указывать надо «0».

Схема подключения адресной ленты 12 Вольт

Схема подключения адресной ленты 12 Вольт к Ардуино

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

Скетч. Управление адресной лентой Ардуино

Пояснения к коду:

  1. с помощью библиотеки Adafruit NeoPixel довольно просто управлять адресной лентой. В примерах к библиотеке можно найти много различных эффектов. Мы продемонстрировали простой вариант с циклом for для включения ленты.

Заключение. В этом обзоре мы рассмотрели лишь подключение и возможность управления адресной лентой от Ардуино. Так как возможности работы с библиотеками FastLED, AdafruitNeoPixel довольно разнообразны. Больше интересных примеров на Arduino и WS2812B размещено в разделе Проекты на Ардуино, где представлены проекты с бегущей строкой на адресной ленте и другие световые эффекты.

Сенсорное управление

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

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

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

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

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

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

Схема подключения RGB-ленты

Управление RGB лентой с помощью контроллера

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

Что делает регулятор:

  • смешивая 3 основные цвета – красный, зеленый, синий – получает новые оттенки;
  • увеличивает или уменьшает яркость;
  • включает и выключает устройство;
  • некоторые модели позволяют хозяину самому создать программу свечения: светодиоды будут загораться и потухать с определенной периодичностью, заданные цвета станут переливаться с той скоростью, которую установит владелец.

Какие бывают контроллеры?

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

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

Регуляторы различаются по:

  • способу управления;
  • прошивке программы;
  • выходной мощности — самое главное.

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

Управление RGB лентой – способы.

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

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

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

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

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

Кнопочные и сенсорные

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

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

Варианты использования

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

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

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

Важный момент

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

Наибольшая нагрузка, с которой может справиться стандартный USB контроллер, составляет 5В, 500 мА (в геймерских компьютерах и ноутбуках 1А). В пересчёте на 12В это означает, что ток нагрузки не должен превышать 200 мА. Таким образом, к USB порту ПК допускается подсоединение светодиодной ленты типа SMD 3528-60 шт/м – 0,5 м, SMD 5050-60 шт/м – 0,15 м, SMD 3014-60 шт/м – 0,3 м.

Компьютерный БП обладает намного большей мощностью, которая указана в технических характеристиках на его корпусе. По выходу +12В блок питания на 250 Вт способен выдать в нагрузку 8 А, а на 650 Вт – 18 А. Поэтому к компьютеру, на котором нет «тяжёлых» видеоигр, можно смело подключать несколько метров светодиодной ленты, например, SMD 3528-60 шт/м с током потребления 0,4 А на метр.

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

Оцените статью
Fobosworld.ru
Добавить комментарий

Adblock
detector