Arduino İle RFID Okuyucu Yapımı (Görsel Anlatım)

sokratınpelerini

Katılımcı Üye
8 Ağu 2022
334
370
Susurluk
a3b2jeo.png

9axs0ec.png

Selamlar,
Projeniz, Arduino ve RFID teknolojisinin birleşimiyle oluşturulan bir otomasyon projesi olarak dikkat çekiyor.

Bu proje sayesinde günlük yaşamda kullanılan geleneksel anahtar yerine RFID etiketleri kullanarak kapı girişini akıllıca yönetebilirsiniz.
RFID etiketleri, radyo frekansıyla tanıma sağlayan küçük cihazlardır.
Projeniz, bu etiketleri tanıyan bir okuyucu modülünü Arduino platformu üzerinde çalıştırarak kapı erişimini kontrol etmektedir.
Şimdi, projenizi anlatmadan önce Arduino ve ilgili konular hakkında temel bilgiler sunalım:

2j8xiwk.png


Arduino Nedir?
Arduino, hobi elektroniği ve prototipleme için kullanılan açık kaynaklı bir platformdur.

Mikrodenetleyiciler temel alınarak geliştirilen bu platform, programlanabilir kartlar ve geniş bir sensör/aktüatör yelpazesi ile donatılmıştır.
Projeleri kolayca oluşturmayı ve programlamayı sağlayan Arduino, hem acemi hem de deneyimli kullanıcılar için uygun bir seçenektir.

tl8v5a2.jpg


Arduino Çeşitleri Nelerdir?
Arduino platformu, çeşitli modeller ve varyasyonlarla gelir. En yaygın kullanılan modellerden bazıları:

Arduino Uno: Temel giriş seviyesi modeli, genellikle yeni başlayanlar için tercih edilir.
Arduino Nano: Kompakt tasarımıyla bilinen bu model, projelerde yerden tasarruf etmek isteyenler için uygundur.
Arduino Mega: Büyük ve karmaşık projeler için geniş giriş/çıkış pinleri sunar.
Arduino Leonardo: USB üzerinden bilgisayara doğrudan klavye veya fare gibi görünme yeteneğine sahiptir.

