Anviz t5 pro подключение к компьютеру

Обновлено: 06.07.2024

Недавно мне в руки попало новое биометрическое устройство Anviz , интегрированное с дверным замком. Моей задачей было связать это устройство с 1С. Я начал изучать SDK и с удивлением обнаружил, что в нем отсутствуют функции распознавания. Оказывается, все распознавание ведется внутри устройства.

Благодаря такой реализации получаются следующие преимущества:

  1. Устройство может работать автономно, без связи с компьютером.
  2. Устройство подключается в локальную сеть по TCP / IP , один компьютер может обслуживать целую сеть устройств.
  3. Можно заводить базу отпечатков с помощью стандартной программы от AVIZ и копировать ее во все устройства.

Устройство, с которым я работал – Anviz T 5 Pro , стоит в районе 250$:


Существует его более простая модификация – Anviz T 5. Она работает только в режиме сканера отпечатков и не содержит функции распознавания, соответственно, требует постоянной онлайн-связи с обслуживающим компьютером.

Оба устройства поддерживают режим дополнительной верификации с помощью RFID карт.

Для параноиков существует еще более защищенное устройство – Anviz T 50, оно содержит кнопки для ввода пин-кода и стоит в районе 350$:


У Anviz есть программа, которая занимается обслуживанием T 5 Pro – заносит в него базу отпечатков, делает настройки сетевого адреса и т.п.

SDK для подобных устройств бесплатное. Оно называется SDK _ ALL , функции имеют префикс CKT . В состав SDK входит множество примеров на различных языках программирования.

Выбор способа реализации

Для интеграции с 1С нужно только оперативно получать журнал устройства. Нужны только функции для чтения журнала прохода и установки соединения.

Поэтому для решения я выбрал известный мне Visual Basic 6.

Подключение DLL к Visual Basic 6

SDK реализовано в файле tc400.dll

Модуль подключения к DLL прописан в файле CKT_DLL.bas из SDK .

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

Подключение к устройству

При подключении к сетевому устройству Anviz обнаружено, что соединение происходит только по ID = 0. Поэтому в случае опроса нескольких устройств их надо подключать по очереди через этот ID . Все демонстрационные программы не работают по ID , отличному от 0.

Подключение по выделенному ID доступно только в режиме сервера. Я пока не разобрался с этим режимом. Решил не усложнять, если и так хорошо работает.

Если устройство не подключено к сети, то функция подключения из SDK ждет с достаточно большим таймаутом, около 2х секунд.

Чтобы отключенное устройство не тормозило процесс перебора устройств, я предварительно пингую адрес с временем ответа 20 милисекунд. Если ответ получен, значит устройство в сети и можно читать журнал.

Опрос устройств идет раз в секунду, занимает одну секунду. В принципе, если устройств достаточно много, то можно запустить два приложения, чтобы они параллельно обслуживали устройства.

Чтение журнала проходов

Отпечатки пальцев привязываются к номеру сотрудника ( Staffer No ) – текстовой строке в программе настройки Anviz . По сути, основная цель интеграции Т5 Pro - считывание журнала проходов.

В тестовой программе XE 2 окно чтения журнала выглядит так:


Записи хранятся в некотором буфере ограниченного размера (порядка 400-1000 записей).

Каждая запись имеет пометку, что она новая. Есть функции, которые считывают весь журнал, есть функции, которые считывают только новые записи.

Есть функция, которая очищает весь журнал и функция, которая снимает пометку со всех новых записей.

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

Записи в журнале имеют структуру:


Код по чтению журнала выглядит примерно так:

If CKT_GetClockingNewRecordEx(CurrDevice.sno, pLongRun) Then

ret = CKT_GetClockingRecordProgress(pLongRun, RecordCount, RetCount, pClockings)

В прошлой статье мы рассказали, как установить программу CrossChex. Теперь опишем, как добавить устройство в программу и начать с ним работать.

В нашем примере мы используем биометрический терминал учета рабочего времени Anviz W1. Он подключен в сеть и ему присвоен ip адрес 192.168.1.218. В приборе Anviz W1 предусмотрен пользователь Amdin с идентификатором «0» и с паролем по умолчанию «12345». В целях соблюдения информационной безопасности необходимо сменить пароль для этого пользователя, чтобы избежать случаев несанкционированного доступа к устройству. Далее, опишем, как это сделать.


Нажимаем на кнопку «Параметр устройства» и в открывшемся окне, в поле «Управление паролями….» вместо «12345» указываем новый пароль. Пароль должен быть цифровым длиной не более 6 знаков. Нажимаем на кнопку «Ок».


В следующем окне подтверждаем, что хотим продолжить.


В результате видим, что установка параметров успешна.


Можно проверить пароль на устройстве, вызвав меню через интерфейс Anviz W1. Теперь, человек, не знающий новый пароль, не может получить доступ к Anviz W1 через меню прибора. Чтобы исключить несанкционированный доступ к Anviz W1 по сети, необходимо активировать «Код связи». Для этого необходимо перейти в меню прибора «Сеть» -> «Comm mode».



Установим другой код связи.

Далее, удалим из CrossChex устройство и вновь добавим его в программу, но при этом укажем установленный в предыдущем шаге новый код связи:


После этой процедуры, устройство не может быть добавлено в программу CrossChex по сети без указания правильного кода связи.

Читайте также: