LED juostelės šviesos įjungimas / išjungimas ir ryškumas valdomas naudojant bet kurį nuotolinio valdymo pultą

Išbandykite Mūsų Instrumentą, Kaip Pašalinti Problemas





Šiame įraše mes sukursime LED juostos valdiklio grandinę naudodami „Arduino“, kuri gali įjungti / išjungti ir sumažinti / padidinti šviesos diodų ryškumą naudojant įprastą IR (infraraudonųjų spindulių) nuotolinio valdymo pultą.



Kas yra LED juostos šviesa? (Nėra)

Jei nesate susipažinę su LED juostų žibintais, supraskime, kas tai yra.

LED juostelės (kartais vadinamos juostos žibintais) yra lanksti PCB, kurią sudaro ryškių šviesos diodų ir valdiklių grandinių serijos, LED juostelės komponentai yra paviršiniai (SMD).



Jis naudojamas namų, pobūvių salių ir lauko dekoravimui festivalio sezonais ir kt.

Galinėje pusėje jis turi lipnų sluoksnį, kuris gali klijuoti ant sienų, medžio ar bet kokio lygaus paviršiaus be klijų.

Jis yra įvairių ilgių, pločio, spalvų, šiame projekte mes valdysime vienos spalvos LED juostas. Bet jei norite atskirai valdyti RGB spalvas, galite modifikuoti nurodytą kodą ir grandinę.

LED juostos veikia esant 12 V arba 24 V įtampai, priklausomai nuo specifikacijos, tačiau šiame projekte 24 V netinka, nes „Arduino“ plokštė nėra skirta 24 V valdyti. Taip pat yra USB tipo LED juostelės, kurios gali veikti esant 5 V įtampai ir gali būti naudojamos šiame projekte tik tinkamai pakeitus grandinę.

Iki šiol būtumėte supratę apie LED juostos šviesą.

LED juostelės šviesai reikia valdiklio grandinės, kuri yra lengvai prieinama rinkoje, tačiau yra brangi. Šiame projekte sukonstruosime paprastą ir nebrangią grandinę, kuri gali valdyti LED juostos žibintus per bet kurį IR nuotolinio valdymo pultą.

Grandinės schema:

LED juostos šviesos valdiklis su „Arduino“

Grandinę sudaro keli komponentai: įtampos reguliatorius su jungiamaisiais kondensatoriais, TSOP1738 IR jutiklis, MOSFET IRFZ44N, LED juostelė ir projekto „Arduino Uno“ smegenys. Šiam projektui galite pasirinkti mėgstamiausią „arduino“ lentą.

TSOP1738 jutiklis priima IR signalus iš nuotolinio valdymo pulto ir iššifruoja taip, kad suprastų mikrovaldiklį. N kanalo MOSFET sustiprina „arduino“ signalus ir tiekia juos į LED juostą.

Įtampos reguliatorius maitina „arduino“ ir LED juostas. Įsitikinkite, kad jūsų maitinimo šaltinis gali tiekti tinkamą LED juostos srovės kiekį.

Siūloma grandinė skirta 12 V LED juostoms, įtampos reguliatorių galite keisti priklausomai nuo LED juostų specifikacijos. Patartina nenaudoti šviesos diodų juostos, kurios įtampa yra didesnė nei 20 V, nes „Arduino“ absoliutus maksimumas yra 20 V.

Ši grandinė gali įjungti ir išjungti LED juostą, ji gali reguliuoti ryškumą aukštyn ir žemyn 5 pakopomis, tai pasiekiama pritaikant skirtingus PWM signalus LED juostoms.

Kaip išbandyti

Norėdami atlikti šias operacijas, vadovaukitės toliau pateiktomis instrukcijomis:

• Pasirinkite bet kurį 3 nuotolinio valdymo pulto mygtukus, kuriais valdysite grandinę. Turime žinoti šių mygtukų šešioliktainį kodą

• Atidarykite IDE, eikite į failą> pavyzdžiai> IRremote> IRrecvDemo.

• Baigę sąranką, prijunkite USB prie „Arduino“ ir kompiuterio (be išorinio maitinimo), įkelkite kodą ir atidarykite nuoseklųjį monitorių.

• Dabar paspauskite kiekvieną mygtuką vieną kartą, serijiniame monitoriuje pamatysite jų šešioliktainį kodą ir jį pažymėsite. Šiuos šešioliktainius kodus reikia įkelti į nurodytą programą į „arduino“.

PASTABA:

Siūloma grandinė skirta valdyti vienos spalvos LED juostas. Jei turite daugiaspalvių LED juostų trumpus RGB gnybtus (suteikia baltą spalvą), likusi grandinės dalis yra tokia pati.

Programos kodas:

//---------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---------//

PASTABA:
Pakeiskite 0x80C, 0x810 ir 0x811 nuotolinio valdymo pulto šešioliktainiu kodu, prasidedančiu „0x“




Pora: Tranzistoriaus klaidžiojančio pikapo klaidingo paleidimo problema Kitas: Automatinė maisto šildymo lempa viešbučiams