🪪 کارت‌خوان RFID (RC522) (RC522 RFID Reader)

اسم انگلیسیRC522 RFID Reader
در ووکوی (Wokwi)نسخه‌ی آماده‌ای سراغ نداریم
دسته📦 ماژول‌ها
در شبیه‌ساز فارسیمود ساده (بدون کد) و مود آردوینو · رایگان

کارت‌خوان RFID RC522 (RC522 RFID Reader) ماژولی با تراشه‌ی MFRC522 است که کارت‌ها و جاکلیدی‌های ۱۳٫۵۶ مگاهرتزی را از فاصله‌ی چند سانتی‌متری می‌خواند؛ یک کارت سفید و یک جاکلیدی معمولاً همراه خود ماژول است. هر کارت یک شناسه‌ی یکتا به اسم UID دارد (اغلب ۴ بایت)؛ آردوینو آن را با فهرست کارت‌های مجاز مقایسه می‌کند و تصمیم می‌گیرد. قفل در، حضور و غیاب، صندوق امانات و بازی‌های کارتی پروژه‌های همیشگی‌اش هستند.

RC522 در ووکوی (Wokwi)

تا جایی که می‌دانیم ووکوی نسخه‌ی آماده‌ی کارت‌خوان RC522 را ندارد. برای تست منطق قفل در ووکوی، «کارت» را با یک wokwi-pushbutton شبیه‌سازی کن: فشار دکمه یعنی «کارت مجاز نزدیک شد»، و بقیه‌ی برنامه (LEDها، سروو، بازر) همان می‌ماند. وقتی منطق درست شد، فقط تابع خواندن کارت را جایگزین می‌کنی.

خود RC522 در تینکرکد فارسی هست: در پنل «خواص» یکی از سه کارت مجازی را جلوی کارت‌خوان می‌گیری. باز کردن و خواندن مثال‌ها رایگان است؛ این ماژول جزو ماژول‌های حرفه‌ای است و اجرایش اشتراک Plus می‌خواهد. پروژه‌ی آماده: قفل در با کارت RFID.

سیم‌کشی با آردوینو

پایه‌ی RC522وصل به
SDA (همان SS در SPI)پین 10
SCKپین 13
MOSIپین 11
MISOپین 12
IRQآزاد
GNDGND
RSTپین 9
3.3Vپایه‌ی 3.3V آردوینو (نه 5V)
LED سبز / قرمزپین 5 / پین 6، هر کدام با ۲۲۰ اهم به GND

در عمل بیشتر ماژول‌ها با خطوط داده‌ی ۵ ولتی اونو کار می‌کنند، ولی برای پروژه‌ای که قرار است ماه‌ها روشن بماند، یک مبدل سطح منطقی روی خطوط SPI مطمئن‌تر است.

کد نمونه

// RC522: compare the card UID with one allowed card.
// Green LED on pin 5 = allowed, red LED on pin 6 = unknown card.
#include <SPI.h>
#include <MFRC522.h>

const int SS_PIN = 10;
const int RST_PIN = 9;
const int GREEN = 5;
const int RED = 6;

MFRC522 rfid(SS_PIN, RST_PIN);
byte allowed[4] = {0xDE, 0xAD, 0xBE, 0xEF};   // replace with your card's UID

bool isAllowed() {
  if (rfid.uid.size != 4) return false;
  for (byte i = 0; i < 4; i++) {
    if (rfid.uid.uidByte[i] != allowed[i]) return false;
  }
  return true;
}

void setup() {
  Serial.begin(9600);
  SPI.begin();
  rfid.PCD_Init();
  pinMode(GREEN, OUTPUT);
  pinMode(RED, OUTPUT);
  Serial.println("Hold a card near the reader");
}

void loop() {
  if (!rfid.PICC_IsNewCardPresent()) return;
  if (!rfid.PICC_ReadCardSerial()) return;

  Serial.print("UID:");
  for (byte i = 0; i < rfid.uid.size; i++) {
    Serial.print(" ");
    if (rfid.uid.uidByte[i] < 0x10) Serial.print("0");
    Serial.print(rfid.uid.uidByte[i], HEX);
  }
  Serial.println();

  int led = isAllowed() ? GREEN : RED;
  digitalWrite(led, HIGH);
  delay(1500);
  digitalWrite(led, LOW);

  rfid.PICC_HaltA();          // done with this card
  rfid.PCD_StopCrypto1();
}

اول با همین برنامه UID کارت خودت را از سریال مانیتور بخوان (مثلاً 3A 7F 12 C4) و چهار بایتش را جای آرایه‌ی allowed بگذار. کتابخانه‌ی MFRC522 را از Library Manager نصب کن. فاصله‌ی خواندن معمولاً دو تا چهار سانتی‌متر است و هر فلزی پشت آنتن، مثلاً قاب فلزی جعبه یا در آهنی، آن را کم می‌کند؛ ماژول را پشت پلاستیک یا چوب نازک نصب کن.

اشتباه‌های رایج

آموزش‌های مرتبط

سؤال‌های رایج

ماژول RC522 را به ۵ ولت وصل کنم یا ۳٫۳ ولت؟

فقط ۳٫۳ ولت. تراشه‌ی MFRC522 برای ۳٫۳ ولت ساخته شده و ۵ ولت روی پایه‌ی تغذیه می‌تواند آن را خراب کند. پایه‌ی 3.3V آردوینو اونو برای تغذیه‌ی یک RC522 کافی است.

RC522 چه کارت‌هایی را می‌خواند؟

کارت‌ها و تگ‌های ۱۳٫۵۶ مگاهرتزی مثل MIFARE Classic و MIFARE Ultralight. کارت‌های ۱۲۵ کیلوهرتزی، مثل EM4100 که در بعضی ساختمان‌ها هست، را نمی‌خواند.

ووکوی ماژول RFID دارد؟

تا جایی که می‌دانیم نه. منطق قفل را می‌توانی در ووکوی با یک دکمه به‌جای کارت تست کنی و خود RC522 را در تینکرکد فارسی، با اشتراک Plus، با کارت‌های مجازی امتحان کنی.

📖 طرز کار، مشخصات فنی و نکته‌های خرید این قطعه در دانشنامه‌ی تینکرکد فارسی: کارت‌خوان RFID (RC522) آمده است.

آموزش‌هایی که از این قطعه استفاده می‌کنند

🔐

قفل در با کارت RFID (MFRC522) و سروو موتور در آردوینو

💡

۳۰ ایده پروژه اینترنت اشیا با ESP32، از مبتدی تا پیشرفته (با قطعه‌ها و نقطه‌ی شروع)

قطعه‌های دیگرِ ماژول‌ها

⏰

ماژول ساعت RTC (DS3231)

DS3231 Real-Time Clock Module

🧲

رله

Relay Module (5V)

💾

ماژول کارت SD

microSD Card Module

📱

ماژول بلوتوث HC-05

HC-05 Bluetooth Module

همه‌ی ۱۰۵ قطعه ← · آموزش مدار

کارت‌خوان RFID (RC522) را در شبیه‌ساز امتحان کن 🚀