April 25, 2012

Sensor LDR pada Board Arduino

Sedikit  tentang LDR (Light Dependent Resistor), merupakan komponen resistor yang nilai hambatannya bisa berubah karena faktor intensitas cahaya. Jika intensitas cahaya yang mengenainya cukup terang, nilai hambatannya sebesar 1 KΩ. Dan bila LDR diletakkan pada tempat yang gelap, nilai hambatannya mencapai 10 MΩ. Karena nilai hambatan dipengaruhi intensitas cahaya, karena itu LDR bisa disebut juga sensor cahaya.

Komponen yang diperlukan :
  1. Resistor 10 KΩ 1x            
  2. Resistor 1 KΩ 1x              
  3. Dioda led 5mm 1x            
  4. LDR 1x                            
  5. Breadboard                       
  6. Kabel jumper                    
  7. Minimum sistem Board Arduino

Koneksi Rangkaian :
Led akan menyala jika LDR menerima cahaya yang cukup terang dan mati bila LDR ditutup dari cahaya (gelap).

Penulisan Program :
//Program.1
//Menggunakan sensor LDR pada Arduino
//Pin definition
const int analogInput = A0;                               //deklarasi pin input analog A0
const int analogOutput = A2;                             // deklarasi pin output analog A2

//Deklarasi Variabel
int analogValue = 0;                                           //deklarasi variabel analogValue
int outputValue = 0;                                           //deklarasi variabel outputValue

void setup ()
{
  pinMode (analogInput, INPUT);                     //pin analogInput sebagai input
  pinMode (analogOutput, OUTPUT);               //pin analogOutput sebagai output
  Serial.begin (9600);                                          //inisialisasi komunikasi serial 9600 bps
}

void loop ()
{
  analogValue = analogRead (analogInput);       //membaca input analog (analogRead)
  outputValue = analogValue;
  Serial.print ("outputValue = ");                        //menulis nilai pada serial monitor
  analogWrite (analogOutput, outputValue);      //berikan sinyal analog ke pin output
  delay (30);
}
//Program.2
//Menggunakan sensor LDR pada Arduino
//Analog Input dan Digital Output
//Pin definition
const int analogInput = A0;
int analogOutput = A2;

//Deklarasi Variabel
int analogValue = 0;
int outputValue = 0;

void setup ()
{
  pinMode (analogInput, INPUT);
  pinMode (analogOutput, OUTPUT);
  Serial.begin (9600);
}

void loop ()
{
  analogValue = analogRead (analogInput);
  outputValue = map (analogValue, 0, 1023, 0, 255);
  Serial.print ("outputValue = ");
  Serial.println (outputValue, DEC);

  if (outputValue < 160)
  {
  digitalWrite (analogOutput, LOW);
  }
  else
  {
    digitalWrite (analogOutput, HIGH);
   }
  delay (30);
  }