آردوینو آردوینو Arduino Uno آموزش آردوینو خانه هوشمند نمایشگر OLED

ساخت سیستم RFID هوشمند با ماژول کارت خوان RC522 و نمایشگر Oled

نوشته شده توسط CiferTech

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

 

لینک اجرای این پروژه در لایو اینستاگرام

 

 


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


به لطف تکنولوژی Radio Frequency IDentification یا RFID در طول روز تنها با حمل یک کارت کوچک، قادر به پرداخت هزینه حمل نقل عمومی و تایید هویت در مکان های محتلف هستیم و این تنها دو نمونه از کاربرد های این تکنولوژی جذاب است، ماژول RC522 یک انتخاب خوب برای پروژه های این چنینی به حساب می آید. کم مصرف، کم هزینه، رابط کاربری آسان و بسیار محبوب بین علاقه مندان است. ماژول  RC522 مبتنی بر MFRC522 IC از NXP یکی از ارزان ترین گزینه ها برای پروژه های بر پایه RFID است، که معمولاً با تگ RFID با حافظه ۱KB ارائه می شود. و از همه مهم تر، می تواند بر روی این تگ ها بنویسد، بنابراین می توانید نوعی پیام مخفی خود را در آن ذخیره کنید.

ماژول RC522 برای خواندن تگ های RFID اقدم به ایجاد یک میدان الکترومغناطیسی ۱۳٫۵۶MHz می کند که از آن برای برقراری ارتباط با تگ های RFID استفاده می کند. این تگ دارای استاندارد ISO 14443A هستند. RC522 می تواند با یک میکروکنترلر از طریق رابط سریال ۴ پین سریال (SPI) با حداکثر سرعت داده ۱۰Mbps اقدام به برقراری ارتباط کند. همچنین این ارتباطات از طریق پروتکل های I2C و UART نیز امکان پذیر می باشد.

ولتاژ کاری ماژول از ۲٫۵ تا ۳٫۳ ولت است، اما خبر خوب این است که پایه های منطقی، ۵ ولت را تحمل می کنند، بنابراین ما می توانیم بدون استفاده از مبدل سطح منطقی، آن را به راحتی به یک Arduino یا هر میکروکنترلر با ولتاژ ۵ ولت متصل کنیم.

 


برد آردوینو


مجموعه برد های آردوینو از جمله برد های توسعه پرطرفدار بین مهندسین امبدد هستند که در مدل های مختلفی از جمله Micro ,  proMini , Nano , Uno و همچنین Mega قابل تهیه هستند، هسته مرکزی این برد های محبوب از سری AtMega328 می باشد. آردوینو پلتفرم سخت‌افزاری و نرم‌افزاری متن‌باز است. همان طور که قبل تر اشاره کردیم، پلتفرم آردوینو شامل یک میکروکنترلر تک‌بردی متن‌باز است که قسمت سخت‌افزار آردوینو را تشکیل می‌دهد. علاوه بر این، پلتفرم آردوینو یک نرم‌افزار آردوینو IDE که به منظور برنامه‌نویسی برای بردهای آردوینو طراحی شده‌است و یک بوت لودر نرم‌افزاری که بر روی میکروکنترلر بارگذاری می‌شود را در بر می‌گیرد.

 


ماژول نمایشگر Oled 1306


معمولا در پروژه های اینترنت اشیا و دیگر پروژه های امبدد از برای نمایش متن و مقادیر مختلف از نمایشگر های Oled استفاده می شود، این ماژول ها بدر انواع مختلق بسته به نوع درایور اندازه یافت می شوند که یکی از پرطرفدار ترین آن ها SSD1306 می باشد، این نوع از Oled ها معمولا در اندازه های ۰٫۹۶ و ۱٫۳ اینچ ساخته می شوند همچنین پروتکل ارتباطی Oled ها I2C می باشد.

 


توضیح تکمیلی


در این پروژه با معرفی UID منحصر به فرد هر تگ RFID مجاز بودن هر کدام را برای عبور از مانع امنیتی و در نهایت فعال شده رله مشخص می کنیم، پس از اسکن شدن تگ معرفی شده به کد، نوشته موجود در oled تغییر خواهد کرد و رله به مدت ۵ ثانیه فعال خواهد شد. همچنین UID هر تگ بر روی نمایشگر Oled نمایش داده می شود.

 


