SiteLogo

آموزش راه‌اندازی ماژول RFID روی رزبری پای با پایتون

0 88
آموزش راه‌اندازی ماژول RFID روی رزبری پای با پایتون

فناوری RFID (شناسایی امواج رادیویی) یکی از ابزارهای قدرتمند در شناسایی و ردیابی اشیا است که در سیستم‌های کنترل دسترسی، مدیریت انبار و پرداخت‌های بدون تماس کاربرد گسترده‌ای دارد. رزبری پای، با قابلیت‌های بالا و قیمت مناسب، گزینه‌ای ایده‌آل برای پیاده‌سازی پروژه‌های RFID است. در این مقاله، به‌طور کامل و گام‌به‌گام، نحوه راه‌اندازی ماژول **MFRC522** با رزبری پای به زبان پایتون را بررسی می‌کنیم. از فعال‌سازی SPI تا خواندن و نوشتن اطلاعات روی تگ‌های RFID، همه‌چیز به‌صورت ساده و کاربردی آموزش داده می‌شود. اگر به فناوری RFID و اینترنت اشیا علاقه‌مند هستید، این مقاله نقطه شروع مناسبی برای شماست!


1. فعال‌سازی SPI روی رزبری پای

ماژول RFID از طریق پروتکل SPI با رزبری پای ارتباط برقرار می‌کند. بنابراین، ابتدا باید SPI را روی رزبری پای فعال کنید.

  1. ترمینال رزبری پای را باز کنید.
  2. دستور زیر را اجرا کنید تا به تنظیمات رزبری پای دسترسی پیدا کنید:

    bash

    sudo raspi-config
    
  3. به منوی Interfacing Options بروید.
  4. گزینه SPI را انتخاب کنید و آن را فعال کنید.
  5. تغییرات را ذخیره کرده و از تنظیمات خارج شوید.
  6. رزبری پای را ری‌استارت کنید:

bash

sudo reboot

2. اتصال ماژول RFID به رزبری پای

ماژول MFRC522 دارای پین‌های زیر است. این پین‌ها را به رزبری پای مطابق جدول زیر وصل کنید:

پین ماژول RFID پین رزبری پای توضیحات
SDA (SS) GPIO 8 (CE0) انتخاب اسلیو (Slave Select)
SCK GPIO 11 (SCLK) کلاک SPI
MOSI GPIO 10 (MOSI) ارسال داده به ماژول
MISO GPIO 9 (MISO) دریافت داده از ماژول
IRQ (اختیاری) وقفه (استفاده نمی‌شود)
GND GND زمین
RST GPIO 25 ریست ماژول
3.3V 3.3V تغذیه 3.3 ولت

نکته: اطمینان حاصل کنید که ماژول RFID را به 3.3V رزبری پای وصل می‌کنید. اتصال به 5V ممکن است به ماژول یا رزبری پای آسیب برساند.


3. نصب کتابخانه‌های مورد نیاز

برای ارتباط با ماژول RFID، از کتابخانه mfrc522 استفاده می‌کنیم. این کتابخانه را با دستور زیر نصب کنید:

bash

pip install mfrc522

اگر pip نصب نیست، ابتدا آن را نصب کنید:

bash

sudo apt install python3-pip

4. نوشتن کد پایتون

در این مرحله، یک کد کامل برای خواندن اطلاعات از کارت RFID و نوشتن اطلاعات روی آن می‌نویسیم.

کد خواندن اطلاعات از کارت RFID:

python

import RPi.GPIO as GPIO
from mfrc522 import SimpleMFRC522

# Creating an object from a class SimpleMFRC522
reader = SimpleMFRC522()

try:
    print("Please bring the RFID card closer...")
    
    # Reading card information
    id, text = reader.read()
    
    print(f"Card ID: {id}")
    print(f"Saved text: {text}")

except KeyboardInterrupt:
    # If you press Ctrl+C, the program will terminate.
    print("The program was stopped.")

finally:
    # Clearing GPIO pins
    GPIO.cleanup()

کد نوشتن اطلاعات روی کارت RFID:

python

import RPi.GPIO as GPIO
from mfrc522 import SimpleMFRC522

# Creating an object from a class SimpleMFRC522
reader = SimpleMFRC522()

try:
    print("Please bring the RFID card closer...")
    
    # Receive text from user
    text = input("Enter the text you want to save on the card:")
    
    # Writing text on the card
    print("Bring the card closer...")
    reader.write(text)
    
    print("The information was successfully written to the card.")

except KeyboardInterrupt:
    # If you press Ctrl+C, the program will terminate.
    print("The program was stopped.")

finally:
    # Clearing GPIO pins
    GPIO.cleanup()

5. اجرای کد

کد بالا را در یک فایل پایتون ذخیره کنید (مثلاً rfid_reader.py یا rfid_writer.py) و سپس آن را اجرا کنید:

bash

python3 rfid_reader.py

یا برای نوشتن اطلاعات روی کارت:

bash

python3 rfid_writer.py

6. توضیحات اضافی

  • خواندن اطلاعات: وقتی کارت RFID را نزدیک ماژول قرار می‌دهید، ID کارت و متن ذخیره شده روی آن نمایش داده می‌شود.
  • نوشتن اطلاعات: می‌توانید متن دلخواه را روی کارت RFID بنویسید. دقت کنید که نوشتن اطلاعات، اطلاعات قبلی روی کارت را پاک می‌کند.
  • پاک‌سازی GPIO: همیشه در پایان برنامه، پین‌های GPIO را با دستور GPIO.cleanup() پاک‌سازی کنید تا از مشکلات بعدی جلوگیری شود.

7. رفع مشکلات رایج

  • ماژول RFID کار نمی‌کند:
    • مطمئن شوید SPI فعال است.
    • اتصالات را دوباره بررسی کنید.
    • از تغذیه 3.3V استفاده کنید.
  • خطا در نصب کتابخانه:
    • اطمینان حاصل کنید که pip و python3 نصب هستند.
    • اگر خطایی مربوط به مجوزها مشاهده کردید، دستورات را با sudo اجرا کنید.

با دنبال کردن این مراحل، شما می‌توانید به‌طور کامل و دقیق ماژول RFID را با رزبری پای راه‌اندازی کرده و از آن استفاده کنید.

''''''''''''''''