RFID / NFC مدارهای الکترونیک پروژه های آردوینو

آموزش راه اندازی آر اف آی دی MRFC522 ماژول RFID با آردوینو – بخش اول

نوشته شده توسط علیرضا قربانی

آموزش ماژول RFID MRFC522 در آردوینو

در این پست به معرفی تکنولوژی RFID و همچنین آموزش راه‌اندازی ماژول MRFC522 خواهیم پرداخت. در ادامه با مرکز تخصصی آردوینو ، دیجی اسپارک همراه باشید.

 

تکنولوژی RFID چیست؟

RFID مخفف سه کلمه Radio Frequency Identification به معنای شناسایی به کمک امواج رادیویی است. RFID با استفاده از ارتباطات مبتنی بر فرکانس های رادیویی امکان شناسایی خودکار ، ردیابی و مدیریت اشیاء ، انسان و حیوانات را فراهم می نماید . عملکرد RFID وابسته به دو دستگاه تگ و  کدخوان است که جهت برقراری ارتباط بین یکدیگر از امواج رادیویی استفاده می نمایند.     اصولاً سامانه های RFID از سیگنالهای الکترونیکی و الکترو مغاطیسی برای خواندن و نوشتن داده ها بدون تماس بهره گیری می کنند. Tag ها وسیله شناسایی متصل شده به کالایی است که ما می خواهیم آن را رد یابی کنیم و دستگاههای خواننده (Reader ) وسایلی هستند که حضور برچسب ها را در محیط تشخیص داده و اطلاعات ذخیره شده در آن ها را بازیابی می کنند.سیستم‌های RFID  ،در بسیاری از ساختمان‌های اداری به منظور تردد کارکنان و حضور و غیاب آ‌ن‌ها ، در کنترل تردد خودروها ، کنترل موجودی انبار ، در فروشگاه‌های زنجیره‌ای به منظور فروش اجناس ( همانند دو فروشگاه وال مارت و مک دونالد) و  . . . کاربرد دارد.

 

 

چکونگی عمل‌کرد سیستم‌هایRFID

سیستم RFID شامل برچسب یا tag ( تراشه (chip)  و آنتن ) و یک reader می‌باشد. این سیستم به گونه‌ای است که reader امواجی الکترومغناطیسی را ارسال می‌کند و زمانی که tag  امواج را دریافت می‌کند ، به آن‌ها پاسخ می‌دهد و اطلاعات به سمت reader ارسال می‌کند.

آموزش RFID Arduino

 

تگ RFID چیست و وظیقه‌ی اصلی آن چیست

وظیفه اولیه‌ی یک تگ ذخیره اطلاعات و ارسال آن به Reader می‌باشد .در ساده ترین حالت ممکن ، یک تگ RFID  شامل یک چیپ و یک آنتن می‌باشد که در یک بسته در کنار یکدیگر قرار می‌گیرند.برچسب‌های RFID هر کدام دارای یک کد منحصربه‌فرد می‌باشند بطوریکه هیچ دو برچسبی در دنیا تولید نخواهد شد که کد یا ID یکسانی داشته باشند و کلیهٔ تولید کنندگان Tag تحت نظر انجمن بین‌المللی مبادرت به ثبت آنها می‌نمایند.

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

آنتن : آنتن به چیپ متصل می‌باشد که یک فرستنده گیرنده رادیویی را ایجاد می‌کند و وظیفه آن انتقال اطلاعات بین تگ و Reader ( دستگاه خواننده RFID ) را بر عهده دارد.

نمایی از تگ RFID
نمایی از تگ RFID

 

انواع تگ RFID آر اف آی دی

تگ‌های غیرقعال :

تگ‌های غیر فعّال، باتری ندارند و انرژی لازم برای فعال سازی چیپ درونی و ارسال اطلاعات خود را از سیگنالی که از آنتن Reader دریافت می‌دارند، تأمین می‌کنند. بدین ترتیب که ابتدا Reader امواجی را به سمت تگ ارسال می‌دارد، سپس چیپ امواجی را که باید برگشت داده شوند ، تنظیم و توسط آنتن خودش برای Reader ارسال می‌کند و Reader ، امواج دریافتی را به داده‌های رقمی تبدیل می‌کند.

