- Необходими компоненти:
- Модул сензор за отпечатък с пръсти с Arduino:
- Работно обяснение:
- Обяснение на веригата:
- Обяснение на програмата:
Сигурността е основна грижа в ежедневието ни и цифровите брави се превърнаха във важна част от тези системи за сигурност. Има много видове системи за сигурност, които осигуряват нашето място. Някои примери са базирана на PIR система за сигурност, базирана на RFID система за защита, система за цифрово заключване, системи с биоматрица, заключване на електронен код. В тази публикация ще свържем сензорен модул за пръстови отпечатъци с Arduino и ще изградим базирана на пръстови отпечатъци биометрична система за сигурност със заключване на вратата. Finger Print се счита за един от най-безопасните ключове за заключване или отключване на която и да е система, тъй като може да разпознае всеки човек по уникален начин и не може да бъде копиран лесно.
Необходими компоненти:
- Arduino Uno
- Модул за отпечатък с пръсти
- Бутон -4
- Светодиоди -2
- 1K резистор -3
- 2.2K резистор -1`
- Захранване
- Свързващи проводници
- Картонена кутия
- Серво мотор -1
- 16x2 LCD -1
- Дъска за хляб -1
Модул сензор за отпечатък с пръсти с Arduino:
Модул за сензор за пръстов отпечатък или скенер за пръстов отпечатък е модул, който улавя изображението на отпечатъка на пръста и след това го преобразува в еквивалентен шаблон и ги записва в паметта си върху избрания идентификатор (местоположение) от Arduino. Тук целият процес се командва от Arduino като заснемане на изображение на пръстов отпечатък, конвертиране в шаблони и съхраняване на местоположение и т.н.
В този проект за сензор за пръстови отпечатъци на Arduino използвахме модула за сензор за пръстови отпечатъци, за да вземем отпечатък от пръст или палец като вход в системата. Тук използваме 4 бутона за записване / обратно, изтриване / OK, НАГОРЕ и Надолу. Всеки клавиш има двойни функции. Клавишът за регистрация се използва за записване на нов отпечатък на пръст в системата и обратно функцията. Означава, когато потребителят иска да регистрира нов пръст, тогава той / тя трябва да натисне клавиша за регистрация, след което LCD пита за идентификатора или местоположението, където потребителят иска да съхранява изхода за пръстови отпечатъци. Сега, ако в този момент потребителят не иска да продължи по-нататък, той / тя може да натисне отново клавиша за регистрация, за да се върне (този път клавишът за регистрация се държи като клавиш за връщане назад). Означава, че клавишът за записване има функция за записване и обратно. Клавиш DEL / OKсъщо има същата двойна функция, както когато потребителят регистрира нов пръст, тогава той / тя трябва да избере ID на пръста или местоположение, като използва други два клавиша, а именно НАГОРЕ / СЪВПАДАНЕ И НАДОЛУ / МАТЧ (който също има двойна функция), сега потребителят трябва да натисне DEL / OK (този път този ключ се държи като ОК), за да продължите с избрания идентификатор или местоположение. Бутоните НАГОРЕ / НАДОЛУ също поддържат функцията за съвпадение на отпечатъци с пръсти. Проверете видеото в края за пълна демонстрация.
Тук сме прикрепили и картонена кутия със серво мотор, която да действа като защитна порта, която ще се отвори само когато системата ще прочете правилния отпечатък с пръсти. Жълтият светодиод показва, че портата е затворена, а зеленият светодиод показва, че портата е отворена.
Работно обяснение:
Работа на тази ключалка на датчика за пръстови отпечатъцилесно е. В този проект използвахме порта, която ще бъде отворена, когато поставим съхранен пръст върху модула за отпечатване на пръсти. На първо място, потребителят трябва да регистрира пръста си с помощта на бутон / клавиши. За да направите това, потребителят трябва да натисне клавиша ENROLL и след това LCD ще поиска въвеждане на местоположение / ID, където пръстът ще бъде магазин. Така че сега потребителят трябва да въведе ID (Местоположение) с помощта на бутоните НАГОРЕ / НАДОЛУ. След като изберете Местоположение / ID потребителят трябва да натисне клавиш OK (клавиш DEL). Сега LCD ще поиска да поставите пръст върху модула за пръстови отпечатъци. Сега потребителят трябва да постави пръста си върху модула за отпечатване на пръсти. След това LCD ще поиска да премахне пръста от модула за отпечатване на пръсти и отново ще поиска поставяне на пръста. Сега потребителят трябва да постави пръста си отново върху модула за отпечатване на пръсти.Сега модулът за пръстови отпечатъци прави изображение и го преобразува в шаблони и го съхранява чрез избран идентификатор в паметта на модула за пръстови отпечатъци. Сега потребителят може да отвори портата, като постави същия пръст, който е добавил или се е регистрирал в системата, и след това натиснете бутона МАТЧ (бутон НАГОРЕ / Надолу). По същия метод потребителят може да добави още пръсти. Проверете видеото по-долу за пълна демонстрация.
Сега, ако потребителят иска да премахне или изтрие който и да е от съхранените идентификатори, той / тя трябва да натисне клавиша DEL, след натискане на клавиша DEL, LCD ще поиска избрано местоположение, означава изберете ID, който трябва да бъде изтрит. Сега потребителят трябва да избере ID и да натисне бутона OK (същия клавиш DEL). Сега LCD ще ви уведоми, че пръстът е изтрит успешно. Сега потребителят може да провери дали е бил изтрит или не, като постави същия пръст върху модула за пръстови отпечатъци и натисне бутона MATCH (бутон НАГОРЕ / Надолу).
Когато се постави пръстът ще бъде валиден Зеленият светодиод ще свети в продължение на пет секунди и портата също се отваря едновременно. След 5 секунди портата ще се затвори автоматично. Потребителят може да персонализира отварянето и затварянето на вратата / вратата според техните изисквания. Серво двигателят е отговорен за отварянето и затварянето на портата.
Обяснение на веригата:
Схемата на тази система за защита от пръстови отпечатъци на Arduino е много проста, която съдържа Arduino, който контролира целия процес на проекта, бутон, зумер и LCD. Arduino контролира цялостните процеси.
Бутонът е директно свързан към щифт D14 (ENROLL), D15 (DEL), D16 (UP) и D17 (DOWN) на Arduino по отношение на земята и жълт светодиод е свързан към Digital pin D7 на Arduino по отношение на земята през 1k резистор и зелен светодиод са свързани към D6 на Arduino по същия метод. Rx и Tx на модула за отпечатване на пръсти, директно свързани със софтуерни серийни или цифрови щифтове D2 и D3 на Arduino. Захранването с 5v се използва за захранване на модул за отпечатване на пръсти, взет от платката Arduino, а сервомоторът също е свързан към PWM щифт D5 на Arduino LCD 16x2 е конфигуриран в 4-битов режим и неговите RS, EN, D4, D5, D6 и D7 са директно свързани с цифрови щифтове D13, D12, D11, D10, D9 и D8 на Arduino.
Забележка: тук D14, D15, D16, D17 са съответно A0, A1, A2, A3.
Обяснение на програмата:
В една програма използвахме Adafruit Fingerprint Sensor Library за свързване на модула за пръстови отпечатъци с платката Arduino. Можете да проверите пълния код по-долу, той може лесно да бъде разбран. Тук обясняваме основните функции на програмата Arduino.
По-долу парче код се използва, за да се вземе Finger Print като вход и да се предприемат действия според валидирането на пръста. Ако пръстът бъде потвърден, портата ще бъде отворена, в противен случай останете затворена.
за (int i = 0; i <5; i ++) {lcd.clear (); lcd.print ("Place Finger"); забавяне (2000); int резултат = getFingerprintIDez (); if (резултат> = 0) {digitalWrite (openLight, HIGH); digitalWrite (closeLight, LOW); lcd.clear (); lcd.print ("Разрешено"); lcd.setCursor (0,1); lcd.print ("Gete Open"); myServo.write (0); забавяне (5000); myServo.write (180); digitalWrite (closeLight, HIGH); digitalWrite (openLight, LOW); lcd.setCursor (0,1); lcd.print ("Gate Closed");
Дадена функция void checkKeys () се използва за проверка на Регистриране или натискане на клавиша DEL или не и какво да се прави, ако се натисне. Ако бутонът ENROLL е натиснат, се извиква функцията Enroll () и се натиска бутон DEL, след което се извиква функцията delete ()
void checkKeys () {if (digitalRead (записване) == 0) {lcd.clear (); lcd.print ("Моля, изчакайте"); забавяне (1000); докато (digitalRead (записване) == 0); Записвам се(); } иначе ако (digitalRead (del) == 0) {lcd.clear (); lcd.print ("Моля, изчакайте"); забавяне (1000); delet (); }}
Дадената функция се използва за въвеждане на идентификатор за изтриване и извикване на функция uint8_t deleteFingerprint (uint8_t id), която ще изтрие пръста от записите.
void delet () {int count = 0; lcd.clear (); lcd.print ("Изтриване на пръст"); lcd.setCursor (0,1); lcd.print ("Местоположение:"); while (1) {lcd.setCursor (9,1); lcd.print (брой); if (digitalRead (up) == 0) {count ++; ако (брой> 25) брой = 0; забавяне (500); }……………….
Дадената функция се използва за изтриване на пръстов отпечатък от записа на избрания идентификатор.
uint8_t deleteFingerprint (uint8_t id) {uint8_t p = -1; lcd.clear (); lcd.print ("Моля, изчакайте"); p = finger.deleteModel (id); if (p == FINGERPRINT_OK) {Serial.println ("Изтрит!"); lcd.clear (); lcd.print ("Figer Deleted"); lcd.setCursor (0,1); lcd.print ("Успешно"); забавяне (1000); } else {Serial.print ("Нещо не е наред"); lcd.clear (); lcd.print ("Нещо не е наред"); lcd.setCursor (0,1); lcd.print ("Опитайте отново по-късно"); забавяне (2000); връщане p; }}
Дадената функция се използва за вземане на изображение за отпечатване на пръсти и конвертирането им в шаблона и запазването му чрез избран идентификатор в паметта на модула за пръстови отпечатъци.
uint8_t getFingerprintEnroll () {int p = -1; lcd.clear (); lcd.print ("ID на пръста:"); lcd.print (id); lcd.setCursor (0,1); lcd.print ("Place Finger"); забавяне (2000); докато (p! = FINGERPRINT_OK) {p = finger.getImage ();…………………
Така че можем да използваме Arduino с модул за четене на пръстови отпечатъци за система за сигурност.