پروژه الکترونیکپروژه های آردوینوپروژه های امنیتیپروژه های بلوتوث

آموزش باز کردن قفل درب با گوشی اندروید و آردوینو (پروژه امنیتی Arduino)

سلام. آموزش باز کردن قفل درب با گوشی اندروید و آردوینو (پروژه امنیتی Arduino) را آماده کردیم.

پروژه قفل امنیتی در با موبایل Android و Arduino

انواع مختلفی از سیستم های امنیتی وجود دارد که در سراسر جهان مورد استفاده قرار می گیرد و قفل در دیجیتالی یکی از پر استفاده ترین های آنهاست. ما قبلاً بسیاری از قفل های دیجیتالی را ایجاد کرده ایم میتوانید در قسمت پروژه های امنیتی بقیه مطالب امنیتی ما را ببینید. در اینجا می خواهیم قفل دیجیتالی را بسازیم که از طریق تلفن همراه اندروید کنترل میشود و با استفاده از آردوینو مگا کنترل میشود. این قفل میتواند از طریق بلوتوث و با استفاده از گوشی Android شما کنترل شود. شما باید رمز از پیش تنظیم شده خود را با گوشی خود وارد کنید تا آردوینو دستور باز شدن درب را بدهد. اگر رمز درست وارد شود پیام “CORRECT PASSWORD” نشان داده میوشد و اگر رمز عبور اشتباه باشد  LCD پیام “WRONG PASSWORD” را نشان می دهد. همچنین در صورت تمایل میتوانید از ال سی دی استفاده نکنید.

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

توضیحات شماتیک پروژه

مدار این قفل دیجیتال کنترل شوند با تلفن هوشمند بسیار ساده است. همانطور که در تصویر زیر میبینید، ما فقط باید بازر را به پین 22 متصل کنیم. پین های TXD و RXD را به ترتیب به پین های 19 و بازر وصل میشوند. همچنین در صورت تمایل برای اتصال شیلد ال سی دی TFT، فقط باید آن را روی برد آردوینو سوار کنید و دیگر کاری لازم نیست !

پروژه قفل امنیتی در با موبایل Android و Arduino

قطعات مورد نیاز

  1. برد آردوینو مگا MEGA
  2. ماژول بلوتوث HC-05
  3. بازر
  4. شیلد ال سی دی 2.4 اینچی TFT (اختیاری)

پیکربندی برنامه ترمینال بلوتوث برای آردوینو

برای استفاده از این قفل دیجیتالی ، ابتدا باید یک برنامه اندرویدی به نام ترمینال بلوتوث را نصب کنیم. برنامه ترمینال بلوتوث با آردوینو سازگار است. این برنامه را می توان از فروشگاه Google Play بارگیری کرد و با انجام مراحل زیر آن را پیکربندی کرد.

  1. ابتدا برنامه بلوتوث ترمینال را از لینک روبرو دانلود کنید : دانلود بلوتوث ترمینال
  2. مدار قفل دیجیتال را روشن کنید.
  3. برنامه را باز کنید و به گزینه “connect securely” بروید.
  4. دستگاه HC05 را برای جفت شدن پیدا خواهید کرد.
  5. در صورت درخواست رمز، 1234 را وارد کنید.

نحوه کار پروژه قفل امنیتی

در این پروژه مهم ترین بخش ها آردوینو مگا و ماژول بلوتوث Hc05 هستند. شیلد LCD TFT نیز به عنوان آپشن اختیاری اهمیت دارد. در اینجا رمز عبور چهار رقمی از طریق تلفن هوشمند Android با استفاده از برنامه ترمینال بلوتوث توسط کاربر وارد میشود و از طریق بلوتوث به Arduino ارسال می شود. آردوینو داده های ارسال شده توسط گوشی اندروید را با استفاده از ماژول بلوتوث HC05 دریافت می کند و آن را در LCD TFF SPFD5408 نمایش می دهد. ما در کد آردوینو، رمز عبور را به طور پیشفرض 1234 قرار داده ایم که شما میتوانید آن را تغییر دهید. در صورتی که کاربر رمز را صحیح وارد نکند در ال سی دی پیام “WRONG PASSWORD” نمایش داده میشود و در صورت وارد کردن رمز به صورت صحیح پیام “Correct PASSWORD” نمایش داده میشود. همچنین وقتی گذرواژه اشتباه وارد شود بازر فعال میشود.

برنامه نویسی قفل در با آردوینو

کد کامل پروژه در انتهای صفحه در فایل دانلودی قرار داده شده است. در اینجا بعضی از قسمت های کد Arduino را توضیح میدهیم. در صورت استفاده از ال سی دی TFT ما باید کتابخانه های آن را نصب کنیم. میتوانید کتابخانه مورد نظر را از لینک روبرو دانلود کنید : دانلود کتابخانه ال سی دی لمسی SPFD5408 برای آردوینو (Library LCD TFT) این کتابخانه برای عملکرد صحیح LCD TFT مورد نیاز است.

#include <SPFD5408_Adafruit_GFX.h>   
#include <SPFD5408_Adafruit_TFTLCD.h> 
#include <SPFD5408_TouchScreen.h>

پیکربندی اولیه ال سی دی و پین های ماژول بلوتوث در تابع void setup() انجام میشود. ما در این پروژه همانطور که در بالاتر گفته شد، بازر را به پین 22 متصل میکنیم پس نوع پین 22 را خروجی تعریف میکنیم.ماژول بلوتوث با درگاه Serial 1 آردوینو مگا در ارتباط است و با 5 ولت آردوینو مگا تغذیه می شود. عملکرد fillScreen () نیز برای پاک کردن LCD استفاده می شود.

void setup() {
  Serial.begin(9600); // تنظیم سرعت ارتباط سریالی
  Serial1.begin(9600);
  tft.reset();
  tft.begin(0x9341);
  tft.setRotation(0);
  tft.fillScreen(WHITE);
  tft.setCursor (40, 50);
  tft.setTextSize (2); 
  tft.setTextColor(BLACK); //
  tft.println("E  N  T  E  R*  P  A  S  S  W  O  R  D ");
  delay(5000);
  tft.fillScreen(WHITE);
  pinMode(22,OUTPUT);
}

در تابع void loop () ،با استفاده از دستور (setTextSize(4 اندازه متن را تعیین میکنیم. سپس با دستور tft.setTextColor(CYAN) رنگ متن را تعیین میکنیم.

اگر میخواهید آردوینو را به صورت اصولی و پروژه محور (ساخت ربات، ارتباط با اندروید، اینترنت اشیا، برنامه نویسی حرفه ای) یاد بگیرید، حتما دوره آموزش آردوینو را مشاهده کنید.
void loop() {
  tft.setTextSize (4);
   tft.setTextColor(CYAN);
  if (Serial1.available() > 0)
  {
    flag = 1;
    char c = Serial1.read();
    if (flag == 1)
    {
      input[i] = c;
      .... .....
      ..... ......

ما می توانیم آرایه [] [arr]] را تغییر داده و به جای 1234 ، رمز عبور مورد نظر خود را وارد کنیم. همچنین میتوانیم طور رمز عبور را تغییر دهیم.

char arr[4] = {'1', '2', '3', '4'};
char input[4];

فیلم عملکرد پروژه

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

برای دانلود فایل ها باید عضو آیرنکس باشید، تنها چند ثانیه زمان لازم است.

ورود / ثبت نام

[lrm_form default_tab=”register” logged_in_message=””]

همچنین اگر در مورد این مطلب سوالی داشتید در انتهای صفحه در قسمت نظرات بپرسید

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

محمد رحیمی

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

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

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