وسایل موردنیاز


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

برد آردوینو نانو Nano

نمایشگر Oled 0.96

 


نصب کتابخانه مورد نیاز


ابتدا در نرم افزار Arduino IDE اقدام به نصب کتابخانه مورد نیاز خواهیم‌کرد. مراحل زیر را دنبال کنید:

  1. این مسیر را دنبال کنید Sketch Include Library > Manage Libraries
  2. کلمه Adafruit SSD1306  را جستجو کنید.
  3. کتابخانه را نصب کنید.
  • سپس کلمه “GFX” را جستجو کنید و آن را نصب کنید.
  • در ادامه با جستجوی RC522 کتابخانه مورد نیاز برای ماژول RFID را نصب کنید.

 


بدست آوردن UID


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

اتصالات ماژول کارت خوان RC522 به برد آردوینو - دیجی اسپارک

اتصالات ماژول کارت خوان RC522 به برد آردوینو نانو - دیجی اسپارک

 

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

بدست آوردن UID ماژول کارت خوان RFID در سیستم RFID هوشمند - دیجی اسپارک

 

کد این بخش از پروژه سیستم RFID هوشمند

 


تست و راه‌اندازی


در این مرحله اتصالات مربوط به ماژول های Oled , RC522 و همچنین ماژول رله در جداول زیر با آردوینو مشخص شده، همچنین برای برقراری اتصالات می توانید از شماتیک موجود استفاده کنید.

اتصالات ماژول کارت خوان در سیستم RFID هوشمند - دیجی اسپارک

  • اتصالات مربوط به ماژول Oled

اتصالات ماژول OLED و برد آردوینو نانو - دیجی اسپارک

  • اتصالات مربوط به ماژول رله.

اتصالات ماژول رله و برد آردوینو نانو در سیستم RFID هوشمند - دیجی اسپارک

شماتیک مربوط به پروژه سیستم RFID هوشمند

شماتیک پروژه سیستم RFID هوشمند - دیجی اسپارک

 

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

 

در این بخش، UID بدست آمده را وارد می کنیم.

 

کد کامل پروژه سیستم RFID هوشمند با ماژول کارت خوان RC522 و ماژول OLED

 

 

جهت دسترسی به این بخش، اشتراک اسپارکر پلاس تهیه کنید.

 

 

پروژه سیستم RFID هوشمند با ماژول کارت خوان RC522 و آردوینو - دیجی اسپارک

 


جمع بندی


در این آموزش یک سیستم تایید هویت بر پایه ماژول RFID rc522 ساختیم، که وضعیت تایید یا رد شدن هویت تگ را بر روی نمایشگر Oled نیز نمایش دادیم. و پس از اسکن شدن تگ مورد نظر ماژول رله فعال خواهد شد. از این پروژه می توانیم در مکان های مختلف برای کنترل عبور افراد استفاده کنیم.

  • تنظیمات منوی tools در نرم افزار آردوینو نیز مانند تصویر زیر است.

 

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

 

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

 

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

CiferTech

فقط 10 نوع آدم در این دنیا وجود داره، اونی که باینری میفهمه و اونی که باینری نمیفهمه! ^-^

~ اینستاگرام: CiferTech

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

۶ دیدگاه

  • سلام مهندس
    در هنگام آپلود برنامه روی برد UNO این پیغام خطا رو میده
    exit status 1
    ‘MFRC522’ does not name a type

  • وقت بخیر
    من کد رو آپلود میکنم رو آردوینو و بدون مشکل انجام میشه
    روی oled هم نوشته ی RFID Lock میاد
    اما به هیچکدوم از تگ ها واکنش نشون نمیده
    و توی بخش سریال مانیتور هم با اینکه بادریت رو طبق سایت تنظیم کردم، هیچ نوشته ای نمیاد
    مشکل از چیه؟

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

    • سلام؛ امکان انجام چنین مواردی وجود دارد. در مورد رنج دریافت اطلاعات با چنین ماژول هایی این رنج قابل خواندن نیست.