كيفية استخدام وحدة قارئ RFID RC522 مع Arduino للتحكم في الوصول

  • تسمح وحدة RC522 بقراءة وكتابة بطاقات RFID بتردد 13.56 ميجاهرتز.
  • وهو متوافق مع وحدات التحكم الدقيقة مثل Arduino من خلال اتصال SPI.
  • يتراوح نطاق القراءة من 5 إلى 7 سم، وهو مثالي لأنظمة التحكم في الوصول.
  • لتنفيذ الأمان، يمكنك دمج أنظمة المفاتيح أو المصادقة في ذاكرة العلامات.

بطاقة RFID أو رقاقة

تعد وحدة RC522 RFID واحدة من أكثر الأجهزة تنوعًا وشعبية لمشاريع الإلكترونيات وأنظمة التحكم في الوصول. جنبًا إلى جنب مع لوحة Arduino، فهو يسمح بقراءة وكتابة المعلومات على بطاقات RFID وسلاسل المفاتيح باستخدام الاتصال اللاسلكي. يعد هذا النوع من التكنولوجيا مفيدًا جدًا في مشاريع الأتمتة والأمن والمراقبة، مثل فتح الأبواب تلقائيًا أو استخدام أنظمة التعريف الشخصية.

في هذه المقالة، سوف نستكشف بالتفصيل كيفية عمل وحدة RC522، وكيفية توصيلها بمتحكم دقيق مثل Arduino، وبعض الأمثلة العملية التي ستتيح لك تحقيق أقصى استفادة منها. إذا كنت تبدأ بمشاريع RFID، فستساعدك هذه المقالة كثيرًا في فهم المبادئ وكيفية تنفيذ تنفيذ بسيط وفعال.

ما هو رفيد؟

RFID (التعرف على ترددات الراديو) هي تقنية تتيح لك قراءة التسميات أو العلامات لاسلكيا، دون الحاجة للاتصال الجسدي. تتوفر هذه التسميات بتنسيقات متعددة مثل البطاقات وسلاسل المفاتيح وحتى الملصقات. اعتمادا على نوع RFID، يتم استخدامها في مجموعة واسعة من التطبيقات: من التحكم في الوصول إلى المبنى إلى إدارة المخزون.

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

وحدة RC522

قارئ rfid لاردوينو

وحدة RC522 إنه أحد أكثر أجهزة قراءة RFID شيوعًا نظرًا لبساطته وتعدد استخداماته. يعمل في تردد 13.56 ميجاهيرتز ويسمح قراءة وكتابة المعلومات في العلامات المتوافقة مع هذا المعيار.

يتصل RC522 بوحدة التحكم الدقيقة من خلال البروتوكول SPIمما يعني أنه متوافق ليس فقط مع Arduino، ولكن أيضًا مع أنظمة أخرى مثل PIC وRaspberry Pi. علاوة على ذلك، فهو يحتوي على نطاق القراءة حوالي 5 إلى 7 سم، وهو أكثر من كافٍ لمعظم مشاريع التحكم في الوصول.

توصيل وحدة RC522 RFID مع الاردوينو

إحدى المزايا الكبيرة لـ RC522 هي مدى سهولة توصيله بـ Arduino. أول شيء يتعين علينا القيام به هو التأكد من أن جميع المسامير الموجودة في الوحدة متصلة بشكل صحيح بالمنافذ المقابلة في Arduino. وهنا جدول مع الاتصالات:

وحدة RC522 Arduino Uno/نانو ميجا اردوينو
سدا (سس) 10 53
SCK 13 52
MOSI 11 51
ميسو 12 50
IRQ غير متصل غير متصل
GND GND GND
RST 9 9
3.3V 3.3V 3.3V

تذكر أن وحدة RC522 يعمل بجهد 3.3 فولت، لذلك نوصي باستخدام محول مستوى الجهد إذا كنت تخطط للاستخدام الموسع للنظام، على الرغم من أنه في الاختبارات السريعة قد يعمل بشكل صحيح متصلاً مباشرة بـ Arduino.

برمجة RC522 مع الاردوينو

لكي يعمل RC522 بشكل صحيح مع Arduino، نحتاج إلى تنزيل وتثبيت ما يتوافق معه مكتبة RFID. واحدة من أكثر هذه التطبيقات استخدامًا هي تلك التي طورها ميغيل بالبوا، والتي يمكنك العثور عليها في مدير مكتبة Arduino IDE.

بمجرد تثبيت المكتبة، إليك مثال رمزي بسيط لقراءة UID (المعرف الفريد) لبطاقة RFID:

#يشمل #يشمل #define RST_PIN 522 #define SS_PIN 9 MFRC10 mfrc522(SS_PIN, RST_PIN); إعداد باطل () {Serial.begin (522)؛ SPI.begin(); mfrc9600.PCD_Init(); Serial.println("قراءة UID"); } حلقة باطلة() { if ( mfrc522.PICC_IsNewCardPresent()) { if ( mfrc522.PICC_ReadCardSerial()) { Serial.print("Card UID:"); for (byte i = 522; i < mfrc0.uid.size; i++) { Serial.print(mfrc522.uid.uidByte[i] < 522x0 ? " 10" : " "); Serial.print(mfrc0.uid.uidByte[i], HEX); } Serial.println(); mfrc522.PICC_HaltA(); }} }

يقرأ هذا الرمز UID الخاص بأي بطاقة تحضرها للقارئ ويطبعها على الشاشة التسلسلية.

استخدام RC522 في نظام التحكم في الوصول

أحد التطبيقات الأكثر فائدة لوحدة RC522 RFID موجود التحكم في الوصول. يمكنك استخدام بطاقات RFID أو سلسلة المفاتيح لمنح إذن الدخول لشخص ما أو لتنشيط/إلغاء تنشيط الأنظمة مثل أجهزة الإنذار أو الأقفال الكهربائية.

نعرض لك أدناه مثالاً على التعليمات البرمجية لتعديل البرنامج السابق للسماح بالوصول فقط إلى البطاقات المصرح بها مسبقًا:

بايت المستخدم1[4] = {0x4B, 0x6D, 0xC8, 0x3A}; بايت User2[4] = {0xF2, 0x8A, 0x9D, 0x17}; حلقة باطلة() { if (mfrc522.PICC_IsNewCardPresent() && mfrc522.PICC_ReadCardSerial()) { if (compareArray(mfrc522.uid.uidByte, User1, 4) || CompareArray(mfrc522.uid.uidByte, User2, 4)) { Serial.println("الوصول مسموح"); } else { Serial.println("تم رفض الوصول"); } mfrc522.PICC_HaltA(); }}

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


كن أول من يعلق

اترك تعليقك

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

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.