LED-riba valguse sisse / välja ja heleduse juhtimine mis tahes kaugjuhtimispuldiga

LED-riba valguse sisse / välja ja heleduse juhtimine mis tahes kaugjuhtimispuldiga

Selles postituses ehitame Arduino abil LED-riba kontrolleri vooluahela, mis saab tavalise IR (infrapuna) kaugjuhtimispuldi abil sisse / välja lülitada ja LED-de heledust vähendada / suurendada.



Mis on LED-riba valgus? (Noobide jaoks)

Kui te ei ole LED-ribavalgustitega tuttav, mõistame, mis see on.





LED-ribad (neid nimetatakse mõnikord lindilaternateks) on paindlik PCB, mis koosneb erksate LED-ide ja kontrollerite ahelate seeriast, LED-riba komponendid on pinnatud (SMD).

Seda kasutatakse kodude, peoruumide ja välitingimustes kaunistamiseks festivalihooajal jne.



Selle tagaküljel on kleepuv kiht, mis võib kleepuda seintele, puidule või mis tahes siledale pinnale ilma liimi vajamata.

Seda on erineva pikkuse, laiuse, värviga, selles projektis kontrollime ühevärvilist LED-riba. Kuid kui soovite RGB värve eraldi juhtida, võite antud koodi ja vooluringi muuta.

LED-ribad töötavad sõltuvalt spetsifikatsioonist 12V või 24V, kuid selles projektis 24V ei sobi, kuna arduino plaat ei ole mõeldud 24V töötlemiseks. Saadaval on ka USB tüüpi LED-ribad, mis võivad töötada 5 V pingel ja mida saab selles projektis kasutada alles pärast vooluahela nõuetekohast muutmist.

Nüüd oleksite LED-ribavalgusest aru saanud.

LED-riba valgus vajab regulaatorahelat, mis on turul hõlpsasti saadaval, kuid need on kallid. Selles projektis ehitame lihtsa ja odava vooluringi, mis võimaldab juhtida LED-riba tulesid iga IR-puldi kaudu.

Vooluahela skeem:

LED-riba valguse kontroller Arduinoga

Vooluring koosneb vähestest komponentidest: sidestuskondensaatoritega pingeregulaator, IR-andur TSOP1738, MOSFET IRFZ44N, LED-riba ja projekti arduino Uno aju. Selle projekti jaoks saate valida oma lemmik arduino plaadi.

TSOP1738 andur võtab IR-signaale kaugjuhtimispuldilt vastu ja dekodeerib nii, et mikrokontroller sellest aru saaks. N-kanaliga MOSFET võimendab arduino signaale ja suunatakse LED-ribale.

Pinge regulaator toidab arduino ja LED-riba. Veenduge, et teie toiteallikas suudaks LED-riba jaoks anda piisava hulga voolu.

Kavandatud vooluahel on mõeldud 12V LED-ribade jaoks. Pinge regulaatorit saate muuta sõltuvalt LED-riba spetsifikatsioonist. Soovitatav on mitte kasutada LED-riba, mille pinge on üle 20 V, kuna arduino absoluutne maksimum on 20 V.

Selle vooluringi abil saab LED-riba sisse ja välja lülitada, heledust saab reguleerida 5 sammu võrra üles-alla, see saavutatakse erinevate PWM-signaalide rakendamisega LED-ribadele.

Kuidas testida

Nende toimingute tegemiseks järgige allpool toodud juhiseid:

• Valige kaugjuhtimispuldil ükskõik milline 3 nuppu, mida soovite vooluringi juhtida. Peame teadma nende nuppude kuueteistkümnendsüsteemi koodi

• Avage IDE, minge faili> näited> IRremote> IRrecvDemo.

• Kui seadistamine on lõpule jõudnud, ühendage USB arduino ja arvutiga (ilma välise toiteta) laadige üles kood ja avage seeriamonitor.

• Nüüd vajutage iga nuppu üks kord, näete seerianäidikul nende kuueteistkümnendsüsteemi koodi ja märkite selle üles. Need kuueteistkümnendkoha kood tuleb koos antud programmiga arduinosse üles laadida.

MÄRGE:

Kavandatud vooluring on mõeldud ühevärviliste LED-ribade juhtimiseks. Kui teil on mitmevärvilised LED-riba lühikesed RGB-klemmid (annab valge värvi), on ülejäänud vooluahel sama.

Programmi kood:

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

MÄRGE:
Asendage 0x80C, 0x810 ja 0x811 puldi kuueteistkümnendsüsteemi koodiga, mis algab tähega „0x”




Eelmine: Transistori hulkuvate valede käivitamise probleem Järgmine: Automaatne toidusoojenduslamp hotellidele