Новогодняя подсветка своими руками (часть 2)

Привет, Пикабу!

В комментариях к прошлому посту многие интересовались реализацией управления светодиодной лентой с Arduino.

Зачем ленте вообще управление с Arduino? Во первых мы получаем неограниченые функлии управления лентой, например я настроил таймер до нового года, чем нг ближе, тем теплее цвет. Можно постараться и настроить управление со смартфона, соорудить своего пода умный дом. В общем контроль с Arduino расширяет применение ленты.

Новогодняя подсветка своими руками (часть 2) Длиннопост, Сделай сам, Своими руками, Arduino, Led, Светодиодная лента, Новый Год, Дичь

Интересно? Тогда продолжим!


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


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

Новогодняя подсветка своими руками (часть 2) Длиннопост, Сделай сам, Своими руками, Arduino, Led, Светодиодная лента, Новый Год, Дичь

Я использую Arduino Leonardo, т.к она одна из самых дешевых.


Для подключения Arduino к ленте нам потребуется модуль для управления двигателями. На нем установлены мощные ключи на 12В и он идеально подходит для наших целей.

Новогодняя подсветка своими руками (часть 2) Длиннопост, Сделай сам, Своими руками, Arduino, Led, Светодиодная лента, Новый Год, Дичь

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

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

Новогодняя подсветка своими руками (часть 2) Длиннопост, Сделай сам, Своими руками, Arduino, Led, Светодиодная лента, Новый Год, Дичь

А вот схема итогового подключения:

Новогодняя подсветка своими руками (часть 2) Длиннопост, Сделай сам, Своими руками, Arduino, Led, Светодиодная лента, Новый Год, Дичь

В данной схеме питание подается на модуль управления двигателями, в нем стоит понижающий источник питания на 5В, и эти 5В я подаю на вход Vin питания Arduino.


Управляется RGB лента с помощью команд analogWrite, которая настраивает выход для формирования ШИМ сигнала.



Исходный код программы для arduino:

#define GRBLED_PIN_R 9 // пин для канала R

#define GRBLED_PIN_G 10 // пин для канала G

#define GRBLED_PIN_B 11 // пин для канала B


int rgbled_r=0, rgbled_g=0, rgbled_b=0;


void setup(){

//enable serial datada print

Serial.begin(9600);

Serial.println("RBG LED v 0.1");

// RGBLED

pinMode(GRBLED_PIN_R, OUTPUT);

pinMode(GRBLED_PIN_G, OUTPUT);

pinMode(GRBLED_PIN_B, OUTPUT);

}


void loop(){

// change color

rgbled_r = (rgbled_r+1)%1024;

rgbled_g = (rgbled_g+2)%1024;

rgbled_b = (rgbled_b+3)%1024;

// Output

Z1_output_rgbled();

delay(1);

}


void Z1_output_rgbled() {

analogWrite(GRBLED_PIN_R, rgbled_r);

analogWrite(GRBLED_PIN_G, rgbled_g);

analogWrite(GRBLED_PIN_B, rgbled_b);

}


Кстати, итоговая стоимость получилась в районе 1300 рублей, что в целом недорого.


P.s: мой первый длиннопост, поэтому не все идеально :-)

Новогодняя подсветка своими руками (часть 2) Длиннопост, Сделай сам, Своими руками, Arduino, Led, Светодиодная лента, Новый Год, Дичь

Всех с новым годом!

Новогодняя подсветка своими руками (часть 2) Длиннопост, Сделай сам, Своими руками, Arduino, Led, Светодиодная лента, Новый Год, Дичь