Mencoba Modul LED 3 Warna (RGB)

LED atau Light Emitting Dioda adalah komponen dasar dalam dunia elektronika. Biasanya digunakan untk melakukan suatupercobaan dasar, atau digunakan sebagai indikator pada alat tertentu. Fungsinya sangat sederhana namun sangat membantu. Pada tutorial kali ini kita akan mencoba mengontrol LED 3 Warna yaitu warna merah, hijau dan biru (RGB). Berikut langkah-langkahnya:
Sumber gambar: arduinomodules.info
Sebelum kita menuju ke pembahasan konfigurasi pin dan pengkodean arduino, adabaiknya kita mengetahui kombinasi warna, dari warna dasar (RGB) ini. Berikut gambar kombinasi warnanya:
Sumber gambar: Warna - Color
Baca juga:
Membuat Alarm Kebakaran (Pendeteksi Api)

Dari warna dasar merah, biru dan hijau kita dapat memvariasikannya menjadi warna yang baru. Contohnya: warna hijau terbentuk dari kombinasi warna merah dan hijau, dst. Kombinasi diatas bisa jadi panduan untuk menemukan warna baru sesuai keinginan.

Konfigurasi Pin:

Hubungkan pin-pin modul seperti gambar berikut:
Sumber gambar: arduinomodules.info
Pin Merah ke Pin 11 Arduino
Pin Biru ke Pin 10 Arduino
Pin Hijau ke Pin 9 Arduino

Penggunaan resistor bisa diabaikan, tujuan penggunaan resistor disini sebagai pengaman terhadap konsleting LED. Namun karena tegangan dan arus yang digunakan relatif aman (kecil), konleting bisa dihindari walau tanpa resstor.

Kode program:

Kode-1 Program untuk kombinasi warna secra berkelanjutan

int pinMerah =11; //pin untuk warna merah
int pinBiru =10; //pin untuk warna biru
int pinHijau =9; //pin untuk warna hijau

int val;

void setup(){
  pinMode (pinMerah, OUTPUT);
  pinMode (pinBiru, OUTPUT);
  pinMode (pinHijau, OUTPUT);
  Serial.begin(9600);
}

void loop()
{
  for(val =255; val>0; val--)
  {
    analogWrite(pinMerah,val); //memberi nilai PWM warna merah
    analogWrite(pinBiru,255-val); //memberi nilai PWM warna biru
    analogWrite(pinHijau,128-val); //memberi nilai PWM warna hijau
    Serial.println(val); // Menampilkan nilai saat ini
    delay(1);
  }
  for (val =0; val<255;val++)
  {
    analogWrite(pinMerah,val); //memberi nilai PWM warna merah
    analogWrite(pinBiru,255-val); //memberi nilai PWM warna biru
    analogWrite(pinHijau,128-val); //memberi nilai PWM warna hijau
    Serial.println(val); // Menampilkan nilai saat ini
    delay(1);
  }
}

Code diatas dapat didownload DISINI

Kode-2 Program dengan kombinasi warna secara bertahap:

int pinMerah =11; //pin untuk warna merah
int pinBiru =10; //pin untuk warna biru
int pinHijau =9; //pin untuk warna hijau

void setup(){
  pinMode (pinMerah, OUTPUT);
  pinMode (pinBiru, OUTPUT);
  pinMode (pinHijau, OUTPUT);
  
}

