Seviye:
Akıllı şehir uygulamalarında ve akıllı ev sistemlerinde özellikle enerji tasarrufu sağlamak için aydınlatma sistemleri ortamdaki ışığa göre çalışabilmektedir. Ortamdaki ışık belirli bir seviyenin üzerindeyse lamba sönmekte, ışık azaldığında ise lamba yanmaktadır. Bu uygulamada da benzer şekilde Arduino sensor kartına bağlı sensor ile ışık şiddetini ölçerek ışık şiddeti azaldığında karta bağlı LED’i yakan uygulamayı gerçekleştireceğiz.
Grove Işık Sensoru
Grove - Işık sensoru, ışığın yoğunluğunu algılamak için bir foto-direnç (ışığa bağlı direnç) barındırmaktadır. Işık şiddeti arttığında foto direncin direnci azalır. LM358 OpAmp entegresi ise, ışığın yoğunluğuna (yani direnç değerine dayalı olarak) karşılık gelen voltaj üretir. Çıkış sinyali analog değerdir, ışık ne kadar parlaksa değer o kadar büyüktür.
Gerekli Malzemeler
-
Arduino sensor kartı
-
Grove ışık sensoru
-
Grove LED
Devre kurulumu
Deney için şekilde verilen devreyi kurabilirsiniz.
Programlama
Aşağıda verilen program kodunu Arduino IDE’ye yazarak programı Arduino kartına yükleyin.
int LED = 5; //5.Pinde LED olduğu tanımlandı.
int sensor_pin = A3; //A3 Pininde ışık sensörü olduğu tanımlandı.
int sensor_durum = 0;
void setup() {
pinMode(LED,OUTPUT);
Serial.begin(9600); //Seri haberleşme başlatıldı.
digitalWrite(LED,LOW);
}
void loop() {
sensor_durum = analogRead(sensor_pin); //A3 pinindeki değer sensor_durum değişkenine atandı.
Serial.println(sensor_durum); //Okunan değer seri monitöre yazdırıldı.
delay(50);
if(sensor_durum > 150)
{ //sensorün üzerine düşen ışık değeri 150'den büyük ise LED yanmasın.
digitalWrite(LED,LOW);
}
if(sensor_durum < 150)
{ // sensorün üzerine düşen ışık değeri 150'den küçük ise LED yansın.
digitalWrite(LED,HIGH);
}
}