Proyek 07 – LED Dimmer

Rangkaian pada proyek LED Dimmer cukup sederhana, proyek ini berguna untuk memberikan ide mengontrol tingkat kecerahan LED. LED akan menyala dari redup hingga terang, lalu dari terang hingga redup kemudian mati.

Komponen

  • LED 5mm (silakan guanakan warna LED apa saja)
  • Resistor

Skema

Proyek Arduino LED Dimmer

Sketch

int ledPin = 11;
float sinVal;
int ledVal;

void setup() {
  pinMode(ledPin, OUTPUT);
}
 
void loop() {
  for (int x=0; x<180; x++) {
    // convert degrees to radians then obtain sin value
    sinVal = (sin(x*(3.1412/180)));
    ledVal = int(sinVal*255);
    analogWrite(ledPin, ledVal);
    delay(25);
  }
}

Pembahasan Sketch

LED akan menyala redup menuju terang, lalu meredup kembali hingga padam. Agar efek seperti bisa dicapai, digunakan gelombang sinus. Sinus memilki gelombang dari 0 merambat naik ke 1 dan kembali merambat turun ke 0 (seperti berbentuk setengah lingkaran).

Fungsi yang digunakan adalah sin(), fungsi trigonometri matematika untuk perhitungan sudut. Pada sketch, hanya menggunakan interval 0-179 (nilai negatif tidak dipakai).

Fungsi sin memerlukan nilai dalam radian, bukan dalam sudut. Jadi persamaan yang digunakan adalah sin(x*(3.1412/180)), setelah mendapatkan nilai radian, kalikan 255. Setelah itu kita akan menulis nilai tersebut ke pin dimana LED tersambung.

Nilai yang diperoleh dari perhitungan diatas akan berkisar dari 0 s/d 1. 0 untuk LED kondisi padam, 1 untuk LED menyala dengan tingkat kecerahan maksimum.

Sharing is caring: