Ham LDR kullanırken direnç hesaplarıyla uğraşırdık. LDR Sensör Modülü ise tak-çalıştır yapısındadır. Üzerindeki akıllı çip sayesinde hem ışık şiddetini ölçer hem de belirlediğiniz sınır aşılınca otomatik tetikleme yapar.
1. LM393 Işık Sensör Modülü
Bu modül, ham LDR'nin yanına bir karşılaştırıcı (Comparator) çip ve hassasiyet ayarı için bir potansiyometre eklenmiş halidir.
2. AO ve DO Arasındaki Fark
AO (Analog Output)
Tıpkı ham LDR gibi çalışır. Ortamdaki ışık miktarını 0 ile 1023 arasında sayısal bir değer olarak verir.
Hassas ölçüm için bunu kullanın.DO (Digital Output)
Sadece 0 veya 1 verir. Ortam belirlediğiniz seviyeden karanlıksa "1", aydınlıksa "0" yollar. Eşik değerini mavi potansiyometre ile tornavida kullanarak ayarlarsınız.
Basit tetikleme için bunu kullanın.3. Arduino Bağlantısı ve Yazılım
Hem analog hem dijital pini aynı anda okuyarak farkı görelim.
- VCC ➔ 5V
- GND ➔ GND
- AO ➔ A0 (Analog Okuma)
- DO ➔ D3 (Dijital Okuma)
LDR_Modul.ino
C++
const int analogPin = A0; // Hassas ölçüm pini const int digitalPin = 3; // Eşik tetikleme pini void setup() { pinMode(digitalPin, INPUT); Serial.begin(9600); } void loop() { // 1. Değerleri Oku int isikMiktari = analogRead(analogPin); int esikDurumu = digitalRead(digitalPin); // 2. Ekrana Yaz Serial.print("Isik (0-1023): "); Serial.print(isikMiktari); Serial.print(" | Tetik Durumu: "); if(esikDurumu == HIGH) { Serial.println("KARANLIK! (Alarm)"); } else { Serial.println("Normal"); } delay(500); }
4. Mavi Trimpot Ayarı
🔧
Donanımsal Kalibrasyon:
- Kodu yükleyin ve modülü çalıştırın.
- Ortamı istediğiniz karanlık seviyesine getirin (Elinizle kapatın).
- Modülün üzerindeki DO LED'i (Genelde yeşil) yanana kadar mavi vidayı tornavida ile çevirin.
- Artık sensör bu karanlık seviyesini hafızasına aldı. Arduino'ya kod yazmadan da bu noktada tetik verecektir.