Tutorial RGB LED Arduino

Tutorial Arduino RGB LED (Anode, Cathode, SMD, potensiometer)

Tutorial ini menjelaskan bagaimana kita bisa menggunakan LED RGB (Red, Green dan Blue). LED jenis ini bisa menghasilkan lebih dari 16 juta warna, kombinasi yang tidak bisa didapatkan hanya dengan menggunakan LED biasa yang memiliki satu warna seperti merah, biru, hijau dan sebagainya. Penggunaan LED RGB juga menghemat penggunaan LED karena berbagai macam warna bisa dihasilkan hanya dari satu LED.

Dalam video ini, dijelaskan secara detil mengenai jenis LED RGB, yaitu jenis Anode, jenis Cathode dan jenis SMD. Video juga menjelaskan bagaimana kita bisa mendapatkan kode warna berdasarkan kombinasi warna dasar dan intensitas warnanya.

Dalam video ini terdapat dua eksperimen. Bagian pertama hanya menggunakan LED RGB. Bagian kedua menggunakan potensiometer untuk mengendalikan intensitas cahaya yang dipancarkan oleh masing-masing LED dalam LED RGB.

Bahan Tutorial RGB LED Arduino

Bahan Tutorial LED RGB Arduino

Eksperimen Pertama Kode Program LED RGB Merah, Hijau dan Biru

// Protus Tanuhandaru
// www.progresstech.co.id

int pinLampuMerah = 11; //Membuat variabel untuk PIN LED Merah
int pinLampuHijau = 10; //Membuat variabel untuk PIN LED Hijau
int pinLampuBiru = 9; //Membuat variabel untuk PIN LED Biru
void setup() {
  pinMode(pinLampuMerah, OUTPUT); // PIN LED merah sebagai output
  pinMode(pinLampuHijau, OUTPUT); // PIN LED hijau sebagai output
  pinMode(pinLampuBiru, OUTPUT); // PIN LED biru sebagai output
}
void loop() {
  warnaRGB(255, 0, 0); // Warna merah
  delay(1000);
  warnaRGB(0, 255, 0); // Warna hijau
  delay(1000);
  warnaRGB(0, 0, 255); // Warna biru
  delay(1000);
}

// Fungsi untuk mengkombinasikan warna LED
void warnaRGB(int nilaiLampuMerah, int nilaiLampuHijau, int nilaiLampuBiru)
 {
  analogWrite(pinLampuMerah, nilaiLampuMerah);
  analogWrite(pinLampuHijau, nilaiLampuHijau);
  analogWrite(pinLampuBiru, nilaiLampuBiru);
}

Eksperimen Pertama Bagian pertama LED RGB Anode

Skema Eksperimen pertama bagian pertama LED RGB Anode

Eksperimen Pertama Bagian Kedua LED RGB Cathode

skema Eksperimen pertama bagian kedua LED RGB Cathode

Eksperimen Pertama Bagian 3 RGB LED SMD

skema Eksperimen pertama bagian 3 RGB LED SMD

Eksperimen Kedua Kode Program LED RGB dengan Potensiometer

// Protus Tanuhandaru
// www.progresstech.co.id

int pinLampuMerah = 11; //Membuat variabel untuk PIN LED Merah
int pinLampuHijau = 10; //Membuat variabel untuk PIN LED Hijau
int pinLampuBiru = 9; //Membuat variabel untuk PIN LED Biru

int potMerah = A0; // Membuat variable data untuk potensiometer LED merah
int potHijau = A1; // Membuat variable data untuk potensiometer LED hijau
int potBiru = A2; // Membuat variable data untuk potensiometer LED biru

int nilaiPotMerah = 0; // Membuat variable untuk menyimpan hasil konversi PWM ke LED merah
int nilaiPotHijau = 0; // Membuat variable untuk menyimpan hasil konversi PWM ke LED hijau
int nilaiPotBiru = 0; // Membuat variable untuk menyimpan hasil konversi PWM ke LED biru

void setup() {
  Serial.begin(9600);
  pinMode(pinLampuMerah, OUTPUT); // PIN LED merah sebagai output
  pinMode(pinLampuHijau, OUTPUT); // PIN LED hijau sebagai output
  pinMode(pinLampuBiru, OUTPUT); // PIN LED biru sebagai output

  pinMode(potMerah, INPUT); // Nilai yang dibaca dari potensiometer untuk LED merah
  pinMode(potHijau, INPUT); // Nilai yang dibaca dari potensiometer untuk LED hijau
  pinMode(potBiru, INPUT); // Nilai yang dibaca dari potensiometer untuk LED biru

}
void loop() {
  // Memetakan kisaran nilai potensiometer ke kisaran nilai Anode 
  nilaiPotMerah = map(analogRead(potMerah), 0, 1023, 255, 0);
  nilaiPotHijau = map(analogRead(potHijau), 0, 1023, 255, 0);
  nilaiPotBiru = map(analogRead(potBiru), 0, 1023, 255, 0);

  // Memetakan kisaran nilai potensiometer ke kisaran nilai Cathode
  //nilaiPotMerah = map(analogRead(potMerah), 0, 1023, 0, 255);
  //nilaiPotHijau = map(analogRead(potHijau), 0, 1023, 0, 255);
  //nilaiPotBiru = map(analogRead(potBiru), 0, 1023, 0, 255);
  
  analogWrite(pinLampuMerah, nilaiPotMerah);
  analogWrite(pinLampuHijau, nilaiPotHijau);
  analogWrite(pinLampuBiru, nilaiPotBiru);

  Serial.print("Potensiometer merah : ");
  Serial.print(analogRead(potMerah));
  Serial.print(" | Potensiometer hijau : ");
  Serial.print(analogRead(potHijau));
  Serial.print(" | Potensiometer biru : ");
  Serial.println(analogRead(potBiru));
  
  delay(10);
}

Eksperimen Kedua LED RGB Potentiometer

Skema Eksperimen ketiga LED RGB Potentiometer

Leave a Reply

Your email address will not be published. Required fields are marked *