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

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

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

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

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

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

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

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

Код программы Arduino управления лентой

#define REDPIN 5
#define GREENPIN 6
#define BLUEPIN 3
  
#define FADESPEED 5     // чем выше число, тем медленнее будет fade-эффект
  
void setup() {
  pinMode(REDPIN, OUTPUT);
  pinMode(GREENPIN, OUTPUT);
  pinMode(BLUEPIN, OUTPUT);
}
  
  
void loop() {
  int r, g, b;
  
  // fade от голубого к фиолетовому
  for (r = 0; r < 256; r++) { 
    analogWrite(REDPIN, r);
    delay(FADESPEED);
  } 
  // fade от фиолетового к красному
  for (b = 255; b > 0; b--) { 
    analogWrite(BLUEPIN, b);
    delay(FADESPEED);
  } 
  // fade от красного к желтому
  for (g = 0; g < 256; g++) { 
    analogWrite(GREENPIN, g);
    delay(FADESPEED);
  } 
  // fade от желтого к зеленому
  for (r = 255; r > 0; r--) { 
    analogWrite(REDPIN, r);
    delay(FADESPEED);
  } 
  // fade от зеленого к зеленовато-голубому
  for (b = 0; b < 256; b++) { 
    analogWrite(BLUEPIN, b);
    delay(FADESPEED);
  } 
  // fade от зеленовато-голубого к голубому
  for (g = 255; g > 0; g--) { 
    analogWrite(GREENPIN, g);
    delay(FADESPEED);
  } 
}

Данная программа последовательно увеличивает одну из составляющий RGB.

Комментарии  

 
#1 Summerwind 15.12.2015 00:05
Скажите, пожалуйста, как изменить программу так, чтобы переход от цвета к цвету был очень плавный?
Цитировать
 
 
#2 Alex 17.12.2015 14:57
Цитирую Summerwind:
Скажите, пожалуйста, как изменить программу так, чтобы переход от цвета к цвету был очень плавный?

Дык... Поставить внутри цикла задержку...
Цитировать
 
 
#3 Ivan 08.01.2016 21:15
А использовали дополнительное питание для ленты ? Или ключей достаточно ?
Цитировать
 
 
#4 Alex 11.01.2016 21:44
Цитирую Ivan:
А использовали дополнительное питание для ленты ? Или ключей достаточно ?

Дык... видно же, что +12V идёт и на ленту, и на контакт Vin ардуинки...
Цитировать
 

Добавить комментарий


Защитный код
Обновить

Последние комментарии

Последнии темы форума

  • Нет сообщений для показа