Arduino Running Led With LDR

 

Project ini adalah project untuk menjalankan LED berdasarkan sensor cahaya

 

ok langsung saja kita komponen apa saja yang digunakan:

1. 1 buah module Arduino Uno Board

2. 1 buah sensor cahaya (LDR)

3. 1 buah resistor 220 Ohm

4. 6 buah lampu Led dengan 3 warna yaitu: merah, biru, dan hijau.

Perlu diketahui Sensor cahaya hanya memiliki 2 Pin saja, Agar dapat di kontor dengan Mikrokontroller Pin LDR harus memiliki 3 Pin yaitu Pin data, Pin Ground, Pin Positif.

 

Selanjutnya rangakain keseluruhan SIstem yang di Buat:

schematic

Rangkaian di atas bisa di buat dengan Software Fritzing, jika teman- teman yang belum punya silakan kunjungi link berikut (http://fritzing.org/home/).

konsep dari cara kerja sistem yang di buat adalah dengan memberikan  inputan cahaya pada LDR dengan nilai intesitas cahaya yang sudah di tentukan terlebih dahulu, pada saat sensor cahaya mendapat inputan lalu akan mengirimkan sinyal aktif pada mikrokontroller untuk di proses, setelah data yang dikirim dari sensor cahaya di proses lalu akan dikirimkan kembali pada lampu Led sehingga dapat bekerja sesuai dengan apa yang di perintahkan. pada sistem ini lampu Led akan menyala dari Led pertama Sampai dengan Led Keenam. untuk uji cobanya dapat dilihat pada gambar berikut.

Sebelum LDR disinari Cahaya:

1

 

Sesudah LDR diSinari Cahaya:

1.  13

2.   6

3.  8

4.  1111

 

5.  7

 

Bisa juga dilihat pada serial Monitor:

1. Sebelum disinari cahaya:

cats

 

2. sesudah di sinari Cahaya:

 

lihat nilai pada kotak merah lebih tinggi dari yang sebelumnya, artinya pada saat LDR disinari cahaya otomatis nilai yang muncul akan lebih besar sebelum disinari cahaya.

NM: cara menjalankan serial monitor yang ada pada IDE Arduino dapat dilihat pada gambar berikut:

serial monitor

 

berikut listing programnya:

#define POTPIN 0
#define LEDPIN1 2
#define LEDPIN2 3
#define LEDPIN3 4
#define LEDPIN4 5
#define LEDPIN5 6
#define LEDPIN6 7
const int Threshold = 1000;
int val = 0;

void setup() {
Serial.begin(9600);                        // kecepatan data dalam satuan detik
pinMode(LEDPIN1, OUTPUT);      // deklarasi lampu sebagai output
pinMode(LEDPIN2, OUTPUT);
pinMode(LEDPIN3, OUTPUT);
pinMode(LEDPIN4, OUTPUT);
pinMode(LEDPIN5, OUTPUT);
pinMode(LEDPIN6, OUTPUT);

}

void loop() {
val = analogRead(POTPIN);
Serial.println(val, DEC);              // mencetak data pada serial monitor
delay(100);                                 // waktu tunggu
if (val >Threshold){                       // kecerahan cahaya untuk menghidupkan lampu
digitalWrite(LEDPIN1, HIGH);    // hidupin lampu
delay(100);
digitalWrite(LEDPIN2, HIGH);
delay(150);
digitalWrite(LEDPIN3, HIGH);
delay(200);
digitalWrite(LEDPIN4, HIGH);
delay(250);
digitalWrite(LEDPIN5, HIGH);
delay(250);
digitalWrite(LEDPIN6, HIGH);
delay(300);

digitalWrite(LEDPIN1, LOW);     //matikan lampu
delay(100);
digitalWrite(LEDPIN2, LOW);
delay(150);
digitalWrite(LEDPIN3, LOW);
delay(200);
digitalWrite(LEDPIN4, LOW);
delay(250);
digitalWrite(LEDPIN5, LOW);
delay(250);
digitalWrite(LEDPIN6, LOW);
delay(300);

}
}
Sumber

Leave us a Comment

logged inYou must be to post a comment.