الـ RC522 وحدة RFIDتسمح لـ Raspberry Pi بقراءة وكتابة بطاقات/علامات RFID (تحديد الهوية بموجات الراديو)، مما يجعلها مفيدة للتحكم بالوصول، والأتمتة، ومشاريع إنترنت الأشياء. سيعرض هذا الدليل كيفية التوصيل، والتكوين، وقراءة بطاقات RFID باستخدام Raspberry Pi وPython.
ما ستحتاجه
- Raspberry Pi (أي طراز يدعم SPI، مثل Pi 3، Pi 4)
- RC522 وحدة RFID
- علامة أو بطاقة RFID (متوافقة مع تردد 13.56MHz)
- لوحة تجارب وأسلاك توصيل
- تثبيت Python على Raspberry Pi الخاص بك
الخطوة 1: توصيل RC522 بـ Raspberry Pi
يتواصل RC522 مع Raspberry Pi باستخدام بروتوكول SPI.
التوصيلات (وضع SPI)
| دبوس RC522 | دبوس Raspberry Pi | الوظيفة |
|---|---|---|
| VCC | 3.3V (الدبوس 1) | مصدر الطاقة |
| GND | الأرضي (الدبوس 6) | الأرضي |
| SDA (SS) | GPIO8 (الدبوس 24) | اختيار شريحة SPI |
| SCK | GPIO11 (الدبوس 23) | ساعة SPI |
| MOSI | GPIO10 (الدبوس 19) | دخل بيانات SPI |
| MISO | GPIO9 (الدبوس 21) | خرج بيانات SPI |
| RST | GPIO25 (الدبوس 22) | إعادة ضبط |
ملاحظة: تعمل وحدة RC522 على 3.3V. لا توصّلها إلى 5V، فقد يتسبب ذلك في تلف الوحدة.
الخطوة 2: تفعيل واجهة SPI
تستخدم وحدة RC522 SPI (Serial Peripheral Interface) للاتصال، لذلك نحتاج إلى تفعيل SPI على Raspberry Pi.
-
افتح أداة تكوين Raspberry Pi:
sudo raspi-config -
انتقل إلى Interface Options > SPI وقم بتفعيله.
-
أعد تشغيل Raspberry Pi:
sudo reboot -
تحقق من أن SPI مفعلة:
ls /dev/spidev*يجب أن ترى
/dev/spidev0.0و/dev/spidev0.1.
الخطوة 3: تثبيت المكتبات المطلوبة
- حدّث Raspberry Pi الخاص بك:
sudo apt update && sudo apt upgrade -y - ثبت مكتبات SPI وRFID:
sudo apt install -y python3-pip python3-spidev python3-rpi.gpio pip3 install mfrc522
الخطوة 4: كود Python لقراءة بيانات RFID
إليك سكربت Python لقراءة بيانات بطاقة/علامة RFID باستخدام وحدة RC522.
مثال كود Python
import RPi.GPIO as GPIO
from mfrc522 import SimpleMFRC522
reader = SimpleMFRC522()
try:
print("ضع علامة أو بطاقة RFID بالقرب من القارئ...")
id, text = reader.read()
print(f"معرف بطاقة RFID: {id}")
print(f"النص المخزن: {text}")
except KeyboardInterrupt:
print("إنهاء...")
finally:
GPIO.cleanup()
الخطوة 5: كتابة بيانات إلى بطاقة RFID
يمكنك أيضًا كتابة نص مخصص إلى بطاقة RFID.
مثال كود Python للكتابة
import RPi.GPIO as GPIO
from mfrc522 import SimpleMFRC522
reader = SimpleMFRC522()
try:
text = input("أدخل النص الذي تريد كتابته على بطاقة RFID: ")
print("ضع علامة أو بطاقة RFID بالقرب من القارئ...")
reader.write(text)
print("تم كتابة البيانات بنجاح!")
except KeyboardInterrupt:
print("إنهاء...")
finally:
GPIO.cleanup()
الخطوة 6: تطبيقات وحدة RC522 وحدة RFID
- التحكم بالوصول – استخدم بطاقات RFID لفتح الأبواب أو منح الوصول إلى مناطق مقيدة.
- أنظمة الحضور – تسجيل الدخول والخروج في المدارس أو المكاتب أو الفعاليات.
- إدارة المخزون – تتبع العناصر باستخدام علامات RFID.
- إنترنت الأشياء والأتمتة – تشغيل أجهزة المنزل الذكي أو أنظمة صناعية باستخدام مصادقة RFID.
استكشاف الأخطاء وإصلاحها
-
لم يتم اكتشاف علامة RFID
- تأكد من أن العلامة ضمن 2-3 cm من القارئ.
- تحقق من الأسلاك والاتصالات.
-
خطأ رفض الإذن
- شغّل السكربت باستخدام
sudo:sudo python3 rfid_read.py
- شغّل السكربت باستخدام
-
لم يتم العثور على جهاز SPI
- تأكد من تفعيل SPI (
ls /dev/spidev*يجب أن يعرض الأجهزة). - حاول إعادة تفعيل SPI عبر
sudo raspi-config.
- تأكد من تفعيل SPI (
الخاتمة
تعد وحدة RC522 RFID أداة قوية لدمج التعرف القائم على RFID والأتمتة في مشاريع Raspberry Pi. باتباع هذا الدليل، يمكنك بسهولة قراءة وكتابة بيانات بطاقات RFID، مما يتيح تطبيقات في التحكم بالوصول، والأمان، ومشاريع إنترنت الأشياء. جرّب حالات استخدام مختلفة لاستغلال كامل إمكانياتها! 🚀




