Foto Dirençten (LDR) Gelen Analog Veriyi Seri Port Ekranında Okumak

Bu başlık altında Foto Dirençten gelen analog veriyi seri port ekranında nasıl okuyacağımızı göstereceğiz. Foto Direnç veya LDR (Light Dependent Resistor – Işığa Duyarlı Direnç) bir direnç tipidir. Foto Dirençler, ışığın şiddeti ile ters orantılı olarak direnci değişebilen pasif devre elemanlarıdır. Bu devre elemanlarının yapısında yüksek direnç değerine sahip olan yarı iletken malzemeler kullanılır. Yarı iletken malzeme çevreden gelen fotonları emebilme özelliğine sahiptir. Foton emilimi ile birlikte yarı iletken malzeme elektronlara bir enerji verir. Elde edilen bu serbest elektronlar, foto direncin direncini azaltarak elektriği iletmeyi sağlar. Elektronların sayısı foton frekansına bağlıdır.

LDR Nasıl Çalışıyor?

LDR’lerin dirençleri karanlık ortamda çok yüksektir. Böyle bir ortamda dirençleri neredeyse 1MΩ kadardır. Fakat yoğun bir ışığa maruz kaldığında direnç değeri birkaç KΩ (10KΩ – 20KΩ) kadar hızlı bir şekilde düşer. Tabi bu değer modele bağımlı olarak değişkenlik gösterebilir. Farklı şekil ve renklerde üretilen bu devre elemanı, birçok elektrik devresinde kullanılmaktadır. Bu devre elemanının özellikle kullanıldığı bazı uygulamalar şu şekildedir;

  • Alarm Sistemlerinde,
  • Anahtarlama Gerektiren Uygulamalarda,
  • Sokak Lambalarında.

LDR’nin devredeki sembolü aşağıdaki gibidir.

Piyasada satılan örnek bir LDR aşağıdaki gibidir.

Bu temel bilgilerden sonra Arduino ortamında LDR’den gelen analog veriyi nasıl okuyabileceğimize geçebiliriz. Devre için ihtiyacımız olan elemanların listesi aşağıdaki gibidr:

  • 10KΩ Direnç x 1
  • LDR x 1

Bunları elde ettikten sonra devremizi aşağıdaki gibi oluşturalım. Burada dikkat edilirse LDR’ye 5V’luk bir gerilim uyguladık. Amacımız 5V gerilim uyguladığımız LDR’nin diğer ucundan analog bir veri elde etmektir. Bu veri LDR’nin maruz kaldığı ışığın şiddetine göre değişkenlik göstermektedir. Devrenin çalışması için LDR’nin diğer ucunuda GND’ye bağlamamız gerekiyor. Bunu yaptığımızda elde edilen analog veriyi Arduino ortamına alamayız. Bunun için LDR’nin diğer ucuna 10KΩ ‘luk bir direnç bağladık. Bu şekilde elde edilen gerilimin GND’ye geçmesi engellenir. Gerilimi doğrudan Arduino ortamına aktarmak için LDR ve Direnç arasına bir bağlantı kurulur. Bağlantının diğer ucu Analog A0 girişine bağlanır. Böylece analog veri doğrudan Arduino ortamına aktarılabilir.

Yukarıda verilen devrede bağlantıları özetle aşağıdaki gibi yaptık;

  • LDR’nin bir ucu Arduino’da bulunan 5V çıkışına bağlanır,
  • LDR’nin diğer ucuna 10KΩ’luk bir direnç bağlanır.
  • Direncin diğer ucu Arduino kartındaki GND pinine bağlanır.
  • 5V gerilim uygulanan LDR’nin diğer bacağında analog veri elde etmek için direnç ve LDR arasına bir bağlantı yapılır. Bağlantının diğer ucu Arduino’da bulunan Analog A0 girişine bağlanır.

Devremizin kodu aşağıdaki gibidir.


int ldrPin = A0;
int ldrValue = 0;


void setup() {
Serial.begin(9600);
}

void loop() {

ldrValue = analogRead(ldrPin);
Serial.println(ldrValue);

}

Kodların açıklaması tek tek şu şekildedir:


int ldrPin = A0;
int ldrValue = 0;

Burada ldrPin değişkeni A0 değerine sahiptir. LDR’den elde edilen analog verinin Arduino ortamına almak için bu pini kullanacağız. Bağlantıyı da yine bu pin ile gerçekleştirmiştik. ldrValue ise LDR’den elde edilen analog veriyi tutacak olan değişkenimizdir.

 


void setup() {

Serial.begin(9600);

}

Serial.begin() komut ile seri iletişim başlatılır. Seri iletişimde saniyede 9600 bit gönderilecektir.

 


void loop() {

ldrValue = analogRead(ldrPin);
Serial.println(ldrValue);

}

analogRead() komutu ile A0 pinine gelen analog veri okunur. Okunan veri ldrValue değişkenine atanır. Serial.println() ile değişkenin değeri seri port ekranına yazılır.

Kodumuzu çalıştırdıktan sonra seri port ekranında şuna benzer verileri okuyabiliriz.

Yukarıdaki resme dikkat edilirse, tıpkı potansiyometrede olduğu gibi LDR’den gelen analog verininde 0 ile 1023 arasında olduğu görülür. Işığın şiddeti arttıkça gelen analog veri 1023’e yaklaşır. Işığın şiddeti azaldıkça gelen analog veri 0’a yaklaşır.

Bu uygulama hakkında ayrıntılı bilgiler edinmek için kanalımda yayınladığım şu videoyu izlemenizi tavsiye ediyorum.