Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Учебное пособие по датчику отпечатков пальцев Arduino

Компоненты и расходные материалы

Arduino Nano R3
× 1
Макет (общий)
× 1
Датчик отпечатков пальцев
× 1
1,44 "ЖК-дисплей ILI9361C
× 1

Приложения и онлайн-сервисы

IDE Arduino

Об этом проекте

Дорогие друзья, добро пожаловать на очередной урок! Сегодня мы собираемся создать интересный проект Arduino, в котором используется модуль датчика отпечатков пальцев . . Без промедления, приступим!

Я всегда хотел попробовать модуль датчика отпечатков пальцев, чтобы узнать больше о его технологии и использовать его в некоторых своих проектах, чтобы добавить в них биометрическую безопасность.

Чтобы продемонстрировать простое использование датчика, был построен этот простой проект. Я подключил датчик к Arduino Nano, а также использую небольшой, но очень быстрый цветной TFT-дисплей 1,44 дюйма. Проект запрашивает действующий отпечаток пальца для разблокировки. Когда я кладу палец на датчик, он распознает мой палец, меняет цвет значка отпечатка пальца на зеленый и приветствует меня. Если моя девушка коснется сенсора пальцем, он также узнает ее и отобразит приветственное сообщение с ее именем. Если я коснусь сенсора другим пальцем, проект не разблокирует экран. Он работает нормально, и вы увидите, вы можете создать этот проект менее чем за 10 минут ! Посмотрим, как этого добиться!

Шаг 1. Получите все детали

Детали, необходимые для создания этого проекта, следующие:

  • Arduino Nano ▶ http://educ8s.tv/part/ArduinoNano
  • Модуль датчика отпечатков пальцев ▶ http://educ8s.tv/part/FingerprintSensor
  • Цветной TFT-дисплей 1,44 дюйма ▶ http://bit.ly/144TFTLCD
  • Маленькая макетная плата ▶ http://educ8s.tv/part/SmallBreadboard
  • Некоторые провода ▶ http://bit.ly/Wires3InOne
  • Powerbank ▶ http://educ8s.tv/part/Powerbank

Стоимость этого проекта составляет около 30 долларов. Если принять во внимание технологию, которую использует этот проект, то эта стоимость очень низкая. 10 лет назад подобные проекты стоили несколько сотен долларов!

Шаг 2. ЖК-дисплей 1,44 дюйма

Это отображение очень быстрое. Он использует драйвер ILI9163C. Он имеет разрешение 128x128 пикселей и может отображать до 260 000 цветов. Его очень легко использовать с Arduino, и он стоит около 4 долларов.

Дисплей использует протокол SPI для связи с платой Arduino. Нам нужно всего лишь подключить 8 проводов, чтобы он заработал. Приступим.

Подключение к Arduino

Vcc ▶ Вывод 5 В на Arduino

GND ▶ Вывод Arduino GND

CS ▶ Цифровой контакт 10

RST ▶ Цифровой вывод 9

A0 ▶ Цифровой контакт 8

SDA ▶ Цифровой вывод 11

SCK ▶ Цифровой вывод 13

Светодиод ▶ Вывод 3.3V Arduino

Как видите, этот дисплей очень легко использовать с Arduino. Он очень дешевый, очень быстрый, маленький по размеру и потребляет всего около 30 мА. Я думаю, что это хороший дисплей для использования в проектах, которые не требуют большого дисплея, но цвет подойдет.

Вы можете получить его здесь ▶ http://bit.ly/144TFTLCD

Шаг 3. Модуль датчика отпечатков пальцев

Модуль датчика отпечатков пальцев небольшой, красиво собран и использует внутри несколько усовершенствованных микросхем DSP (цифровой обработки сигналов).

Датчик работает так. Это оптический датчик, то есть он анализирует фотографию пальца. Затем он визуализирует изображение, производит некоторые вычисления, находит особенности этого пальца, а затем ищет в своей памяти отпечаток пальца с такими же характеристиками. Все это можно сделать менее чем за секунду!

Этот модуль может хранить до 1000 отпечатков пальцев в своей памяти, а уровень ложного принятия составляет менее 0,001%, что делает его довольно безопасным! Здорово! Мы получаем все это в очень простом в использовании модуле по очень низкой цене! Это действительно впечатляющая технология!

Вы можете получить его здесь ▶ http://educ8s.tv/part/FingerprintSensor

Шаг 4:Соединение частей

А теперь давайте соберем все части вместе.

Сначала нам нужно подключить модуль датчика отпечатков пальцев. Подключаем кабель сзади модуля. Пожалуйста, проверьте прикрепленное фото.

Подключение датчика отпечатков пальцев

Черный провод ▶ Arduino GND

Красный провод ▶ Arduino 5V

Зеленый провод ▶ Цифровой контакт 2

Белый провод ▶ Цифровой контакт 3

Теперь мы готовы подключить дисплей к Arduino.

Подключение дисплея

Vcc ▶ Вывод 5 В на Arduino

GND ▶ Вывод Arduino GND

CS ▶ Цифровой контакт 10

RST ▶ Цифровой вывод 9

A0 ▶ Цифровой контакт 8

SDA ▶ Цифровой вывод 11

SCK ▶ Цифровой вывод 13

Светодиод ▶ Вывод 3.3V Arduino

Вот и все! Мы готовы запустить проект. Как видите, работает нормально! Легко, правда?

Шаг 5:Код проекта

Давайте теперь посмотрим на программную сторону проекта и на то, как записать наши отпечатки пальцев во встроенную память модуля, чтобы распознать их.

Нам нужно скачать несколько библиотек. Прежде всего нам понадобится библиотека Adafruit Fingerprint, библиотека Adafruit GFX и библиотека Sumotoy для отображения.

https://github.com/adafruit/Adafruit-Fingerprint-Sensor-Library

https://github.com/adafruit/Adafruit-GFX-Library

https://github.com/sumotoy/TFT_ILI9163C

Прежде всего, мы должны загрузить пример регистрации на нашу плату Arduino. Заходим в Файл -> Примеры -> Библиотека датчика отпечатков пальцев Adafruit -> Зарегистрироваться. С помощью этого примера программы мы можем хранить отпечатки пальцев во флэш-памяти модуля. Загружаем скетч и открываем Serial Monitor. Программа просит нас ввести идентификатор для регистрации. Затем мы дважды прикладываем палец к датчику в соответствии с инструкциями, и отпечаток пальца сохраняется! Таким образом можно сохранить до 1000 отпечатков пальцев!

Теперь загрузим код, который я разработал. Благодаря библиотекам Adafruit код проекта очень простой. Посмотрим небольшую часть кода.

  void loop () {fingerprintID =getFingerprintID (); // Здесь мы сканируем отпечаток пальца delay (50); if (fingerprintID ==1) // Мы нашли действительный отпечаток пальца с идентификатором 1 {display.drawBitmap (30,35, icon, 60,60, GREEN); задержка (2000); displayUnlockedScreen (); displayIoanna (); задержка (5000); display.fillScreen (ЧЕРНЫЙ); displayLockScreen (); } if (fingerprintID ==2) // Мы нашли действительный отпечаток пальца с идентификатором 2 {display.drawBitmap (30,35, icon, 60,60, GREEN); задержка (2000); displayUnlockedScreen (); displayNick (); задержка (5000); display.fillScreen (ЧЕРНЫЙ); displayLockScreen (); }}  

Мы запускаем сенсор и дисплей и проверяем наличие пальца на сенсоре каждые 50 мс. Если на датчике есть палец, мы запрашиваем у модуля поиск, зарегистрирован ли этот палец в его памяти. Если он находит отпечаток пальца в памяти, он возвращает идентификатор этого отпечатка. Затем он отображает приветственное сообщение и снова блокирует экран через несколько секунд.

Как всегда, вы можете найти код проекта в этом руководстве. Поскольку я время от времени обновляю код, для получения последней версии кода посетите веб-сайт проекта:http://educ8s.tv/arduino-fingerprint-sensor-module ...

Fingerprint.ino

Шаг 6:Заключительные мысли

Я действительно впечатлен производительностью и простотой использования этого модуля датчика отпечатков пальцев. При очень низких затратах мы можем добавить в наши проекты функции биометрической защиты. Это восхитительно. Подобные проекты были бы невозможны для производителя даже несколько лет назад. В этом красота и сила оборудования и программного обеспечения с открытым исходным кодом. После этого первого теста я собираюсь использовать модуль датчика отпечатков пальцев вместе с электрическим замком, чтобы увидеть, можем ли мы использовать этот датчик в реальной жизненной ситуации, так что следите за обновлениями. Пожалуйста, дайте мне знать, что вы думаете об этом датчике, в разделе комментариев ниже. Спасибо!

Код

  • Фрагмент кода №1
Фрагмент кода №1 Обычный текст
 void loop () {fingerprintID =getFingerprintID (); // Здесь мы сканируем отпечаток пальца delay (50); if (fingerprintID ==1) // Мы нашли действительный отпечаток пальца с идентификатором 1 {display.drawBitmap (30,35, icon, 60,60, GREEN); задержка (2000); displayUnlockedScreen (); displayIoanna (); задержка (5000); display.fillScreen (ЧЕРНЫЙ); displayLockScreen (); } if (fingerprintID ==2) // Мы нашли действительный отпечаток пальца с идентификатором 2 {display.drawBitmap (30,35, icon, 60,60, GREEN); задержка (2000); displayUnlockedScreen (); displayNick (); задержка (5000); display.fillScreen (ЧЕРНЫЙ); displayLockScreen (); }} 
Github
https://github.com/sumotoy/TFT_ILI9163Chttps://github.com/sumotoy/TFT_ILI9163C
Github
https://github.com/adafruit/Adafruit-Fingerprint-Sensor-Libraryhttps://github.com/adafruit/Adafruit-Fingerprint-Sensor-Library
Github
https://github.com/adafruit/Adafruit-GFX-Libraryhttps://github.com/adafruit/Adafruit-GFX-Library

Производственный процесс

  1. In-Display Fingerprint Sensor
  2. Датчик освещенности Raspberry Pi:простое руководство по LDR
  3. Учебное пособие по блокировке RFID для Arduino
  4. Мониторинг CO2 с помощью датчика K30
  5. Какой ты рост?
  6. Емкостной датчик отпечатков пальцев с Arduino или ESP8266
  7. Башня датчика облаков Arduino
  8. Водяной пистолет с датчиком движения
  9. Мини-радар с Arduino
  10. Учебник по Arduino 01:Начало работы