Сторінка 1 з 1

Як підключити RGB світлодіодну стрічку до arduino?

Додано: 26 травня 2017 19:26
Arduino
У Arduino є Піни, що підтримують широтно-імпульсну модуляцію (ШІМ), що дає нам можливість використовувати плавне регулювання яскравості. Проблема лише в тому, що видається струм здатний запалити хіба що окремо взятий світлодіод, але ніяк не 5 метрів стрічки, що працює до того-ж від 12 вольт.

Для того, щоб узгодити таке навантаження і Arduino, використовуємо поширений драйвер двигуна L298N, він цілком впорається з таким навантаженням, як 5 метрів світлодіодної стрічки, підтримує ШІМ а головне має 4 канали (з яких ми використовуємо 3), під різні колірні канали RGB ( червоний, зелений синій).
Схема підключень:
arduin-led-rulon.jpg
//підключення драйвера L298N

#define LED_R 11 // Pin D11 --> червоний
#define LED_G 10 // Pin D10 --> зелений
#define LED_B 9 // Pin D9 --> синій

int red();
int green();
int blue();

void setup () {

pinMode( LED_R, OUTPUT );
pinMode( LED_G, OUTPUT );
pinMode( LED_B, OUTPUT );
analogWrite (LED_R,255);
analogWrite (LED_G,255);
analogWrite (LED_B,255);

}

void loop () {
//-------------------------------------------------------------------------------------------//
// //
// основний цикл програми!!! //
// //
//-------------------------------------------------------------------------------------------//

//-------------вмикаємо і гасимо червоний
{
int x = 1;
for (int i = 0; i > -1; i = i + x){
red(i);
if (i == 255) x = -1; // перемикання в сторону гашення на максимумі
delay(5);
}
}
//-------------вмикаємо і гасимо зеленый
{
int x = 1;
for (int i = 0; i > -1; i = i + x){
green(i);
if (i == 255) x = -1; // перемикання в сторону гашення на максимумі
delay(5);
}
}
//-------------вмикаємо і гасимо синий
{
int x = 1;
for (int i = 0; i > -1; i = i + x){
blue(i);
if (i == 255) x = -1; // перемикання в сторону гашення на максимумі
delay(5);
}
}

//-------------підморгуємо кожним кольором по три рази
red(0);
delay(100);
red(80);
delay(100);
red(0);
delay(100);
red(160);
delay(100);
red(0);
delay(100);
red(255);
delay(100);
red(0);
delay(100);
green(80);
delay(100);
green(0);
delay(100);
green(160);
delay(100);
green(0);
delay(100);
green(255);
delay(100);
green(0);
delay(100);
blue(80);
delay(100);
blue(0);
delay(100);
blue(160);
delay(100);
blue(0);
delay(100);
blue(255);
delay(100);
blue(0);
//-------------мигаємо випадковим кольором з випадковою яскравістю
for (int i=0; i <= 50; i++){
int color=(random(3)+1);
if (color=1) {red(random(256)); delay(100);red(0);}
if (color=2) {green(random(256)); delay(100);green(0);}
if (color=3) {blue(random(256)); delay(100);blue(0);}
}


//-------------------------------------------------------------------------------------------//
// //
// Завершуємо основний цикл !!! //
// //
//-------------------------------------------------------------------------------------------//

}

//***************************************************
void red(int s){
analogWrite (LED_R,255-s);
}
//***************************************************
void green(int s){
analogWrite (LED_G,255-s);
}
//***************************************************
void blue(int s){
analogWrite (LED_B,255-s);
}

Re: Як підключити RGB світлодіодну стрічку до arduino?

Додано: 11 квітня 2018 15:17
lDoberMannl
К этому всему добавить блютуз - и можно управлять с телефона.

Re: Як підключити RGB світлодіодну стрічку до arduino?

Додано: 25 червня 2018 09:51
Arduino
Можна просто викоистати дистанційне управління RGB LED стрічкою. І дешевше і простіше і "міліон" комбінацій зміни кольору і т.п.
24rgb-rf1.jpg
ясно- що тоді ми обмежені в інших параметрах управління і потужності, але за основу регулювання можна взяти

товар в магазині: https://arduinka.biz.ua/uk/distantsiyne ... 46c80.html

Re: Як підключити RGB світлодіодну стрічку до arduino?

Додано: 25 червня 2018 13:09
lDoberMannl
Планирую попробовать сделать управление светодиодной лентой на микросхеме ULN2003.
Выслушаю любые предложение, подсказки.