آردوینو arduino, اینترنت اشیاء, پروژه, پروژه های سیسوگ, توصیه شده

ساخت درب بازکن RFID مجهز به وای فای و پنل مدیریت حرفه‌ای

در این پروژه، قصد داریم تا یک کنترل دسترسی (Access Control) حرفه‌ای با استفاده از ESP8266 راه اندازی کنیم. این پروژه قابلیت و قدرت مانور بسیار زیادی به شما می‌دهد. شما می‌توانید از با گوشی هوشمند یا لب تاب خود به وای فای دستگاه متصل شوید و به پنل مدیریت خود وارد شوید! شما در پنل خود امکانات بسیار زیادی دارید. برای مثال، می‌توانید تا 1000 نفر را به لیست افراد مجاز اضافه کنید و گزارشی از عبور و مرورهای اخیر را ببینید. همچنین این پروژه از چند ماژول کارت خوان مختلف پشتیبانی می‌کند که به شما اجازه می‌دهد از کارت‌های 125 کیلوهرتز، مایفیر 13.5 مگاهرتز، تگ‌های هوشمند و همین طور قابلیت NFC گوشی خود استفاده کنید.

این پروژه، یکی از بهترین پروژه‌های رایگان در زمینه کنترل دسترسی است. پس، با سیسوگ همراه باشید!

 

اکسس کنترل پیست؟

دستگاه‌های اکسس کنترل (Access Control) جهت کنترل ورود و خروج اماکن استفاده می‌شود که از طریق خروجی رله به انواع قفل‌های برقی متصل می‌شود و از طریق چهره، اثر انگشت، کارت و دیگر ادوات شناسایی، به در فرمان می‌دهد تا باز شود.

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

 

سخت افزار

برای راه اندازی این پروژه، حداقل به موارد زیر احتیاج دارید:

  • ماژول ESp8266 یا بردهای توسعه‌ای مثل WeMos D1 mini یا NodeMcu 1.0 fh pnhrg (با حداقل 4 مگابایت فضای فلش)
  • ماژول MFRC522 PCD یا PN532 NFC Reader یا RDM300 125Khz RFID و یا ماژول‌های Wiegand
  • رله یا LED یا هر مدار دلخواه (برای خروجی)
  • تعدادی کارت متناست با نوع ماژول (مایفیر کلاسیک 1KB یا 125 کیلوهرتز و…) برای شناسایی افراد

در این سیستم کنترل هوشمند، از قابلیت SDK ماژول وای فای ESP8266 یا NodeMcu استفاده شده است. بنابراین این ماژول هم به عنوان ماژول وای فای و هم به عنوان میکروکنترلر در مدار عمل می‌کند. همین امر باعث می‌شود هزینه نهایی مدار کاهش یابد. از طرفی، برای خواندن شناسه کارت هوشمند، می‌توانید از هر یک از ماژول‌های MFRC522، PN532، RDM6300 و Wiegand استفاده کنید.

 

کدام ماژول کارت خوان را استفاده کنیم؟

هر کدام را که در دسترس دارید! این که از کدام نوع کارت خوان استفاده می‌کنید، هم دلخواه است و هم بستگی به عوامل مختلفی مثل نوع کارت‌های شما، میزان هزینه‌ای که می‌کنید، در دسترس بودن ماژول و غیره دارد. برای مثال کارت خوان‌های RC522 و PN532 هر دو از کارت‌های مایفیر حافظه دار 13.5 مگاهرتز پشتیبانی کرده و قابلیت نوشتن و خواندن اطلاعات بر روی کارت را دارند. اما قیمت ماژول RC522 نسبت به PN532 ارزان‌تر است. فنّاوری تگ‌های NFC و گوشی‌های اندروید نیز در همین محدوده فرکانسی عمل می‌کند. اما تنها برخی از تگ‌های NFC توسط RC522 پشتیبانی می‌شوند، اما همه‌ی آن‌ها توسط PN532 پشتیبانی می‌شوند. دقت داشته باشید که در این پروژه تنها به خواندن شناسه کارت نیاز داریم و نیازی به امکانات بیشتر برای خواندن و نوشتن در بلوک‌های دیگر کارت را نداریم. همچنین اگر دستگاه تنها شما از یکی از کارت‌ها پشتیبانی کند، کافی است! بنابراین ساده‌ترین و ارزان‌ترین ماژول را انتخاب کنید. ما در این پروژه ماژول RC522 را انتخاب کردیم.

 

ماژول کارت خوان خود را مطابق جدول زیر به ماژول ESP8266 متصل کنید:

نحوه سیم کشی ماژول به ESP8266

اگر ماژول شما از پروتکل ارتباطی Wiegand استفاده می‌کند، می‌توانید از طریق پنل مدیریت پایه‌ی D0 و D1 را تغییر دهید. زیرا به‌طور پیش فرض D0 پایه‌ی GPIO-4 و D1 پایه‌ی GPIO-5 می‌باشد.

 

نصب و راه اندازی

گام اول – دانلود پروژه

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

صفحه انتشار پروژه در گیت هاب

 

گام دوم- آپلود فایل باینری

شما می‌توانید سورس پروژه را درون platformIO یا نرم افزار آردوینو باز کرده و سپس کد را به سلیقه خود تغییر دهید و کامپایل کنید. اما فایل کامپایل شده نیز به‌صورت باینری برای دانلود وجود دارد. اگر نسخه کامپایل شده پروژه را دانلود کردید، آن را در محل مناسبی بر روی کامپیوتر خود استخراج کنید و داخل پوشه bin شوید. شما می‌توانید فایل generic.bin داخل این پوشه را بر روی ESP8266 آپلود نمایید. اما برای راحتی بیشتر شما، ابزاری وجود دارد که کار آپلود را انجام می‌دهد. ابتدا برد خود را به کامپیوتر متصل کنید. درون همین پوشه، فایل flash.bat را اجرا کنید. با صفحه‌ای مشابه زیر مواجه خواهید شد:

ابزار آپلود فایل فلش

تنها کافی ست عدد یک را از روی صفحه کلید وارد کرده، اینتر را بزنید و کمی صبر کنید تا فایل فریمور بر روی برد شما آپلود شود.

 

گام سوم – پیکربندی اولیه

شما می‌توانید به‌صورت اختیاری پنجره نمایشگر سریال را باز کنید تا اطلاعات بیشتری از اتفاقات در حال انجام ببینید. در این مرحله کافی است تا با تلفن هوشمند خود وای فای را اسکن کرده و به “esp-rfid-xxxxxx” متصل شوید. حال درون مرورگر خود نشانی http://192.168.4.1 را باز کنید و با گذرواژه admin به محیط کنترل پنل خود وارد شوید.

صفحه ورود و لاگین به ESP

 

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

صفحه اصلی کنترل پنل دسترسی حرفه‌ای ESP

 

حال وارد بخش تنظیمات (Setting) شوید و از محیط مدیریت حرفه‌ای خود لذت ببرید!

صفحه تنظیمات عمومی کنترل دسترسی حرفه‌ای

 

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

تغییرات را ذخیره کنید و ESP را ریست کنید.

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

مجدداً وارد کنترل پنل خود شده و وارد منوی کاربران (Users) وارد شوید. حال شما می‌توانید کارت‌های مجاز را اسکن کرده و برای هر کدام یک نام کاربری یا برچسب اختصاص دهید. با انتخاب “Allow Access” شما می‌توانید دسترسی کارت موردنظر را مجاز و با استفاده از دکمه “ADD” می‌توانید کارت‌های دیگری را نیز اضافه کنید.

اضافه کردن کارت مجاز برای ورود به کنترل دسترسی حرفه‌ای

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

 

همه چیز آماده است!

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

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

 

امنیت

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

 

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

انتشار مطالب با ذکر نام و آدرس وب سایت سیسوگ، بلامانع است.

شما نیز میتوانید یکی از نویسندگان سیسوگ باشید.   همکاری با سیسوگ

نوشته های مشابه

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

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

16 دیدگاه در “ساخت درب بازکن RFID مجهز به وای فای و پنل مدیریت حرفه‌ای

  1. علیرضا علیزاده گفت:

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

    1. Digi Boy Digi Boy گفت:

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

      1. علیرضا علیزاده گفت:

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

        1. Digi Boy Digi Boy گفت:

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

  2. روزبه بابازاده گفت:

    سلام
    دوستان کسی موفق به راه اندازی این پروژه از طریق PLATFORM IO شده ؟ در خط Ticker mqttReconnectTimer; ارور زیر رو میگیریم
    src\main.cpp:88:8: error: no matching function for call to ‘Ticker::Ticker()’

    1. Digi Boy Digi Boy گفت:

      درود بر شما.
      احتمالا لینک زیر بتونه به شما کمک کنه:
      https://github.com/proddy/EMS-ESP/issues/4

  3. حسین گفت:

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

    1. Digi Boy Digi Boy گفت:

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

      1. حسین گفت:

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

        1. Digi Boy Digi Boy گفت:

          درود بر شما.
          طبق چیزی که خود سازنده نوشته:
          Go to “Users” page
          Scan a PICC (RFID Tag) then it should glimpse on your Browser’s screen.
          Type “User Name” or “Label” for the PICC you scanned.
          Choose “Allow Access” if you want to
          Click “Add”
          یعنی اینکه اول وارد بخش کاربران (USERS) بشید. بعد کارت مورد نظرتون رو به کارت خوان نزدیک کنید. در صورتی که کارت خوان به درستی متصل شده باشد، خود به خود پیامی بر روی صفحه باز می‌شود که شما می‌توانید برای کارت مورد نظر اسم یا برچسب انتخاب کنید و دسترسیش رو هم مشخص کنید. در نهایت هم با زدن دکمه ADD می تونید کارت رو اضافه کنید.

          1. حسین محمدی گفت:

            ممنون بابت راهنمایی
            بله همینطوره
            ولی یه نکته اینکه قبلش حتما باید نوع reader و پایه SS رو مشخص کنیم

          2. Digi Boy Digi Boy گفت:

            خواهش می کنم.
            ممنون که تجربتون رو به اشتراک گذاشتید.

  4. روزبه بابازاده گفت:

    سلام
    پروژه جالبیه ممنون بابت شیر کردنش
    یه سوال داشتم چطور میتونم صفحات کانفیگی مثل این پروژه رو برای پروژه های دیگه درست کرد

    1. Digi Boy Digi Boy گفت:

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

      1. روزبه بابازاده گفت:

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

        1. Digi Boy Digi Boy گفت:

          درود بر شما.
          اینکه شما صفحه ای رو از ESP درخواست کنید، کمی مبحث طولانی دارد. اما در همین حد بگم که شما ESP رو در حالت سرور پیکر بندی می کنید، یعنی به درخواست هایی که سمت اون میاد میتونید پاسخ بدید و URL های مختلفی رو براش تعریف کنید. اگر ESP رو به درستی به آردوینو اضافه کرده باشید (آموزشی که لینک داده شد)، میتونید برنامه نمونه زیر رو تست کنید تا بیشتر متوجه بشید:
          Examples->ESP8266HTTPClient->BasicHttpClient
          با

          ESP8266WebServer server(80);
          سرور روی پورت 80 راه اندازی میشه.
          با server.on
          میتونید صفحات مختلف (لینک ورودی) برای خودتون ایجاد کنید.
          آی پی دستگاه هم موقع روشن شدن توی پورت سریال نمایش داده میشه.
          برای مثال:
          192.168.1.4:80/gif