void loop()
{
  //warna merah
    analogWrite(pinMerah,255); //memberi nilai PWM warna merah
    analogWrite(pinHijau,0); //memberi nilai PWM warna hijau
    analogWrite(pinBiru,0); //memberi nilai PWM warna biru
    delay(2000); 
    
    //warna kuning
    analogWrite(pinMerah,255); //memberi nilai PWM warna merah
    analogWrite(pinHijau,255); //memberi nilai PWM warna hijau
    analogWrite(pinBiru,0); //memberi nilai PWM warna biru
    delay(2000); 
    
    //warna hijau
    analogWrite(pinMerah,0); //memberi nilai PWM warna merah
    analogWrite(pinHijau,255); //memberi nilai PWM warna hijau
    analogWrite(pinBiru,0); //memberi nilai PWM warna biru
    delay(2000); 
    
    //warna cyan
    analogWrite(pinMerah,0); //memberi nilai PWM warna merah
    analogWrite(pinHijau,255); //memberi nilai PWM warna hijau
    analogWrite(pinBiru,255); //memberi nilai PWM warna biru
    delay(2000); 
    
    //warna biru
    analogWrite(pinMerah,0); //memberi nilai PWM warna merah
    analogWrite(pinHijau,0); //memberi nilai PWM warna hijau
    analogWrite(pinBiru,255); //memberi nilai PWM warna biru
    delay(2000); 
    
    //warna magenta
    analogWrite(pinMerah,255); //memberi nilai PWM warna merah
    analogWrite(pinHijau,0); //memberi nilai PWM warna hijau
    analogWrite(pinBiru,255); //memberi nilai PWM warna biru
    delay(2000);   
}
Code diatas dapat didownload DISINI

Penjelasan Program:

Pada kode pertama, kombinasi warna akan dibentuk dengan menfariasikan nilai dari tiap warna. Pengaturan nilai dilakukan dengan mengubah nilai PWM dari setiap pin warna Nilai 255 merupakan nilai paling tinggi (HIGH), dan nilai 0 adalah nilai paling rendah (LOW). Pada program pertama nilai PWM pada setiap pin akan diubah secara cepat dari nilai awal. Nilai PWM akan bertambah jika telah mencapai nilai 0, dan akan berkurang bila nilai PWM telah mencapai nilai 255

Code yang memberi perintah Nilai PWM akan bertambah jika telah mencapai nilai 0
for (val =0; val<255;val++) 

Code yang memberi perintah nilai PWM berkurang bila nilai PWM telah mencapai nilai 255
for(val =255; val>0; val--)  

Pada kode kedua, Kombinasi warna dilakukan secara perlahan. Yaitu hanya memberikan nilai maksimal dan minimum pada suatu pin warna, dan memberi waktu dilai selama 2 detik. Kombinasi warna yang dibentuk secara berurutan merah, kuning, hijau, cyan, biru, magenta dan kembali ke merah.

Video:

Kesimpulan:

Dari warna dasar merah, biru dan hijau dapat dibentuk warna baru dengan memvariasikan ketiga warna tersebut. Kombinasi warna LED diatur dengan mengubah nilai PWM pada program arduino. Nilai 255 adalah nilai maksimal (HIGH), yang menyebabkan LED menyala paling terang, dan nilai 0 adalah nilai paling mnimum (LOW), yang enyebabkan LED padam. Jadi tingkat kecerahan warna dari setiap LED dapat diatur melalui nilai PWM ini.

Pengembangan:

LED sangat baik digunakan sebagai indikator suatu alat atau mesin. Dengan menggunakan LED 3 warna kita dapat mebuat beberapa macam indikator dari suatu alat atau mesin. Contohnya alat mengalai error maka LED warna merah menyala, bila alat terlalu panas LED warna kuning akan menyala, atau bila alat beroprasi dengan baik tanpa ada gangguan LED hijau akan menyala. Dengan demikian kita tidak perlu meggunakan LED dengan warna berbeda secara terpisah. Hemat tempat dan kombinasi warna yang banyak bisa jadi keumggulan dari modul LED 3 warna ini.

Selamat mencoba...
Semoga bermanfaat..

Artikel menarik lainnya:
Menggunakan LCD DFRobot
Menggunakan Ardumoto (Driver Motor DC) Arduino
Menggunakan Modul L298N (Motor Driver) Arduino
Arduino Mengontrol Stepper dengan ULN2003
Cara Menambahkan Libraries Arduino

Comments

Post a Comment

Popular posts from this blog

Tips Lulus Psikotes

Penyebab tidak bisa mengupload program ke Arduino

Program dan Ladder PLC pengisi kotak Apel