Arduino ve Rc522 RFID Okuyucu ile Röle Kontrolü

Arduino ve Rc522 RFID Modül Kullanımı ile Röle Kontrolü

Arduino Uno ve Rc522 RFID Okuyucu ile Röle Kartı kullanarak kapı otomatiği devresi yapacağız.

Rc522 RFID Okuyucu Modül Nedir?

RFID, radyo frekansı tanımlama anlamına gelir. RFID, verileri kısa mesafelerde aktarmak için elektromanyetik alanları kullanır. RFID ile kişileri tanımlamak, tanımlı olmayan kişilerin depo vb yerlere girmesini engellemek, giriş – çıkış saatlerini kayıt altında tutmak vb gibi bir çok işlem gerçekleştirilebilir.

 

Bir RFID sistemi şunları kullanır:

  • Tanımlanacak nesneye bağlı etiketler, bu örnekte bir anahtarlık ve bir elektromanyetik kartımız var. Her etiketin kendi kimliği (UID) vardır.

rc522 rfid okuyucu - 13.56mhz rfid kart

  • İki yönlü kablosuz alıcı-verici – okuyucu, etikete bir sinyal gönderir ve yanıtını okur.

rc522 rfid okuyucu modülü

Rc522 RFID Okuyucu Modül Özellikleri

  • Giriş voltajı: 3.3V
  • Frekans: 13,56 MHz
  • Bağlantı şekli SPI

Proje için gereken kütüphaneler ve kullanımı:

  1. Buradan modül için oluşturulan RFID kütüphanesini indirebilirsiniz.
  2. RFID kütüphanesini Arduino IDE’nize kurun
  3. Arduino IDE’nizi yeniden başlatın

 

Rc522 Arduino Pinout – Pin Bağlantısı Şeması:

Modül Pini Arduino Uno’ya kablolama
SDA Dijital 10
SCK Dijital 13
MOSI Dijital 11
MİSO Dijital 12
IRQ bağımsız
GND GND
RST Dijital 9
3.3V 3.3V

Dikkat: Bu cihazı 3,3V ile çalışır. Bu sebeple daha yüksek voltaj vermemeniz gerekir.

Röle kartının orta bacağını Arduino Uno da 7. Pine, VCC pinini 5V pinine, GND pinini de GND pinine bağlayabilirsiniz.

rc522-arduino-pinout

 

Bağlantıları şemaya uygun yaptıktan sonra kodumuzu Arduino Uno kartımıza yükleyip test edebiliriz. Unutmayın ki elinizdeki kart numaraları kod kısmında yer alanlardan farklı olduğu için önce onları okutup seri port ekranında gördükten sonra değiştirmeniz gerekir.

RC522 Modülü ile RFID Arduino Kodu aşağıdaki gibidir:

// Modül kütüphanesi ekleniyor

#include <SPI.h>
#include <MFRC522.h>

#define RST_PIN         9           // rst pini seçimi
#define SS_PIN          10          // ss pini seçimi

MFRC522 mfrc522(SS_PIN, RST_PIN);   // Create MFRC522 instance.

String read_rfid;                   // okunan rfis kart değişkeni

String ok_rfid_1="e199312d";        // 1. Kart numarası ( sizler kendi kart numaralarınızı girmelisiniz )

String ok_rfid_2="fbecb673";        //  2. Kart numarası  ( sizler kendi kart numaralarınızı girmelisiniz )

int lock = 7;                       // Röle pini

/*

* Kurulum yapılıyor

*/

void setup() {

Serial.begin(9600);         // seri iletişim ayarı

SPI.begin();                // SPI iletişim ayarı

mfrc522.PCD_Init();         // MFRC522 kart okuyucu ayarı



//Röle pini ayarı

pinMode(lock, OUTPUT);

}

/*

* İlk kart okuma kısmı bura da okunan kart numarasını 1. Ve 2. Kart olarak eklemeniz gereklidir.

*/

void dump_byte_array(byte *buffer, byte bufferSize) {

read_rfid="";

for (byte i = 0; i < bufferSize; i++) {

read_rfid=read_rfid + String(buffer[i], HEX);

}

}

void open_lock() {

//Kapı otomatiğini Röle yi 500 ms açık tut

digitalWrite(lock,HIGH);

delay(500);

digitalWrite(lock,LOW);

}