Kısa Arduino Kodları ve Anlamları
pinMode(pin, mode): Belirli bir pine (giriş/çıkış pini) belirli bir mod (INPUT/OUTPUT) atar.
digitalWrite(pin, value): Belirli bir pine HIGH veya LOW değeri atar (genellikle LED'lerin kontrolünde kullanılır).
digitalRead(pin): Belirli bir pini okur ve HIGH veya LOW olarak döner (genellikle düğmelerin durumunu okumak için kullanılır).

ajp10nq.png

Arduino Bread Boardları Nasıl Çalışır?
Breadboardlar, elektronik bileşenleri geçici olarak bir araya getirmek ve bağlamak için kullanılan temel bileşenlerdir.
Delikleri aracılığıyla bileşenlerin pinleri bağlanabilir ve böylece devreler oluşturulabilir.
Pimlerin yatay çizgileri genellikle aynı bağlantı noktasında bağlıdır, böylece kolaylıkla bağlantılar kurulabilir.
Yatay olanlar mavi ve kırmızı renkte olanlar yani D ve A blokları yatay olarak, B ve C pinleri dikey olarak aynı bağlantı noktalarına bağlıdır.
B ile C ayrı bloklardır.


k002inh.jpg


RFID NEDİR?
RFID (Radio-Frequency Identification), radyo frekansıyla çalışan bir tanımlama teknolojisidir.
Bu teknoloji sayesinde nesneler, kimlik kartları, etiketler veya diğer nesneler kablosuz olarak tanınabilir, izlenebilir ve iletişim kurabilir.
RFID sistemi genellikle üç ana bileşenden oluşur: etiketler, okuyucular ve yazılımlar.


Etiketler (Tags):RFID etiketleri, genellikle küçük boyutlarda ve pasif ya da aktif olabilecek şekilde üretilirler.
Pasif etiketler, okuyucudan aldıkları enerjiyle çalışırlar ve genellikle daha kısa okuma mesafelerine sahiptirler.
Aktif etiketler ise kendi enerjilerini taşırlar ve daha uzun okuma mesafeleri sağlarlar.
Etiketler, içinde benzersiz bir tanımlayıcı (ID) kodu barındırır ve bu kod sayesinde nesneler birbirinden ayırt edilir.


Okuyucular (Readers):RFID okuyucuları veya okuyucu antenleri, etiketlerden gelen radyo frekans sinyallerini alarak bunları işleyen cihazlardır.
Bu okuyucular genellikle belirli bir frekansta çalışırlar (örneğin, 125 kHz veya 13.56 MHz gibi) ve etiketlerin ID kodlarını okuyarak bu bilgileri merkezi bir sisteme iletebilirler.


Yazılımlar ve Veritabanları:RFID sistemleri genellikle bir yazılım tabanlı yönetim sistemiyle entegre edilir.
Bu yazılımlar, etiketlerin okuma verilerini işleyebilir, kaydedebilir ve yönetebilir.
Özellikle envanter takibi, erişim kontrolü, taşıma ve lojistik gibi alanlarda kullanılan yazılımlarla birlikte veritabanları, RFID teknolojisinin etkin kullanımını sağlar.


RFID teknolojisi çok çeşitli alanlarda kullanılır. Örneğin:

Erişim Kontrolü: Binaların girişlerinde kullanılarak kimlik doğrulama sağlanabilir.
Envanter Takibi: Mağazalarda, depolarda ve lojistik süreçlerinde ürünlerin takibi yapılabilir.
Hayvan İzleme: Hayvanlar üzerine takılan etiketlerle izleme ve yönetim sağlanabilir.
Kütüphane Sistemi: Kitaplar ve medya malzemeleri üzerine etiketler yerleştirilerek kolayca yönetilebilir.
Otomatik Ödeme Sistemleri: Otoyollar, park yerleri ve toplu taşıma sistemlerinde kullanılabilir.

RFID teknolojisi, iş süreçlerini otomatize etmek, verileri daha doğru bir şekilde izlemek ve nesnelerin kimliklerini kolayca tanımak için kullanılan etkili bir araçtır.

Şimdi yapmış olduğumuz projeye gelelim.

ko2bziq.png


Bağlantı şemasını bu şekilde yapabilirsiniz.
Benim devrem ile tek farkı ben arduino nano kullandım değişen tek şey programı atarken kart olarak arduino nanoyu seçmek.
Ayriyetten devre de ledi yakmak için D7 çıkışını kullanmış ben kendi devremde D8 çıkışını kullandım.


lcoqipu.jpg
js1ubq5.jpg


Kodlama Aşaması da şu şekilde olacaktır:
Kod:
#include <MFRC522.h>
#include <SPI.h>

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 ledPin = 8;                         //Servo motor pinini tanımlıyoruz.

MFRC522 rfid(SS_PIN, RST_PIN);            //RC522 modülü ayarlarını yapıyoruz.
byte ID[4] = {151, 96, 112, 63};          //Yetkili kart ID'sini tanımlıyoruz.
void setup() {
  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("ABİLERİN GÜLÜ BİRKAN ABİMM");
        digitalWrite(8,HIGH);
        delay(500);
        digitalWrite(8,LOW);
        delay(500);
    }
    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("");
}
Kodları bu şekilde yazıp programı kartımıza attıktan sonra Seri Port ekranını açmamız lazım.
Bunun için Ctrl + Shift + M tuşlarına basmamız yeterli olacaktır.

Elimde iki tane RFID kart var. Bunlardan birini ilk önce okutuyoruz ve ekranda çıkan ID yi kod kısmına ekliyoruz ve sisteme tanımlıyoruz.
Elimde ki tanımsız olan rfid kartı okutunca karşıma böyle bir yazı çıkıyor:

ih02kc5.PNG


Ancak programda tanımladığım rfid kartı okutunca istediğim işlem gerçekleşiyor. Ekrana istediğim metni yazdırıyor,
ayriyetten ledi yakıyor. Siz bunun yerine kartı okutunca motor çalıştırtabilirsiniz. Bunun içinde

Kod:
#include <Servo.h>

kütüphanesini yüklemeniz gerekiyor. Bu sayede servo motoru da çalıştırabilirsiniz.

jsxkj4q.PNG
a3b2jeo.png



 
Son düzenleme:
a3b2jeo.png

9axs0ec.png

Selamlar,
Projeniz, Arduino ve RFID teknolojisinin birleşimiyle oluşturulan bir otomasyon projesi olarak dikkat çekiyor.

Bu proje sayesinde günlük yaşamda kullanılan geleneksel anahtar yerine RFID etiketleri kullanarak kapı girişini akıllıca yönetebilirsiniz.
RFID etiketleri, radyo frekansıyla tanıma sağlayan küçük cihazlardır.
Projeniz, bu etiketleri tanıyan bir okuyucu modülünü Arduino platformu üzerinde çalıştırarak kapı erişimini kontrol etmektedir.
Şimdi, projenizi anlatmadan önce Arduino ve ilgili konular hakkında temel bilgiler sunalım:

2j8xiwk.png


Arduino Nedir?
Arduino, hobi elektroniği ve prototipleme için kullanılan açık kaynaklı bir platformdur.

Mikrodenetleyiciler temel alınarak geliştirilen bu platform, programlanabilir kartlar ve geniş bir sensör/aktüatör yelpazesi ile donatılmıştır.
Projeleri kolayca oluşturmayı ve programlamayı sağlayan Arduino, hem acemi hem de deneyimli kullanıcılar için uygun bir seçenektir.

tl8v5a2.jpg


Arduino Çeşitleri Nelerdir?
Arduino platformu, çeşitli modeller ve varyasyonlarla gelir. En yaygın kullanılan modellerden bazıları:

Arduino Uno: Temel giriş seviyesi modeli, genellikle yeni başlayanlar için tercih edilir.
Arduino Nano: Kompakt tasarımıyla bilinen bu model, projelerde yerden tasarruf etmek isteyenler için uygundur.
Arduino Mega: Büyük ve karmaşık projeler için geniş giriş/çıkış pinleri sunar.
Arduino Leonardo: USB üzerinden bilgisayara doğrudan klavye veya fare gibi görünme yeteneğine sahiptir.

Kısa Arduino Kodları ve Anlamları
pinMode(pin, mode): Belirli bir pine (giriş/çıkış pini) belirli bir mod (INPUT/OUTPUT) atar.
digitalWrite(pin, value): Belirli bir pine HIGH veya LOW değeri atar (genellikle LED'lerin kontrolünde kullanılır).
digitalRead(pin): Belirli bir pini okur ve HIGH veya LOW olarak döner (genellikle düğmelerin durumunu okumak için kullanılır).

ajp10nq.png

Arduino Bread Boardları Nasıl Çalışır?
Breadboardlar, elektronik bileşenleri geçici olarak bir araya getirmek ve bağlamak için kullanılan temel bileşenlerdir.
Delikleri aracılığıyla bileşenlerin pinleri bağlanabilir ve böylece devreler oluşturulabilir.
Pimlerin yatay çizgileri genellikle aynı bağlantı noktasında bağlıdır, böylece kolaylıkla bağlantılar kurulabilir.
Yatay olanlar mavi ve kırmızı renkte olanlar yani D ve A blokları yatay olarak, B ve C pinleri dikey olarak aynı bağlantı noktalarına bağlıdır.
B ile C ayrı bloklardır.


k002inh.jpg


RFID NEDİR?
RFID (Radio-Frequency Identification), radyo frekansıyla çalışan bir tanımlama teknolojisidir.
Bu teknoloji sayesinde nesneler, kimlik kartları, etiketler veya diğer nesneler kablosuz olarak tanınabilir, izlenebilir ve iletişim kurabilir.
RFID sistemi genellikle üç ana bileşenden oluşur: etiketler, okuyucular ve yazılımlar.


Etiketler (Tags):RFID etiketleri, genellikle küçük boyutlarda ve pasif ya da aktif olabilecek şekilde üretilirler.
Pasif etiketler, okuyucudan aldıkları enerjiyle çalışırlar ve genellikle daha kısa okuma mesafelerine sahiptirler.
Aktif etiketler ise kendi enerjilerini taşırlar ve daha uzun okuma mesafeleri sağlarlar.
Etiketler, içinde benzersiz bir tanımlayıcı (ID) kodu barındırır ve bu kod sayesinde nesneler birbirinden ayırt edilir.


Okuyucular (Readers):RFID okuyucuları veya okuyucu antenleri, etiketlerden gelen radyo frekans sinyallerini alarak bunları işleyen cihazlardır.
Bu okuyucular genellikle belirli bir frekansta çalışırlar (örneğin, 125 kHz veya 13.56 MHz gibi) ve etiketlerin ID kodlarını okuyarak bu bilgileri merkezi bir sisteme iletebilirler.


Yazılımlar ve Veritabanları:RFID sistemleri genellikle bir yazılım tabanlı yönetim sistemiyle entegre edilir.
Bu yazılımlar, etiketlerin okuma verilerini işleyebilir, kaydedebilir ve yönetebilir.
Özellikle envanter takibi, erişim kontrolü, taşıma ve lojistik gibi alanlarda kullanılan yazılımlarla birlikte veritabanları, RFID teknolojisinin etkin kullanımını sağlar.


RFID teknolojisi çok çeşitli alanlarda kullanılır. Örneğin:

Erişim Kontrolü: Binaların girişlerinde kullanılarak kimlik doğrulama sağlanabilir.
Envanter Takibi: Mağazalarda, depolarda ve lojistik süreçlerinde ürünlerin takibi yapılabilir.
Hayvan İzleme: Hayvanlar üzerine takılan etiketlerle izleme ve yönetim sağlanabilir.
Kütüphane Sistemi: Kitaplar ve medya malzemeleri üzerine etiketler yerleştirilerek kolayca yönetilebilir.
Otomatik Ödeme Sistemleri: Otoyollar, park yerleri ve toplu taşıma sistemlerinde kullanılabilir.

RFID teknolojisi, iş süreçlerini otomatize etmek, verileri daha doğru bir şekilde izlemek ve nesnelerin kimliklerini kolayca tanımak için kullanılan etkili bir araçtır.

Şimdi yapmış olduğumuz projeye gelelim.

ko2bziq.png


Bağlantı şemasını bu şekilde yapabilirsiniz.
Benim devrem ile tek farkı ben arduino nano kullandım değişen tek şey programı atarken kart olarak arduino nanoyu seçmek.
Ayriyetten devre de ledi yakmak için D7 çıkışını kullanmış ben kendi devremde D8 çıkışını kullandım.


buk49o7.jpg
8j84k39.jpg


Kodlama Aşaması da şu şekilde olacaktır:
Kod:
#include <MFRC522.h>
#include <SPI.h>

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 ledPin = 8;                         //Servo motor pinini tanımlıyoruz.

MFRC522 rfid(SS_PIN, RST_PIN);            //RC522 modülü ayarlarını yapıyoruz.
byte ID[4] = {151, 96, 112, 63};          //Yetkili kart ID'sini tanımlıyoruz.
void setup() {
  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("ABİLERİN GÜLÜ BİRKAN ABİMM");
        digitalWrite(8,HIGH);
        delay(500);
        digitalWrite(8,LOW);
        delay(500);
    }
    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("");
}
Kodları bu şekilde yazıp programı kartımıza attıktan sonra Seri Port ekranını açmamız lazım.
Bunun için Ctrl + Shift + M tuşlarına basmamız yeterli olacaktır.

Elimde iki tane RFID kart var. Bunlardan birini ilk önce okutuyoruz ve ekranda çıkan ID yi kod kısmına ekliyoruz ve sisteme tanımlıyoruz.
Elimde ki tanımsız olan rfid kartı okutunca karşıma böyle bir yazı çıkıyor:

ih02kc5.PNG


Ancak programda tanımladığım rfid kartı okutunca istediğim işlem gerçekleşiyor. Ekrana istediğim metni yazdırıyor,
ayriyetten ledi yakıyor. Siz bunun yerine kartı okutunca motor çalıştırtabilirsiniz. Bunun içinde

Kod:
#include <Servo.h>

kütüphanesini yüklemeniz gerekiyor. Bu sayede servo motoru da çalıştırabilirsiniz.

jsxkj4q.PNG
a3b2jeo.png



Ellerine emeklerine sağlık çok güzel olmuş.
 

teux

Katılımcı Üye
23 Ocak 2023
959
1,338
a3b2jeo.png

9axs0ec.png

Selamlar,
Projeniz, Arduino ve RFID teknolojisinin birleşimiyle oluşturulan bir otomasyon projesi olarak dikkat çekiyor.

Bu proje sayesinde günlük yaşamda kullanılan geleneksel anahtar yerine RFID etiketleri kullanarak kapı girişini akıllıca yönetebilirsiniz.
RFID etiketleri, radyo frekansıyla tanıma sağlayan küçük cihazlardır.
Projeniz, bu etiketleri tanıyan bir okuyucu modülünü Arduino platformu üzerinde çalıştırarak kapı erişimini kontrol etmektedir.
Şimdi, projenizi anlatmadan önce Arduino ve ilgili konular hakkında temel bilgiler sunalım:

2j8xiwk.png


Arduino Nedir?
Arduino, hobi elektroniği ve prototipleme için kullanılan açık kaynaklı bir platformdur.

Mikrodenetleyiciler temel alınarak geliştirilen bu platform, programlanabilir kartlar ve geniş bir sensör/aktüatör yelpazesi ile donatılmıştır.
Projeleri kolayca oluşturmayı ve programlamayı sağlayan Arduino, hem acemi hem de deneyimli kullanıcılar için uygun bir seçenektir.

tl8v5a2.jpg


Arduino Çeşitleri Nelerdir?
Arduino platformu, çeşitli modeller ve varyasyonlarla gelir. En yaygın kullanılan modellerden bazıları:

Arduino Uno: Temel giriş seviyesi modeli, genellikle yeni başlayanlar için tercih edilir.
Arduino Nano: Kompakt tasarımıyla bilinen bu model, projelerde yerden tasarruf etmek isteyenler için uygundur.
Arduino Mega: Büyük ve karmaşık projeler için geniş giriş/çıkış pinleri sunar.
Arduino Leonardo: USB üzerinden bilgisayara doğrudan klavye veya fare gibi görünme yeteneğine sahiptir.

Kısa Arduino Kodları ve Anlamları
pinMode(pin, mode): Belirli bir pine (giriş/çıkış pini) belirli bir mod (INPUT/OUTPUT) atar.
digitalWrite(pin, value): Belirli bir pine HIGH veya LOW değeri atar (genellikle LED'lerin kontrolünde kullanılır).
digitalRead(pin): Belirli bir pini okur ve HIGH veya LOW olarak döner (genellikle düğmelerin durumunu okumak için kullanılır).

ajp10nq.png

Arduino Bread Boardları Nasıl Çalışır?
Breadboardlar, elektronik bileşenleri geçici olarak bir araya getirmek ve bağlamak için kullanılan temel bileşenlerdir.
Delikleri aracılığıyla bileşenlerin pinleri bağlanabilir ve böylece devreler oluşturulabilir.
Pimlerin yatay çizgileri genellikle aynı bağlantı noktasında bağlıdır, böylece kolaylıkla bağlantılar kurulabilir.
Yatay olanlar mavi ve kırmızı renkte olanlar yani D ve A blokları yatay olarak, B ve C pinleri dikey olarak aynı bağlantı noktalarına bağlıdır.
B ile C ayrı bloklardır.


k002inh.jpg


RFID NEDİR?
RFID (Radio-Frequency Identification), radyo frekansıyla çalışan bir tanımlama teknolojisidir.
Bu teknoloji sayesinde nesneler, kimlik kartları, etiketler veya diğer nesneler kablosuz olarak tanınabilir, izlenebilir ve iletişim kurabilir.
RFID sistemi genellikle üç ana bileşenden oluşur: etiketler, okuyucular ve yazılımlar.


Etiketler (Tags):RFID etiketleri, genellikle küçük boyutlarda ve pasif ya da aktif olabilecek şekilde üretilirler.
Pasif etiketler, okuyucudan aldıkları enerjiyle çalışırlar ve genellikle daha kısa okuma mesafelerine sahiptirler.
Aktif etiketler ise kendi enerjilerini taşırlar ve daha uzun okuma mesafeleri sağlarlar.
Etiketler, içinde benzersiz bir tanımlayıcı (ID) kodu barındırır ve bu kod sayesinde nesneler birbirinden ayırt edilir.


Okuyucular (Readers):RFID okuyucuları veya okuyucu antenleri, etiketlerden gelen radyo frekans sinyallerini alarak bunları işleyen cihazlardır.
Bu okuyucular genellikle belirli bir frekansta çalışırlar (örneğin, 125 kHz veya 13.56 MHz gibi) ve etiketlerin ID kodlarını okuyarak bu bilgileri merkezi bir sisteme iletebilirler.


Yazılımlar ve Veritabanları:RFID sistemleri genellikle bir yazılım tabanlı yönetim sistemiyle entegre edilir.
Bu yazılımlar, etiketlerin okuma verilerini işleyebilir, kaydedebilir ve yönetebilir.
Özellikle envanter takibi, erişim kontrolü, taşıma ve lojistik gibi alanlarda kullanılan yazılımlarla birlikte veritabanları, RFID teknolojisinin etkin kullanımını sağlar.


RFID teknolojisi çok çeşitli alanlarda kullanılır. Örneğin:

Erişim Kontrolü: Binaların girişlerinde kullanılarak kimlik doğrulama sağlanabilir.
Envanter Takibi: Mağazalarda, depolarda ve lojistik süreçlerinde ürünlerin takibi yapılabilir.
Hayvan İzleme: Hayvanlar üzerine takılan etiketlerle izleme ve yönetim sağlanabilir.
Kütüphane Sistemi: Kitaplar ve medya malzemeleri üzerine etiketler yerleştirilerek kolayca yönetilebilir.
Otomatik Ödeme Sistemleri: Otoyollar, park yerleri ve toplu taşıma sistemlerinde kullanılabilir.

RFID teknolojisi, iş süreçlerini otomatize etmek, verileri daha doğru bir şekilde izlemek ve nesnelerin kimliklerini kolayca tanımak için kullanılan etkili bir araçtır.

Şimdi yapmış olduğumuz projeye gelelim.

ko2bziq.png


Bağlantı şemasını bu şekilde yapabilirsiniz.
Benim devrem ile tek farkı ben arduino nano kullandım değişen tek şey programı atarken kart olarak arduino nanoyu seçmek.
Ayriyetten devre de ledi yakmak için D7 çıkışını kullanmış ben kendi devremde D8 çıkışını kullandım.


buk49o7.jpg
8j84k39.jpg


Kodlama Aşaması da şu şekilde olacaktır:
Kod:
#include <MFRC522.h>
#include <SPI.h>

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 ledPin = 8;                         //Servo motor pinini tanımlıyoruz.

MFRC522 rfid(SS_PIN, RST_PIN);            //RC522 modülü ayarlarını yapıyoruz.
byte ID[4] = {151, 96, 112, 63};          //Yetkili kart ID'sini tanımlıyoruz.
void setup() {
  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("ABİLERİN GÜLÜ BİRKAN ABİMM");
        digitalWrite(8,HIGH);
        delay(500);
        digitalWrite(8,LOW);
        delay(500);
    }
    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("");
}
Kodları bu şekilde yazıp programı kartımıza attıktan sonra Seri Port ekranını açmamız lazım.
Bunun için Ctrl + Shift + M tuşlarına basmamız yeterli olacaktır.

Elimde iki tane RFID kart var. Bunlardan birini ilk önce okutuyoruz ve ekranda çıkan ID yi kod kısmına ekliyoruz ve sisteme tanımlıyoruz.
Elimde ki tanımsız olan rfid kartı okutunca karşıma böyle bir yazı çıkıyor:

ih02kc5.PNG


Ancak programda tanımladığım rfid kartı okutunca istediğim işlem gerçekleşiyor. Ekrana istediğim metni yazdırıyor,
ayriyetten ledi yakıyor. Siz bunun yerine kartı okutunca motor çalıştırtabilirsiniz. Bunun içinde

Kod:
#include <Servo.h>

kütüphanesini yüklemeniz gerekiyor. Bu sayede servo motoru da çalıştırabilirsiniz.

jsxkj4q.PNG
a3b2jeo.png



eline sağlıkkkkkkkkkkkkkkkkkkkkkkk
 

Suppressor

Request Uzmanı
16 Kas 2022
1,206
715
always, everywhere
a3b2jeo.png

9axs0ec.png

Selamlar,
Projeniz, Arduino ve RFID teknolojisinin birleşimiyle oluşturulan bir otomasyon projesi olarak dikkat çekiyor.

Bu proje sayesinde günlük yaşamda kullanılan geleneksel anahtar yerine RFID etiketleri kullanarak kapı girişini akıllıca yönetebilirsiniz.
RFID etiketleri, radyo frekansıyla tanıma sağlayan küçük cihazlardır.
Projeniz, bu etiketleri tanıyan bir okuyucu modülünü Arduino platformu üzerinde çalıştırarak kapı erişimini kontrol etmektedir.
Şimdi, projenizi anlatmadan önce Arduino ve ilgili konular hakkında temel bilgiler sunalım:

2j8xiwk.png


Arduino Nedir?
Arduino, hobi elektroniği ve prototipleme için kullanılan açık kaynaklı bir platformdur.

Mikrodenetleyiciler temel alınarak geliştirilen bu platform, programlanabilir kartlar ve geniş bir sensör/aktüatör yelpazesi ile donatılmıştır.
Projeleri kolayca oluşturmayı ve programlamayı sağlayan Arduino, hem acemi hem de deneyimli kullanıcılar için uygun bir seçenektir.

tl8v5a2.jpg


Arduino Çeşitleri Nelerdir?
Arduino platformu, çeşitli modeller ve varyasyonlarla gelir. En yaygın kullanılan modellerden bazıları:

Arduino Uno: Temel giriş seviyesi modeli, genellikle yeni başlayanlar için tercih edilir.
Arduino Nano: Kompakt tasarımıyla bilinen bu model, projelerde yerden tasarruf etmek isteyenler için uygundur.
Arduino Mega: Büyük ve karmaşık projeler için geniş giriş/çıkış pinleri sunar.
Arduino Leonardo: USB üzerinden bilgisayara doğrudan klavye veya fare gibi görünme yeteneğine sahiptir.

