2000₺ ÜZERİ ÜCRETSİZ KARGO! TÜRKİYE'NİN HER YERİNE HEPSİJET VE ARAS KARGO İLE YALNIZCA 150₺
2000₺ ÜZERİ ÜCRETSİZ KARGO! TÜRKİYE'NİN HER YERİNE HEPSİJET VE ARAS KARGO İLE YALNIZCA 150₺
2000₺ ÜZERİ ÜCRETSİZ KARGO! TÜRKİYE'NİN HER YERİNE HEPSİJET VE ARAS KARGO İLE YALNIZCA 150₺
Arduino ile LDR Işık Sensörü Kullanımı - Arduino Projeleri

Arduino ile LDR Işık Sensörü Kullanımı - Arduino Projeleri

Kısaca: LDR (Light Dependent Resistor), üzerine düşen ışık arttıkça direnci azalan, ışığa duyarlı bir dirençtir; Arduino'da bir analog girişe bağlanarak ortamın ışık seviyesini ölçmek için kullanılır. Bu yazıda LDR'nin çalışma prensibini, Arduino'nun analog girişlerini, devre şemasını ve ışık seviyesine göre LED yakan örnek kodu bulabilirsiniz.


Merhaba arkadaşlar, bu yazımızda Arduino ile LDR Işık Sensörü Kullanımı nedir ve nasıl yapılır birlikte öğrenecceğiz.

Arduino ile LDR Kullanımı için Gerekli Malzemeler:

LDR Nedir?

LDR (Light Dependent Resistor) yani Türkçe’de “Işığa Bağımlı Direnç” anlamına gelmektedir. LDR ışığa duyarlı bir devre elemanıdır. Ters orantılı bir çalışma prensibine sahiptir. Yani üzerine düşen ışık değeri arttıkça sahip olduğu direnç değeri azalırken, üzerine düşen ışık değeri azaldıkça sahip olduğu direnç artar. Bu özelliği sebebiyle LDR devrede bir ON-OFF şeklinde anahtarlama görevinde bulunur. Günlük hayatta LDR sensörü alarmlarda, anahtarlama cihazlarında, sokak aydınlatmalarında kullanılabilirler. Devremiz de kullandığımız LDR sensörümüz bir Analog Girişli Sensördür.

Analog Giriş Nedir?

Arduino da ADC (Analog To Digital Converter) özelliği mevcuttur. Bu özellik sayesinde dış dünyadan gelen verileri sayısal değerlere dönüştürebiliriz. Arduino UNO kartı üzerinde A0-A5 olmak üzere 6 adet analog giriş bulunur. Analog giriş sayısı modele göre değişebilir ama işlevi aynıdır.

Arduino ile LDR Devre Şeması

LDR’nin Ne Olduğunu Öğrendiğimize Göre Devre Şemasına ve Kodlamasına Bakalım.

Arduino ile ldr Kullanımı Bağlantısı

Şimdide kodlamamıza geçelim

int ledPin = 10;
int LDRPin = A3;
void setup()
{ 
 pinMode(ledPin, OUTPUT);
 Serial.begin(9600);
}
 
void loop()
{
 int isik_degeri = analogRead(LDRPin);
Serial.println(isik_degeri);
delay(100); 
 if(isik_degeri<200)
 {
 digitalWrite(ledPin, HIGH);
 }
 else
 {
 digitalWrite(ledPin, LOW);
 }
}

int ledPin = 10; int LDRPin = A3; // İlk olarak LED’imizin ve LDR sensörümüzün pinlerini belirliyoruz. pinMode(ledPin, OUTPUT); // LED’imizin bir OUTPUT olduğunu belirtiyoruz.

Serial.begin(9600); // Seri iletişimi başlatıyoruz. Loop Kısmına indiğimiz zaman ise;

int isik_degeri = analogRead(LDRPin); // LDR sensörümüzün ölçmüş olduğu ışık değerini int tipinde bir değişkene atıyoruz.

Serial.println(isik_degeri); // Okunan değeri seri monitöre yazdırıyoruz.

delay(100); // Saniyenin 1/10 kadarını beklemesini söylüyoruz.

if(isik_degeri<200) // if koşulu ile ölçülen değerin bizim belirlediğimiz değerin altında veya üstünde olma durumunu kontrol ediyoruz.

{ digitalWrite(ledPin, HIGH);

// Eğer ki gelen ışık düzeyi 200'den az ise LED’imizi aktif ediyoruz. }

else {

digitalWrite(ledPin, LOW); // Eğer ki gelen ışık düzeyi 200 den fazla ise LED’imizi pasif durumuna çekiyoruz.

}

İlgili Ürünler

Sıkça Sorulan Sorular

LDR nasıl çalışır?

LDR'nin direnci üzerine düşen ışık şiddetine bağlıdır: ışık arttıkça direnç azalır, karanlıkta ise yükselir. Bu özellik sayesinde LDR, ortamda ışık olup olmadığını ya da ışığın ne kadar güçlü olduğunu algılamak için basit ve ucuz bir sensör olarak kullanılır.

LDR Arduino'nun hangi pinine bağlanır?

LDR analog bir değer ürettiği için Arduino UNO'nun A0–A5 analog giriş pinlerinden birine bağlanır; yazıdaki örnekte A3 kullanılmıştır. analogRead() fonksiyonu bu pindeki gerilimi 0 ile 1023 arasında bir sayıya dönüştürür.

LDR ile neden sabit bir direnç kullanılır?

Arduino direnci doğrudan ölçemez, yalnızca gerilim okuyabilir. LDR sabit bir dirençle seri bağlanarak gerilim bölücü oluşturulur; ışık değiştikçe LDR'nin direnci, dolayısıyla iki elemanın birleşim noktasındaki gerilim değişir ve bu gerilim analog girişten okunur.

LDR ile karanlıkta yanan lamba nasıl yapılır?

analogRead() ile okunan ışık değeri bir eşik değerle karşılaştırılır. Yazıdaki kodda değer 200'ün altına düştüğünde LED yakılır, üstüne çıktığında söndürülür; eşik değeri, seri monitörde okunan değerlere bakılarak ortama göre ayarlanabilir.

LDR nerelerde kullanılır?

LDR; sokak ve bahçe lambalarının karanlıkta otomatik yanması, alarm sistemleri, ışığı takip eden robotlar ve güneş takip sistemleri gibi ışık seviyesine göre karar veren uygulamalarda kullanılır.