راه‌اندازی پروژه RFID RC522 با آردوینو

شاید تا به حال به این موضوع فکر کرده باشید که چه اتفاقی می‌‌افتاد اگر همه برای خودشان یک ID خاص دیجیتال داشتند و برای کارهای شخصی خود از همان ID برای کار‌های روزمره مثل خرید کردن و کارهای بانکی و … استفاده می‌کردند. واقعا فکر دور از ذهنی نیست بلکه به راحتی با ماژول RFID RC522 البته در محیط های کوچک‌تر کاملا قابل پیاده سازی است.

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

خب برای اینکه شروع کنیم باید وسایل مورد‌نظر کار را که شامل موارد زیر هستند را تهیه کنیم.

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

RFID RC522

RFID TAG ( بسته به نیاز شما کاملا می‌تواند دلخواه باشد).

خب قبل از اینکه وارد شماتیک و برنامه‌نویسی شویم بد نیست که در مورد RFID توضیحاتی را بدهیم.(میدونم کسل کنندس برای خیلی از شماها ولی باور کنید دید بهتری میده بهتون)

 

RFID چیست؟

سامانهٔ بازشناسی با امواج رادیویی ( Radio Frequency Identification) (به اختصار RFID) سامانهٔ شناسایی بی‌سیمی است که قادر به تبادل داده‌ها به‌وسیلهٔ برقراری اطّلاعات بین یک Tag که به یک کالا، شئ، کارت و… متّصل شده‌است و یک بازخوان (Reader) است. سامانه‌های RFID از سیگنال‌های الکترونیکی و الکترومغناطیسی برای خواندن و نوشتنداده‌ها بدون تماس بهره‌گیری می‌کنند. اصولاً به هر سیستمی که قادر به خواندن و تشخیص اطلاعات افراد یا کالاها باشد سیستم شناسایی یا Identification System گفته می‌شود.

بطور کلّی شناسایی خودکار و نگهداری داده‌ها (AIDC) روشی است که طی آن تجهیزات سخت‌افزاری یا نرم‌افزاری قادر به خواندن و تشخیص داده‌ها بدون کمک گرفتن از یک فرد هستند. بارکدها، کدهای دو بعدی، سیستم‌های انگشت نگاری، سامانهٔ شناسایی با استفاده از فرکانس رادیویی، سیستم شناسایی با استفاده از قرنیه چشم و صدا و… از جمله این راهکارها می‌باشند. یکی از جدیدترین مباحث مورد توجه دانشمندان جهت شناسایی افراد یا کالاها استفاده از سیستم شناسایی با استفاده از فرکانس رادیویی می‌باشد. خب در همین حد برای فهم کلی عملکرد کافی است برای اطلاعات بیشتر به ویکی‌پدیا مراجعه کنید.

شماتیک RFID RC522 توسط برد آردوینو

شماتیک RC522 با اردوینو

کدنویسی RFID RC522 با آردوینو

خب طبق معمول به یکی از بخش های جذاب و پرچالش الکترونیک رسیدیم. کدی که می‌خواهیم بنویسیم شامل موارد زیر می‌باشد.

  • خواندن ID تگ موردنظر
  • شناسایی تگ تعریف شده در سیستم
  • انجام دستورات موردنظر پس از شناسایی تگ تعریف شده

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

کتابخانه RFID

 

کتابخانه RFID RC522

 

خب پس از نصب کتابخانه مربوط به RFID RC522 نوبت به کدنویسی و ارتباط این ماژول با آردوینو می‌رسد.

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

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

امیدوارم که این اموزش هم برای شما مفید واقع شده باشد.

 

حمایت از BLO OM

خوشحال میشیم برای تداوم و کیفیت ما رو حمایت کنید.

0 نفر

پــــســنــدیـده انـد

توجه

BLO OM

«السَّلَامُ عَلَیْکَ یَا أَبَا عَبْدِ اللَّهِ، السَّلَامُ عَلَیْکَ وَ رَحْمَهُ اللَّهِ وَ بَرَکَاتُهُ».

دیدگاه ها

