Penjelasan Singkat LED RGB
LED RGB sebenarnya tiga semikonduktor (LED) dalam satu package. LED RGB ini memiliki 4 kaki pin, terdiri dari 3 pin untuk kendali warna R-G-B serta 1 pin sebagai kendali common anode atau common cathode. Lihat gambar dibawah :
Warnanya Merah, Hijau, Biru sehingga dapat membuat hampir semua warna pelangi jika menggabungkan warna-warna tersebut. Dalam kebanyakan kasus, LED RGB memiliki katoda umum (common cathode), Anda akan melihat banyak contoh dengan tiga resistor pada koneksi anoda.
Tutorial Pertama LED RGB
Bahan yang perlu dipersiapkan antara lain :
- Arduino Uno
- LED RGB
- Breadboard
- Kabel Jumper
- Komputer + Software IDE Arduino
Skema Rangkaian yang perlu dirangkaikan :
Konektivitas pin :
- Pin Red LED ke pin Arduino 6
- Pin hijau LED ke pin Arduino 5
- Pin biru LED ke pin Arduino 3
- pin GND LED ke GND Arduino
CATATAN : Perhatikan pin LED RGB, ada kemungkinan berbeda dengan gambar diatas !!
Berikut ada beberapa kode program yang dapat dipraktekan secara mudah
// RGB LED - mengubah warna LED RGB secara otomotis int merahPin = 6; //nama alias pin 6 sebagai merahPin int hijauPin = 5; //nama alias pin 5 sebagai hijaupin int biruPin = 3; //nama alias pin 3 sebagai biruPin int tunda = 500; // satuan dalam milisecond void setup() { //deklarasi pin menjadi output pinMode(merahPin, OUTPUT); pinMode(hijauPin, OUTPUT); pinMode(biruPin, OUTPUT); } void loop() { digitalWrite(merahPin, HIGH); delay(tunda); digitalWrite(merahPin, LOW); digitalWrite(hijauPin, HIGH); delay(tunda); digitalWrite(hijauPin, LOW); digitalWrite(biruPin, HIGH); delay(tunda); digitalWrite(biruPin, LOW); }
Ini adalah contoh kode untuk menghasilkan warna RGB acak, waktu ditetapkan:
// RGB LED - Warna acak LED RGB int tunda = 1000; //nilai tunda 1 detik int merah = 6; //nama alias pin 6 dengan nama merah int hijau = 5; //nama alias pin 5 dengan nama hijau int biru = 3; //nama alias pin 3 dengan nama biru void setup() { //deklarasi untuk purpose output pinMode(merah, OUTPUT); pinMode(hijau, OUTPUT); pinMode(biru, OUTPUT); } void loop() { //penulisan PWM dengan nilai acak dengan nilai tunda 1 detik analogWrite(biru, random(255)); analogWrite(merah, random(255)); analogWrite(hijau, random(255)); delay(tunda); }
Koding Pemrograman Pengembangan
Ini adalah contoh kode agar warna berubah secara otomatis memudar, dengan membuat fungsi PWM:
// RGB LED - Perubahan warna otomatis int merahPin = 11; int hijauPin = 12; int biruPin = 13; int redVal; int blueVal; int greenVal; void setup() { redVal = 255; blueVal = 255; greenVal = 255; update(); } // Fungsi ini bekerja di warna LED. void update() { analogWrite(merahPin, redVal); analogWrite(hijauPin, greenVal); analogWrite(biruPin, blueVal); } // Fungsi ini merupakan salah satu warna dengan membuatnya // lebih terang atau lebih gelap. void color_morph(int* value, int get_brighter) { void color_morph(int* value, int get_brighter) { for (int i = 0; i < 255; i++) { if (get_brighter) (*value)--; else (*value)++; update(); delay(10); } } void loop() { // dimulai dengan hitam (semua) color_morph(&redVal, 1); // transisi ke merah color_morph(&greenVal, 1); // transisi ke kuning color_morph(&redVal, 0); // transisi ke hijau color_morph(&blueVal, 1); // transisi ke aqua color_morph(&redVal, 1); // Transisi ke putih color_morph(&greenVal, 0); // transisi untuk ungu color_morph(&redVal, 0); // transisi ke biru color_morph(&blueVal, 0); // transisi ke hitam (semua keluar) }
Pada contoh di bawah ini, Anda dapat mengatur warna RGB LED dengan kontrol melalui port serial:
String readString; int redPin = 6; int greenPin = 5; int bluePin = 3; void setup() { Serial.begin(9600); } void loop() { while (Serial.available()) { // Silakan tunggu sehingga buffer dapat mengisi. delay(3); // memasukkan data serial. if (Serial.available() >0) { // Baca 1 byte dari buffer serial. char c = Serial.read(); // Tempatkan byte membaca belakang sisanya (untuk string). readString += c; } } if (readString.length() >0) { // Menghapus nilai-nilai RGB dari garis masuk. int red = readString.substring(0, 3).toInt(); int green = readString.substring(4, 7).toInt(); int blue = readString.substring(8, 11).toInt(); // Mencetak nilai-nilai di monitor serial. Serial.print("R: "); Serial.println(RED); Serial.print("G: "); Serial.println(GREEN); Serial.print("B: "); Serial.println(BLUE); // Jadilah nilai-nilai PWM ke LED RGB. analogWrite(redPin, red); analogWrite(greenPin, green); analogWrite(bluePin, blue); // Pasang kembali buffer kosong. readString = ""; } }
Terimakasih sudah berkunjung, dan semoga bermanfaat. Salam nyebarilmu.com!
>> CMIIW <<
gan… mau tanya tentang:
“bagaimanakah cara membedakan RGB anoda dan RBG cathoda”
Hm… .:….. kalau diraba2 pada bagian leher RGB tersebut ada beda rasa…
yg satu kasar ber-gerigi seperti mata gergaji….
sementara yang satu lagi mulus…..
oh ya…
satu lagi… saya mau mengawinkan RGB ini ke nodeMCU….
trims ya master…. 🙂
artinya common ANODE RGB = kaki panjang diantara ke-4 kakinya wajib diberikan tegangan positif, sedangkan ke-3 lainnya tegangan negatif / Ground, sedangkan common CATHODE kebalikan dari ANODE (bisa dicek digambar artikel ini)
Cara termudahnya bukan merabanya, kalo saran saya gunakan “Multimeter” yang ada switch buzzer
jadi hubungkan kedua kakinya probe multimeter, yang kaki yang panjang dengan probe positif dan salah satu ketiga kaki lainnya dengan probe negatif.
Jika nyala berarti itu common Anode, jika tidak common cathode (perlu dibalik probenya untuk pembuktian)
thanks sudah berkunjung.
gan… mau tanya tentang:
“bagaimanakah cara membedakan RGB anoda dan RBG cathoda”
Hm… .:….. kalau diraba2 pada bagian leher RGB tersebut ada beda rasa…
yg satu kasar ber-gerigi seperti mata gergaji….
sementara yang satu lagi mulus…..
oh ya…
satu lagi… saya mau mengawinkan RGB ini ke nodeMCU….
trims ya master…. 🙂
artinya common ANODE RGB = kaki panjang diantara ke-4 kakinya wajib diberikan tegangan positif, sedangkan ke-3 lainnya tegangan negatif / Ground, sedangkan common CATHODE kebalikan dari ANODE (bisa dicek digambar artikel ini)
Cara termudahnya bukan merabanya, kalo saran saya gunakan “Multimeter” yang ada switch buzzer
jadi hubungkan kedua kakinya probe multimeter, yang kaki yang panjang dengan probe positif dan salah satu ketiga kaki lainnya dengan probe negatif.
Jika nyala berarti itu common Anode, jika tidak common cathode (perlu dibalik probenya untuk pembuktian)
thanks sudah berkunjung.
ok gan…trims atas responnya….:)
Begini gan dgn yg saya lakukan, mohon dikasih tunjuk… heheh
Percobaan #1. Berhasil. NYALA
Kemarin saya udah coba menyambungkan arduino UNO ke LED RGB dgn pengaturan sbb
– uno (R=pin3, G=pin5, B=pin6, GND=pin5v dan atau 3,3v )
– resistor 220ohm utk semua kaki RGB
Percobaan #2. Gagal…
Kemudian…. led tsb sy pasangkan ke nodeMCU v3…. dan hasilnya RGB tidak hidup.
R = D0
G = D1
B = D2
Kaki terpanjang = 3,3v
Tanya: a) dimana salahnya… kok tidak nyala padahal ke 3,3v…???
Percobaan #3. Gagal. LED MATI
Krn percobaan 2 gagal… akhirnya led tsb sy kembalikan lagi sebagaimana pada percobaan #1. dengan tujuan utk memeriksa apakah led masih normal atau sudah mati… faktanya mati
Tanya: kenapa mati…
Mohon pencerahannya nyebarilmu.com…
trims ya… master 🙂
LED RGB yang digunakan menggunakan COMMON apa dulu gan?
kemudian untuk NodeMCU V3, saran ane sebelum memprogram menggunakan LED RGB saran ane, program dulu menggunakan LED BUILT IN nya dulu,
setelah itu kalo OK diganti menggunakan LED biasa dulu, baru lanjut ke LED RGB,
dikarenakan LED RGB merupakan kumpulan 3 warna LED biasa yang dipackage menjadi 1 LED,
refrensi yang bisa digunain untuk pemrograman itu.
https://www.nyebarilmu.com/project-nodemcu-untuk-mengendalikan-4-channel-relay/
ok gan…trims atas responnya….:)
Begini gan dgn yg saya lakukan, mohon dikasih tunjuk… heheh
Percobaan #1. Berhasil. NYALA
Kemarin saya udah coba menyambungkan arduino UNO ke LED RGB dgn pengaturan sbb
– uno (R=pin3, G=pin5, B=pin6, GND=pin5v dan atau 3,3v )
– resistor 220ohm utk semua kaki RGB
Percobaan #2. Gagal…
Kemudian…. led tsb sy pasangkan ke nodeMCU v3…. dan hasilnya RGB tidak hidup.
R = D0
G = D1
B = D2
Kaki terpanjang = 3,3v
Tanya: a) dimana salahnya… kok tidak nyala padahal ke 3,3v…???
Percobaan #3. Gagal. LED MATI
Krn percobaan 2 gagal… akhirnya led tsb sy kembalikan lagi sebagaimana pada percobaan #1. dengan tujuan utk memeriksa apakah led masih normal atau sudah mati… faktanya mati
Tanya: kenapa mati…
Mohon pencerahannya nyebarilmu.com…
trims ya… master 🙂
LED RGB yang digunakan menggunakan COMMON apa dulu gan?
kemudian untuk NodeMCU V3, saran ane sebelum memprogram menggunakan LED RGB saran ane, program dulu menggunakan LED BUILT IN nya dulu,
setelah itu kalo OK diganti menggunakan LED biasa dulu, baru lanjut ke LED RGB,
dikarenakan LED RGB merupakan kumpulan 3 warna LED biasa yang dipackage menjadi 1 LED,
refrensi yang bisa digunain untuk pemrograman itu.
https://www.nyebarilmu.com/project-nodemcu-untuk-mengendalikan-4-channel-relay/
kalau yang rbg 2 kaki gimana bang ?
kalau 2 kaki gak bisa dikendalikan nyala Red, Green, dan Blue secara independen gan
kalau yang rbg 2 kaki gimana bang ?
kalau 2 kaki gak bisa dikendalikan nyala Red, Green, dan Blue secara independen gan