تگ‌ نیمه فعال:

ابن تگ دارای باتری است  و زمانی که نیروی فعال کننده را از Reader دریافت می‌کند ، باتری را به کار می‌اندازد و اطلاعات چیپ را ارسال می‌کند. در این نوع تگ در مصرف باتری صرفه‌جویی می‌شود و عمر باتری افزایش پیدا می‌کند.

 

تگ فعال:

این تگ نیز همانند تگ‌های نیمه فعال دارای باتری می‌باشد با این تفاوت که همیشه فعال می‌باشند و مدام در حال ارسال اطلاعات به سمت Reader می‌باشند.

نمایی از کارت‌های فعال RFID

 

 

سخت افزار مورد نیاز:

ماژول آردوینو Uno

ماژول MRFC522  (خرید از فروشگاه)

 

ماژولRFID MRFC522

این ماژول RFID  در محدوده فرکانسی ۱۳٫۵۶ مگاهرتز کار می‌کند و علاوه بر خوندن اطلاعات، توانایی نوشتن بر روی تگ‌های MIFARE را دارا می‌باشد.

از ویژگی‌های شاخص این ماژول می‌توان به موارد زیر اشاره نمود :

  • ولتاژ مصرفی ۲٫۵ تا ۳٫۳ ولت DC
  • جریان مصرفی بسیار پایین
  • دارای یک بافر ۶۴ بیتی همراه با ساختمان داده ی FIFO برای دریافت و ارسال اطلاعات
  • دارای مد وقفه برای پردازش سریع‌تر اطلاعات
  • پشتیبانی از سه پروتکل ارتباطی I2C – SPI – Serial UART

طریقه اتصال پین‌های ماژول در سه پروتکل ارتباطی I2C – SPI – Serial UART به صورت زیر می‌باشد:

آموزش راه اندازی ماژول MRFC522
طریقه اتصال پین‌های ماژول MRFC522 به آردوینو

در  پروژه انجام شده توسط آردوینو Uno :

  • پین RST ماژول MRFC522 به پین شماره ۵ آردوینو متصل می‌شود.
  • پین SDA ماژول RFID به پین شماره ۱۰ آردوینومتصل می‌شود.
  • پین MOSI ماژول به پین شماره ۱۱ آردوینو متصل می‌شود.
  • پین MISO ماژول به پین شماره ۱۲ آردوینو متصل می‌شود.
  • پین SCK ماژول به پین شماره ۱۳ آردوینو متصل می‌شود.

 

تگ مایفر MIFARE چیست؟

نوعی از کارت‌های RFID با قابلیت ذخیره اطلاعات می‌باشند. در این نوع کارت‌ها حافظه به مقدار دلخواه وجود دارد بطوریکه هرنوع اطلاعات مربوط به کنترل و دسترسی می‌تواند مستقیماً روی برچسب (TAG) و درحافظهٔ آن نوشته شود. در این صورت این برچسب درست مانند یک شناسنامهٔ الکترونیکی همراه محصول عمل خواهد کرد.

در شکل زیر ساختار حافظه EEPROM یک تگ مایفر ۱ کیلوبایتی را مشاهده می‌کنید.

آموزش راه اندازی ماژول MRFC522 Arduino

این تگ مایفر ۱ کیلوبایتی دارای ۱۶ سکتور می‌باشد که هر سکتور نیز از ۴ بلاک تشکیل شده است که هر بلاک نیز داری ۱۶ بایت می‌باشد. چهارمین بلاک از هر سکتور شامل کلید‌های امنیتی و بیت‌های دسترسی قرار دارد که از آن‌ها برای دستیابی به دیتاهای ذخیره شده استفاده می‌شود.

 

کدهای آردوینو ماژول RFID

 

محدودیت در دسترسی کامل به این مجموعه آموزش

 

دسترسی کامل به آموزش برای اعضای دیجی اسپارک امکان پذیر است. بخش اصلی آموزش شامل سورس کدهای توسعه داده شده توسط مهندس‌های دیجی اسپارک است. به همین دلیل این آموزش خاص و یکتاست. برای استفاده از آن بایستی عضویت تهیه کنید. تبادل نظر با کاربران و پرسش سوال رایگان است و میتوانید از بخش نظرات همین آموزش اقدام کنید.

 

در قسمت‌های بعدی به آموزش پروژه‌های پیشرفته با این ماژول خواهیم پرداخت.

چنانچه در مراحل راه اندازی و انجام این پروژه با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریع‌ترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد.

 

در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.

 

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

علیرضا قربانی

علیرضا قربانی هستم دانشجوی مهندسی پزشکی. چیزهای خیلی زیادی رو در دنیا دوست دارم. یک گیک هستم و یشه گفت یک هکر. نه به معنی دزدی پسورد و ایمیل مردم. به معنی عشق به دونستن و عشق به تحقیق درباره خیلی از چیزهایی که می بینم و می‌شنوم. اگر بخوام علاقه‌مندی‌ درجه یکم رو نام ببرم میتونم بگم برنامه نویسی و بعد از اون امبدد سیستم ها.

تبادل نظر و رفع عیب با ثبت دیدگاه