12 دیدگاه

  • امیرحسین آقاجانی
    ۱۴ آذر ۱۳۹۹

    خییییلییی ممنونممممم!!!
    دمتون گرم

  • علی ن
    ۱۹ مرداد ۱۳۹۸

    سلام
    ممنون از برنامه و توضیحاتی که گذاشتید.
    برنامه عالی کار کرد.
    ولی یه مشکلی داره.
    من بعد از چند بار که استفاده کردم دیگه هیچ عکس العملی نشون نمیده تا وقتی که دوباره آردوینو رو ریسیت کنم و دوباره بعد چند بار دوباره از کار می افتاد!!!!
    من فکر میکردم که آردوینو مشکل داره و هنگ میکنه ولی با اسکوپ که سیگنال آنتن RC522 رو گرفتم بعد اینکه از کار می افتاد دیگه سیگنالی نداشت و مطمئن شدم که خود RC522 از کار می افتد.
    راهی وجود داره که از ماژول فیدبکی داشته باشم و بتونم به طور اتوماتیک ریستش کنم.
    ممنون.

    • BLO OM
      BLO OM
      ۲۰ مرداد ۱۳۹۸

      سلام دوست عزیزم
      من بعد از اینکه کامنت شما رو خوندم کد رو مجددا تست کردم و دقیقا به جرات می‌تونم بگم خیلی هم تگ ها رو تست کردم تقریبا میشه گفت بیش از 100 بار و مطمن شدم که کد به درستی کار میکنه
      من احتمال میدم دوست عزیزم شاید مشکل سخت‌افزاری داشته باشید.
      ترجیحا پایه 13 اردوینو رو چک کنید ببینید پالسی رو دریافت می‌کنید یا خیر؟ این کار رو هم با قرار دادن یک LED می‌تونید انجام بدید در صورتیکه LED به صورت ثابت روشن باقی موند و زمانیکه شما tag رو زدید باید LED خاموش شه در غیر اینصورت حتما باید LED روشن بمونه که این نشون دهنده اینکه SCK شما پالس رو داره میده.
      من باز هم میگم خدمتتون مشکل کاملا سخت‌افزاری است لطفا مجددا سیستم رو چک کنید و از نحوه اتصالات هم کاملا مطمئن شید. من نحوه اتصالات رو مجددا می‌نویسم براتون امیدوارم که جواب بگیرید.

      3.3 => 3.3

      RST=> 9

      GND=> GND

      MISO=> 12

      MOSI=> 11

      SCK=> 13

      SDA=> 10

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

      اما درصورتیکه ریست نیاز دارید که حتما توی سیستمتون باشه پایه RST رو به یک پایه دیگه متصل کنید ودر نهایت اونو توی نرم‌افزار هر چند دقیقه و یا ساعت و … که مدنظرتون هست پایه موردنظر رو 0 یا 1 کنید( برای این پروژه کار منطقی نیست ترجیحا به توضیحاتی که در ابتدا اشاره کردم سعی کنید مسئله رو حل کنید )

      موفق باشید دوست عزیز

      • علی ن
        ۲۰ مرداد ۱۳۹۸

        سلام
        ممنون از پاسخ و توضیحات شما
        البته اینو یادم رفت بگم… وقتی یه صفحه فلزی پشت RFID باشه بعد از چندبار این اتفاق می افته.
        شکی ندارم که ماژول خاموش میشه!!!
        آیا راهی وجود داره که از آردوینو بشه تشخیص داد که RC522 روشن هست یا نه؟
        که مثلا اگه خاموش شده با ریست یا هر روش دیگه اون رو روشن کرد؟
        ببخشید شرمنده
        دمت گرم

        • BLO OM
          BLO OM
          ۲۰ مرداد ۱۳۹۸

          ببینید دوست عزیز به خاطر دقیقا صفحه فلزی است که پشت RFID وجود داره و در نهایت همین امر موجب میشه که RFID شما به درستی عمل نکنه راه حل هم اینکه حتما ماژول رو از اون صفحه دور کنید و یا حداقل در یک فاصله معینی که میدونید مشکلی پیش نمی یاد ماژول رو قرار بدید تا جواب رو به درستی دریافت کنید.
          موفق باشید

      • علی
        ۲۱ دی ۱۳۹۹

        سلام من هم همین مشکل دارم با این تفاوت که با ریست برد اردینو درست نمیشه باید روشن و خاموش کنم تغذیه را لطفاً راهنمایی کنید

        • Zeus ‌
          زئوس Zeus
          ۲۱ دی ۱۳۹۹

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

          • علی
            ۲۳ دی ۱۳۹۹

            سلام باتشکر هر دو پایه میکرو و ماژول با هم وصل کنم بعد یک مقاومت ۱۰ کیلو استفاده کنم یا جدا جدا برای پایه ریست ماژول جدا و پایه میکرو جدا پول اپ کنم با تشکر

            0
          • Zeus ‌
            زئوس Zeus
            ۲۴ دی ۱۳۹۹

            به هم وصل کنید و پول آپ کنید اوکیه
            ۴٫۷ کیلو استفاده کنید.

            0
          • علی
            ۲۳ دی ۱۳۹۹

            با سلام پایه های میکرو و ماژول باهم وصل کنم و بعد فول اپ کنم یا هر کدوم جدا جدا فول اپ کنم پرینتر ندارم ولی لامپ ال ای دی استفاده کنم خوبه ممنون

            0
          • Zeus ‌
            زئوس Zeus
            ۲۴ دی ۱۳۹۹

            اگه دو تا رو به هم وصل کنید و پول آپ کنید هم خوبه
            خواهش میکنم

            0
    • علی
      ۲۱ دی ۱۳۹۹

      سلام من هم همین مشکل دارم ولی ریست هم میکنم درست نمیشه باید برق تغذیه رابطه وصل کنم تا درست بشه لطفاً راهنمایی کنید با تشکر

