ใช้โมดูล RC522 RFID กับ Raspberry Pi

Using the RC522 RFID Module with the Raspberry Pi

ที่ โมดูล RC522 RFID อนุญาตให้ Raspberry Pi อ่านและเขียนแท็ก RFID (การระบุความถี่คลื่นวิทยุ) ทำให้เป็นประโยชน์สำหรับการควบคุมการเข้าถึงระบบอัตโนมัติและโครงการ IoT คู่มือนี้จะแสดงวิธีการเชื่อมต่อกำหนดค่าและอ่านการ์ด RFID โดยใช้ Raspberry Pi และ Python


สิ่งที่คุณต้องการ

  1. Raspberry Pi (รุ่นใด ๆ ที่มีการสนับสนุน SPI เช่น Pi 3, Pi 4)
  2. โมดูล RC522 RFID
  3. แท็กหรือการ์ด RFID (เข้ากันได้กับความถี่ 13.56MHz)
  4. เครื่องหั่นขนมปังและสายจัมเปอร์
  5. ติดตั้ง Python บนราสเบอร์รี่ pi ของคุณ

ขั้นตอนที่ 1: เดินสาย RC522 ไปยัง Raspberry Pi

RC522 สื่อสารกับ Raspberry Pi โดยใช้ โปรโตคอล SPI.

การเชื่อมต่อ (โหมด SPI)

rc522 pin Raspberry Pi Pin การทำงาน
VCC 3.3V (พิน 1) แหล่งจ่ายไฟ
gnd พื้นดิน (พิน 6) พื้น
SDA (SS) GPIO8 (พิน 24) เลือกชิป SPI
SCK GPIO11 (พิน 23) นาฬิกา SPI
Mosi GPIO10 (พิน 19) อินพุตข้อมูล SPI
มิโซะ GPIO9 (พิน 21) เอาต์พุตข้อมูล SPI
ครั้งแรก GPIO25 (พิน 22) รีเซ็ต

บันทึก: RC522 ทำงานที่ 3.3V- ทำ ไม่ เชื่อมต่อกับ 5V เนื่องจากอาจสร้างความเสียหายให้กับโมดูล


ขั้นตอนที่ 2: เปิดใช้งานอินเตอร์เฟส SPI

RC522 ใช้ SPI (อินเทอร์เฟซต่อพ่วงอนุกรม) สำหรับการสื่อสารดังนั้นเราต้องเปิดใช้งาน SPI บน Raspberry Pi

  1. เปิดเครื่องมือกำหนดค่า Raspberry Pi:

    sudo raspi-config
    
  2. นำทางไปยัง ตัวเลือกอินเตอร์เฟส> SPI และเปิดใช้งาน

  3. รีบูตราสเบอร์รี่ pi:

    sudo reboot
    
  4. ตรวจสอบว่าเปิดใช้งาน SPI:

    ls /dev/spidev*
    

    คุณควรเห็น /dev/spidev0.0 และ /dev/spidev0.1.


ขั้นตอนที่ 3: ติดตั้งไลบรารีที่ต้องการ

  1. อัปเดต Raspberry Pi ของคุณ:
    sudo apt update && sudo apt upgrade -y
    
  2. ติดตั้งไลบรารี 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("Place your RFID tag or card near the reader...")
    id, text = reader.read()
    print(f"RFID Tag ID: {id}")
    print(f"Stored Text: {text}")

except KeyboardInterrupt:
    print("Exiting...")
finally:
    GPIO.cleanup()

ขั้นตอนที่ 5: การเขียนข้อมูลไปยังแท็ก RFID

คุณยังสามารถเขียนข้อความที่กำหนดเองไปยังแท็ก RFID

ตัวอย่างรหัส Python สำหรับการเขียนข้อมูล

import RPi.GPIO as GPIO
from mfrc522 import SimpleMFRC522

reader = SimpleMFRC522()

try:
    text = input("Enter text to write to the RFID tag: ")
    print("Place your RFID tag near the reader...")
    reader.write(text)
    print("Data written successfully!")

except KeyboardInterrupt:
    print("Exiting...")
finally:
    GPIO.cleanup()

ขั้นตอนที่ 6: แอปพลิเคชันของโมดูล RC522 RFID

  1. การควบคุมการเข้าถึง - ใช้บัตร RFID เพื่อปลดล็อกประตูหรือให้สิทธิ์การเข้าถึงพื้นที่ จำกัด
  2. ระบบการเข้าร่วม - บันทึกรายการและออกในโรงเรียนสำนักงานหรือกิจกรรม
  3. การจัดการสินค้าคงคลัง - ติดตามรายการโดยใช้แท็ก RFID
  4. IoT และระบบอัตโนมัติ - ทริกเกอร์อุปกรณ์สมาร์ทโฮมหรือระบบอุตสาหกรรมด้วยการตรวจสอบสิทธิ์ RFID

การแก้ไขปัญหา

  1. ไม่พบแท็ก RFID

    • ตรวจสอบให้แน่ใจว่าแท็กอยู่ภายใน 2-3 ซม. ของผู้อ่าน
    • ตรวจสอบสายไฟและการเชื่อมต่อ
  2. การอนุญาตถูกปฏิเสธข้อผิดพลาด

    • เรียกใช้สคริปต์ด้วย sudo:
      sudo python3 rfid_read.py
      
  3. ไม่พบอุปกรณ์ SPI

    • ตรวจสอบให้แน่ใจว่าเปิดใช้งาน SPI (ls /dev/spidev* ควรแสดงรายการอุปกรณ์)
    • ลองเปิดใช้งาน SPI อีกครั้งผ่าน sudo raspi-config.

บทสรุป

ที่ โมดูล RC522 RFID เป็นเครื่องมือที่ทรงพลังสำหรับการรวมการระบุตัวตนที่ใช้ RFID และระบบอัตโนมัติเข้ากับโครงการ Raspberry Pi โดยทำตามคำแนะนำนี้คุณสามารถอ่านและเขียนข้อมูลแท็ก RFID ได้อย่างง่ายดายเปิดใช้งานแอปพลิเคชันในการควบคุมการเข้าถึงความปลอดภัยและโครงการ IoT ทดลองกับกรณีการใช้งานที่แตกต่างกันเพื่อปลดล็อกศักยภาพอย่างเต็มที่! 🚀

แสดงความคิดเห็น

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.