back to top

Arduino Temelleri 8: LDR İle Işık Algılama

Merhaba arkadaşlar. Bu dersimizde ışık şiddetine göre yanan LED’li gösterge uygulaması yapacağız.

Gerekli malzemeler:

Bu uygulamada bir önceki uygulamamız olan analog değer okuma uygulamasından tek farklı olarak kullanacağımız eleman, bir LDR. Peki, LDR nedir?

Light Dependent Resistor (LDR, Foto direnç)

Foto direnç, üzerine düşen ışığın şiddetine bağlı olarak değişen dirence sahip bir elemandır. Direnci, üzerine düşen ışık miktarıyla ters orantılı olarak değişir. Gündelik kullandığımız çoğu elektronik alette “fotosel” ismiyle yaygın olarak kullanılır.

Bu uygulamadaki devre şemamız, analog giriş uygulamamızdakiyle büyük ölçüde benziyor. Tek farklı yanı, analog girişte kullandığımız potansiyometrenin yerine LDR ve 1 kΩ değerinde bir direnç kullanmamız.

Devre şeması 17/01/2017 tarihinde güncellenmiştir.

Kodumuz da bir önceki uygulamadaki ile tamamen aynı:

int potPin = 0;
int latchPin = 5;
int clockPin = 6;
int dataPin = 4;
int leds = 0;

void setup() 
{
  pinMode(latchPin, OUTPUT);
  pinMode(dataPin, OUTPUT);  
  pinMode(clockPin, OUTPUT);
}
void loop() 
{
  int deger  = analogRead(potPin);
  int yanan_ledsayisi = deger / 114;  //1023 / 9
  leds = 0;
  for (int i = 0; i < yanan_ledsayisi; i++)
  {
    bitSet(leds, i); 
  }
  registeraYaz();
}

void registeraYaz()
{
   digitalWrite(latchPin, LOW);
   shiftOut(dataPin, clockPin, LSBFIRST, leds);
   digitalWrite(latchPin, HIGH);
}

Son Çıkan Yazılar

28 YORUMLAR

  1. En basitinden bir tranzistor,ldr(veya fotodiyot)birkaç direnç,led (tabii ki bir de güç kaynağı ‘pil adaptör ‘) ile yapılabilir.

    • Analog girişten gelen değer 0-1023 arasında değiştiği için 1024/9 ~= 114 oluyor. 9’a bölmemizin sebebi ise değer 114 altında ise hiçbir LED’in yanmamasını istememizdendir.

  2. Arkadaşlar ben lazer ile lazer sensörler bir proje yapmak istiyorum. arduino tecrübem hiç yok videolar izledim kullanımı hoş pratik. lazer yanması ile lazeri algılayıcı sensörün üzerine düştüğü süreyi nanosaniye cinsinden ölçebilirmiyim.

  3. Merhaba ben arduino ile aracıma akıllı far yapmak istiyorum.Ldr ile ışığın hassasiyetini ölçerek üzerine belirli miktar üzerinde ışık düşerse otomatik kısaya geçecek üzerine düşen ışık belirli miktarın altına düşerse otomatik uzuna geçecek.Sistem ve kodları hallettim sormak istediğim sadece şu.Herhangi bir direnç felan kullanmam gerekiyormu.Farların elektriği aküden geliyor ve arduino içinde powerbank kullanıyorum şimdilik 1A çıkışlı.Bunun testi için ufak birşey denedim ldr olmadan farı kısa uzun devre geçişleri için çakmaklık için olan şarj cihazının kablosunu keserek elektriği oradan aldım fakat şarj cihazı eridi.Bende sormak istedim ön tarafa uygulamadna önce.

    • Arduino kartının üzerinde bulunan adaptör girişinden veya Vin pinlerinden aküden gelen 12V’u doğrudan bağlayarak sistemi çalıştırabilirsiniz.

      • Son olarak şunun cevabınıda alırsam çok memnun olurum.Röle vasıtası ile araba farını yakacam bluetooth üzeerinden.Araya herhangi bir direnç veya başka parça takmama gerek varmı. Yardımınız için Çok teşekkür ederim

          • Arduino röle kartı kullanıyorum ilk söylediğiniz. Kerem bey ilginiz ve yardımınız için çok Teşekkür ediyorum.

  4. arduıno bağlantı kırmızı – siyah (+ – )
    sonra breadbord kırmızı – yeşil (arduıonoya gidiyor) siyah => ama bu nereye bağlanıyor bunu çözemedim lütfen yardım..
    Hiç bilmiyorum….
    öğrenmeye çalışıyorum bağlantıları yaparak …
    Önceki dersler tamam LED leri yaktım, buton kontrollü LED i de yaptım ama burda 5 5 5 5 giden beradbord üstünde 6. deliğe giden o siyah kabloyu çözemedim ki öbür derslere geçeyim.
    Hiç bilmediğim belli olmuştur. heralde 🙂
    lütfen yardım..

    • Arduino Uno üzerinde 6 adet analog giriş bulunduğundan dolayı, ek bir donanım kullanmadan en fazla 6 adet kullanabilirsiniz.

  5. Cümleten hayırlı akşamlar.
    12-24v aku ile 12v ledi, ldr ile gece yanip gündüz sönecek sekilde, arduino suz nasil yapariz acaba saygılar.

  6. Merhaba ben mimarlık yüksek lisans öğrencisiyim. Pencerelerde güneşin geliş yoğunluğuna bağlı olarak açılıp kapanabilen bir cephe tasarımı yaptım. Çok güneş geldiğinde kapanıyor. Akşamüstü açılıyor gibi. Bunu Arduino ile bir ışık sensörüne bağlayıp güneş geliş açısına göre otomatik kontrol elde etmek istiyorum. Bunu nasıl yapabilirim?

  7. Merhaba ben mimarlık yüksek lisans öğrencisiyim. Pencerelerde güneşin geliş yoğunluğuna bağlı olarak açılıp kapanabilen bir cephe tasarımı yaptım. Çok güneş geldiğinde kapanıyor. Akşamüstü açılıyor gibi. Bunu Arduino ile bir ışık sensörüne bağlayıp güneş geliş açısına göre otomatik kontrol elde etmek istiyorum. Bunu nasıl yapabilirim?

  8. Merhaba, Arduino -Ldr ile 2 ledi kontol etmek istiyorum. Örneğin; yeşil led sürekli açık kırmızı led kapalı olacak. Ldr ışık almadığında
    Yeşil led sönecek kırmızı led yanacak. Bunu arduino ile nasıl yapabilirim?

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz