ما هو قارئ MFRC522 RFID وكيفية مواجهته مع الاردوينو 2

تم نشر هذا المشروع لجميع الأشخاص المهتمين في مجال تصنيع وابتكار المشاريع الإلكترونية والبرمجية، و نود التنويه أن موقع انا الكتروني يخلي مسؤوليته التامة في حال لم يعمل المشروع لدى العميل أو في حال الاستخدام الخاطئ للمكونات الإلكترونية والكهربائية التي قد تؤدي لحدوث الحرائق أو غيرها لا سمح الله.

Security Access using MFRC522 RFID Reader with Arduino

يُظهر هذا المشروع مثالًا بسيطًا على كيفية استخدام قارئ MFRC522 RFID . سأقدم نظرة عامة سريعة على المواصفات وأعرض مثالاً للمشروع باستخدام الاردوينو .

وصف MFRC522 RFID Reader

RFID يعني تحديد الترددات الراديوية . يستخدم RFID الحقول الكهرومغناطيسية لنقل البيانات عبر مسافات قصيرة . RFID مفيد لتحديد الأشخاص ، وإجراء المعاملات ، إلخ …

يمكنك استخدام نظام RFID لفتح الباب . على سبيل المثال ، يُسمح فقط للشخص الذي لديه المعلومات الصحيحة على بطاقته بالدخول . يستخدم نظام RFID :

  • tags المرتبطة بالكائن المراد تحديده ، في هذا المثال لدينا سلسلة مفاتيح وبطاقة كهرومغناطيسية. كل علامة لها هوية خاصة بها (UID) .
tags
  • جهاز إرسال واستقبال لاسلكي ثنائي الاتجاه ، القارئ ، يرسل إشارة إلى العلامة ويقرأ ردها .
F4Cgm

مواصفات MFRC522 RFID Reader

  • Input voltage: 3.3V
  • Price: approximately 3$
  • Frequency: 13.56MHz
1

الدائرة الكهربائية MFRC522 RFID Reader

يتم التوصيل وفقا للمخطط أدناه .

Mifare_bb

قراءة البيانات من بطاقات RFID مع القارئ MFRC522 RFID Reader

بعد الانتهاء من إعداد الدائرة ، انتقل إلى File > Examples > MFRC522 > DumpInfo وحمل الكود . سيكون هذا الرمز متاحًا في الاردوينو IDE .

  • ثم افتح الشاشة التسلسلية . يجب أن ترى شيئًا مثل الشكل أدناه :
serial-monitor1
  • تقريب بطاقات RFID أو المفاتيح إلى القارئ . دع القارئ والبطاقات أقرب حتى يتم عرض جميع المعلومات .
serial-monitor2
  • هذه هي المعلومات التي يمكنك قراءتها من البطاقة ، بما في ذلك UID البطاقة المظللة باللون الأصفر . يتم تخزين المعلومات في الذاكرة التي تنقسم إلى شرائح وكتل كما ترون في الصورة السابقة .
  • لديك 1024 بايت من تخزين البيانات مقسمة إلى 16 قطاعًا وكل قطاع محمي بواسطة مفتاحين مختلفين ، A و B .
  • اكتب الرقم العتريفي للبطاقة UID لأنك ستحتاج إليها لاحقًا .
  • الان قم بتحميل الكود التالي .
تنبيه : في حال لم تكن متأكد من قدرتك على تنفيذ خطوات المشروع يرجى استشارة شخص متخصص في هذا المجال.
لتحميل الكود البرمجي اضغط هنا
#include <SPI.h>
#include <MFRC522.h>
 
#define SS_PIN 10
#define RST_PIN 9
MFRC522 mfrc522(SS_PIN, RST_PIN);   // Create MFRC522 instance.
 
void setup() 
{
  Serial.begin(9600);   // Initiate a serial communication
  SPI.begin();      // Initiate  SPI bus
  mfrc522.PCD_Init();   // Initiate MFRC522
  Serial.println("Approximate your card to the reader...");
  Serial.println();

}
void loop() 
{
  // Look for new cards
  if ( ! mfrc522.PICC_IsNewCardPresent()) 
  {
    return;
  }
  // Select one of the cards
  if ( ! mfrc522.PICC_ReadCardSerial()) 
  {
    return;
  }
  //Show UID on serial monitor
  Serial.print("UID tag :");
  String content= "";
  byte letter;
  for (byte i = 0; i < mfrc522.uid.size; i++) 
  {
     Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ");
     Serial.print(mfrc522.uid.uidByte[i], HEX);
     content.concat(String(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " "));
     content.concat(String(mfrc522.uid.uidByte[i], HEX));
  }
  Serial.println();
  Serial.print("Message : ");
  content.toUpperCase();
  if (content.substring(1) == "BD 31 15 2B") //change here the UID of the card/cards that you want to give access
  {
    Serial.println("Authorized access");
    Serial.println();
    delay(3000);
  }
 
 else   {
    Serial.println(" Access denied");
    delay(3000);
  }
}

أنتهت !!!

2 Comments

  1. عملت نفس الخطوات وظهرت لي نفس الكلام الفي serial monitor ولكن عندما أقرب البطاقة أو التاق لا تظهر اي معلومات ما السبب؟

    مهيرة حاتم
    1. ممكن صورة للرسالة الظاهرة

      ielectrony Support Team

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *