Bilgiler > Otomatik Kapı ve Aydınlatma Program Kodları



Otomatik Kapı ve Aydınlatma Program Kodları


#include "SoftwareSerial.h"
#include "TimerOne.h"
#include "RCSwitch.h"
RCSwitch mySwitch = RCSwitch();
int data;
int led=13;
int darkness=0;
int role=5;

SoftwareSerial mySerial(10, 11); // RX, TX
int sayac=0;
void setup()
{
isiktest();
mySerial.begin(9600);
pinMode(led,OUTPUT);
pinMode(role,OUTPUT);
Serial.begin(19200);
digitalWrite(led,0);
Timer1.initialize(100000); // set a timer of length 100000 microseconds (or 0.1 sec - or 10Hz => the led will blink 5 times, 5 cycles of on-and-off, per second)
Timer1.attachInterrupt( timerIsr );
mySwitch.enableTransmit(2);
mySwitch.setPulseLength(504);
mySwitch.setRepeatTransmit(10);

}
void loop() {


if (mySerial.available())
{
data = mySerial.read();
if(data!=0)
Serial.println(data);

if(data==1) //istiklal marşı başlat/ durdur
mars();

// kapıyı aç
if(data==2)
ac();

// kapıyı kapat
if(data==3)
kapat();

// kapıyı durdur
if(data==4)
durdur();

}

}



void kapat()
{
durdur();
mySwitch.send(22146, 24);//kapat
Serial.println(22146);
delay(1);
sayac=0;
digitalWrite(led,LOW);
}

void ac()
{
durdur();
mySwitch.send(22145, 24);//ac
Serial.println(22145);
delay(1);
sayac=0;
digitalWrite(led,HIGH);
}

void durdur()
{
mySwitch.send(22148, 24);
Serial.println(22148);
delay(750);
sayac=0;
}
void mars()
{
mySwitch.send(15977475, 24);
Serial.println(15977475);
delay(1);
}
void isiktest()
{
darkness=analogRead(A6);
Serial.println(darkness);
if(darkness<800)
{
digitalWrite(role,LOW);
}
if(darkness>950)
{
digitalWrite(role,HIGH);
}
}


//5 dakika da bir kapıyı kapat. Kapının açık kalmasını engelle
void timerIsr()
{
sayac++;
if(sayac>3000)//5 dakikada bir isigi test et ve kapiyi kapatma kodu gonder
{
isiktest(); //isik miktarini test et
kapat(); // Kapıyı kapat
sayac=0;
}
}

Devre:http://www.temelelektronik.inf....aspx?devre=731




Kaynak: Çoğunlukla Ekşisözlük ve Wikipedia
 
sonraki bilgi:      Siroz Belirtileri
önceki bilgi:       Öğretmen Atama ve Yer Değiştirme Yönetmeliği
 
 
Bu sayfaya 388  defa bakıldı