تعرف على كيفية إنشاء قفل باب يتم التحكم فيه ببصمة الإصبع باستخدام وحدة استشعار ، وشاشة I2C LCD ، و Arduino UNO.


تعرف على كيفية إنشاء قفل باب يتم التحكم فيه ببصمة الإصبع باستخدام وحدة استشعار ، وشاشة I2C LCD ، و Arduino UNO.
في هذا البرنامج التعليمي ، سوف أريكم كيفية بناء قفل الباب الذي يستخدم جهاز استشعار بصمات الأصابع و Arduino UNO. سوف يفتح قفل الباب هذا الباب فقط عندما يقوم المستخدم بفحص بصمة اليد اليمنى التي يتم تسجيلها على النظام ، ولكن سيظل الباب قريباً عند إدخال بصمة خاطئة.
مخطط الدائرة والتوضيح
بادئ ذي بدء ، قم بتوصيل جهاز استشعار بصمات الأصابع إلى Arduino UNO. تأكد من الحصول على مستشعر بصمات الأصابع الذي يعمل مع Arduino من خلال الاتصال التسلسلي
الدبابيس الافتراضية للاتصالات التسلسلية على Arduino UNO هي دبوس 0 (RXD) و pin 1 (TXD) من اللوحة ، لكننا سنستخدم دبابيس أخرى للتواصل التسلسليبالنسبة لهذا المشروع ، سنستخدم مكتبة SoftwareSerial في الشفرة.
فيما يلي الارتباطات المطلوبة بين مستشعر بصمات الأصابع و UNO:
ثم قم بتوصيل وحدة I2C LCD إلى UNO. الاتصالات هي كما يلي:
بعد ذلك ، قم بتوصيل وحدة الترحيل إلى Arduino UNO كما هو موضح في الرسم التخطيطي للدائرة أدناه
بصمة قفل الباب مخطط الرسم البياني.
للتحكم في قفل الباب ، ستحتاج إلى مصدر بطارية من 7 إلى 12 فولت - لقد استخدمت ثلاثة خلايا 18650.
قم بتنزيل مكتبات المشاريع
تتوفر بسهولة مكتبات المكتبات الخاصة بمستشعر بصمات الأصابع وشاشة I2C LCD.
لتثبيت مكتبة Adafruit Fingerprint ، افتح مدير مكتبة Arduino واكتب "بصمة الإصبع" وستشاهد مكتبة Adafruit Fingerprint المنبثقةانقر فوق تثبيت.
يمكنك تثبيت مكتبة LiquidCrystal I2C بنفس الطريقةابحث عن "LiquidCrystal I2C" وستتمكن من رؤية هذه المكتبة:
اكتب "liquidcrystal I2C" في مدير مكتبة Arduino للعثور على المكتبة الصحيحة.
رمز تجول وشرح
ستسمح لنا مكتبة البرامج التسلسلية باستخدام دبابيس أخرى غير الدبابيس الافتراضية 0 ، 1 للاتصال التسلسليانسخ الرمز من القسم أدناه وقم بتحميله.

   
اردوينو نسخة


    #include <Adafruit_Fingerprint.h>
#include <LiquidCrystal_I2C.h>
#include <SPI.h>
#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3);
           
في وظيفة الإعداد ، قم بتعيين معدل الباود الذي يعمل عليه مستشعر بصمة الإصبعثم تحقق مما إذا كان مستشعر بصمات الأصابع يتواصل مع Arduino أم لا.

   
اردوينو نسخة


    finger.begin(57600);

  if (finger.verifyPassword()) {
    lcd.setCursor(0, 0);
    lcd.print("  FingerPrint ");
    lcd.setCursor(0, 1);
    lcd.print("Sensor Connected");
  }
  else  {
    lcd.setCursor(0, 0);
    lcd.print("Unable to found");
    lcd.setCursor(0, 1);
    lcd.print("Sensor");
    delay(3000);
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print("Check Connections");

    while (1) {
      delay(1);
    }
  }
    أقل       
الآن نحن بحاجة لإعداد بصمتك الفعليةقسم التعليمات البرمجية التالي هو للمستخدم لوضع إصبعهم على الماسح الضوئي لبصمات الأصابع التي من شأنها تحويل بصمة إلى صورة.

   
اردوينو نسخة


    uint8_t p = finger.getImage();
  if (p != FINGERPRINT_OK)  {
    lcd.setCursor(0, 0);
    lcd.print("  Waiting For");
    lcd.setCursor(0, 1);
    lcd.print("  Valid Finger");
    return -1;
  }

  p = finger.image2Tz();
  if (p != FINGERPRINT_OK)  {
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print("  Messy Image");
    lcd.setCursor(0, 1);
    lcd.print("  Try Again");
    delay(3000);
    lcd.clear();
    return -1;
  }
p = finger.fingerFastSearch();
  if (p != FINGERPRINT_OK)  {
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print("Not Valid Finger");
    delay(3000);
    lcd.clear();
    return -1;
  }
    أقل       
إذا كانت الصورة فوضويًا ، فسيطلب منك مسح إصبعك مرة أخرى للحصول على صورة جيدة لبصمة الإصبع والتي سيتم مقارنتها بالصور المحفوظة لجميع بصمات الأصابع في نظامكعند مطابقة الصورة ، سيتم فتح البابخلاف ذلك ، سيظل الباب مغلقا.
ضع إصبعك على المستشعر بحيث يمكن للنظام إنشاء صورة لبصمات أصابعك.
بمجرد أن يتلقى النظام بصمة واضحة ، يكون قفل الباب جاهزًا للاستخدام!


تعليقات

إرسال تعليق

المشاركات الشائعة