RFID Nedir?
Açılımı Radio Frequency Identification yani radyo frekansı ile tanımlamadır. RFID teknolojisi nesnelerin radyo dalgaları kullanılarak tanınması için kullanılan teknolojidir. Günlük hayatımızda toplu taşıma biletlerinde, işyeri ve okul girişlerindeki turnikelerde karşımıza sıklıkla çıkmaktadır. Arduino ile RFID projelerini incelediğimizde kapı kilidi, bir ortamda bulunan kişi sayısı bilgisinin alınması, bilgisayar oturum kilidi, alarm sistemi gibi projelerle sıklıkla karşılaşabilirsiniz. Kablosuz haberleşme teknolojileri ile ilgili daha fazla bilgi edinmek isterseniz, Kablosuz Haberleşme Teknolojileri yazımızı okuyabilirsiniz.
RFID Kart Okuyucular – RFID Kart Okuma Yazma İşlemi
Kullandığımız kartların kendilerine ait UID isimli bir numarası vardır. Bu numara, her kart için farklıdır. Okuyucumuza kartımızı veya anahtarlığımızı yaklaştırdığımızda bu numara okunarak işlem yapılır.
RC522 RFID modülü haricinde başka birçok RFID kart okuyucu modül piyasada bulunmaktadır. HZ-1050 RFID Kart okuyucu modülü 125 kHz frekansında çalışmaktadır. Arduino ve birçok mikro kontrolcü ile çalışabilir, Raspberry Pi ile rahatlıkla proje geliştirmek mümkündür. RDM6300 modülü ofis/ev güvenliği, kişisel kimlik ve erişim kontrolü, anti-sahtecilik ve üretim kontrol sistemleri gibi pek çok alanda kullanılmaktadır. Grove modülü ise 7 cm mesafeye kadar algılama yapabilen RFID modülüdür.
Sitemizdeki tüm RF kart okuyuculara ve kablosuz haberleşme sistemlerine buradanulaşabilirsiniz.
Arduino İle RC522 RFID Modül Kullanarak Kapı Kilidi Projesi Yapalım
Kart okuyucu devresini yaparken aynı zamanda RFID ile servo motor kontrolü uygulamasını da gerçekleştirmiş olacağız. Yani hem Arduino’nun RFID ile iletişimini öğreneceğiz hem de servo motor kullanarak algoritmamızı yazmış olacağız.
Gereken malzemeler:
- Arduino UNO
- Breadboard
- RC522 RFID NFC Kiti
- Servo motor
- Erkek-erkek jumper kablo
Devre şemamız şu şekilde:

Projeye Başlamadan Önce İndirmemiz Gereken RFID ve Servo Motor Kütüphaneleri
Bu adresten kartımızı çalıştırmamızda gerekli olan kütüphaneyi indirerek Arduino programının kurulu olduğu klasör altındaki libraries klasörüne MFRC522 ismiyle kaydediyoruz.
Arduino Kart Okuyucu devremiz için gerekli kodu aşağıdaki gibi yazıyoruz. Her bir satırda açıklamalar bulunuyor fakat projede bir sorun yaşarsanız yorum kısmından bildirebilirsiniz.
#include <spi.h> //SPI kütüphanemizi tanımlıyoruz.
#include <mfrc522.h> //MFRC522 kütüphanemizi tanımlıyoruz.
#include <servo.h> //Servo kütüphanemizi tanımlıyoruz
int RST_PIN = 9; //RC522 modülü reset pinini tanımlıyoruz.
int SS_PIN = 10; //RC522 modülü chip select pinini tanımlıyoruz.
int servoPin = 8; //Servo motor pinini tanımlıyoruz.
Servo motor; //Servo motor için değişken oluşturuyoruz.
MFRC522 rfid(SS_PIN, RST_PIN); //RC522 modülü ayarlarını yapıyoruz.
byte ID[4] = {
97,
76,
67,
9
}; //Yetkili kart ID'sini tanımlıyoruz.
void setup() {
motor.attach(servoPin); //Servo motor pinini motor değişkeni ile ilişkilendiriyoruz.
Serial.begin(9600); //Seri haberleşmeyi başlatıyoruz.
SPI.begin(); //SPI iletişimini başlatıyoruz.
rfid.PCD_Init(); //RC522 modülünü başlatıyoruz.
}
void loop() {
if (!rfid.PICC_IsNewCardPresent()) //Yeni kartın okunmasını bekliyoruz.
return;
if (!rfid.PICC_ReadCardSerial()) //Kart okunmadığı zaman bekliyoruz.
return;
if (rfid.uid.uidByte[0] == ID[0] && //Okunan kart ID'si ile ID değişkenini karşılaştırıyoruz.
rfid.uid.uidByte[1] == ID[1] &&
rfid.uid.uidByte[2] == ID[2] &&
rfid.uid.uidByte[3] == ID[3]) {
Serial.println("Kapi acildi");
ekranaYazdir();
motor.write(180); //Servo motoru 180 dereceye getiriyoruz.
delay(3000);
motor.write(0); //Servo motoru 0 dereceye getiriyoruz.
delay(1000);
} else { //Yetkisiz girişte içerideki komutlar çalıştırılır.
Serial.println("Yetkisiz Kart");
ekranaYazdir();
}
rfid.PICC_HaltA();
}
void ekranaYazdir() {
Serial.print("ID Numarasi: ");
for (int sayac = 0; sayac < 4; sayac++) {
Serial.print(rfid.uid.uidByte[sayac]);
Serial.print(" ");
}
Serial.println("");
}
RFID ile yaptığımız bu projeden memnun kaldınız mı? Öyleyse kendinizi RFID protokolü konusunda daha çok geliştirebileceğiniz bir proje seti tavsiye ediyoruz. Arduino RFID Kit Seti ile servo motor haricinde LDR, yangın sensörü, ses sensörü, sıcaklık sensörü gibi birçok komponent kullanarak bilgi sinyali alarak step motor, LED, buzzer ve daha bir sürü aktüatör ile projeler yapabilirsiniz