Temelelektronik.info

Arduino RF Kumanda Devresi - rf alıcı, rf verici, relay, arduino mini

Devre


Bu devre Eylül ayından itibaren 1696  defa ziyaret edilmiştir.

Açıklama

Kullanılan Elemanlar:

1.RF Alıcı Modül: Verici bilgi gönderdiği zaman bu bilgiyi alıp Arduino'ya gönderen modüldür. 3 adet bacağı vardır. Bunlar + , - ve bilgi ucu.

2.RF Verici Modül: Arduino'dan basılan tuşa göre karşı tarafa radyo frekansıyla sayısal bilgi gönderen modül. 3 adet bacağı vardır. Bunlar + , - ve bilgi ucu.

***Not: Alıcı modül verici modülden daha büyüktür. Verici modül kare şeklindeyken , alıcı modül dikdörtgen şeklindedir.

3.Arduino Mini: En küçük arduino modülüdür. Devrenin beynini oluşturur. Arduino Mini'nin bilgisayara bağlanabilmesi için USB dönüştürücü kullanılmalıdır. 

4.FT232 USB Dönüştürücü: Arduino mini'yi bilgisayara bağlayabilmek için kullanılır.

5. Röle Modülü:5 Volt gerilimle 220 Voltluk cihazlar kontrol edileceği zaman kullanılır. Bizim projemizde kumandayla lamba yakılıp söndürülebilir. 

Devrenin Çalışması: Verici devrede 2 adet buton bulunmaktadır. Bu butonlara basıldığında RF modüle 5592512 yada 125 sayısı modülden gönderilir. 

Alıcı devresi bu bilgileri aldığında ona göre Led'i yakar ya da söndürür. İsteğe göre röle modülü kullanılarak 220 Voltluk Lamba'da yakılıp söndürülebilir.


______________________________________________________________
Verici Devrenin Kodları:

#include <RCSwitch.h>

RCSwitch mySwitch = RCSwitch(); 
void setup()
{
pinMode(2, INPUT);
pinMode(3, INPUT);


//starts the serial communication for debugging purpose
Serial.begin(9600);
//initialize the 433mhz transmitter
// Transmitter is connected to Arduino Pin #10 
mySwitch.enableTransmit(10);
// Optional set pulse length.
mySwitch.setPulseLength(504); 
// Optional set protocol (default is 1, will work for most outlets)
// mySwitch.setProtocol(2);
// Optional set number of transmission repetitions.
mySwitch.setRepeatTransmit(30); 
}

void loop()
{
if(digitalRead(2)==0)


mySwitch.send(5592512, 24);
delay(10);

}



if(digitalRead(3)==0)
{

mySwitch.send(125, 24);
delay(10); 



}

__________________________________________________________________________


Alıcı Devrenin Kodları:




#include <RCSwitch.h>

RCSwitch mySwitch = RCSwitch();
unsigned long alinan;
void setup() {

pinMode(3,OUTPUT);
Serial.begin(9600);
mySwitch.enableReceive(0); // Receiver on inerrupt 0 => that is pin #2
}

void loop() {

if (mySwitch.available()) 
{
alinan=mySwitch.getReceivedValue();
Serial.println(alinan);

if(alinan==5592512)
{
digitalWrite(3,1);
}


if(alinan==125)
{
digitalWrite(3,0);
}

mySwitch.resetAvailable();
}
}