۹۵ دیدگاه

  • سلام
    مطالب بسیار مفیدی بود. در صورت امکان مطالب تکمیلی در زمینه RFID نیز قرار بدهید.مانند نحوه خواندن و نوشتن روی کارت مایفر…

    متشکرم.

    • درود
      تفاوتی نداره که
      اونم از پروتکل spi استفاده میکنه و کدهاش دقیقا همانند اینه

      • پین rst و sda رو به هر پین دلخواه دیجیتال آردوینو میتونی وصل کنی
        پین mosi را به ۱۱ ، miso را به ۱۲ , sck را به ۱۳

  • با سلام و احترام
    بنده این کدها رو برای آردوینو ۱٫۶ انجام دادم جواب نداد.
    میشه لطف کنید بگید از چه ورژنی باید استفاده شود؟

    • سلام
      ارتباطی به ورژن آردوینو نداره
      کتابخانه را دانلود کنید و به IDE آردینو اضافه کنید مشکل بر طرف میشه

  • the library “rfid- master ” cannot be used. library names must contain only basic letters and numbers(ASCII only and no spaces, and it cannot start with a number)

    تمام مسیری رو که تو این صفحه گفته بودید انجام دادم ولی هنگام اجرا برنامه، خطای عدم شناسایی تابع ها مشکل سازه
    لطف می کنید اگه راهماییم کنید
    متشکر

  • سلامی دوباره
    متشکرم از کمکتون
    برنامه رو دوباره نصب کردم درست شد
    الان تمام کار ها رو انجام میدم
    هم ورژن مازول و هم نوشته ی توی برنامه در قسمت serial monitor به نمایش در میاد، منتها وقتی کارت رو نزدیک می کنم هیچ اتفاقی نمی افته، نه تنها برای این برنامه، برنامه های دیگه هم امتحان کردم بازم جواب نگرفتم
    امکان داره آنتن ماژول مشکل داشته باشه؟
    این در صورتی است که دیود ماژول هم روشن می شه
    البته پایه ها رو تقریبا ۲۰ باری چک کردم
    بازم درست نمیشه
    راه هست که بشه فهمید قطعات ماؤول سالمه یا نه؟
    خیلی خیلی سپاس گزارم

    • سلام
      ادامه ى این آموزش در دستور کار قرار دارد و به زودى منتشر خواهد شد.

  • با سلام
    عالی بود
    درصورت امکان نحوه نوشتن و خواندن داده را برروی تگ توضیح دهید.

    با تشکر از آموزش جامع

  • سلام
    ممنون از کمکتون
    ماژول کاملا راه اندازی میشه.
    در واقع من می خواستم وقتی یه کارت مشخص رو نزدیک میکنم یه led روشن بشه، ولی وقتی این کد ها رو راه اندازی میکنم کلی داده مثل زیر نمایش داده میشه

    Scan PICC to see UID and type…

    Card UID : 84 90 6C A7

    PICC type : MIFARE 1KB

    Sector Block 0 1 2 3 4 5 6 7 …

    ۱۵ ۶۳ ۰۰ ۰۰ ۰۰ ۰۰ …
    خلاصه نوشتم.
    در صورتی که فقط به Card UID نیاز دارم و اون هم ۸۴ ۹۰ ۶C A7 هست.
    برای این کار نیازه که uid کارت رو بخونم ولی نمی دونم از چه دستوری
    میتونید کمکم کنید؟

  • سلام
    این اخطار برای چیه

    MFRC522 Software Version: 0x0 (unknown)
    WARNING: Communication failure, is the MFRC522 properly connected?
    Scan PICC to see UID, type, and data blocks…

  • سلام
    سپاس فراوان بخاطر کاملترین و بهترین مطالبی که در مورد اردوینو قرار می دهید

    ما همچنان منتظر ادامه مطالب rc-522 rfid هستیم

  • سلام لطفا اگه میشه سورس و آموزش های درب باز کن با rfid و ماژول آردوینو رو بزارید . ممنون میشم

  • با سلام
    ممنون از سایت خوبتون. بنده میخاستم همین مداری که گفتینو درست کنم اما میخام برد ریدرم ۱ الی۲ متر باشه. آیا میشه اینکارو کرد یا نه؟ میتونین راهنمایی کنین؟ ممنون میشم/

  • سلام خسته نباشید من می خواستم با استفاده از ماژول RFID RC522 و اردینو مگا با شناسایی کارت من رله روشن بشه و با دور کردن کارت رله خاموش بشه.

    ممنون میشم راهنماییم کنید

  • سلام خسته نباشید
    من طبق این اموزشات رفتم جلو همه چیز رو درست انحام دادم ولی هیچ جوابی دریافت نمیکنم
    مشکل از چی میتونه باشه؟
    نشانه سوختن ماژول چیه؟
    هیچوقت ولتاژ زیادی ندادم ۳٫۳ ولت
    فقط چراغ قرمز ماژول روشن میشه

    • با سلام
      ضمن تشکر از توجه شما، کدهای یک ایراد ساده داشتند که برطرف شدند. لطفا مجددا کدها را کپی کنید و پس از کامپایل کردن، روی برد آپلود کنید.

  • با سلام و ممنون از اطلاعات مفید شما.در صورت امکان نحوه اتصال RFID و PLC را نیز توضیح دهید.با تشکر

    • با سلام
      ضمن تشکر از توجه شما، در زمینه PLC فعلا برنامه‌ای برای آموزش نداریم.

    • با سلام
      ضمن تشکر از توجه شما، بله باید برد آنتن آن‌ها متفاوت باشد، البته برخی از کاربران با هک کردن سخت افزاری همین ماژول، برد آن را افزایش داده‌اند. این مورد را گوگل کنید.

    • سلام
      ماژول رو به آردوینو وصل کردم و از بخش Example مثا Dumplnfo رو برای پیدا کردن آیدی کارتی که همراه ماژول بود اجرا کردم
      ولی در سریال مانیتور پیامMFRC522 Software Version: 0xFF (unknown)
      WARNING: Communication failure, is the MFRC522 properly connected? >- 21:30:25.619
      Scan PICC to see UID, type, and data blocks… >- 21:30:25.687
      میاد
      چند بار هم اتصالات رو چک کردم درسته
      نمیدونم چیکار کنم
      میشه لطفا راهنمایی کنید

  • سلام من این ماژول رو خریدم از سایتتون و توی خوندن UID و بلاک ها مشکلی ندارم!
    ولی نه میتونم UID نه بلاک رو تغییر بدم و از تگ های همراه که برام فرستادن استفاده کرد
    من دقیقا از کد ChangeUID استفاده کردم فقط بخش پین هارو که باید درست میکردم رو درست کردم.

    Card UID: 65 10 91 AB
    Card did not respond to 0x40 after HALT command. Are you sure it is a UID changeable one?
    Error name: Timeout in communication.
    Activating the UID backdoor failed.
    New UID and contents:
    Card UID: 65 10 91 AB
    Card SAK: 08
    PICC type: MIFARE 1KB
    Sector Block 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 AccessBits
    ۱۵ ۶۳ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ FF 07 80 69 FF FF FF FF FF FF [ 0 0 1 ]
    ۶۲ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰ ۰ ۰ ]
    ۶۱ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰ ۰ ۰ ]
    ۶۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰ ۰ ۰ ]
    ۱۴ ۵۹ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ FF 07 80 69 FF FF FF FF FF FF [ 0 0 1 ]
    ۵۸ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰ ۰ ۰ ]
    ۵۷ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰ ۰ ۰ ]
    ۵۶ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰ ۰ ۰ ]
    ۱۳ ۵۵ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ FF 07 80 69 FF FF FF FF FF FF [ 0 0 1 ]
    ۵۴ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰ ۰ ۰ ]
    ۵۳ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰ ۰ ۰ ]
    ۵۲ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰ ۰ ۰ ]
    ۱۲ ۵۱ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ FF 07 80 69 FF FF FF FF FF FF [ 0 0 1 ]
    ۵۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰ ۰ ۰ ]
    ۴۹ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰ ۰ ۰ ]
    ۴۸ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰ ۰ ۰ ]
    ۱۱ ۴۷ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ FF 07 80 69 FF FF FF FF FF FF [ 0 0 1 ]
    ۴۶ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰ ۰ ۰ ]
    ۴۵ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰ ۰ ۰ ]
    ۴۴ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰ ۰ ۰ ]
    ۱۰ ۴۳ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ FF 07 80 69 FF FF FF FF FF FF [ 0 0 1 ]
    ۴۲ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰ ۰ ۰ ]
    ۴۱ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰ ۰ ۰ ]
    ۴۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ ۰۰ [ ۰
    Soft WDT reset

    ctx: cont
    sp: 3ffef1a0 end: 3ffef470 offset: 01b0

    >>>stack>>>
    ۳ffef350: 3ffef38f 0000000f 0000000f 40203ce2
    ۳ffef360: 00000000 00000000 40230985 4020412d
    ۳ffef370: 00000000 00000000 3ffee420 40203370
    ۳ffef380: 00000000 00000000 00000000 00000000
    ۳ffef390: 00004937 00120100 3ffe84e1 3ffef410
    ۳ffef3a0: 00000000 00000000 00000028 00000004
    ۳ffef3b0: 00000000 00000000 3ffee330 3ffee334
    ۳ffef3c0: 3ffef410 0000004b 3ffee420 40203bb0
    ۳ffef3d0: 3ffee334 00000010 3ffee420 3ffef410
    ۳ffef3e0: 3ffee334 0000000a 3ffee330 40203454
    ۳ffef3f0: 3ffe84e0 3ffee420 3ffee330 0000000f
    ۳ffef400: 3ffee420 3ffee334 3ffee330 402035ec
    ۳ffef410: ffffffff 3ffeffff 3ffee420 40203bd4
    ۳ffef420: 00000004 3ffee420 3ffee330 40201d63
    ۳ffef430: efbeadde 3ffee330 3ffee420 40203bd4
    ۳ffef440: 00000000 00000000 00000001 3ffee444
    ۳ffef450: 3fffdad0 00000000 3ffee43c 40203eac
    ۳ffef460: feefeffe feefeffe 3ffee450 40100114
    <<<stack<<<

    • سلام
      برای تغییر یونیک آی دی باید کارت RFID شما این قابلیت را داشته باشد. همچنین تگ های RFID هم مدل های متفاوتی دارند که ممکن است فقط به صورت Read و یا Write باشند.

      • PICC type: MIFARE 1KB
        یعنی قابلیت شو داره!
        نه مشکل از چیز دیگه بود این خطای آفست برای اتصالات هی قطع و وصل میشدن بود سیم مشکل داشت با تعویض سیم مشکل حل شد

  • سلام سوالات زیادی راجب این موضوع دارم! امید وارم حوصله کنید:
    تو خط۳۴ چرا آبجکت تعریف کردین؟

    • با سلام
      ضمن تشکر از توجه شما، مشکلی ندارد شما میتوانید سوالاتتان را ازهمین طریق اعلام کنید، بنده و همکارانم در تلاش خواهیم بود که پاسخگو باشیم.
      در این خصوص که موارد کاملا مشهود است و در کامنت کدها نوشته شده است که علت این کار چیست.

  • سلام و با تشکر از مطالب خیلی خوبی که تو سایت قرار دادی.
    این مطلب رو خوندم و یک درخواست از شما داریم .
    میشه راه اندازی ماژول Rc522 رو با میکروهای AVR در نرم افزار بسکام یا کدویژن آموزش بدین؟؟؟؟ با تشکر از شما

    • سلام
      از توجه شما ممنونم.
      با توجه به پیشرفت و توسعه بردهای امبدد، رابط کاربری آسان و در دسترس بودن کتابخانه ها اجرای پروژه با AVR پیشنهاد نمیشود. تمامی آموزش های دیجی اسپارک بر پایه میکروکنترل های امبدد مانند آردوینو و رزبری پای است.

  • با سلام… متاسفانه بعد از کامپایل سپس اپلود کد پورت رو بازمیکنم ولی کارتی رو شناسایی
    نمیکنه با دو تگ هم امتحان شد…چندین برنامه هم تست شد ولی باز شناسایی انجام نمیشه
    جدید ترین ورژن IDE رو هم استفاده میکنم…. ممنون

  • سلام
    من میخوام ساعت ورود و خروج افراد با rfid انجام بدم
    و اینه هر کارتی نزدیک کنم یه پیامی بدهد این چطور ممکن میشه کدهاشا راهنمایی کنید
    تشکر

    • با سلام
      کاربر گرامی مورد درخواستی جنابعالی نیاز به برنامه نویسی دارد و از راهنمایی کامل در قسمت نظرات خارج است. خصوصا اینکه در آموزش دیگری این مورد به صورت پروژه با دریافت بن خرید تعریف شده است. می‌توانید در همان آموزش منتظر دریافت باشید.

  • با سلام
    من می خوام این برنامه رو اپلود کنم این ارور رو میده:
    Arduino: 1.8.1 (Windows 7), Board: “Arduino/Genuino Uno”

    G:\SRF04.arduinocode\SRF04.arduinocode.ino:11:21: fatal error: MFRC522.h: No such file or directory

    #include

    ^

    compilation terminated.

    exit status 1
    Error compiling for board Arduino/Genuino Uno.

    This report would have more information with
    “Show verbose output during compilation”
    option enabled in File -> Preferences.
    مشکلش چیه؟؟؟لطفا توضیح بدید…. راه حل چیست؟؟؟؟

  • سلام
    برای راه اندازی rfid 522 کدهایی که داده بودید وارد کردم
    اما چنین پیامی تو سریال مانیتور میاد
    MFRC522 Software Version: 0xFF (unknown)
    WARNING: Communication failure, is the MFRC522 properly connected? >- 21:30:25.619
    Scan PICC to see UID, type, and data blocks… >- 21:30:25.687

  • سلام
    پتیه های اردوینو رو به ماژول وصل کردم ومثال DumpInnfo رو از بخشExample اجرا کردم برای یادداشت id کارتم که باید تو سریال مانیتور نشون داده بشه
    اما در سریال مانیتور اینو فقط مینویسه
    Firmware Version: 0x0 = (unknown)
    WARNING: Communication failure, is the MFRC522 properly connected?
    Scan PICC to see UID, SAK, type, and data blocks…
    اتصالات رو هم چندبار چک کردم
    میشه راهنمایی کنید

    • با سلام
      این ارور مربوط به اتصالات است و تا زمانیکه قطعی در اتصالات داشته باشید، کانکت نمی‌شود.
      اتصالات را توضیح دهید تا بررسی گردد.

  • هرکدوم از پایه های این RFID برای چه کاری هستش؟
    اگر توضیح بدین که هرپایه برای چی کاری هست ممنون میشم

    • با سلام
      در آموزش زیر اسم هر پایه نوشته شده است. دقت داشته باشید تنها یک روش جهت اتصال پایه ها وجود دارد. ماژول RFID دارای پروتکل ارتباطی SPI است و از طریق پایه های SDA، SCK, MOSI و MISO ارتباط برقرار میگردد.
      آموزش خواندن کدهای تگ RFID با ماژول RC522 و آردوینو Arduino

      • درسته یه روش وجود داره اما سوال من اینکه هر پایه به چه کاری میاد؟ مثلا در ماژول بلوتوس پایه tx برای گیرنده اطلاعات هستش .
        در Rrfid پایه soi مثلا و پایه های دیگش برای چه هست و چه کار بردی داره ؟

        • سلام مجدد
          در متن آموزش اسم هر پایه نوشته شده است.
          پایه های miso scl tx به ترتیب نقش master و Slave را و پایه mosi نقش Master Out Slave In در زمان فعال بودن پروتکل SPI ایفا می‌کند.

  • هرکدوم از پایه های این RFID برای چه کاری هستش؟
    اگر توضیح بدین که هرپایه برای چی کاری هست ممنون میشم

  • سلام،
    با تشکر بابت این آموزش خوب!
    فقط یه سوال؛ آیا تگ های ۱۲۵ کیلوهرتز هم بهش میخوره ؟

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

      • شما اطلاع دارید که آیا میشه با پایه وقفه روی ماژول MRFC522 وجود کارت رو به آردیونو اطلاع داد؟ چون روش polling سربار بالایی داره! خودم سرچ کردم، برنامه ای ندیدم.

        • سلام مجدد
          این مورد توسط بنده تست نشده است، از دیگر کاربرانی که در این موضوع اطلاعاتی دارند، تقاضا می‌شود در بحث شرکت کنند.

          • سلام
            در کتابخانه MFRC522 که در لینک https://github.com/miguelbalboa/rfid هست، یک مثال از وقفه ماژول گذاشته به نام MinimalInterrupt که بعد از نصب کتابخانه به مثالهای نرم‌افزار آردیونو اضافه میشه.
            من مدارش را بستم، ولی ماژول به صورت سلسله‌وار سیگنال وقفه میفرسته به آردیونو، بدون اینکه تگ نزدیک rfid شده باشه.
            تو دیتا شیت MFRC522 البته چندین نوع سیگنال وقفه وجود داره که این مثال دو نوع از اون‌ها را فعال کرده.
            می‌خواستم بپرسم، امکانش هست شما هم این مثال را بررسی کنید.

            • با سلام
              با توجه به اینکه در آموزش های دیگری این سوال مطرح شده است،موارد را از همان طریق پیگیری نمایید.

          • سلام
            داخل کتابخانه MRFC522 ی مثال برای وقفه هست به نام minimalInterrupt، من مدارش رو بستم (پایه وقفه ماژول باید به پایه شماره ۲ آردیونو UNO متصل بشود) ولی متاسفانه ماژول RFID به صورت سلسله وار وقفه می‌دهد.
            میخواستم اگر امکان دارد شما هم این مثال را تست کنید.

            • از توضیحات شما ممنونم.
              موارد را بررسی خواهم کرد و نتیجه را از همین طریق اطلاع رسانی خواهم کرد.

  • سلام
    توضیحات خاصی در مورد نوشتن اطلاعت روی این تگ ها ندادین
    میشه کاری کرد که تگی که داریم فقط با ریدر خودمون بشه روش اطلاعات نوشت و با ریدر دیگه ای کار نکنه؟

    • با سلام
      هر تگ یک کد منحصر به فرد دارد که میتوانید قابلیت خواندن و نوشتن و یا یکی از این ویژگی ها را به تنهایی داشته باشد. این کدها در میکرو ذخیره شده و با همان ریدر مخصوص به خود فقط قابل خواندن و نوشتن است. به عنوان مثال با تعریف یک عملکرد برای تگ، اطلاعات آن فقط در همان میکرو و ریدر ذخیره شده و با ریدر دیگری کار نخواهد کرد.

  • سلام من چند بار با تگ وکارت روی سریال مانیتور داده ها رو میدیدم ولی بعد اون دیگه انگار ماژول rfid از کار افتاد و دیگه هرچقدر تست کردم نه تگ و نه کارت رو نخوند حالا باید یه rfid دیگه با تگ و کارت بخرم یا میشه این مشکل رو بر طرف کرد؟حتی چند بارم کارایی مثل eeprom اجرا کردن و خط به خط کد هارو چک کردن و برقراری درست سیم هارو انجام دادم ولی بازم کار نکرد

    • با سلام
      در این خصوص بایستی تغذیه ماژول و اتصالات را بررسی نمایید. تا به حال با چنین مشکلی رو به رو نشده ام و ممکن است بخشی از تغذیه و اتصالات مشکل داشته باشد. بررسی و نتیجه را از همین طریق اعلام نمایید.

  • sketch_may14a:1:6: error: expected constructor, destructor, or type conversion before ‘/’ token

    * RST/Reset RST 5

    ^

    In file included from C:\Users\Eniac1\AppData\Local\Temp\arduino_modified_sketch_692478\sketch_may14a.ino:8:0:

    C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:178:39: error: ‘SPISettings’ has not been declared

    inline static void beginTransaction(SPISettings settings) {

    ^~~~~~~~~~~

    C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h: In static member function ‘static void SPIClass::beginTransaction(int)’:

    C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:203:21: error: request for member ‘spcr’ in ‘settings’, which is of non-class type ‘int’

    SPCR = settings.spcr;

    ^~~~

    C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:204:21: error: request for member ‘spsr’ in ‘settings’, which is of non-class type ‘int’

    SPSR = settings.spsr;

    ^~~~

    Multiple libraries were found for “MFRC522.h”
    Used: C:\Users\Eniac1\Documents\Arduino\libraries\MFRC522
    Not used: C:\Users\Eniac1\Documents\Arduino\libraries\MFRC522-spi-i2c-uart-async
    Not used: C:\Users\Eniac1\Documents\Arduino\libraries\rfid-master
    exit status 1
    expected constructor, destructor, or type conversion before ‘/’ token

    با سلام

    • با سلام
      این ارور مربوط به نصب کتابخانه mfrc522 است. فقط بایستی یک کتابخانه از این مدل را نصب کنید.

      • Arduino: 1.8.12 (Windows 8.1), Board: “Arduino Uno”

        sketch_may14a:1:6: error: expected constructor, destructor, or type conversion before ‘/’ token

        * RST/Reset RST 5

        ^

        In file included from C:\Users\Eniac1\Documents\Arduino\sketch_may14a\sketch_may14a.ino:8:0:

        C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:178:39: error: ‘SPISettings’ has not been declared

        inline static void beginTransaction(SPISettings settings) {

        ^~~~~~~~~~~

        C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h: In static member function ‘static void SPIClass::beginTransaction(int)’:

        C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:203:21: error: request for member ‘spcr’ in ‘settings’, which is of non-class type ‘int’

        SPCR = settings.spcr;

        ^~~~

        C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SPI\src/SPI.h:204:21: error: request for member ‘spsr’ in ‘settings’, which is of non-class type ‘int’

        SPSR = settings.spsr;

        ^~~~

        exit status 1
        expected constructor, destructor, or type conversion before ‘/’ token

        This report would have more information with
        “Show verbose output during compilation”
        option enabled in File -> Preferences.

        • با سلام
          کدها به درستی کپی نشده است. در ابتدا یک تب جدید ایجاد کرده و تمامی نوشته های صفحه را پاک کنید. کد را کپی و به نرم افزار آردوینو منتقل کنید. سپس کتابخانه MFRC522 را نصب کنید.

      • سلام الان اروری نمیده ولی تو مانیتور این میاد
        MFRC522 Software Version: 0x0 (unknown)
        WARNING: Communication failure, is the MFRC522 properly connected?
        Scan PICC to see UID, type, and data blocks…
        و هر چی کارت میبرم جلوش هیچی نمیشه