Учет рабочего времени по отпечатку пальца своими руками

Надоел мне бардак на работе с учетом рабочего времени и я решил создать своими силами систему, которая на выходе выдавала бы мне готовый табель. Стал изучать разработки других людей. В основном это были системы с использованием RFID меток , различных электронных ключей (RC522) и на микроконтроллере Arduino. Эти варианты я исключил сразу т.к. метки и ключи можно передать другому. И тут я вспомнил, что на aliexpress продают сканеры отпечатков пальцев(fingerprint). Изучив данный девайс получше, заказал следующий перечень деталей.

микроконтроллер с wifi ESP8266
сканер отпечатков пальцев FPM10A
UART конвертер
Экран Nextion 3.2 (или на aliexpress) Хотя можно и другого размера
Пьезодинамик
Блок питания 5В 2А или такой

Логику процесса придумал следующую:
Соединяем FRM10a и UART конвертер и заливаем в память сканера 2 отпечатка пальцев каждого сотрудника с помощью программы SFGDemo. Соединяем ESP8266, FPM10A, Nextion 3.2, динамик и БП (см. схему). При подаче питания, ESP8266 подключается к точке доступа, проверяет соединение с сервером. При отсутствии ошибок сканер включается. Если поднести палец к нему, он произведет поиск в своей базе и при удаче передаст id пальца в микроконтроллер. ESP8266 в свою очередь передаст этот id на сервер (PHP+MySQL). Сервер сопоставит id c базой сотрудников. Запишет время события и отправит ответ микроконтроллеру. ESP8266 выведет ответ на экран.  Таблицу записей событий будет обрабатывать программа на PHP и выдавать мне готовый табель. Микроконтроллер также раз в 30 секунд получает дату и время с сервера и выводит их на экран, заодно и проверяет связь.

Вот что у меня получилось

Кто хочет собрать такую же, вот исходники . Нет только файлов обрабатывающие таблицы и выдающие табель. Сервер также не защищен от sql- инъекций т.к. он будет доступен только в локальной сети и ограниченному числу людей. Чтоб запустить сервер установите любую AMP сборку, например AppServ. Через PHPmyAdmin cоздайте БД  с именем fp и создайте нужные таблицы с помощью файлика mysql. Для загрузки интерфейса в экран качайте Nextion Editor.

Добавлено после месяца тестирования:

В течении июня я тестировал данный девайс у себя на работе. Возникла всего лишь одна проблема. У сотрудников которые работают руками на пальцах появляются царапины, раны и пр дефекты. В следствии этого пальцы не распознавались. Приходилось подбирать опытным путем. Большой проблемой было выбрать нужный палец у уборщицы т.к. она постоянно работает в воде и с чистящими средствами. В начале дня её палец нормально определялся, а в конце рабочей смены с 5-6 раза. На данный момент система работает очень хорошо. В любой момент я могу посмотреть кто пришел на работу, а кто нет. Табель рабочего времени я могу смотреть через любой браузер. Мне не нужен сотрудник ведущий табель. Теперь мой табель выглядит так:

Сотрудники стали более дисциплинированными. В общем моя разработка удалась на все 100.

Купи детали со скидкой (кэшбэк)

Вливайтесь в общение

2 комментария

  1. 1. Интересно. Но без файлов обрабатывающие таблицы и выдающие табель — бесполезно.
    2. Снимаются отпечатки пальцев. Законно ли это? Как на это посмотрит МВД? Когда снимаются отпечатки пальцев, например охранников, то они дают письменное согласие на это в органах лицензирования МВД.

  2. 1. Скрипт обрабатывающий базу данных не стал выкладывать т.к. я писал его под свою организацию. И он будет бесполезен для остальных.
    2. Законом запрещено хранить отпечатки пальцев в явном виде (распечатка, графический файл и т.д). В случае же с этим устройством отпечатки хранятся внутри сканера (без сохранения на компьютер) и достать их от туда и использовать для других целей не представляется возможным.

Оставьте комментарий

контакт