Kısa Arduino Kodları ve Anlamları
pinMode(pin, mode): Belirli bir pine (giriş/çıkış pini) belirli bir mod (INPUT/OUTPUT) atar.
digitalWrite(pin, value): Belirli bir pine HIGH veya LOW değeri atar (genellikle LED'lerin kontrolünde kullanılır).
digitalRead(pin): Belirli bir pini okur ve HIGH veya LOW olarak döner (genellikle düğmelerin durumunu okumak için kullanılır).

ajp10nq.png

Arduino Bread Boardları Nasıl Çalışır?
Breadboardlar, elektronik bileşenleri geçici olarak bir araya getirmek ve bağlamak için kullanılan temel bileşenlerdir.
Delikleri aracılığıyla bileşenlerin pinleri bağlanabilir ve böylece devreler oluşturulabilir.
Pimlerin yatay çizgileri genellikle aynı bağlantı noktasında bağlıdır, böylece kolaylıkla bağlantılar kurulabilir.
Yatay olanlar mavi ve kırmızı renkte olanlar yani D ve A blokları yatay olarak, B ve C pinleri dikey olarak aynı bağlantı noktalarına bağlıdır.
B ile C ayrı bloklardır.


k002inh.jpg


RFID NEDİR?
RFID (Radio-Frequency Identification), radyo frekansıyla çalışan bir tanımlama teknolojisidir.
Bu teknoloji sayesinde nesneler, kimlik kartları, etiketler veya diğer nesneler kablosuz olarak tanınabilir, izlenebilir ve iletişim kurabilir.
RFID sistemi genellikle üç ana bileşenden oluşur: etiketler, okuyucular ve yazılımlar.


Etiketler (Tags):RFID etiketleri, genellikle küçük boyutlarda ve pasif ya da aktif olabilecek şekilde üretilirler.
Pasif etiketler, okuyucudan aldıkları enerjiyle çalışırlar ve genellikle daha kısa okuma mesafelerine sahiptirler.
Aktif etiketler ise kendi enerjilerini taşırlar ve daha uzun okuma mesafeleri sağlarlar.
Etiketler, içinde benzersiz bir tanımlayıcı (ID) kodu barındırır ve bu kod sayesinde nesneler birbirinden ayırt edilir.


Okuyucular (Readers):RFID okuyucuları veya okuyucu antenleri, etiketlerden gelen radyo frekans sinyallerini alarak bunları işleyen cihazlardır.
Bu okuyucular genellikle belirli bir frekansta çalışırlar (örneğin, 125 kHz veya 13.56 MHz gibi) ve etiketlerin ID kodlarını okuyarak bu bilgileri merkezi bir sisteme iletebilirler.


Yazılımlar ve Veritabanları:RFID sistemleri genellikle bir yazılım tabanlı yönetim sistemiyle entegre edilir.
Bu yazılımlar, etiketlerin okuma verilerini işleyebilir, kaydedebilir ve yönetebilir.
Özellikle envanter takibi, erişim kontrolü, taşıma ve lojistik gibi alanlarda kullanılan yazılımlarla birlikte veritabanları, RFID teknolojisinin etkin kullanımını sağlar.


RFID teknolojisi çok çeşitli alanlarda kullanılır. Örneğin:

Erişim Kontrolü: Binaların girişlerinde kullanılarak kimlik doğrulama sağlanabilir.
Envanter Takibi: Mağazalarda, depolarda ve lojistik süreçlerinde ürünlerin takibi yapılabilir.
Hayvan İzleme: Hayvanlar üzerine takılan etiketlerle izleme ve yönetim sağlanabilir.
Kütüphane Sistemi: Kitaplar ve medya malzemeleri üzerine etiketler yerleştirilerek kolayca yönetilebilir.
Otomatik Ödeme Sistemleri: Otoyollar, park yerleri ve toplu taşıma sistemlerinde kullanılabilir.

RFID teknolojisi, iş süreçlerini otomatize etmek, verileri daha doğru bir şekilde izlemek ve nesnelerin kimliklerini kolayca tanımak için kullanılan etkili bir araçtır.

Şimdi yapmış olduğumuz projeye gelelim.

ko2bziq.png


Bağlantı şemasını bu şekilde yapabilirsiniz.
Benim devrem ile tek farkı ben arduino nano kullandım değişen tek şey programı atarken kart olarak arduino nanoyu seçmek.
Ayriyetten devre de ledi yakmak için D7 çıkışını kullanmış ben kendi devremde D8 çıkışını kullandım.


lcoqipu.jpg
js1ubq5.jpg


Kodlama Aşaması da şu şekilde olacaktır:
Kod:
#include <MFRC522.h>
#include <SPI.h>

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 ledPin = 8;                         //Servo motor pinini tanımlıyoruz.

MFRC522 rfid(SS_PIN, RST_PIN);            //RC522 modülü ayarlarını yapıyoruz.
byte ID[4] = {151, 96, 112, 63};          //Yetkili kart ID'sini tanımlıyoruz.
void setup() {
  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("ABİLERİN GÜLÜ BİRKAN ABİMM");
        digitalWrite(8,HIGH);
        delay(500);
        digitalWrite(8,LOW);
        delay(500);
    }
    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("");
}
Kodları bu şekilde yazıp programı kartımıza attıktan sonra Seri Port ekranını açmamız lazım.
Bunun için Ctrl + Shift + M tuşlarına basmamız yeterli olacaktır.

Elimde iki tane RFID kart var. Bunlardan birini ilk önce okutuyoruz ve ekranda çıkan ID yi kod kısmına ekliyoruz ve sisteme tanımlıyoruz.
Elimde ki tanımsız olan rfid kartı okutunca karşıma böyle bir yazı çıkıyor:

ih02kc5.PNG


Ancak programda tanımladığım rfid kartı okutunca istediğim işlem gerçekleşiyor. Ekrana istediğim metni yazdırıyor,
ayriyetten ledi yakıyor. Siz bunun yerine kartı okutunca motor çalıştırtabilirsiniz. Bunun içinde

Kod:
#include <Servo.h>

kütüphanesini yüklemeniz gerekiyor. Bu sayede servo motoru da çalıştırabilirsiniz.

jsxkj4q.PNG
a3b2jeo.png



eline koluna sağlık sokrat abi.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.