آردوینو آموزش آردوینو پروژه های آردوینو کیت آردوینو

ساخت دربازکن RFID با برد آردوینو Door Lock بر پایه RFID RC522

RFID-Door-openning-system-arduino-rc522-digispark
نوشته شده توسط پریسا پوربلورچیان

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

 

 

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

RFID مخفف Radio frequency identification می‌باشد. این ماژول دارای ۸ پایه برای برقراری ارتباط با برد آردوینو Arduino است. فرکانس کاری ماژول RFID در باند ۱۳٫۵۶ مگاهرتز می‌باشد. ولتاژ کاری آن ۳٫۳ ولت بوده و جریان آن بین ۱۳ تا ۲۶ میلی آمپر است. پروتکل ارتباطی SPI و ماکزیمم سرعت آن ۱۰Mbit/S می‌باشد. قبلا در پست MRFC522 ماژول RFID آردوینو بخش اول به بررسی کامل این ماژول پرداخته‌ایم در آموزش بخش سوم RFID ورود به سیستم با مستر کارت Master Card را توضیح دادیم. طراحی یک سیستم Door Lock بر پایه مستر کارت Master Card است. مستر کارت Master Card در واقع کارت تشخیص ارشد است. با تعریف یک کارت RFID به عنوان مستر کارت، تمامی کارت‌ها و تگ‌ها به عنوان زیر شاخه آن قرار گرفته می‌شود. در نهایت تخصیص ورود و عدم ورود هر یک از آن ها توسط Master Card مشخص خواهد شد. مستر کارت در پروژه دربازکن RFID توسط ماژول RC522 مشخص می‌شود. همانطور که از نام مستر کارت مشخص است، کارت ارشد همانند پروگرامر عمل کرده و قادر به معرفی کارت‌های زیر شاخه می‌باشد. با تعریف مستر کارت، می‌توان دسترسی برای تگ‌های دیگر را تعریف و یا از حافظه حذف کرد.

 

هدف آموزش دربازکن RFID

در این آموزش یک مدار دربازکن RFID از طریق RC522 طراحی می‌کنیم. با انتساب یک کارت به عنوان کارت ارشد Master Card، تگ‌های زیر شاخه را تعریف خواهیم کرد. تعداد تگ‌های مورد استفاده کاملا دلخواه است. با تعریف کارت و تگ RFID، پس از شناسایی تگ اجازه ورود به تگ صادر شده و سپس به رله فرمان ارسال خواهد شد. در خروجی رله Relay از یک قفل زبانه دار استفاده می‌کنیم تا مدار به صورت کامل شبیه سازی شود. به صورت پیش فرض قفل در ابتدا به صورت Lock است. با نزدیک کردن تگ RFID به ماژول RC522 در مدار دربازکن RFID قفل باز Unlock شده و اجازه ورود داده می‌شود. در ادامه به بررسی کامل پروژه می‌پردازیم.

 

اتصالات دربازکن RFID آردوینو

ماژول کارت خوان RFID دارای ۸ پایه VCC, RST, GND, IRQ, MISCO, MOSI, SCK, SDA است. نحوه‌ی اتصال پایه های RFID را در سه مدل آردوینو Arduino بررسی خواهیم کرد.

اتصال RFID به برد آردوینو Arduino UNO و برد آردوینو Arduino NANO

  • پایه SDA را به پایه ۱۰ دیجیتال آردوینو Arduino اتصال دهید.
  • پایه SCK را به پایه ۱۳ دیجیتال آردوینو Arduino اتصال دهید.
  • پایه MOSI را به پایه ۱۱ دیجیتال آردوینو Arduino اتصال دهید.
  • پایه MISO را به پایه ۱۲ دیجیتال آردوینو Arduino اتصال دهید.
  • پایه RST را به پایه ۹ دیجیتال آردوینو Arduino اتصال دهید.
  • پایه GND را به پایه GND آردوینو Arduino اتصال دهید.
  • پایه VCC را به پایه ۳٫۳ ولت آردوینو Arduino اتصال دهید.

آموزش ساخت مدار دربازکن با rfid و برد آردوینو Arduino - دیجی اسپارک

 

اتصال RFID به برد آردوینو Arduino Mega2560

  • پایه SDA را به پایه ۹ دیجیتال آردوینو Arduino Mega2560 اتصال دهید.
  • پایه SCK را به پایه ۵۲ دیجیتال آردوینو Arduino Mega2560 اتصال دهید.
  • پایه MOSI را به پایه ۵۱ دیجیتال آردوینو Arduino Mega2560 اتصال دهید.
  • پایه MISO را به پایه ۵۰ دیجیتال آردوینو Arduino Mega2560 اتصال دهید.
  • پایه RST را به پایه ۸ دیجیتال آردوینو Arduino Mega2560 اتصال دهید.
  • پایه GND را به پایه GND آردوینو Arduino Mega2560 اتصال دهید.
  • پایه VCC را به پایه ۳٫۳ ولت آردوینو Arduino Mega2560 اتصال دهید.

 

اتصال ال ای دی دربازکن RFID

  • ال ای دی آبی را به پایه ۵ دیجیتال آردوینو اتصال دهید.
  • ال ای دی سبز را به پایه ۶ دیجیتال آردوینو اتصال دهید.
  • ال ای دی قرمز را به پایه ۷ دیجیتال آردوینو اتصال دهید.

 

فراخوانی کتابخانه آردوینو

در این آموزش برای اجرای کدها نیاز به فراخوانی چند کتابخانه داریم. کتابخانه EEPROM از مهم‌ترین موارد این آموزش را فراخوانی می‌کنیم. تمامی اطلاعات در حافظه EEPROM ذخیره می‌شود. از آنجایی که تمامی تگ‌ها توسط RFID خوانده شده و سپس رایت می‌شود، باید در حافظه ذخیره شود. کتابخانه EEPROM در لیست کتابخانه‌های Arduino به صورت پیش فرض قرار دارد. آن را انتخاب و به برنامه انتقال دهید. همچنین ماژول RC522 از پروتکل SPI استفاده می‌کند. کتابخانه SPI به صورت پیش فرض در لیست کتابخانه آردوینو قرار گرفته شده، آن را فراخوانی کنید. در نهایت کتابخانه MFRC522 را فراخوانی می‌کنیم. لینک دانلود کتابخانه MFRC522 در صفحه محصول ماژول کارت خوان RFID RC522 در قسمت دانلود قرار گرفته شده است.

 

کد برنامه RFID Door Lock

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

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

تگ RFID با فرکانس ۱۲۵ کیلو هرتز

کارت RFID با فرکانس ۱۲۵ کیلو هرتز 

 رله ۵ ولت تک کانال ۱Channel Relay

قفل برقی زبانه دار ۱۲ ولت Electromagnet Door Lock 

 

تحلیل کد پروژه دربازکن RFID

توسط کلید میانبری که برای انتقال کدها در نظر گرفته شده است، کد را به نرم افزار آردوینو منتقل و آپلود کنید. اتصال ماژول RFID برای دو مدل برد آردوینو Arduino در متن آموزش توضیح داده شده است. پس از کامپایل برنامه سریال مانیتور را باز کنید. سپس بادریت را روی ۹۶۰۰ قرار دهید.

دربازکن با RFID و برد آردوینو توسط ماژول RC522 - دیجی اسپارک

 

تعریف مستر کارت دربازکن RFID

یک کارت RFID را به عنوان کارت ارشد – مستر کارت انتخاب کنید. مستر کارت در پروژه دربازکن RFID به عنوان کارت ارشد دسترسی و عدم دسترسی دیگر تگ‌های زیر شاخه را تعیین می‌کند. در آموزش RFID ورود به سیستم با مستر کارت و ماژول RC522 آردوینو Arduino کامل به توضیح مستر کارت و نحوه‌ی فراخوانی آن پرداخته‌ایم. پس از کامپایل برنامه، در سریال مانیتور عبارت “No Master Card Set” نمایش داده می‌شود.

با نزدیک کردن کارت RFID به ماژول کارت خوان RFID ، پیغام  “Master Card Set” نمایش داده می‌شود.

حال باید تگ‌های زیر شاخه را تعیین کنیم.

 

تعریف تگ‌های زیر شاخه دربازکن RFID

در این مرحله توسط تگ RFID، به آن دسترسی جهت ورود می‌دهیم. برای اینکار ابتدا تگ RFID را به ماژول کارت خوان RFID نزدیک می‌کنیم. در صورتی که تگ را برای اولین بار استفاده می‌کنید، تگ شناسایی شده و عبارت “I do not know this key, adding…” نمایش داده می‌شود. به این صورت کارت جدید برای دربازکن RFID تعریف می‌شوند.

پس از شناسایی تگ، مجددا مستر کارت را به ماژول کارت خوان نزدیک کنید. تگ در حافظه ذخیره می‌شود. سپس تگ RFID را به ماژول RFID نزدیک کنید. عبارت “Welcome, Acces Granted” نمایش داده می‌شود.

حال اگر تگ قبلا تعریف شده باشد، ابتدا از حافظه پاک خواهد شد و مجددا باید آن را تعریف کنید.

سپس اجازه ورود به تگ داده نخواهد شد و در سریال مانیتور عبارت “Acces Denied!” نمایش داده خواهد شد.

 

حالت‌های مدار دربازکن RFID با ال ای دی

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

مستر کارت

سپس با تعریف مستر کارت ال ای دی آبی با تاخیر ۲۰۰ میلی ثانیه روشن و خاموش خواهد شد.

دسترسی تگ Tag

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

عدم دسترسی تگ Tag

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

نکته مهم

به دلخواه می‌توانید یک کلید برای پاک کردن حافظه اضافه کنید. به این ترتیب با اتصال یک کلید به پایه شماره ۳  دیجیتال آردوینو Arduino، با فشردن آن حافظه پاک شده و به حالت بازخواهد گشت. در این حالت ال ای دی قرمز برای نمایش وضعیت روشن خواهد شد.

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

 

خروجی رله Relay – قفل برقی

در این آموزش از قفل برقی زبانه دار ۱۲ ولت Electromagnet Door Lock 12v Solenoid Lock برای خروجی استفاده می‌کنیم. قفل را به خروجی رله وصل کنید. جهت اتصال قفل به درب ورودی در قسمت نظرات کامنت بگذارید، تا راهنمایی کنم.

 

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

 

پروژه

اخیرا تصمیم گرفته‌ایم برای تعامل بیشتر با شما کاربران و ایجاد موقعیتی در راستای رقابت دانش کاربران، در انتهای هر آموزش یک پروژه تعریف می‌کنیم. به اولین کاربری که به پروژه تعریف شده پاسخ صحیح بدهد، بن خرید به ارزش ۳۰ هزار تومان از فروشگاه دانشجو کیت ارایه خواهد شد. پروژه: کلیه گزارش ورود و خروج سیستم را در یک فایل متنی توسط ماژول Micro SD ذخیره کنید. همچنین از یک  ماژول ساعت از جمله DS3231 ساعت و تاریخ را به این فایل اضافه کنید.

 

 

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

 

 

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

پریسا پوربلورچیان

تولید کننده محتوا / کارشناس IOT

زندگی یعنی پژوهش و فهمیدن چیزی جدید

تلاشم بر این است تجربیاتم در زمینه IOT‌ را به بهترین شکل با شما در میان بگذارم.

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

