Merhaba genç mucitler! Akşam olup hava karardığında sokak lambalarının kendi kendine nasıl yandığını hiç merak ettiniz mi? İçlerinde sihir yok, sadece minik bir "göz" var! Bu gözün adı LDR, yani ışığa duyarlı direnç. Bugün laboratuvarımızda Arduino'muzu ve LDR sensörümüzü kullanarak, tıpkı sokak lambaları gibi hava karardığında otomatik olarak yanan kendi "Akıllı Gece Lambamızı" yapacağız. Işıkları kapatmaya hazırsanız, projeye başlıyoruz!
Gerekli malzemeler
- 1 adet Arduino Uno
- 1 adet Breadboard (Devre tahtası)
- 1 adet LDR (Işık Sensörü / Işığa Duyarlı Direnç)
- 1 adet 10k Ohm Direnç (LDR'nin değerini Arduino'ya doğru okutmak için çok önemli!)
- 1 adet LED (İstediğiniz renk)
- 1 adet 330 Ohm Direnç (LED'imizin bozulmasını engellemek için)
- Yeteri kadar Erkek-Erkek Jumper Kablo
Adım adım yapım
1. 1. Bölüm
İlk olarak projemizin "gözü" olan LDR sensörünü breadboard üzerine yerleştirin. LDR'nin bacaklarının artı veya eksi (yön) farkı yoktur, bu yüzden istediğiniz gibi takabilirsiniz.
2. 2. Bölüm
LDR'nin bir bacağına Arduino'dan gelen 5V gücünü bağlayın.
3. 3. Bölüm
LDR'nin diğer bacağına ise 10k Ohm direncimizin bir ucunu bağlayın. Direncin boşta kalan diğer ucunu Arduino'nun GND (eksi) pinine götürün.
4. 4. Bölüm
Şimdi LDR'nin ışık bilgisini Arduino'ya göndereceği kabloyu bağlayacağız! Tam 10k direnç ile LDR'nin birleştiği aynı noktadan bir kablo çıkarın ve Arduino'nun A0 (Analog 0) pinine bağlayın. Sensörümüz hazır!
5. 5. Bölüm
Sıra geldi lambamıza (LED). LED'inizin uzun bacağını (artı) breadboard'a takın ve bu bacağa Arduino'nun 13 numaralı pininden bir kablo çekin. (İsterseniz bu araya 330 Ohm direnç de ekleyebilirsiniz).
6. 6. Bölüm
LED'inizin kısa bacağını (eksi) ise doğrudan Arduino'nun GND pinine bağlayın.
7. 7. Bölüm
Bağlantılarımız bitti! Aşağıdaki kodu Arduino programınıza yükleyin. Yükleme bittikten sonra parmağınızla LDR'nin üzerini kapatarak karanlık yapın. Gördünüz mü? Karanlık çökünce lambanız yandı, parmağınızı çektiğinizde (aydınlıkta) lamba geri söndü!
8. 8. Bölüm
İpucu: Eğer lambanız çok erken veya çok geç yanıyorsa, koddaki esikDegeri = 400 sayısını küçültüp büyüterek sensörün hassasiyetini değiştirebilirsiniz.
Proje kodu
Kodu Arduino IDE'ye aktarın. Pin numaralarını kendi devrenize göre kontrol ettikten sonra karta yükleyin.
const int ledPini = 13;
const int ldrPini = A0;
const int esikDegeri = 400; // Karanlık seviyesi (Bu sayıyı değiştirerek hassasiyeti ayarlayabilirsiniz)
void setup() {
pinMode(ledPini, OUTPUT);
// Işık değerlerini bilgisayarda görebilmek için haberleşmeyi başlatıyoruz
Serial.begin(9600);
}
void loop() {
// LDR sensöründen gelen ışık seviyesini okuyoruz
int isikSeviyesi = analogRead(ldrPini);
// Okunan değeri bilgisayar ekranına (Seri Port Ekranı) yazdırıyoruz
Serial.println(isikSeviyesi);
// Eğer ışık seviyesi belirlediğimiz eşik değerinden (400) küçükse (yani hava karanlıksa)
if (isikSeviyesi < esikDegeri) {
digitalWrite(ledPini, HIGH); // LED'i YAK (Gece lambası çalışsın)
}
// Işık seviyesi 400'den büyükse (yani hava aydınlıksa)
else {
digitalWrite(ledPini, LOW); // LED'i SÖNDÜR (Gece lambası kapansın)
}
// Arduino'nun kafası karışmasın diye çok kısa bir mola veriyoruz
delay(100);
}

Yorumlar
İlk yorumu siz yazın.