void loop() {

// kart oku

if ( ! mfrc522.PICC_IsNewCardPresent())

return;

// kart seçimi

if ( ! mfrc522.PICC_ReadCardSerial())

return;


dump_byte_array(mfrc522.uid.uidByte, mfrc522.uid.size);

Serial.println(read_rfid);

if (read_rfid==ok_rfid_1) {

//eğer kart numarası uyarsa röleyi çek

open_lock();

}

}

 

Bir sonraki yazımızda görüşmek üzere.

 

Likes:
3 1
Views:
7741
Article Categories:
ArduinoEğitim

All Comments

  • “” işaretleri kopyalanınca hata veriyor dikkat ediniz çözdüm…:) teşekkürler

    osman ateşli 15:37 Cevapla
    • Merhabalar, blog sayfamızdaki kodu kopyalayip kullanırken, unicode seçimi nedeniyle tırnak işareti “”
      Olarak çıkmış, kod içindeki tüm tırnak işaretlerini düzeltmeniz gerekiyor. Ayrıca eğer ikinci kartı da kullanacaksanız, en alta ikinci if döngüsünü girmelisiniz. Sizin için yeniden hazırladığımız kodu denemenizi rica ederiz.
      https://drive.google.com/file/d/1D8bIbtmn6TQpAHUIgvb4L9zGnQpx2Boc/view?usp=sharing

      Direnc.net 12:19 Cevapla
  • 2. kartı bi türlü yükleyemedim bi görsel ile açıklarsanız sevinirim.

    osman ateşli 16:20 Cevapla
  • Merhaba. buradaki “String ok_rfid_2=”fbecb673″; ” kodunu 3, 4, 5… şeklinde çoğaltarak istediğimiz kadar kart tanımlayabilir miyiz acaba? alt kısımda da ” if (read_rfid==ok_rfid_2) { open_lock(); } kısmını da çoğaltarak elbette. mesela üst kısımda diğerlerinin altına “String ok_rfid_3=”kzecb651″; ” yazsak, alt kısma da ” if (read_rfid==ok_rfid_3) { open_lock(); } yazsak, 3 kart birden eklemiş olur muyuz?

    bora 18:18 Cevapla
    • Merhaba,

      Aşağıda belirtilen kodları ikinci bir RFID Kart için gerekli pin, lock ve string değerleri yeniden eklemeniz gerekir. Kaç adet kart eklemek isterseniz bu işlemi o kadar tekrar etmelisiniz.

      #define RST_PIN         9           // rst pini seçimi
      #define SS_PIN          10          // ss pini seçimi

      MFRC522 mfrc522(SS_PIN, RST_PIN);   // Create MFRC522 instance.
      String read_rfid;                   // okunan rfis kart değişkeni
      String ok_rfid_1=”e199312d”;        // 1. Kart numarası ( sizler kendi kart numaralarınızı girmelisiniz )
      String ok_rfid_2=”fbecb673″;        //  2. Kart numarası  ( sizler kendi kart numaralarınızı girmelisiniz )
      int lock = 7;                       // Röle pini

      Direnc.net 11:41 Cevapla
  • Selam
    Bunu şu şekilde yapma şansınız var mı
    Kart okudu röle1 yazılan süre kadar çalıştı ve kapı açıldı
    Yazılan süre kadar bekledi ve röle 2 verilen süre kadar çalıştı ve kapı kapandı

    Ali 21:18 Cevapla
  • Slm arkadaşlar bu kodu kullanarak kapı otomatiğini kartla açmaya çalışıyorum 3 tane daha kartı tanıttım kodu Arduino ya gönderdikten sonra röle direkt açık geliyor röledeki yeşil ışık ve kırmızı ışık aynı anda yanıyor kartı okuttuğum zaman yeşil ışık sönüyor ve tekrar yanıyor

    Ahmet 21:59 Cevapla
  • Merhaba Role Kart Okutulduğunda Kapanıyor Ayrıca Kartı Basılı Tuttuğumda Aç Kapa Yapıyor Döngü Şeklinde

    Batu 01:11 Cevapla
  • Emeğinize sağlık, kod sorunsuz çalışıyor. 6 Kart tanımladım ve sorunsuz çalıştı. Çok teşekkürler.

    Mustafa 18:33 Cevapla

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir