Lazer alarm projesi, bir lazer modülünün ışınını karşıdaki LDR'ye düşürür; ışın kesilince LDR'nin direnci artar, Arduino'nun A0 girişindeki gerilim düşer ve buzzer siren çalar. Alarm bir butonla kurulup susturulur. Projede yalnızca en çok 5 mW gücünde kırmızı lazer modülü kullanılır ve ışın kesinlikle göze tutulmaz.
Filmlerdeki kasa soygunu sahnelerinde görünmez ışın ağları vardır; ışına değen anda alarm çalar. Bu projede aynı fikri basit ve güvenli biçimde kuruyoruz: düşük güçlü bir lazer modülü, bir LDR ve Arduino Uno ile ışın kesilince öten bir alarm. Proje ışığın yayılması, direnç ve gerilim bölücü konularını birleştirir; ortaokul, lise ve TÜBİTAK 4006 projeleri için uygundur.
Lazer alarm nedir?
Lazer alarm, bir lazer ışınının bir ışık sensörüne sürekli düştüğü, ışın bir cisim tarafından kesildiğinde sensördeki ışık azaldığı için uyarı veren bir güvenlik devresidir. Gerçek sistemlerde çoğunlukla gözle görünmeyen kızılötesi ışın kullanılır.
Bizim projemizde ışık sensörü olarak LDR kullanıyoruz. LDR'nin direnci ışık arttıkça düşer: lazerin parlak noktası düştüğünde direnci birkaç yüz ohm ile birkaç kiloohm arasına iner, karanlıkta ise onlarca kiloohma çıkar. LDR'nin yapısını LDR ışık sensörü yazısında anlattık.
Hangi malzemeler gerekir?
Lazer alarm için Arduino Uno, 5 mW lazer modülü, bir LDR, 10 kΩ direnç, pasif buzzer, LED, 220 Ω direnç ve bir buton yeterlidir.
Malzeme listesi
| Malzeme | Adet | Ne işe yarar? |
|---|---|---|
| Arduino Uno R3 (CH340, USB kablolu) | 1 | Işığı ölçer, alarmı yönetir |
| Lazer sensör modülü, 650 nm, 5V, 5 mW | 1 | Kırmızı ışın kaynağı |
| 5 mm LDR ışık sensörü | 1 | Işının düşüp düşmediğini algılar |
| 10K 1/4W direnç | 1 | LDR ile gerilim bölücü |
| Pasif buzzer 17 mm | 1 | Siren sesi |
| Kırmızı LED + 220 Ω direnç | 1 | Görsel uyarı |
| 6x6 mm tact buton | 1 | Alarmı kurar ve susturur |
| Breadboard, jumper kablolar, siyah pipet | 1 | Bağlantılar ve LDR gölgeliği |
Devre nasıl bağlanır?
LDR 5V ile A0 arasına, 10 kΩ direnç A0 ile GND arasına bağlanır; lazer modülü doğrudan 5V ve GND'den beslenir, buzzer D8'e, LED D7'ye, buton D2'ye gider.
- LDR'nin bir bacağını 5V'a, diğer bacağını A0'a bağlayın. 10 kΩ direnci A0 ile GND arasına takın. Bu iki parça bir gerilim bölücü oluşturur.
- Lazer modülü: eksi (−) ucu GND'ye, artı ya da S ucu 5V'a. Uçların adını kartın üzerindeki yazıdan kontrol edin.
- Pasif buzzer: artı ucu D8'e, diğer ucu GND'ye.
- LED: uzun bacak 220 Ω direnç üzerinden D7'ye, kısa bacak GND'ye.
- Buton: bir ucu D2'ye, çaprazındaki ucu GND'ye.
- LDR'nin üzerine 3-5 cm uzunluğunda siyah bir pipet ya da boru geçirin. Oda ışığı azalır, yalnızca lazer ışını LDR'ye ulaşır.
- Lazeri bel hizasının altında, örneğin bir kapı aralığında yerden 20-30 cm yükseğe yerleştirin ve noktayı pipetin içine hizalayın.
LDR ışığı nasıl ölçer?
LDR ve 10 kΩ direnç bir gerilim bölücü oluşturur: ışık arttıkça LDR'nin direnci düşer ve A0'daki değer yükselir. Arduino A0'ı 0-1023 arası bir sayı olarak okur. Değer şu formülle hesaplanır: A0 = 1023 × 10 kΩ / (10 kΩ + LDR direnci).
| Durum (örnek) | LDR direnci | A0 değeri | A0 gerilimi |
|---|---|---|---|
| Lazer noktası LDR'de | 1 kΩ | 930 | 4,55 V |
| Aydınlık oda, pipetsiz | 10 kΩ | 512 | 2,50 V |
| Işın kesik, pipetli | 50 kΩ | 171 | 0,83 V |
Tablodaki direnç değerleri örnektir; gerçek değerler LDR'ye ve ortam ışığına göre değişir. Bu yüzden kod eşiği sabit yazmaz; alarm kurulurken ölçtüğü ışın değerinin yüzde 75'ini eşik kabul eder.
Lazer alarm kodu nasıl çalışır?
Butona basıldığında kod ışının o anki değerini ölçüp eşiği hesaplar ve alarmı kurar; A0 değeri eşiğin altına düşerse alarm başlar ve butona yeniden basılana kadar susmaz.
const byte LDR = A0, BUZZER = 8, LED = 7, BUTON = 2;
const float ORAN = 0.75; // ışın değerinin %75'inin altı = ışın kesildi
int esik = 0;
bool kurulu = false, alarm = false;
int olc() { // 10 okumanın ortalaması
long toplam = 0;
for (byte i = 0; i < 10; i++) { toplam += analogRead(LDR); delay(2); }
return toplam / 10;
}
void setup() {
pinMode(LED, OUTPUT);
pinMode(BUTON, INPUT_PULLUP);
Serial.begin(9600);
}
void loop() {
int deger = olc();
if (digitalRead(BUTON) == LOW) { // buton: kur ya da kapat
if (!kurulu) {
if (deger < 400) tone(BUZZER, 300, 500); // ışın LDR'ye düşmüyor
else { esik = deger * ORAN; kurulu = true; tone(BUZZER, 1500, 100); }
} else {
kurulu = false; alarm = false;
noTone(BUZZER);
digitalWrite(LED, LOW);
}
delay(300);
while (digitalRead(BUTON) == LOW); // bırakılmasını bekle
}
if (kurulu && !alarm && deger < esik) alarm = true; // ışın kesildi
if (alarm) { // iki tonlu siren
tone(BUZZER, (millis() / 300) % 2 ? 1800 : 1200);
digitalWrite(LED, (millis() / 150) % 2);
}
Serial.print(deger);
Serial.print(" esik: ");
Serial.println(esik);
delay(20);
}
Alarm kilitlenen türdendir: ışın yeniden LDR'ye düşse bile siren devam eder. Böylece biri ışından hızla geçse de alarm kaçmaz. Araçlar menüsündeki Seri Çizici ile A0 değerinin ışın kesildiğinde nasıl düştüğünü grafik olarak izleyebilirsiniz.
Lazer güvenliği için nelere dikkat edilmeli?
Lazer ışını asla göze, insanlara ya da hayvanlara tutulmamalıdır; 5 mW kırmızı lazer modülleri 3R sınıfındadır ve doğrudan göze gelen ışın göz hasarına yol açabilir.
- Yalnızca en çok 5 mW gücünde lazer modülü kullanın. Odaklanabilir 200 mW gibi güçlü modüller bu proje için kesinlikle uygun değildir.
- Işını göz hizasının altında, bel ya da diz yüksekliğinde kurun ve ışının yolunu düz bir duvarda bitirin.
- Işını ayna, cam, metal gibi parlak yüzeylere yöneltmeyin; yansıyan ışın da tehlikelidir.
- Lazeri pencereden dışarıya, araçlara ve uçaklara asla tutmayın.
- Devreyi USB'den ya da en çok 12V'luk bir adaptörden besleyin; 220V şebeke elektriğine hiçbir şey bağlamayın.
- Projeyi öğretmen ya da yetişkin gözetiminde kurun; kullanmadığınızda lazerin enerjisini kesin.
Ödevinizi nasıl sunarsınız?
Ödevinizi, ışını bir kapı maketinin önüne kurup elinizle ya da bir kitapla keserek sunabilirsiniz; jürinin yüzüne gelmeyecek bir yükseklik seçin.
- Problem: "Bir geçidin izinsiz kullanıldığını kablosuz ve temassız nasıl anlarız?"
- Gösteri: Alarmı kurun, ışını kesin, sireni butonla susturun.
- Ölçüm: Seri Çizici'de ışınlı ve ışınsız A0 değerlerini gösterip gerilim bölücü formülüyle karşılaştırın.
- Rapor: Bağlantı şemasını, LDR tablosunu ve lazer güvenliği kurallarını ekleyin.
- Geliştirme: Hareket sensörlü bir sürüm için hırsız alarmı projesi yazısına bakabilir, telefona bildirim göndermeyi önerebilirsiniz.
Sık sorulan sorular
Alarm kendiliğinden çalıyorsa ne yapmalıyım?
Kendiliğinden çalan alarmın en sık nedeni, lazer noktasının LDR'nin kenarına düşmesi ya da masanın sarsılmasıyla kaymasıdır. Lazeri ve LDR'yi sağlam bir yüzeye bantlayın, noktayı LDR'nin tam ortasına hizalayın. Sorun sürerse koddaki ORAN değerini 0,75'ten 0,6'ya düşürün; alarm ancak daha büyük bir ışık kaybında çalar.
Lazer ışını ne kadar uzağa kurulabilir?
Oda içinde birkaç metre mesafe sorunsuz çalışır. Mesafe arttıkça nokta büyür ve sönükleşir, hizalamak da zorlaşır. Lazer modülünün merceği ayarlanabiliyorsa noktayı küçültün. Uzun mesafede LDR'nin önüne geçirdiğiniz pipeti biraz kısaltmak ışını yakalamayı kolaylaştırır.
Işın görünmez yapılabilir mi?
Kırmızı lazer ışını havada değil, yalnızca çarptığı yerde nokta olarak görünür; toz ya da duman yoksa ışın çizgisi zor fark edilir. Tamamen görünmez bir ışın için kızılötesi verici-alıcı çiftleri kullanılır. Kızılötesi lazerler gözle görülmediği için öğrenci projelerinde kullanılmamalıdır.
LDR yerine hazır LDR modülü kullanılabilir mi?
Evet, LM393 karşılaştırıcılı LDR modülleri de çalışır. Modülün dijital çıkışı ışık eşiğe göre HIGH ya da LOW verir; eşik kart üzerindeki trimpotla ayarlanır. Bu durumda kodda analogRead yerine digitalRead kullanılır, ama ışık değerini sayı olarak göremezsiniz.
Özet
- Lazer alarm, ışın kesildiğinde LDR'deki ışığın azalmasını algılayıp siren çalan bir Arduino projesidir.
- Bağlantı: LDR 5V ile A0 arası, 10 kΩ A0 ile GND arası; buzzer D8, LED D7, buton D2.
- Eşik, alarm kurulurken ölçülen ışın değerinin yüzde 75'idir; siren butonla susturulur.
- LDR'ye siyah pipet geçirmek oda ışığını keser ve alarmı güvenilir yapar.
- Yalnızca en çok 5 mW lazer kullanılır; ışın asla göze, aynaya ya da insanlara tutulmaz.
