خانه » دانشنامه‌ها » دانشنامه آردوینو » سامانه شناسایی فرکانس رادیویی یا RFID چیست؟
  1. Home
  2. »
  3. دانشنامه‌ها
  4. »
  5. دانشنامه آردوینو
  6. »
  7. سامانه شناسایی فرکانس رادیویی یا RFID چیست؟

سامانه شناسایی فرکانس رادیویی یا RFID چیست؟

بازدید: 605

RFID چیست

سامانه شناسایی فرکانس رادیویی یا RFID (Radio Frequency Identification)، از میدان‌های الکترومغناطیسی برای انتقال داده بصورت بی‌سیم استفاده می‌کند.

 کاربردهای معمول RFID، گذرگاه ورودی برای ایمن‌سازی سایت‌ها، ثبت کتاب در کتابخانه یا ردیابی اجزای تشکیل‌دهنده در یک فرآیند تولید می‌باشند. تگ های RFID پسیو تنها از یک آنتن و یک میکروتراشه تشکیل شده‌اند که با نگه داشتن کارت RFID در مقابل نور سایه آنها قابل مشاهده است. برچسب‌ یا تگ‌های RFID غیرفعال توسط میدان الکترومغناطیس کارتخوان RFID برای دریافت پیام از کارتخوان RFID و انتقال پیام به آن تغذیه می‌شوند.

ماژول کارت خوان MFRC522

 کارت خوان RFID MFRC522 در فرکانس 13.56 مگاهرتز کار می‌کند و کارت‌ها و برچسب‌های بدون تماس MIFARE Classic (مایفر) را می‌خواند، که برای خواندن باید در فاصله 2 سانتی‌متر از کارتخوان RFID باشد. کارت 1 کیلوبایت دارای حافظه داده 1024 است، با 16 بخش از 4 بلوک که هرکدام شامل 16 بایت داده است. ساختار بلوک 6 بایت برای داده یا کلید A  و 4 بایت دسترسی و 6 بایت برای داده یا کلید B است. کارت 4 کیلوبایتی دارای حافظه داده 4096 بایت است، با 32 بخش از چهار بلوک، و 8 بخش از 16 بلوک که هرکدام شامل 16 بایت داده است. اولین بلوک یک کارت 1 یا 4 کیلوبایتی شامل موارد زیر است:

  • شناسه منحصربفرد (UID) : ذخیره شده در 4 بایت بلوک 0
  • کد هگز SAK: 08 و 18 برای MIFARE Classic
  • نوع کارت مدار مجتمع مجاورتی (PICC) : MIFARE 1 یا 4 کیلو

کارت خوان RFID MFRC522 از باس ارتباط جانبی سریال (SPI) برای ارتباط استفاده می‌کند. SPI یک چارچوب کاری master- slave با سه خط دارد: master-out slave-in (MOSI)، master-in slave-out (MISO)، و کلاک سریال (SCK)، با یک خط انتخاب slave جداگانه (SS) برای هر دستگاه ( شکل 1 را مشاهده کنید).  

طرح ارتباط SPI
1. طرح ارتباط SPI

تمامی دستگاه‌ها دارای خطوط MOSI، MISO و SCK هستند، اما خط SS تعیین می‌کند کدام دستگاه با میکروکنترلر ارتباط برقرار کند. پایه‌های SPI آردوینو برای SS، MOSI، MISO و SCK 12،11،10 و 13 هستند. اگر بیش از یک دستگاه SPI وجود داشته باشد، می‌توان از پایه‌های دیگر آردوینو به عنوان خط SS استفاده کرد. پایه SS در کارتخوان MFRC522 RFID برای داده سریال با SDA مشخص می‌شود و پایه وقفه (IRQ) به آردوینو متصل نمی‌شود. کارتخوان MFRC522 RFID باید بجای 5 ولت به 3.3 ولت متصل شود. در مقایسه با SPI، طرح باس I2C، از دو خط دو طرفه SCK و SDA استفاده می‌کند (شکل 2 را مشاهده کنید). میکروکنترلر با همه دستگاه‌ها ارتباط برقرار می‌کند، اما این پیام آدرس دستگاهی است که باید با آن ارتباط برقرار شود، به‌طوری‌که فقط دستگاه مدنظر پاسخ می‌دهد. از آنجایی‌که خطوط دو طرفه هستند، ارتباط I2C آهسته‌تر از ارتباط SPI است. هنگامی‌که مقدار داده خروجی کم باشد مانند سنسورها از  I2C استفاده می‌شود، درحالی‌که ارتباط SPI برای حجم بالای داده بکاربرده می‌شود.

