Proje ne yapıyor?
Ortam karardıkça kendiliğinden yanan, aydınlandıkça sönen bir gece lambası yapıyoruz. Işığa duyarlı direnç (LDR) ortamdaki ışığı ölçer; Arduino da LED’in parlaklığını buna göre ayarlar. Oda tamamen karanlıkken LED en parlak hâlde yanar.
- Yaş grubu: 9 yaş ve üzeri
- Seviye: Başlangıç
- Süre: Yaklaşık 30 dakika
- Bu projede öğrenecekleriniz: Analog sensör okumak,
map()veconstrain()kullanmak, PWM ile LED parlaklığını ayarlamak
Malzeme listesi
| Malzeme | Adet |
|---|---|
| Arduino Uno (veya muadili) | 1 |
| LDR (ışığa duyarlı direnç) | 1 |
| 10 kΩ direnç | 1 |
| Beyaz veya sarı LED | 1 |
| 220 Ω direnç | 1 |
| Breadboard | 1 |
| Erkek-erkek jumper kablo | ~8 |
| USB kablo | 1 |
Devre bağlantıları

| Bileşen | Bağlantı | Arduino pini |
|---|---|---|
| LDR | Bir bacağı | 5V |
| LDR | Diğer bacağı | A0 |
| 10 kΩ direnç | A0 ile GND arasına | A0 / GND |
| LED | Uzun bacak (220 Ω üzerinden) | D9 |
| LED | Kısa bacak | GND |
LDR ve 10 kΩ direnç birlikte bir gerilim bölücü oluşturur. Işık arttıkça A0’daki değer yükselir.
Kodlar
// Arduino Akıllı Gece Lambası - ozandamci.comconst int ldrPin = A0;const int ledPin = 9; // PWM destekli pin (~ işaretli)// Kendi odanıza göre ayarlayın (Seri Port Ekranı'ndaki değerlere bakın)const int karanlikDeger = 200; // bu değerin altı "tam karanlık"const int aydinlikDeger = 700; // bu değerin üstü "yeterince aydınlık"void setup() { pinMode(ledPin, OUTPUT); Serial.begin(9600);}void loop() { int isik = analogRead(ldrPin); // 0 - 1023 arası Serial.print("Isik: "); Serial.println(isik); // Değeri sınırların içine al, sonra ters çevirerek parlaklığa dönüştür int sinirli = constrain(isik, karanlikDeger, aydinlikDeger); int parlaklik = map(sinirli, karanlikDeger, aydinlikDeger, 255, 0); analogWrite(ledPin, parlaklik); delay(100);}
Adım adım yapılışı
- LDR’yi takın. LDR’yi breadboard’a yerleştirin. Bir bacağını Arduino’nun 5V pinine bağlayın.
- Gerilim bölücüyü kurun. LDR’nin diğer bacağını A0’a bağlayın. Aynı noktaya 10 kΩ direnci takıp direncin diğer ucunu GND’ye bağlayın.
- LED’i takın. LED’in uzun bacağına 220 Ω direnç bağlayıp D9’a götürün; kısa bacağını GND’ye bağlayın.
- Kodu yükleyin. Arduino IDE’de kartınızı ve portu seçip Yükle‘ye basın.
- Kalibre edin. Araçlar → Seri Port Ekranı‘nı açın. Odanın normal ışığındaki değeri ve LDR’nin üstünü elinizle kapattığınızdaki değeri not edin. Bu iki sayıyı kodda
aydinlikDegervekaranlikDegeryerine yazıp kodu tekrar yükleyin. - Test edin. LDR’nin üstünü elinizle yavaşça kapatın. LED gittikçe parlamalı.
Sorun giderme
- LED hep tam parlak veya hep sönük: Kalibrasyon değerleri odanıza uymuyor olabilir; 5. adımı tekrarlayın.
- Tersine çalışıyor (aydınlıkta yanıyor): LDR ile 10 kΩ direncin yerleri değişmiş; LDR 5V tarafında olmalı.
Kendiniz deneyin
- LED yerine RGB LED kullanıp karanlıkta renk değiştiren bir lamba yapın.
- Lambayı karton veya 3D yazıcıyla basılmış bir kutunun içine yerleştirin.
Videolu anlatım
Projenin yapılışını adım adım videodan da izleyebilirsiniz. Diğer projeler için Arduino Projeleri oynatma listesine göz atın, yeni videolardan haberdar olmak için YouTube kanalıma abone olabilirsiniz.
Daha fazla proje için: Bu ve benzeri projeleri adım adım anlattığım Arduino Projeleri kitabıma göz atabilirsiniz.

Birisi “Arduino ile Akıllı Gece Lambası Yapımı – LDR Işık Sensörü (Malzemeler ve Kodlar)” üzerinde düşündü