- Необхідні компоненти:
- Модуль датчика відбитків пальців з Arduino:
- Робоче пояснення:
- Пояснення схеми:
- Пояснення програми:
Безпека є головною проблемою у нашому повсякденному житті, і цифрові замки стали важливою частиною цих систем безпеки. Існує багато типів охоронних систем, які забезпечують наше місце. Деякі приклади - це система безпеки на основі PIR, система безпеки на основі RFID, система цифрового блокування, системи з біоматрицею, блокування електронного коду. У цій публікації ми взаємодіємо з модулем датчика відбитків пальців з Arduino та створимо біометричну систему безпеки на основі відбитків пальців із блокуванням дверей. Відбиток пальців вважається одним із найбезпечніших ключів для блокування або розблокування будь-якої системи, оскільки він може розпізнати будь-яку особу однозначно і не може бути легко скопійований.
Необхідні компоненти:
- Arduino Uno
- Модуль друку пальців
- Кнопка -4
- Світлодіоди -2
- Резистор 1К -3
- 2.2K резистор -1`
- Блок живлення
- Підключення проводів
- Картонна коробка
- Сервомотор -1
- РК-дисплей 16x2 -1
- Хлібна дошка -1
Модуль датчика відбитків пальців з Arduino:
Модуль датчика відбитків пальців або сканер відбитків пальців - це модуль, який фіксує зображення відбитка пальця, а потім перетворює його в еквівалентний шаблон і зберігає у своїй пам'яті на вибраному ідентифікаторі (розташуванні) Arduino. Тут усім процесом керує Arduino, наприклад, знімання відбитків пальців, перетворення його на шаблони, зберігання розташування тощо.
У цьому проекті датчика відбитків пальців Arduino ми використовували модуль датчика відбитків пальців, щоб взяти відбиток пальця або великого пальця як вхід в систему. Тут ми використовуємо 4 кнопки для реєстрації / повернення, видалення / OK, вгору та вниз. Кожна клавіша має подвійні функції. Клавіша реєстрації використовується для реєстрації нового відбитка пальця в системі та функції повернення назад. Означає, коли користувач хоче зареєструвати новий палець, тоді йому / їй потрібно натиснути клавішу реєстрації, тоді РК-екран запитує ідентифікатор або місце, де користувач хоче зберігати вихідні дані відбитків пальців. Тепер, якщо в цей час користувач не хоче продовжувати далі, тоді він / вона може знову натиснути клавішу реєстрації, щоб повернутися назад (цього разу клавіша реєстрації поводиться як клавіша Назад). Значить клавіша реєстрації має функцію реєстрації та повернення. Клавіша DEL / OKтакож має таку ж подвійну функцію, як коли користувач реєструє новий палець, тоді йому / їй потрібно вибрати ідентифікатор пальця або місце розташування, використовуючи ще дві клавіші, а саме UP / MATCH І DOWN / MATCH (яка також має подвійну функцію), тепер користувачеві потрібно натиснути DEL / OK клавіша (цього разу ця клавіша поводиться як ОК), щоб продовжити роботу з вибраним ідентифікатором або місцем розташування. Клавіші ВГОРУ / ВНИЗ також підтримують функцію збігу пальців. Перевірте відео у кінці, щоб переглянути повну демонстрацію.
Тут ми також прикріпили картонну коробку з сервомотором, яка виступає в ролі захисного воріт, який відкриється лише тоді, коли система прочитає правильний відбиток пальців. Жовтий світлодіод вказує на те, що ворота закриті, а зелений світлодіод означає, що ворота відкриті.
Робоче пояснення:
Працює цей дверний замок датчика відбитків пальцівлегко. У цьому проекті ми використовували ворота, які будуть відкриті, коли ми розмістимо збережений палець на модулі відбитків пальців. Перш за все, користувачеві потрібно зареєструвати палець за допомогою кнопки / клавіш. Для цього користувачеві потрібно натиснути клавішу ENROLL, а потім на РК-дисплеї з'явиться запит на введення місця / ідентифікатора, де пальцем буде магазин. Отже, тепер користувачеві потрібно ввести ідентифікатор (розташування) за допомогою клавіш «ВГОРУ / ВНИЗ». Після вибору Розташування / Ідентифікатор користувачеві потрібно натиснути клавішу OK (клавіша DEL). Тепер РК-екран попросить розмістити палець над модулем відбитків пальців. Тепер користувачеві потрібно покласти палець на модуль друку пальців. Потім РК-дисплей попросить видалити палець з модуля відбитків пальців і знову попросить помістити палець. Тепер користувачеві потрібно знову покласти палець на модуль друку пальців.Тепер модуль відбитків пальців робить зображення, перетворює його у шаблони та зберігає за вибраним ідентифікатором у пам’яті модуля відбитків пальців. Тепер користувач може відкрити ворота, поклавши той самий палець, який він / вона додав або зареєстрував у систему, а потім натисніть клавішу MATCH (клавіша вгору / вниз). Таким же методом користувач може додати більше пальців. Перегляньте відео нижче для повної демонстрації.
Тепер, якщо користувач хоче видалити або видалити будь-який із збережених ідентифікаторів, йому / їй потрібно натиснути клавішу DEL, після натискання клавіші DEL РК-дисплей запитає про вибір місця, що означає вибрати ідентифікатор, який потрібно видалити. Тепер користувачеві потрібно вибрати ідентифікатор та натиснути клавішу OK (та сама клавіша DEL). Тепер РК-дисплей повідомить вас, що палець успішно видалено. Тепер користувач може перевірити, чи його було видалено чи ні, поклавши той самий палець на модуль друку пальців і натиснувши клавішу MATCH (клавіша вгору / вниз).
При розміщенні пальця буде дійсним Зелений світлодіод світиться протягом п’яти секунд, а ворота також одночасно відкриваються. Через 5 секунд ворота будуть автоматично закриті. Користувач може налаштувати відкриття та закриття воріт / дверей відповідно до своїх вимог. Сервомотор відповідає за відкриття та закриття воріт.
Пояснення схеми:
Схема цієї системи захисту від відбитків пальців Arduino дуже проста, що містить Arduino, який контролює весь процес проекту, кнопку, звуковий сигнал та РК-дисплей. Arduino контролює всі процеси.
Кнопка безпосередньо підключена до контакту D14 (ENROLL), D15 (DEL), D16 (UP) і D17 (DOWN) Arduino щодо землі. А жовтий світлодіод підключений до цифрового контакту D7 Arduino щодо землі через Резистор 1k та зелений світлодіод підключаються до D6 Arduino тим же методом. Модулі Rx і Tx модуля друку пальців безпосередньо підключені на програмному послідовному або цифровому штифтах D2 і D3 Arduino. Блок живлення 5 В використовується для живлення модуля відбитка пальців, взятого з плати Arduino, а серводвигун також підключений до ШІМ-контакту D5 Arduino. РК-дисплей 16x2 налаштований у 4-розрядному режимі, а його RS, EN, D4, D5, D6 та D7 безпосередньо підключені до цифрових виводів D13, D12, D11, D10, D9 та D8 Arduino.
Примітка: тут D14, D15, D16, D17 - це відповідно A0, A1, A2, A3.
Пояснення програми:
У програмі ми використовували бібліотеку датчиків відбитків пальців Adafruit для взаємодії модуля відбитків пальців з платою Arduino. Ви можете перевірити повний код нижче, його можна легко зрозуміти. Тут ми пояснюємо основні функції програми Arduino.
Нижче шматок коду використовується, щоб взяти відбиток пальця як вхід і вжити заходів відповідно до перевірки пальця. Якщо палець буде перевірений, ворота будуть відкриті, інакше залишаються закритими.
for (int i = 0; i <5; i ++) {lcd.clear (); lcd.print ("Розмістіть палець"); затримка (2000); int результат = getFingerprintIDez (); if (result> = 0) {digitalWrite (openLight, HIGH); digitalWrite (closeLight, LOW); lcd.clear (); lcd.print ("Дозволено"); lcd.setCursor (0,1); lcd.print ("Gete Opened"); myServo.write (0); затримка (5000); myServo.write (180); digitalWrite (closeLight, HIGH); digitalWrite (openLight, LOW); lcd.setCursor (0,1); lcd.print ("Ворота закриті");
Дана функція void checkKeys () використовується для перевірки, натиснута клавіша або не натиснута клавіша DEL, і що робити, якщо натиснути. Якщо натиснута клавіша ENROLL, натиснута функція Enroll () , а натиснута клавіша DEL, тоді викликається функція delete () .
void checkKeys () {if (digitalRead (enroll) == 0) {lcd.clear (); lcd.print ("Будь ласка, почекайте"); затримка (1000); while (digitalRead (enroll) == 0); Зареєструватися (); } ще if (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 ("Малюнок видалено"); 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 ("ідентифікатор пальця:"); lcd.print (id); lcd.setCursor (0,1); lcd.print ("Розмістіть палець"); затримка (2000); while (p! = FINGERPRINT_OK) {p = finger.getImage ();…………………
Отже, саме таким чином ми можемо використовувати Arduino з модулем зчитування відбитків пальців для системи безпеки.