طرح ارتباط I2C
2. طرح ارتباط I2C

بین نامگذاری پایه‌های ماژول‌های SPI تفاوت‌هایی وجود دارد، همانند CS یا SS یا LOAD، MOSI یا DATA یا DIN، و SCK یا CLK.

استفاده از کتابخانه MFRC522 طراحی‌شده توسط Miguel Balbao برای دستورات RFID پیشنهاد می‌شود. این کتابخانه در IDE آردوینو با از استفاده از روش سوم نصب می‌شود.

نمایش محتوای MIFARE Classic در رزولوشن 1k و 4k

اتصالات برای کارت خوان MFRC522 RFID در جدول 1 نشان داده شده‌اند (شکل 3 را مشاهده کنید). کد دستورات برای نمایش محتوای یک کارت بدون تماس MIFARE Classic K 1 یا K 4 تنها به دستور mfrc522.PICC_DumpToSerial(&(mfrc522.uid)) نیاز دارد. مابقی دستورات اتصالات پایه‌ها به آردوینو را مشخص می‌کند، سخت افزار را مقداردهی اولیه می‌کند و منتظر ارائه کارت بدون تماس به کارتخوان RFID می‌شود. اگر یک کارت بدون تماس ارائه و توسط کارتخوان RFID خوانده شده‌باشد با دستوراتmfrc522.PICC_IsNewCardPresent()  و mfrc522.PICC_ ReadCardSerial() مشخص می‌شود.

3
3. کارت خوان RFID

جدول 1  – اتصالات برای کارتخوان RFID

قطعه
متصل به
و متصل
3.3 ولت کارت خوان RFID
3.3 ولت آردوینو
RST کارت خوان RFID
پایه 9 آردوینو
GND کارت خوان RFID
GND آردوینو
IRQ کارت خوان RFID
بدون اتصال
MISO کارت خوان RFID
پایه 12 آردوینو
MOSI کارت خوان RFID
پایه 11 آردوینو
SCK کار خوان RFID
پایه 13 آردوینو
SDA کارتخوان RFID
پایه 10 آردوینو
پایه بلند LED
پایه 3,4 آردوینو
پایه کوتاه LED
مقاومت‌های 220 اهم
GND آردوینو

کد نمایش محتوای کارت بدون تماس مایفر ( MIFARE)

				
					#include <SPI.h> // include SPI library
#include <MFRC522.h> // include MFRC522 library
int RSTpin = 9; // reset pin for MFRC522
int SDApin = 10; // serial data pin
MFRC522 mfrc522(SDApin, RSTpin); // associate mfrc522 with MFRC522 library
void setup()
{
Serial.begin(9600); // Serial output at 9600 baud
SPI.begin(); // initialise SPI bus
mfrc522.PCD_Init(); // initialise card reader
}
void loop()
{
if(!mfrc522.PICC_IsNewCardPresent()>0) return; // wait for a new card
if(!mfrc522.PICC_ReadCardSerial()>0) return; // read card content
mfrc522.PICC_DumpToSerial(&(mfrc522.uid)); // print to Serial Monitor
}

				
			

نظرتان را درباره این مقاله بگویید 2 نظر

سامانه شناسایی فرکانس رادیویی یا RFID چیست؟

با ثبت نظر و نوشتن کامنت، تیم ما را در راستای بهبود و افزایش کیفیت محتوا یاری خواهید کرد :)

فهرست مطالب

مقالات مرتبط

بروزترین مقالات

این مقاله را با دوستانتان به اشتراک بگذارید!

RFID چیست

سامانه شناسایی فرکانس رادیویی یا RFID چیست؟

فهرست مطالب

سامانه شناسایی فرکانس رادیویی یا RFID (Radio Frequency Identification)، از میدان‌های الکترومغناطیسی برای انتقال داده بصورت بی‌سیم استفاده می‌کند.

 کاربردهای معمول RFID، گذرگاه ورودی برای ایمن‌سازی سایت‌ها، ثبت کتاب در کتابخانه یا ردیابی اجزای تشکیل‌دهنده در یک فرآیند تولید می‌باشند. تگ های RFID پسیو تنها از یک آنتن و یک میکروتراشه تشکیل شده‌اند که با نگه داشتن کارت RFID در مقابل نور سایه آنها قابل مشاهده است. برچسب‌ یا تگ‌های RFID غیرفعال توسط میدان الکترومغناطیس کارتخوان RFID برای دریافت پیام از کارتخوان RFID و انتقال پیام به آن تغذیه می‌شوند.

ماژول کارت خوان MFRC522

 کارت خوان RFID MFRC522 در فرکانس 13.56 مگاهرتز کار می‌کند و کارت‌ها و برچسب‌های بدون تماس MIFARE Classic (مایفر) را می‌خواند، که برای خواندن باید در فاصله 2 سانتی‌متر از کارتخوان RFID باشد. کارت 1 کیلوبایت دارای حافظه داده 1024 است، با 16 بخش از 4 بلوک که هرکدام شامل 16 بایت داده است. ساختار بلوک 6 بایت برای داده یا کلید A  و 4 بایت دسترسی و 6 بایت برای داده یا کلید B است. کارت 4 کیلوبایتی دارای حافظه داده 4096 بایت است، با 32 بخش از چهار بلوک، و 8 بخش از 16 بلوک که هرکدام شامل 16 بایت داده است. اولین بلوک یک کارت 1 یا 4 کیلوبایتی شامل موارد زیر است:

  • شناسه منحصربفرد (UID) : ذخیره شده در 4 بایت بلوک 0
  • کد هگز SAK: 08 و 18 برای MIFARE Classic
  • نوع کارت مدار مجتمع مجاورتی (PICC) : MIFARE 1 یا 4 کیلو

کارت خوان RFID MFRC522 از باس ارتباط جانبی سریال (SPI) برای ارتباط استفاده می‌کند. SPI یک چارچوب کاری master- slave با سه خط دارد: master-out slave-in (MOSI)، master-in slave-out (MISO)، و کلاک سریال (SCK)، با یک خط انتخاب slave جداگانه (SS) برای هر دستگاه ( شکل 1 را مشاهده کنید).  

طرح ارتباط SPI
1. طرح ارتباط SPI

تمامی دستگاه‌ها دارای خطوط MOSI، MISO و SCK هستند، اما خط SS تعیین می‌کند کدام دستگاه با میکروکنترلر ارتباط برقرار کند. پایه‌های SPI آردوینو برای SS، MOSI، MISO و SCK 12،11،10 و 13 هستند. اگر بیش از یک دستگاه SPI وجود داشته باشد، می‌توان از پایه‌های دیگر آردوینو به عنوان خط SS استفاده کرد. پایه SS در کارتخوان MFRC522 RFID برای داده سریال با SDA مشخص می‌شود و پایه وقفه (IRQ) به آردوینو متصل نمی‌شود. کارتخوان MFRC522 RFID باید بجای 5 ولت به 3.3 ولت متصل شود. در مقایسه با SPI، طرح باس I2C، از دو خط دو طرفه SCK و SDA استفاده می‌کند (شکل 2 را مشاهده کنید). میکروکنترلر با همه دستگاه‌ها ارتباط برقرار می‌کند، اما این پیام آدرس دستگاهی است که باید با آن ارتباط برقرار شود، به‌طوری‌که فقط دستگاه مدنظر پاسخ می‌دهد. از آنجایی‌که خطوط دو طرفه هستند، ارتباط I2C آهسته‌تر از ارتباط SPI است. هنگامی‌که مقدار داده خروجی کم باشد مانند سنسورها از  I2C استفاده می‌شود، درحالی‌که ارتباط SPI برای حجم بالای داده بکاربرده می‌شود.

