- Биометрический замок для авто
- Принцип работы охранного устройства на Arduino.
- Используемые компоненты.
- Сборка и программирование.
- Примечание.
- Сканер отпечатков пальцев с помощью Arduino UNO
- Что нам понадобится?
- Схема соединения
- Подключаем комплектующие
- Установка и использование библиотеки
- Код Ардуино
- Принцип работы
- САМОДЕЛЬНЫЙ СКАНЕР ОТПЕЧАТКОВ ПАЛЬЦЕВ
- Схема сканера отпечатков
- Урок 28. Контроль доступа по отпечатку пальца
- Нам понадобится:
- Видео:
- Принцип действия:
- Схема подключения:
- Алгоритм работы:
Биометрический замок для авто
В продолжении темы о модулях Arduino хочется предложить интересный проект, связанный биометрией. Собрав описываемое устройство, можно установить необычную систему безопасности автомобиля, работающую по принципу сканирования отпечатков пальцев. Данная схема еще раз доказывает многофункциональность возможностей Arduino.
Принцип работы охранного устройства на Arduino.
Основное соединение – проводник IG замка зажигания. По нему поступает питающее напряжение на регулятор напряжения и далее по цепи на блок Ардуино, который активирует биометрический датчик. При совпадении отпечатка пальца микроконтроллер подает разрешающий сигнал на блок реле, который управляет реле стартера.
Таким образом, двигатель автомобиля можно завести.
Ровно через десять секунд происходит отключение датчика и для его повторного включения необходимо повторить цикл запуска зажигания.
Если же за десять секунд система не смогла распознать отпечаток пальца или же он не совпадает с заданным образцом, устройство автоматически выключается. Запуск двигателя при этом становится не возможным.
Используемые компоненты.
Для того, чтобы сделать охранное устройство по отпечатку пальца, нужно приобрести следующее:
- Модуль Areduino Uno 1 шт.
ArduinoUno
- Биометрический сенсор для считывания отпечатка пальцев.
Сенсорный датчик
- Источник питания.
Регулируемый источник питания
- Блок реле.
Блок реле
- Биполярный транзистор NPN-типа ВС 547 или подобный. Следует отметить, что в данном случае, цоколевка не критична, поэтому при подборе аналога, следует основываться лишь характеристиками.
Транзистор BC547B
Сборка и программирование.
Принципиальная схема устройства показана на рисунке ниже. Здесь отсутствуют какие-либо детали, требующие глубоких знаний.
Прошивка контроллера осуществляется при помощи стандартного интерфейса Arduino IDE и специальной библиотеки Adafruit fingerprint, которую нужно добавлять дополнительно. Кроме всего, необходимо подключение blank.ino. Эта операция выполняется при помощи команд File – Adafruit – Fingerprint – Sensor-Library-Master – blank.
Для загрузки эталонного отпечатка пальца, по которому впоследствии будет производиться сравнение, требуется скачать и установить бесплатную программу SFG Demo, актуальная версия которой всегда находится на официальном сайте Adafrut. Инструкцию можно посмотреть здесь.
После всех описанных действий, можно приступить к закачке основного скретча программы.
Устанавливают готовое устройство под приборную панель автомобиля, размещая сенсор в удобном свободном месте.
При подсоединении всех проводов следует избегать короткого замыкания на корпус. Перед первым пробным включением смонтированной «секретки», желательно несколько раз проверить правильность предыдущих действий и соответствие с предложенной схемой.
Примечание.
Нельзя быть полностью уверенным в надежности практического применения подобного охранного устройства. Данный проект был разработан исключительно в целях более глубокого изучения микроконтроллеров Arduino. Рекомендуется использовать схему в качестве одной из комплекса мер защиты автомобиля от несанкционированного доступа злоумышленников.
Автор: Николай Владимирович
Источник
Сканер отпечатков пальцев с помощью Arduino UNO
Хотя вы можете получить доступ к защищенным системам через пароли и ключи, обе опции могут быть неудобными и легко забываемы. В этом уроке узнаем, как использовать модуль FPM10A с библиотекой Adafruit Arduino для создания биометрической системы отпечатков пальцев.
Что нам понадобится?
По традиции начинаем с комплектующих для нашего урока.
Детали
- Модуль отпечатков пальцев FPM10A
- Arduino Uno
FPM10A модуль для Ардуино
Библиотеки и ПО
- Arduino IDE
- Adafruit Fingerprint Library
Схема соединения
Схема соединения модуля FPM10A и Ардуино Уно нужно соединить вместе как на рисунке выше. Подробнее мы остановимся на следующем шаге.
Подключаем комплектующие
Начать работать с этим модулем невероятно просто из-за того, что он использует последовательный порт для связи. Однако, поскольку у Arduino Uno только один аппаратный последовательный порт, вам необходимо использовать последовательный порт через программное обеспечение, используя контакты 2 и 3, чтобы общаться с модулем отпечатков пальцев (серийный порт аппаратного обеспечения зарезервирован для связи с ПК).
Ленточный кабель, который поставляется вместе с модулем FPM10A, является не очень удобным для хобби, так провода сидят в корпусе с шагом 1,27 мм, поэтому мы отрезали с одной стороны, а затем провода подключили к перемычкам.
Установка и использование библиотеки
Первым шагом в использовании FPM10A является установка библиотеки Fingerprint от Adafruit, которая может быть выполнена с помощью Менеджера библиотек. Откройте Arduino IDE и перейдите в:
Sketch → Include Library → Manage Libraries (Управление библиотеками)
Когда менеджер библиотек загружает поиск по «Fingerprint», то первым результатом должна быть библиотека «отпечатков пальцев» от Adafruit. Установите её.
После установки библиотеки пришло время создать новый проект Ардуино. Нажмите Файл → Создать, а затем сохраните проект в своей собственной папке. На этом этапе откройте папку проекта и скопируйте в нее файл «fingerprint.h».
Это специальный файл заголовок, который был написан для того, чтобы сделать библиотеку отпечатков пальцев более легкой в использовании. Файл заголовка имеет только три функции:
- fingerprint_setup () — конфигурирует последовательный порт для 9600 бод и подключается к модулю;
- readFingerprint () — функция опроса, которая возвращает -1, если что-то пошло не так, или возвращает информацию о том, что найден успешный отпечаток
- enrollFingerprint (int id) — добавляет отпечаток в систему с присвоенным идентификатором «id».
Чтобы включить этот файл в свой проект, просто используйте команду include, как показано ниже:
Первой функцией, которую необходимо вызвать в setup (), является fingerprint_setup (), которая автоматически соединяется с модулем и подтверждает, что все работает.
Чтобы добавить новый отпечаток, вызовите функцию enrollFingerprint (id).
Это приведет к возврату -1, если произойдет сбой. В противном случае значения указывают на успешную регистрацию отпечатков пальцев. Идентификатор передал этой функции ссылки на отсканированный отпечаток пальца, и каждый отпечаток имел уникальный идентификационный номер.
Код Ардуино
Итоговый скетч для нашей платы Ардуино вы можете скопировать ниже:
Принцип работы
Когда вы включите этот проект, он сначала попросит вас поместить палец на сканер. Если сканер способен считывать ваши отпечатки пальцев, он попросит вас удалить и затем заменить палец на сканер. Это должно привести к тому, что сканер успешно добавит ваш отпечаток пальца в ID 1, а перенос пальца на сканер должен привести к доступу системы.
Этот проект можно легко расширить, включив блокировки и реле соленоида, чтобы разрешить авторизованным пользователям вносить изменения и разблокировать систему. Как только ваш проект будет готов, — установите новый сканер в двери, шкафы, сейфы, окна, электрические системы, компьютеры и многое другое!
Источник
САМОДЕЛЬНЫЙ СКАНЕР ОТПЕЧАТКОВ ПАЛЬЦЕВ
Под названием сканер отпечатков пальцев скрывается интересный гаджет, который можно использовать не только как эффективный кодовый замок для шкафа или ящика, но и контроль доступа в свою мастерскую или автомобиль. Электронная схема представляет собой простую комбинацию модуля распознавания отпечатков пальцев и Arduino. В модели используются считыватель FPM10A (Adafruit) и Arduino pro mini.
Схема сканера отпечатков
Стоимость таких модулей составляет около 1000 рублей (может и дешевле найдете).
Чтобы обучить считыватель отпечатков пальцев, прежде всего запишите их в память. Для этой цели можно использовать специальное программное обеспечение под названием SFGDemo.
Второе решение, более простое и не требующее установки дополнительного программного обеспечения, — это использование только IDE Arduino. Для этого загрузите и установите библиотеку датчика отпечатков пальцев Adafruit по ссылке в конце статьи. Затем из примеров программ выберите enroll.ino и загрузите его в Arduino. Общение с пользователем происходит через терминал. После того, как сохранили изображения отпечатков пальцев, вы можете загрузить эскиз fingerprint_door_lock.ino в Arduino pro mini через USB-адаптер. Следующим шагом является сборка платы, пайка нескольких элементов и подключение ридера к разъему CON2.
Сканер отпечатков пальцев питается от напряжения 12 В из-за желания запитать от стандартной 12 В гелевой свинцовой батареи (на случай сбоя сети). Стабилизатор снижает напряжение до 5 В — этого требуют Arduino и реле. Считыватель FPM10A может питаться напряжением от 3,6 до 6 В. Работа устройства заключается в приближении ранее зарегистрированного отпечатка пальца к считывателю, после чего контакты реле будут переключать защелку, электрозамок и так далее. Будут эти исполнительные устройства открываться на заданное время — в приведенной модели 5 секунд.
Процент ложных отказов очень низок. Примерно 1%, то есть один раз на каждые 100 попыток датчик не распознает палец должным образом. Скачать архив можно тут.
Источник
Урок 28. Контроль доступа по отпечатку пальца
В этом уроке мы создадим устройство открывающее дверь по отпечатку пальца.
Нам понадобится:
- Arduino х 1шт.
- Сканер отпечатков пальцев x 1шт.
- LCD дисплей LCD1602 IIC/I2C(синий) или LCD1602 IIC/I2C(зелёный) х 1шт.
- Trema зуммер х 1шт.
- Trema кнопка x 2шт.
- Trema светодиод x 2шт.
- Trema силовой ключ x1шт.
- Электромагнитный замок x1шт.
- Trema Shield х 1шт.
- Источник питания 12В постоянного тока x1шт.
- Коннектор power jack Мама с клемником x1шт.
Для реализации проекта нам необходимо установить библиотеки:
- Библиотека LiquidCrystal_I2C_V112 (для работы с дисплеями LCD1602 по шине I2C).
- Библиотека Adafruit_Fingerprint (для работы с модулем отпечатков пальцев).
- Библиотеки Wire и SoftwareSerial входят в стандартный набор IDE Arduino.
О том как устанавливать библиотеки, Вы можете ознакомиться на странице Wiki — Установка библиотек в Arduino IDE .
Видео:
Принцип действия:
- Сканер отпечатков пальцев, в данном устройстве, выполняет три действия:
- Регистрация отпечатков пальцев.
При регистрации отпечатков пальцев, пользователь должен приложить палец к оптическому датчику дважды. Модуль обработает оба изображения и на их основе создаст шаблон, который будет сохранён в библиотеке отпечатков пальцев. - Сравнение отпечатков пальцев.
При сравнении отпечатков пальцев, пользователь прикладывает палец к оптическому датчику, модуль сгенерирует шаблон пальца и сравнит его с сохранёнными шаблонами в библиотеке отпечатков пальцев. - Удаление отпечатков пальцев.
При удалении отпечатка пальца, модуль удаляет шаблон отпечатка из библиотеки.
Схема подключения:
LCD дисплей подключается к аппаратной шине I2C, все остальные модули, подключаются к любым выводам arduino, каждый из которых можно изменить на любой другой, в начале скетча. Электромеханический замок подключается к напряжению питания 12В, постоянного тока, в разрыв вывода GND подключается клеммник силовой части Trema ключа.
Arduino: | Модули: |
---|---|
2 (RX — вход программного UART) | T — выход сенсора отпечатков пальцев |
3 (TX — выход программного UART) | R — вход сенсора отпечатков пальцев |
4 | Trema светодиод (зелёный) |
5 | Trema светодиод (красный) |
6 | Trema зуммер |
7 | Trema силовой ключ |
8 | Trema кнопка («A») |
9 | Trema кнопка («B») |
I2C | LCD дисплей |
Алгоритм работы:
При старте (в коде setup), скетч выполняет 3 задачи:
- Установка режимов работы выводов.
- Инициализация и вывод информации на дисплей.
- Инициализация (и проверка) сенсора отпечатков пальцев.
Циклически (в коде loop), скетч выполняет 4 задачи:
- Опрос состояния кнопок — выполняется функцией Func_buttons_control().
- Общение с сенсором отпечатков пальцев — выполняется функцией Func_sensor_communication().
- Вывод данных на LCD дисплей — выполняется функцией Func_display_show().
- Управление модулями: зуммером, светодиодами, силовым ключом — выполняется в коде loop.
Тип задач выполняемых функциями Func_buttons_control(), Func_sensor_communication() и Func_display_show(), определяется значением переменной VAR_mode_MENU , которая хранит номер режима меню:
- 0-9 вне меню
- 10-19 Menu > Set state
- 20-29 Menu > Show ID
- 30-39 Menu > New ID
- 40-49 Menu > Del ID
- 99 Menu > Exit
Управление модулями осуществляется при установленном флаге FLG_state_WORK — указывающим, что устройство находится в состоянии ENABLE.
Открытие замка (включение зуммера, переключение светодиодов) осуществляется по установленному флагу FLG_mode_ACCESS, который, в конце кода loop, сбрасывается через 5 секунд после установки.
Источник