Controle de luz de tira LED ON / OFF e brilho com qualquer controle remoto

Experimente Nosso Instrumento Para Eliminar Problemas





Neste post, vamos construir um circuito controlador de faixa de LED usando o Arduino, que pode ligar / desligar e diminuir / aumentar o brilho dos LEDs usando um controle remoto IR (infravermelho) comum.



O que é LED Strip Light? (Para iniciantes)

Se você não está familiarizado com fitas de LED, vamos entender o que é.

As tiras de LED (às vezes chamadas de luzes de fita) são PCB flexíveis que consistem em uma série de LEDs brilhantes e circuitos controladores, os componentes da tira de LED são montados na superfície (SMD).



É usado para decorar casas, salas de festas e ao ar livre durante temporadas de festivais, etc.

Possui camada pegajosa na parte traseira que pode aderir em paredes, madeira ou qualquer superfície lisa sem necessidade de adesivo.

Vem em vários comprimentos, larguras, cores, neste projeto vamos controlar a faixa de LED de uma cor. Mas se quiser controlar as cores RGB individualmente, você pode modificar o código e o circuito fornecidos.

As tiras de LED funcionam a 12 V ou 24 V dependendo da especificação, mas, neste projeto, 24 V não é adequado, pois a placa arduino não foi projetada para lidar com 24 V. Também estão disponíveis faixas de LED do tipo USB que podem operar a 5 V e podem ser usadas neste projeto somente após a modificação adequada do circuito.

Até agora você deve ter entendido sobre a luz de tira de LED.

As fitas de LED precisam de um circuito controlador que está prontamente disponível no mercado, mas é caro. Neste projeto, iremos construir um circuito simples e barato que pode controlar fitas de LED através de qualquer controle remoto IR.

Diagrama de circuito:

Controlador de tira de luz LED com Arduino

O circuito é composto por alguns componentes: regulador de tensão com capacitores de acoplamento, sensor TSOP1738 IR, MOSFET IRFZ44N, faixa de LED e cérebro do projeto arduino Uno. Você pode escolher sua placa Arduino favorita para este projeto.

O sensor TSOP1738 recebe sinais IR do controle remoto e decodifica de forma que o microcontrolador possa entender. O MOSFET de canal N amplifica os sinais do Arduino e alimenta a faixa de LED.

O regulador de tensão alimenta o arduino e a faixa de LED. Certifique-se de que sua fonte de alimentação pode fornecer quantidade adequada de corrente para a faixa de LED.

O circuito proposto é projetado para fitas de LED de 12V, você pode alterar o regulador de tensão dependendo da especificação das fitas de LED. É aconselhável não usar uma faixa de LED com voltagem superior a 20 V, pois o máximo absoluto do Arduino é 20 V.

Este circuito pode ligar e desligar a faixa de LED, ele pode ajustar o brilho para cima e para baixo em 5 etapas, isso é conseguido aplicando diferentes sinais PWM à faixa de LED.

Como testar

Para realizar essas operações, siga as instruções fornecidas abaixo:

• Escolha quaisquer 3 botões em seu controle remoto que você vai controlar o circuito. Precisamos saber o código hexadecimal para esses botões

• Abra o IDE, vá para arquivo> exemplos> IRremote> IRrecvDemo.

• Com a configuração concluída, conecte o USB ao arduino e ao PC (sem alimentação externa), carregue o código e abra o monitor serial.

• Agora pressione cada botão uma vez, você verá seu código hexadecimal no monitor serial e anote-o. Esses códigos hexadecimais precisam ser carregados com o programa fornecido para o arduino.

NOTA:

O circuito proposto é projetado para controlar fita LED de cor única. Se você tiver terminais RGB curtos com fita LED multicor (dá cor branca), o resto do circuito é o mesmo.

Código do programa:

//---------Program developed by R.Girish---------//
#include
int X
int Y
int output = 9
int W = 5
int receive = 10
IRrecv irrecv(receive)
decode_results Z
void setup()
{
irrecv.enableIRIn()
Y=0
X=255
pinMode(output,OUTPUT)
}
void loop()
{
if (irrecv.decode(&Z))
{
if (Z.value==0x80C) // Hex code for ON/OFF
{
if(Y==0)
{
digitalWrite(output,HIGH)
Y=1
}
else
{
digitalWrite(output,LOW)
Y=0
X=255
}}
if (Z.value==0x811 && Y==1) // Hex code for reducing Brightness
{
if(X-255/W<0)
{
analogWrite(output,X)
}
else
{
X=X-255/W
analogWrite(output,X)
}}
if (Z.value==0x810 && Y==1) // Hex code for increasing Brightness
{
if(X+255/W>255)
{
analogWrite(output,X)
}
else
{
X=X+255/W
analogWrite(output,X)
}}
irrecv.resume()
}}
//---------Program developed by R.Girish---------//

NOTA:
Substitua 0x80C, 0x810 e 0x811 pelo código hexadecimal do controle remoto começando com “0x”




Anterior: Transistor Stray pickup False Triggering Problem Próximo: Lâmpada Aquecedor Automático de Alimentos para Hotéis