Tuesday, February 08, 2011

Rangkaian LDR dengan Arduino severino sebagai Lilin Elektronik

LDR (light Dependent Resistor) adalah suatu resistor yang nilai resistansinya bergantung pada cahaya (Jika mendapat cahaya terang, nilai resistansi kecil sekitar puluhan s/d ratusan Ohm, jika kondisi gelap nilai resistansi akan besar bisa mencapai puluhan-ratusan KOhm bahkan bisa mencapai MOhm), umumnya LDR digunakan sebagai sensor cahaya. Berikut ini contoh aplikasi LDR pada arduino severino sebagai Lilin Elektronik, cara kerja skema di bawah ini adalah LED1 akan padam saat LDR mendapat cahaya cukup terang, apabila LDR tidak mendapat cahaya (kondisi lingkungan gelap) maka LED1 akan menyala (LED1 berfungsi sebagai Lilin Elektronik).

R1 = 10 KOhm, R2=LDR dan R3=560 Ohm


List Program
/* Program pemanfaatan LDR untuk Lilin Elektronik
 oleh : Aan Darmawan
 http://valfa.blogspot.com
 Februari 2011
 */

const int pinLDR = A0;// Sensor LDR dihubungkan dengan A0 dan
                      // A0 dihubungkan seri dengan Resistor 10 KOhm ke Ground
const int pinLED = 8; //LED1 dihubungkan ke pin8 melalui Resistor 560 Ohm
int sensorValue = 0; //var utk nilai yang terbaca di sensor
int outputValue = 0; //var utk penskalaan nilai sensor (0-1023)jadi nilai (0-255)

void setup() {
}

void loop() {
  // baca nilai dari sensor:
  sensorValue = analogRead(pinLDR);            
  // penskalaan nilai sensor (0-1023) menjadi nilai output (0-255)
  outputValue = map(sensorValue, 0, 1023, 0, 255);  
  // deteksi, jika nilai OutputValue <=200 , kondisi lingkungan redup/gelap
  // catatan: angka 200 dapat diubah-ubah disesuaikan dengan kondisi cahaya lingkungan
  // makin gelap nilai outputValue akan makin kecil dan sebaliknya
  if(outputValue<=200)
    digitalWrite(pinLED,HIGH);
  else digitalWrite(pinLED,LOW);     
  // delay 300 milidetik sebelum loop berikutnya
  // agar analog-to-digital converter siap membaca data berikutnya
  delay(300);                     
}


No comments: