پروژه الکترونیکپروژه های آردوینوپروژه های اثر انگشت

استارت خودرو با اثر انگشت و کارت RFID با آردوینو

سلام. استارت خودرو با اثر انگشت و کارت RFID با آردوینو را آماده کردیم.

روشن کردن ماشین با سنسور اثر انگشت و تگ آرفید با Arduino

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

روشن کردن ماشین با سنسور اثر انگشت

فیلم عملکرد پروژه در انتهای صفحه قرار داده شده است.

توضیحات ماژول خواننده RFID EM-18

ماژول خواننده RFID EM-18

RFID مخفف Radio Frequency Identification به معنی شناسایی فرکانس رادیویی است. هر کارت RFID دارای یک شناسه منحصر به فرد است که در آن قرار داده شده است. از خواننده RFID برای خواندن شماره RFID استفاده می شود. خواننده RFID EM-18 با سرعت 125 کیلوهرتز کار می کند و از آنتن داخلی بهره می برد و با منبع تغذیه 5 ولت می توان از آن استفاده کرد. این ماژول خروجی سریال به همراه خروجی weigand را فراهم می کند. دامنه عملکرد آن حدود 8-12 سانتی متر است. از این ماژول آرفید در بسیاری از پروژه ها استفاده میشود مثل :

  • سیستم حضور و غیاب مبتنی بر RFID
  • سیستم های امنیتی
  • دستگاه های رای گیری
  • قیمت گذاری جاده ای الکترونیکی

نحوه خواندن شماره برچسب های (تگ ها) آرفید توسط آردوینو

برچسب های (تگ ها) آرفید

خروجی ارائه شده توسط EM-18 RFID خواننده با فرمت 12 رقمی ASCII است. از 12 رقم اول 10 رقم اول شماره کارت و دو رقم آخر نتیجه XOR شماره کارت است. دو رقم آخر برای بررسی خطا استفاده می شوند.

به عنوان مثال ، شماره کارت 0200107D0D62 است که از خواننده خوانده می شود و سپس شماره کارت موجود در کارت به شرح زیر می باشد.

02 = مقدمه

00107D0D = 1080589 در دسیمال.

62 مقدار XOR برای (02 XOR 00 XOR 10 XOR 7D XOR 0D) است.

از این رو شماره کارت 0001080589 است

پیدا کردن شماره تگ RFID با آردوینو

قبل از برنامه نویسی آردوینو برای سیستم استارت اتومبیل، ابتدا باید کد مخصوص 12 رقمی RFID را بیابیم. همانطور که قبلاً بحث کردیم ، برچسب های RFID حاوی یک کد منحصر به فرد 12 رقمی هستند و می توان آن را با استفاده از یک خواننده RFID رمزگشایی کرد. هنگامی که ما تگ RFID را در نزدیکی Reader بگذاریم، ماژول خواننده کد منحصر به فرد را از طریق پورت سریال خروجی در اختیار شما قرار می دهد. ابتدا Arduino را مطابق نمودار شماتیک به خواننده RFID وصل کنید و سپس کد زیر را در زیر آردوینو بارگذاری کنید.

int count = 0;
char card_no[12];
void setup()
{
   Serial.begin(9600);
}
void loop()
{
   if(Serial.available())
   {
      count = 0;
      while(Serial.available() && count < 12)
      {
         card_no[count] = Serial.read();
         count++;
         delay(5);
      }
      Serial.print(card_no);
   }
}

پس از بارگذاری موفقیت آمیز کد ، مانیتور سریال را باز کرده و میزان baud را روی 9600 تنظیم کنید. سپس کارت را در نزدیکی ماژول RFID EM18 قرار دهید. سپس کد 12 رقمی روی مانیتور سریال نمایش داده می شود. این مراحل را برای تمام برچسب های RFID استفاده شده انجام دهید و آن را برای مراحل بعدی یادداشت کنید.

اگر در مورد این مطلب سوالی داشتید در انتهای صفحه در قسمت نظرات بپرسید.
حتما ببینید :  پروژه شناسایی چهره با OpenCV و رزبری پای + فیلم عملکرد

توضیحات مدار پروژه

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

روشن کردن ماشین با سنسور اثر انگشت و تگ آرفید با Arduino

ما مدار را در یک برد نقطه ای اجرا کردیم و نتیجه مانند تصویر زیر شد :

مدار سیستم روشن کردن ماشین با اثر انگشت

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

  1. برد آردوینو نانو
  2. حسگر اثر انگشت R305
  3. ماژول خواننده RFID EM18
  4. ال سی دی کاراکتری 16*2
  5. موتور DC
  6. IC درایور موتور L293D

آشنایی با ماژول سنسور اثر انگشت R305

آشنایی با سنسور اثر انگشت R305