پر بحث ترین ها

مسابقه دوم : چالش برنامه نویسی به زبان C

مسابقه اول سیسوگ (مسابقه اول: درک سخت افزار) انتقادهای زیادی رو در پی داشت تا جایی که حتی خودمم به نتیجه مسابقه...

Zeus ‌ Zeus ‌
  • 2 سال پیش

راه اندازی LCD گرافیکی Nokia 1661 و دانلود کتابخانه آن

LCD گرافیکی یکی از مهم ترین پارامترهای موجود در طراحی انواع مدارات الکترونیکی پیچیده و حتی ساده است ، نمایش وضعیت و...

Zeus ‌ Zeus ‌
  • 4 سال پیش

ریموت کدلرن و چکونگی دکد کردن آن به همراه سورس برنامه

ریموت کنترل امروزه کاربرد زیادی پیدا کرده است؛ از ریموت‌های درب بازکن تا ریموت‌های دزدگیر و کنترل روشنایی همه از یک اصول اولیه پیروی می‌کنند و آن‌هم ارسال اطلاعات به‌صورت بی‌سیم است....

Zeus ‌ Zeus ‌
  • 5 سال پیش

همه چیز درباره ریموت کنترل‌های هاپینگ

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

Zeus ‌ Zeus ‌
  • 5 سال پیش

مسابقه سوم: استخراج داده از رشته ها در زبان C

نزدیک به 5 ماه از مسابقه دوم سیسوگ می‌گذره و فکر کردم که بد نیست یک چالش جدید داشته باشیم! البته چالش‌ها...

Zeus ‌ Zeus ‌
  • 2 سال پیش

مسابقه ششم: بزن میکروکنترلر را بسوزون!

بزنم میکروکنترلر را بسوزونم اونم تو  این شرایط!، طراحی مسابقه از اون چیزی که به نظر می‌رسه سخت‌تر است، باید حواست باشه...

Zeus ‌ Zeus ‌
  • 10 ماه پیش

آموزش قدم به قدم راه اندازی +NRF24L01

آموزش قدم به قدم راه اندازی +NRF24L01  با کتابخانه سازگار با انواع میکروکنترلرها و کامپایلرها قبل از اینکه قسمت بشه با ماژول...

رسول خواجوی بجستانی رسول خواجوی بجستانی
  • 3 سال پیش

ساخت ماینر با FPGA و ARM

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

Zeus ‌ Zeus ‌
  • 3 سال پیش

کار با ماژول تمام عیار mc60 – قسمت دوم – راه اندازی OpenCPU

در قسمت اول به یکسری اطلاعات کلی ماژول mc60 پرداختیم، با نرم افزار QNavigator کار کردیم و یک هدربرد هم برای کار...

Mahdi.h   Mahdi.h  
  • 3 سال پیش

مسابقه چهارم: کدام حلقه سریع‌تر است؟

حدود ۷ ماه پیش، مسابقه سوم سیسوگ رو برگزار کردیم و کلی نکته در مورد خواندن رشته‌های ورودی را بررسی کردیم. فکر...

Zeus ‌ Zeus ‌
  • 1 سال پیش
سیـــســـوگ

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