طرح ارتباط I2C
2. طرح ارتباط I2C

بین نامگذاری پایه‌های ماژول‌های SPI تفاوت‌هایی وجود دارد، همانند CS یا SS یا LOAD، MOSI یا DATA یا DIN، و SCK یا CLK.

استفاده از کتابخانه MFRC522 طراحی‌شده توسط Miguel Balbao برای دستورات RFID پیشنهاد می‌شود. این کتابخانه در IDE آردوینو با از استفاده از روش سوم نصب می‌شود.

نمایش محتوای MIFARE Classic در رزولوشن 1k و 4k

اتصالات برای کارت خوان MFRC522 RFID در جدول 1 نشان داده شده‌اند (شکل 3 را مشاهده کنید). کد دستورات برای نمایش محتوای یک کارت بدون تماس MIFARE Classic K 1 یا K 4 تنها به دستور mfrc522.PICC_DumpToSerial(&(mfrc522.uid)) نیاز دارد. مابقی دستورات اتصالات پایه‌ها به آردوینو را مشخص می‌کند، سخت افزار را مقداردهی اولیه می‌کند و منتظر ارائه کارت بدون تماس به کارتخوان RFID می‌شود. اگر یک کارت بدون تماس ارائه و توسط کارتخوان RFID خوانده شده‌باشد با دستوراتmfrc522.PICC_IsNewCardPresent()  و mfrc522.PICC_ ReadCardSerial() مشخص می‌شود.

3
3. کارت خوان RFID

جدول 1  – اتصالات برای کارتخوان RFID

قطعه
متصل به
و متصل
3.3 ولت کارت خوان RFID
3.3 ولت آردوینو
RST کارت خوان RFID
پایه 9 آردوینو
GND کارت خوان RFID
GND آردوینو
IRQ کارت خوان RFID
بدون اتصال
MISO کارت خوان RFID
پایه 12 آردوینو
MOSI کارت خوان RFID
پایه 11 آردوینو
SCK کار خوان RFID
پایه 13 آردوینو
SDA کارتخوان RFID
پایه 10 آردوینو
پایه بلند LED
پایه 3,4 آردوینو
پایه کوتاه LED
مقاومت‌های 220 اهم
GND آردوینو

کد نمایش محتوای کارت بدون تماس مایفر ( MIFARE)

				
					#include <SPI.h> // include SPI library
#include <MFRC522.h> // include MFRC522 library
int RSTpin = 9; // reset pin for MFRC522
int SDApin = 10; // serial data pin
MFRC522 mfrc522(SDApin, RSTpin); // associate mfrc522 with MFRC522 library
void setup()
{
Serial.begin(9600); // Serial output at 9600 baud
SPI.begin(); // initialise SPI bus
mfrc522.PCD_Init(); // initialise card reader
}
void loop()
{
if(!mfrc522.PICC_IsNewCardPresent()>0) return; // wait for a new card
if(!mfrc522.PICC_ReadCardSerial()>0) return; // read card content
mfrc522.PICC_DumpToSerial(&(mfrc522.uid)); // print to Serial Monitor
}

				
			

نظرتان را درباره این مقاله بگویید 2 نظر

سامانه شناسایی فرکانس رادیویی یا RFID چیست؟

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

چهار × 1 =

فروشگاه