Lazerli Alarm Sistemi

gerekli malzemeler;

1 x Arduino Uno (ben Uno kullandım fakat diğer Arduino çeşitleri de neredeyse hiçbir değişiklik yapmadan kullanılabilir)

1 x Arduino Türkiye ProtoShield (veya herhangi bir breadboard)

1 x Karakter LCD

1 x Potansiyometre (ayarlı direnç)

1 x LDR (ışığa duyarlı direnç)

1 x 10K Direnç

1 x Mantar Led

1 x Buzzer

1 x Lazer Pointer (oyuncakçılarda satılan bildiğimiz lazer)

Projenin gerçekleştirilmesi için öncelikle breadboarda devrenin kurulması gerekmektedir. Bunun içinFritzing ile oluşturduğum görsel yardımcı olabilir.

lazerli alarm

Görselde de görüldüğü üzere devremizde buzzer yok. Bir engelle karşılaştığı zaman led yakarak haber veriyor. İstendiği takdirde led yerine buzzer veya başka bir dijital pine de buzzer bağlanabilir. Bunun için yazılımımızda led için yaptıklarımızın aynısını buzzer için de yapmanız gerekmektedir.

LCD kullanımına şu adreste Kaan Ceyhan arkadaşımız anlattığı için değinmeyeceğim.

Devremizi kurduktan sonra sıra geldi programımızı(sketch) yazmaya.

#include <LiquidCrystal.h> // LCD kütüphane kodu ekleniyor
#define LED     13  // Uyarı ledinin bağlı olduğu dijital pin
#define BUZZER  2  // Uyarı buzzerının bağlı olduğu dijital pin
LiquidCrystal lcd(7, 8, 9, 10, 11, 12); // LCD bağlantılarının Arduinomuzda bağlı olduğu pinler
const int analogInPin = A5;  // LDR'nin bağlı olduğu analog pin

int sensorValue = 0; // LDR'den aldığımız değeri tutacak olan değişkenimizin değerini sıfırlıyoruz

void setup() {

  lcd.begin(16, 2); // LCD'nin satır ve sütun sayısı
  pinMode(13, OUTPUT); //LED'in pinini çıkış olarak ayarlıyoruz
  pinMode(8,OUTPUT); //Buzzer'ın pinini çıkış olarak ayarlıyoruz

}

void loop() {

  lcd.clear(); //LCD'deki karakterleri temizliyoruz
  sensorValue = analogRead(analogInPin);  // Analog pinimizden gelen LDR değerini okuyup değişkenimizi atıyoruz

  lcd.setCursor(0,0);
  lcd.print("Sensor:");
  lcd.setCursor(8, 0);
  lcd.print(sensorValue);
  lcd.setCursor(0,1);
  lcd.print("LED & BUZZER:");
  if (sensorValue <= 840){
    digitalWrite(LED,LOW);
    digitalWrite(BUZZER,LOW);
    lcd.setCursor(13,1);
    lcd.print("OFF");
  }
  else{
    digitalWrite(LED,HIGH);
    digitalWrite(BUZZER,HIGH);
    lcd.setCursor(13,1);
    lcd.print("ON");
  }
  delay(100);
}

Sketchimizin yaptığı iş kısaca şu;

LDR ışığa duyarlı bir direnç olduğundan ışık şiddetiyle ters orantılı olarak bize bir direnç gösterir. Yani ışık şiddeti arttıkça direnç azalır, ışık şiddeti azaldıkça direnç artar.

if (sensorValue <= 840){ ” satırında gördüğünüz 840 değeri benim devreyi test ettiğim ortamdaki ışık şiddetine göre optimize edilmiş bir değerdir. Normalde LDR’ye lazer tutulduğunda sensör değerimiz 900 civarında görünmektedir, minimum okuduğum değer 840 olduğundan ben bu değerin altına düştüğünde sistemin alarm vermesini istediğimden bu değeri seçtim. Siz ortama göre bu değeri kalibre edebilirsiniz.

Sistemin kurulabilmesi için lazeri harici bir pil veya Arduinonun besleme pinlerinden besleyebilirsiniz.
Hepinize kolay gelsin !!!

Lazerli Alarm Sistemi” üzerine 3 yorum

  1. hocam ben arduinoda yeniyim ve lm 35 sensör ,lcd kullanarak dijital bir sensör yapmaya calişiyorum devreyi bağlıyorum lakin kod yükleyemiyorum arduino hata veriyor . sizden ricam aşağıda yazdığım koddaki hatalarımı bana söylermisiniz.
    #include
    float sicaklik,gerilim;
    int sensorPin=0;
    LiquidCrystal lcd(12,11,5,4,3,2);
    void setup(){
    lcd.begin(16,2);
    }
    void loop()
    {
    gerilim=analogRead(sensorPin);
    gerilim=(gerilim/1023)*5000;
    sicaklik=gerilim/10.0;
    lcd.setCursor(0,0);
    lcd.print(“Sicaklik:”);
    lcd.setCursor(0,1);
    lcd.print(sicaklik);
    delay(1000);
    }

    Liked by 1 kişi

    1. İlkin geç yazdığım için özür dilerim siteye giriş sifremi unuttmuştum şu an buna bakamam ama yorumunu sitede yayınlayım belki yardım eden olur bu sıralar çok iş olduğundan özür dilerim

      Beğen

Yorum bırakın