ماژول ثبت اثر انگشت R305 یک سنسور نوری است که با استفاده از پردازش نوری اطلاعات را ثبت میکند. یکی ازویژگی های مهم این ماژول قابلیت تنظیم سطح امنیت توسط کاربر میباشد. شما میتوانید درجه امنیتی را بین 1 تا 5 تغییر دهید که این مقدار به طور پیشفرض 3 میباشد. این ماژول ها دارای سرعت بالایی میباشند.

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

ثبت اثر انگشت در سنسور

برای ثبت یک اثر انگشت در ماژول R305 مراحل زیر را انجام دهید.

1. در Arduino IDE ، به File > Examples > Adafruit Fingerprint Sensor Library > Enroll بروید.

2. کدها را در آردوینو بارگذاری کنید و مانیتور سریال را با سرعت 9600 باز کنید.

پین سریال را در برنامه به SoftwareSerial mySerial(12, 11) تغییر دهید.

3. شما باید یک شناسه برای اثر انگشتی را که می خواهید ذخیره کنید، وارد کنید. از آنجا که این اولین اثر انگشت ما است ، در گوشه بالا سمت چپ 1 تایپ کرده و سپس ، روی دکمه Send کلیک کنید.

ثبت یک اثر انگشت در ماژول R305

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

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

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

حتما ببینید :  پروژه اندازه گیری دمای بدن با آردوینو و سنسور MAX30205

قبل از شروع برنامه، باید کتابخانه های مورد نیاز سنسور اثر انگشت را نصب کنیم. در اینجا ما از “Adafruit_Fingerprint.h” برای استفاده از سنسور اثر انگشت R305 استفاده کرده ایم. بنابراین اول از همه کتابخانه را باید از لینک مقابل دانلود کنید : کتابخانه سنسور اثرانگشت R305

در ابتدای کد Arduino، ما کتابخانه “Adafruit_Fingerprint.h” را برای استفاده از سنسور اثر انگشت R305 فراخوانی کرده ایم. سپس درگاه سریال را که سنسور اثر انگشت در آن متصل است تعریف میکنیم. در اینجا، ما پین 12 را به عنوان RX و پین 11 را به عنوان پین TX اعلام میکنیم.

#include <Adafruit_Fingerprint.h> // فراخوانی کتابخانه سنسور اثر انگشت
#include <LiquidCrystal.h> // فراخوانی کتابخانه ال سی دی کاراکتری
SoftwareSerial mySerial(12,11); // تعریف پین های سریال
Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);

در مرحله بعد تمام متغیرها را که در کل کد استفاده خواهد شد اعلام میکنیم. سپس پین های اتصال LCD را با Arduino تعریف میکنیم.

char input[12];
int count = 0;
int a = 0;
const int rs = 6, en = 7, d4 = 2, d5 = 3, d6 = 4, d7 = 5;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

در مرحله بعد در loop()، کدی برای بدست آوردن شماره 12 رقمی مخصوص هر تگ RFID نوشته شده است که آن را در یک آرایه ذخیره میکند.

count = 0;
    while (Serial.available() && count < 12)
    {
      input[count] = Serial.read();
      count++;
      delay(5);
    }

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

if ((strncmp(input, "3F009590566C", 12) == 0) && (a == 0)) // تعریف شماره کارت مورد نظر
      {
        lcd.setCursor(0, 0);
        lcd.print("License Valid         ");
        lcd.setCursor(0, 1);
        lcd.print("Welcome               ");
        delay(1000);
        a = 1;
        fingerprint();
      }

در مرحله بعد ، یک تابع getFingerprintID نوشته شده است که اثر انگشت فعلی را با اثر انگشت ثبت شده مطابقت میدهد.

int getFingerprintID()
{
  uint8_t p = finger.getImage();
  if (p != FINGERPRINT_OK)  return -1;
  p = finger.image2Tz();
  if (p != FINGERPRINT_OK)  return -1;
  p = finger.fingerFastSearch();
  if (p != FINGERPRINT_OK)  return -1;
  return finger.fingerID;
}

در صورتی که مطابقت وجود داشته باشد، وسیله استارت میخورد و در غیر اینصورت پیام اثر انگشت اشتباه نمایش داده میشود.

int fingerprintID = getFingerprintID();
        delay(50);
        if (fingerprintID == 1)
        {
          lcd.setCursor(0, 0);
          lcd.print("Access Granted        ");
          lcd.setCursor(0, 1);
          lcd.print("Vehicle Started       ");
          digitalWrite(9,HIGH);
          digitalWrite(10,LOW);
          while(1);
        }

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

بنابراین ما با آردوینو یک سیستم استارت اتومبیل با اثرانگشت طراحی میکنیم که دارای دولایه حفاظتی است. فیلم زیر به شما در درک نحوه کار این پروژه کمک میکند.

دانلود فیلم عملکرد پروژه روشن کردن اتومبیل با اثر انگشت

موارد موجود در فایل : شماتیک کامل مدار ، سورس کامل

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

ایمیل خود را وارد کنید

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

محمد رحیمی

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

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

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

دکمه بازگشت به بالا
بستن
بستن