Mengontrol Lampu LED Strip ON / OFF dan Kecerahan dengan Remote Control

Coba Instrumen Kami Untuk Menghilangkan Masalah





Pada postingan kali ini kita akan membuat rangkaian pengontrol strip LED menggunakan Arduino, yang dapat menghidupkan / mematikan dan menurunkan / meningkatkan kecerahan LED menggunakan remote IR (Inframerah) biasa.



Apa itu Lampu Strip LED? (Untuk noobs)

Jika Anda tidak terbiasa dengan lampu strip LED, mari kita pahami apa itu.

Strip LED (kadang-kadang disebut sebagai lampu pita) adalah PCB fleksibel yang terdiri dari rangkaian LED terang dan rangkaian pengontrol, komponen pada strip LED adalah surface mounded (SMD).



Ini digunakan untuk mendekorasi rumah, ruang pesta dan di luar ruangan selama musim festival dll.

Ini memiliki lapisan lengket di sisi belakang yang dapat menempel di dinding, kayu atau permukaan halus tanpa perlu perekat.

Muncul dalam berbagai panjang, lebar, warna, dalam proyek ini kita akan mengontrol strip LED warna tunggal. Tetapi jika Anda ingin mengontrol warna RGB satu per satu, Anda dapat memodifikasi kode dan sirkuit yang diberikan.

Strip LED bekerja pada 12V atau 24V tergantung pada spesifikasinya, tetapi dalam proyek ini 24V tidak cocok karena papan arduino tidak dirancang untuk menangani 24V. Strip LED tipe USB juga tersedia yang dapat beroperasi pada 5V dan dapat digunakan dalam proyek ini hanya setelah modifikasi sirkuit yang tepat.

Sekarang Anda pasti sudah mengerti tentang Lampu strip LED.

Lampu strip LED membutuhkan rangkaian pengontrol yang sudah tersedia di pasaran tetapi harganya mahal. Dalam proyek ini kami akan membangun sirkuit sederhana dan murah yang dapat mengontrol lampu strip LED melalui remote IR apa pun.

Diagram Sirkuit:

Pengontrol lampu strip LED dengan Arduino

Rangkaian terdiri dari beberapa komponen yaitu: regulator tegangan dengan kapasitor kopling, sensor IR TSOP1738, MOSFET IRFZ44N, LED strip dan brain of project arduino Uno. Anda dapat memilih papan arduino favorit Anda untuk proyek ini.

Sensor TSOP1738 menerima sinyal IR dari remote dan mendekode sedemikian rupa sehingga mikrokontroler dapat memahaminya. MOSFET N-channel memperkuat sinyal dari Arduino dan diumpankan ke strip LED.

Pengatur tegangan memberi daya pada arduino dan strip LED. Pastikan catu daya Anda dapat memberikan arus yang cukup untuk strip LED.

Sirkuit yang diusulkan dirancang untuk strip LED 12V, Anda dapat mengubah pengatur tegangan tergantung pada spesifikasi strip LED. Disarankan untuk tidak menggunakan strip LED yang memiliki tegangan lebih tinggi dari 20V, karena maksimum absolut arduino adalah 20V.

Sirkuit ini dapat menghidupkan dan mematikan strip LED itu dapat mengatur kecerahan naik dan turun dengan 5 langkah, ini dicapai dengan menerapkan sinyal PWM yang berbeda ke strip LED.

Cara Menguji

Untuk menyelesaikan operasi ini, ikuti petunjuk yang diberikan di bawah ini:

• Pilih 3 tombol pada remote Anda yang akan Anda kontrol sirkuit. Kita perlu mengetahui kode heksadesimal untuk tombol-tombol ini

• Buka IDE, buka file> contoh> IRremote> IRrecvDemo.

• Setelah pengaturan selesai, hubungkan USB ke Arduino dan PC (tanpa daya eksternal) unggah kode dan buka monitor serial.

• Sekarang tekan setiap tombol satu kali, Anda akan melihat kode heksadesimalnya pada monitor serial dan mencatatnya. Kode heksadesimal ini perlu diunggah dengan program yang diberikan ke Arduino.

CATATAN:

Sirkuit yang diusulkan dirancang untuk mengontrol strip LED warna tunggal. Jika Anda memiliki terminal RGB pendek strip warna-warni LED (memberikan warna putih), sisa rangkaiannya sama.

Kode Program:

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

CATATAN:
Ganti 0x80C, 0x810 dan 0x811 dengan kode heksadesimal jarak jauh Anda yang diawali dengan “0x”




Sebelumnya: Transistor Stray pickup False Triggering Problem Berikutnya: Lampu Penghangat Makanan Otomatis untuk Hotel