۱۳۴ دیدگاه

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

    • سلام
      از توجه شما ممنونم.
      همانطور که در متن آموزش توضیح دادم، پیشنهاد می‌کنم پیش نیاز این آموزش که بخش دوم آموزش های RFID است را مطالعه کنید. در آموزش ورود به سیستم با مستر کارت، کامل به توضیح آن پرداخته ام. حتما مطالعه نمایید و سپس شروع به اجرای این آموزش کنید.

    • سلام
      در ابتدا برای راهنمایی دقیق تر لطفا ارور مربوطه را کپی کنید. با این وجود این ارور مربوط به کتابخانه RC522 است که باید آن را فراخوانی کنید. لینک دانلود کتابخانه در صفحه محصول RFID RC522 قرار دارد. آن را دانلود کنید.

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

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

  • سلام با عرض خشته نباشید خدمت شما
    اول از همه ازتون تشکر میکنم که با این پروژه بسیار عالی شما تونستم توی مسابقات بین مدرسههای شهر اول بشم و از بابت ازتون متشکرم و یک سوال داشتم:
    یک سوال داشتم که این میتونید یک نرم افزار شبیه سازی بهم معرفی کنید که یک کتاخانه کامل از ماژل ها رو داشته باشه؟ازجمله ماژل GY521
    اگه براتون مقدوره زود تر جواب بدید
    بازم ممنون…..

    • سلام
      از توجه شما ممنونم ولی این پست کمتر از ۴۸ ساعت می‌باشد که منتشر شده است. چطور در کمتر از ۲ روز اجرا کردید و در مسابقات شرکت کرده و اول شده‌اید؟!
      در خصوص سوالتان هم لطفا در آموزش های مرتبط با این سنسور مطرح کنید تا پاسخ داده شود.

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

    • سلام
      از توجه شما ممنونم.
      بله امکان پذیر است ولی هدف شما از اجرای این روش چیست؟
      همچنین دقت داشته باشید کار با برق شهری نیاز به رعایت موارد ایمنی بالایی دارد.

  • تو بعضی از هتل ها وقتی وارد اتاق میشی با زدن همین کارت ها روی دستگاه تمام برق اتاق روشن میشه من هدف دارم همچین چیزی بسازم.
    و من رشته برق الکترونیک هستم و تمام ایمنی های برق رو رعایت میکنم
    ممنون بابت هشدارتون.

    • خواهش میکنم.
      اجرای پروژه مورد نظر شما بسیار راحت است. از سه آموزش ارائه شده برای RFID ایده بگیرید و تغییرات را ایجاد کنید. در هر مرحله در صورت سوال و برخورد به مشکل از همین طریق اقدام نمایید تا راهنمایی کنم.

  • سلام خیلی ممنوم بابت اموزش ها
    دو سوال برای من پیش اومد :
    پبن های رله مشخص نشد
    ماژول موجود در سایت فرکانسش ۱۳٫۵۶mhz مشکلی ایجاد نمیکنه؟!
    ممنون

  • سلام ممنون بابت اموزشتون.
    من هنگام اپلود برنامه تو خط ۵۱ ارور دریافت میکنم
    mfrc522.PCD_Init();
    ارور مربوط به این کده ولی چون طولانی بود اگه مشکل رفع نشد تو کامنت بعدی میزارمش
    بازم ممنون بابت کمک هاتون

      • Arduino: 1.6.12 (Windows 7), Board: “Arduino/Genuino Uno”

        C:\Users\Emamat Rayane\Documents\Arduino\____\____.ino: In function ‘void setup()’:

        ____:۳۱: error: ‘class MFRC522’ has no member named ‘PCD_Init’

        mfrc522.PCD_Init();

        ^

        C:\Users\Emamat Rayane\Documents\Arduino\____\____.ino: In function ‘void loop()’:

        ____:۴۰: error: ‘class MFRC522’ has no member named ‘PICC_IsNewCardPresent’

        if ( ! mfrc522.PICC_IsNewCardPresent())

        ^

        ____:۴۵: error: ‘class MFRC522’ has no member named ‘PICC_ReadCardSerial’

        if ( ! mfrc522.PICC_ReadCardSerial())

        ^

        ____:۵۳: error: ‘class MFRC522’ has no member named ‘uid’

        for (byte i = 0; i < mfrc522.uid.size; i++)

        ^

        ____:۵۵: error: 'class MFRC522' has no member named 'uid'

        Serial.print(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ");

        ^

        ____:۵۶: error: 'class MFRC522' has no member named 'uid'

        Serial.print(mfrc522.uid.uidByte[i], HEX);

        ^

        ____:۵۷: error: 'class MFRC522' has no member named 'uid'

        conteudo.concat(String(mfrc522.uid.uidByte[i] Preferences
        ارور طولانی بود ولی اگه ممکنه راهنمایی کنید .
        ممنون

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

  • سلام
    ببخشید اون دوتا برد اردوینو که استفاده کردید میشه اسمشون و لینک خریدشون بذارید ممنونم میشم
    و لینک خرید ماژول ار اف ای دی ممنونم

  • سلام
    ببخشید یه سوال دیگه داشتم
    من می خوام همین رو با اردینو کوچک تری درست کنم ولی بیشتر انها ٣.٣ ولت خروجی ندارند برای rfid و یکسری دیگر هم ۵ ولت برا رله ندارند میشه یه برد پیشنهاد کنید؟
    خیلی ممنون

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

    • سلام
      از توجه شما ممنونم.
      با توجه به اینکه بنده این مورد را به صورت عملی تست نکرده‌ام، از اینرو نیاز به تست و بررسی جداگانه خواهد داشت.
      با این وجود باید در کدها قسمتی که تگ RFID خوانده می‌شود یک دستور شرطی برای فعال شدن رله اضافه کنید و زمان را پاک کنید.
      در حلقه برنامه Void LOOP و قسمت Access Granted و Access Denied باید برای رله تغییرات را اعمال کنید.

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

        • سلام مجدد
          خیر، متاسفانه در حال حاضر چنین امکانی وجود ندارد. تغییرات مد نظر شما زمان‌بر می‌باشد و بایستی توسط خودتان اعمال شود. دقت داشته باشید که دیجی اسپارک مرجع آموزش‌های رایگان در حوزه الکترونیک و رباتیک و اینترنت اشیاء است. شما می‌توانید اگر در این مسیر سوالی برایتان پیش آمد، از این طریق اعلام کنید.

  • خانم مهندس میشه در مورد نحوه فیلمبرداری از پروژه هاتون توضیح بدید که با چه چیزی دوربین را ثابت نگه می دارید و آیا با دوربین دیجیتال فیلمبرداری می کنید یا موبایل ؟(منظورم سخت افزاهای مرتبط با فیلمبردای هست

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

  • سلام خانم مهندس
    ببخشید میشه بگید چگونه حافظه را پاک کنم اخه می خوام مستر کارت رو عوض کنم من پایه ۳ دیجیتال با کلید به ۵ ولت وصل کردم و کیلید را زدم ولی اتفاقی نیفتاد!!!؟؟
    لطفا راهنمایی کنید

    • سلام
      در خط ۵۸ برنامه تا خط ۶۵ برنامه دستور اجرای کلید گفته شده است. هنگامی که کلید را به پایه دیجیتال تعرف شده در کدها وصل و کلیک کنید، تمامی اطلاعات پاک خواهد شد.
      All records will be removed. This cannot be undone!
      مجددا اتصالات را بررسی کنید و طبق کد پیش بروید. حتما نتیجه را اعلام کنید.

      • با سلام و خسته نباشید.
        من هم همین مشکل رو دارم.هم به ۵ ولت و هم به ۰ ولت کلید رو وصل کردم تغییری ایجاد نشد.(حافظه پاک نشد)
        لطفا راهنمایی کنید

        • سلام
          با توجه به دستور گفته شده برای پاک شدن حافظه، کلید در ابتدا در وضعیت LOW قرار گرفته شده است. در کد برنامه کلید را به وضعیت High تغییر دهید و نتیجه را اعلام کنید.

          if (digitalRead(button) == LOW) { // با فشردن کلید حافظه
          digitalWrite(redLed, LED_ON);
          Serial.println(F(“Wipe Button Pressed”));
          Serial.println(F(“You have 5 seconds to Cancel”));
          Serial.println(F(“All records will be removed. This cannot be undone!”));
          delay(2000);
          if (digitalRead(button) == LOW) { // با فشردن کلید حافظه Eeprom پاک خواهد شد
          Serial.println(F(“CLEARING DATABASE”));
          for (int x = 0; x < EEPROM.length(); x = x + 1) { if (EEPROM.read(x) == 0) { } else { EEPROM.write(x, 0);

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

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

  • سلام
    امکانش هست این پروژه رو تغییر بدم به نحوی که وسیله ای همراهم باشه تا در صورتی که نزدیکی درب هستم. درب خودکار باز بشه. نیاز نباشه کارت بگیرم رو ماژول یا دکمه ای بزنم.
    تشکر

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

  • اینم بگم که امنیت مهمه یعنی این باز شدن قراره از بیرون اتفاق بیفته و سنسور حضور برام کاربرد نداره چون در این صورت هرکسی بیاد درب باز میشه.

    بازم ممنون

  • سلام خیلی ممنونم از مطالب مفیدتون
    اگر من بخواهم همین پروژه از راه دور باز کنم و کار کنه چکار کنه ؟ مثلا تگ وقتی در فاصله ۱۰ متری این قرار می گیره خودش در باز باشه ؟
    از چه تگی و چه ماژولی استفاده کنم
    ممنون میشم راهنماییم کنید

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

      • سلام خسته نباشید ببخشید خانم مهندس به یک مشکل برخوردیم خوشحال میشیم راهنماییمون کنید،
        زمانیکه unlocker به مدار وصله وقتی کارت rfid را نزدیک rc522 میبریم unlocker یک بار بیشتر عمل نمیکنه ولی وقتی unlocker وصل نیست مدار هرچند بار که دلمون بخواد کار میکنه.
        اللهم عجل لولیک الفرج

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

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

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

          • سلام زمانی که قفل به مدار متصل است فقط یکبار مدار عمل میکند و قفل باز می شود و باید اردوینو را ریست کنیم تا دوباره مدار فعال شود . و باز هم فقط یکبار قفل باز می شود . و زمانی که قفل به مدار متصل نیست مدار عمل می کنه و رله هم وصل می شه و تا هر زمانی که تگ را نزیدیک کنیم مدار عمل می کنه و نیاز ی به ریست نیست.
            اللهم عجل لولیک الفرج

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

  • با سلام
    من این پروژه با تغیراتی ساختم و در صفحه اینستگرام خودم با هشتگ های گفته شده گذاشتم
    ادرس اینستگرام
    mohamad_haje_c
    (در گذاشتن خط ها دقت کنید.)
    بن خرید به من میرسه؟؟
    با تشکر

    • سلام
      جهت دریافت بن خرید کافیست در قسمت نظرات همین پست مطرح بفرمایید. بن خرید ارسال رایگان شما به ارزش ۱۰۳۰۰ تومان در حساب کاربری فعال و برای شما ایمیل ارسال شده است. لطفا پس از استفاده از این طریق اطلاع رسانی بفرمایید.

    • سلام مجدد
      بابت اشتباه در کامنت قبل عذرخواهی می‌کنم، بن تخفیف برای کاربر دیگری ارسال شده بود و به اشتباه در پاسخ به شما ارسال بن گفته شد.
      بن خرید ارسال رایگان شما به ارزش ۱۰۳۰۰ تومان در حساب کاربری فعال و برای شما ایمیل ارسال شد.
      لطفا پس از استفاده از این طریق اطلاع رسانی بفرمایید.

  • Arduino: 1.8.5 (Linux), Board: “Arduino Mini, ATmega328P”

    /tmp/arduino_modified_sketch_560062/Blink.ino:9:0: warning: “LED_ON” redefined
    #define LED_ON HIGH
    ^
    /tmp/arduino_modified_sketch_560062/Blink.ino:7:0: note: this is the location of the previous definition
    #define LED_ON LOW
    ^
    /tmp/arduino_modified_sketch_560062/Blink.ino:10:0: warning: “LED_OFF” redefined
    #define LED_OFF LOW
    ^
    /tmp/arduino_modified_sketch_560062/Blink.ino:8:0: note: this is the location of the previous definition
    #define LED_OFF HIGH
    ^
    /tmp/arduino_modified_sketch_560062/Blink.ino: In function ‘boolean checkTwo(byte*, byte*)’:
    /tmp/arduino_modified_sketch_560062/Blink.ino:319:16: warning: NULL used in arithmetic [-Wpointer-arith]
    if ( a[0] != NULL )
    ^
    Sketch uses 8252 bytes (28%) of program storage space. Maximum is 28672 bytes.
    Global variables use 261 bytes (12%) of dynamic memory, leaving 1787 bytes for local variables. Maximum is 2048 bytes.
    avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00
    avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x00
    avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x00
    avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x00
    avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x00
    avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x00
    avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x00
    avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x00
    avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x00
    avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x00
    An error occurred while uploading the sketch

    This report would have more information with
    “Show verbose output during compilation”
    option enabled in File -> Preferences.
    لطفا راهنمایی کنید

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

    • سلام
      ضمن عذرخواهی تاخیر در پاسخگویی، تعداد پروژه های ارسالی بسیار زیاد است و نیازمند صبر و شکیبایی شما می‌باشد.
      پروژه بررسی شد و دارای ایراداتی در فراخوانی تابع DS3231 و SD کارت است. لطفا کد را تست کرده و ارورهای موجود را برطرف نمایید.
      مجددا ارسال کنید تا بررسی گردد.

  • سلام من میخواستم ببینم چطور اطلاعات مثل نام و ساعت وردو و خروج تعیین برا هرکسی ذخیره کنه و بعد رو iledنمایش بدهد یعنی وقتی کارت میزنه این اطلاعات سیو کنه

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

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

    • سلام
      پروژه شما بررسی شد و عملکرد RFID کاملا صحیح است.
      اما اطلاعات زمان و ساعت و تاریخ بر روی میکرو SD ذخیره نمی‌شود.
      نحوه ی اتصالات ماژول SD Card و ماژول ساعت DS3231 بیان کنید تا بررسی گردد.

    • سلام
      سه کلید میانبر برای انتقال کدها در نظر گرفته شده است. با انتخاب کدها و کلید های ctrl+c و ctrl+v کد را به نرم افزار آردوینو انتقال دهید.

  • سلام ممنون از اموزشهاتون و خسته نباشید
    من پروژه رو اپلود که میکنم در خط ۵۱ ارور دریافت میکنم در قسمت مقدار دهی اولیه سخت افزار
    class MFRC522 has no member named PCD_Init
    کد هارو چند بار به روشهای مختلف کپی کردم کتابخونه رو هم چک کردم بازم نشد
    برنامه های دیگه ایی رو تست کردم درست بود
    اگه ممکنه راهنمایی کنید من خیلی به این پروژه نیاز دارم
    ممنون

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

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

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

  • سلام ممنون از آموزشهای خوبتون.
    من این کد رو پیاده سازی کردم و کاملا کار میکنه. فقط یه سوالی داشتم. من کد رو طوری تغییر دادم که کاربر از طریق وارد کردن کاراکتر هایی در سریال مانیتور بتونه مدهای کاری رو برای ماژول تعیین کنه. مثلا اینکه با وارد کردن عدد یک در سریال مانیتور وارد مد حذف کردن کارت بشه و با وارد کردن عدد ۲ وارد مد اضافه کردن کارت بشه ولی مشکلی که وجود داره اینه که بعد از هر بار وارد کردن یه عدد در سریال مانیتور و زدن کلید اینتر، باید حتما یه کارت به ماژول نزدیک بشه تا وارد بدنه if بشه و دستورات مربوط به اون عدد رو اجرا کنه. باید چیکارکنم که بلافاصله بعد از زدن کلید اینتر وارد بدنه if مربوط به اون عدد بشه و نیاز به نزدیک کردن کارت نداشته باشه؟

    • سلام
      خودتان اشاره کردید که حتما باید یک کارت اضافه و یا حذف شود. پس باید حتما کارت RFID خوانده شود.

  • سلام یه سوال
    من با اردینو و کیپد یه در رمزی درست کردم
    الان اردینو رو میخوام ؛می خوام بدونم چی جای اون میتونم بزارم؟؟اگه ممکنه جوابو به ایمیلم بفرستید مچکر؛

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

    • سلام
      برای کلید در کد پایه ۳ تعریف شده است.
      رله به پایه ۴ وصل شده است.
      در این کد از ماژول SD Card استفاده نشده است.