LDR (Işık Sensörü) ve Lazer Kullanılarak Yapılan Hırsızlık Alarmı

LDR (Işık Sensörü) ve Lazer Kullanılarak Yapılan Hırsızlık Alarmı

LDR (Işık Sensörü) ve Lazer Kullanılarak Yapılan Hırsızlık Alarmı

IRremote kütüphanesinin yeni versiyonuna göre ayarlanmıştır. (Versiyon numarası : 4.3.1). Sisteminizde yüklü kütüphane eski ise güncelleyiniz.

Lazer ışını ışık sensörünün (ldr) üzerine geldiği süre boyunca alarm sessizdedir. Lazer ile ldr arasına bir cisim girdiğinde veya ldr üzerine düşen lazer ışını kesildiğinde alarm çalmaktadır. Alarmı kapatmak için lazer ışınının tekrar ldr üzerine gelmesi ve kumanda ile bir kez kapatma tuşuna basılması gerekmektedir. Böylece alarm tekrar devreye girecektir. Aşağıdaki kodlarda bulunan 64 sayısı kumandada bulunan tuşun kodudur.

#include <IRremote.hpp> 

int aliciPini=7;
int led1Pin=9;
int led2Pin=10;
int buzzerPin=11;
int alarm=0;

void setup()
{
  IrReceiver.begin(aliciPini, true);
  printActiveIRProtocols(&Serial);
  pinMode(led1Pin,OUTPUT);
  pinMode(led2Pin,OUTPUT);
  pinMode(buzzerPin,OUTPUT); 
  pinMode(aliciPini,INPUT);
  pinMode(A0,INPUT);
  Serial.begin(9600);
}
void loop()
{
  if(analogRead(A0)<300)
  {
    alarm=1;
  }
  if (IrReceiver.decode()) 
  {  
    IrReceiver.resume();
    int kumandaKodu = IrReceiver.decodedIRData.command;
    Serial.println(kumandaKodu); //alarmı kapatan kumanda tuşunun kodunu öğrenmek için kullanabilirsiniz.
    if(kumandaKodu == 64)
    {
      alarm=0;
    }
  }   
  if(alarm==1)
  {
    digitalWrite(led1Pin,HIGH); 
    digitalWrite(buzzerPin,HIGH);
    digitalWrite(led2Pin,LOW);
  }
  else
  { 
    digitalWrite(led1Pin,LOW); 
    digitalWrite(buzzerPin,LOW); 
    digitalWrite(led2Pin,HIGH);
  }
}