конвертер кодов wiegand 26
forum-bolid.ru
Преобразовать код карты
Как преобразовать код карточек Виганд в формат кода Dallas TouchMemory?
Для преобразования кода карточек Виганд в формат кода Dallas TouchMemory необходимо дополнить код Виганд нулевыми битами до 7-ми байт и посчитать для них циклическую контрольную сумму:
8-й байт 5-7 байт 2-4 байт 1-й байт
CRC дополнение до 7-ми байт код Вигант 01
Т.е. на примере кода 011 55982 получается следующий код:
8-й байт 7-й байт 6-й байт 5-й байт 4-й байт 3-й байт 2-й байт 1-й байт
CRC дополнение код Виганд дополнение
011 55982
05 00 00 00 0B DA AE 01
Циклическая контрольная сумма получается по правилу фирмы Dallas. Расчет осуществляется следующим образом:
Спойлер CRCTable : array [0..255] of byte = (
0,94,188,226,97,63,221,131,194,156,126,32,163,253,31,65,
157,195,33,127,252,162,64,30,95,1,227,189,62,96,130,220,
35,125,159,193,66,28,254,160,225,191,93,3,128,222,60,98,
190,224,2,92,223,129,99,61,124,34,192,158,29,67,161,255,
70,24,250,164,39,121,155,197,132,218,56,102,229,187,89,7,
219,133,103,57,186,228,6,88,25,71,165,251,120,38,196,154,
101,59,217,135,4,90,184,230,167,249,27,69,198,152,122,36,
248,166,68,26,153,199,37,123,58,100,134,216,91,5,231,185,
140,210,48,110,237,179,81,15,78,16,242,172,47,113,147,205,
17,79,173,243,112,46,204,146,211,141,111,49,178,236,14,80,
175,241,19,77,206,144,114,44,109,51,209,143,12,82,176,238,
50,108,142,208,83,13,239,177,240,174,76,18,145,207,45,115,
202,148,118,40,171,245,23,73,8,86,180,234,105,55,213,139,
87,9,235,181,54,104,138,212,149,203,41,119,244,170,72,22,
233,183,85,11,136,214,52,106,43,117,151,201,74,20,246,168,
116,42,200,150,21,75,169,247,182,232,10,84,215,137,107,53);
KeyCode: array[1..8] of byte;
KeyCode[ 8 ] := 0;
For j := 1 to 7 do
KeyCode[ 8 ] := CRCTable[ KeyCode[ 8 ] xor KeyCode[ j ] ];
Полученный 8-ми байтный код можно заносить в БД для использования в АРМ «Орион».
Обзор форматов карт и преобразование номеров
При проектировании или модернизации системы контроля доступа важно определиться с типом используемых идентификаторов и, соответственно, — считывателей. В качестве идентификатора может использоваться бесконтактная смарт-карта, виртуальный идентификатор, пин-код, биометрические данные (отпечаток пальца, рисунок вен ладони, геометрия лица), а также их произвольные комбинации (например, карта + пин-код, карта + палец, лицо + пин-код). В данной статье приведён обзор основных существующих на рынке СКУД идентификационных и смарт-карт, а также варианты работы с ними в НЕЙРОСС.
Общие сведения
Карта является идентификатором лица либо транспортного средства в СКУД. Данные идентификатора (карты) передаются в контроллер доступа посредством считывающего устройства (считывателя). Будьте внимательны при подборе модели считывателя, особо обратите внимание на корректную поддержку стандарта и формата (битности) идентификатора. Соответственно, существует два независимых канала передачи данных:
Считыватель — Контроллер: для связи считывателя с БОРЕЙ/ЯРС используется проводной интерфейс Wiegand или 1-Wire.
Wiegand — это «стандартный» проводной интерфейс в СКУД, а также одноименный формат карт доступа. При проектировании системы и выборе между Wiegand и 1-Wire следует отдать предпочтение этому интерфейсу. Он поддерживает передачу на расстояние до 150 м. Благодаря двум проводам для передачи данных обеспечивается устойчивость к помехам, наводкам, контроль целостности данных. Интерфейс 1-Wire имеет ограничение на длину кабеля и используется только при модернизации существующей СКУД с идентификацией посредством «таблеток» (iButton) и RFID-меток.
Стандарты идентификаторов
Электронные бесконтактные идентификаторы на рынке СКУД представлены в большинстве своём идентификационными картами размером 86х54х0,8мм и брелоками. Толщина бесконтактной карты 0,8 мм и гладкая поверхность даёт возможность сублимационной печати на карте.
Контроллер доступа получает информацию от считывателя. Будьте внимательны при подборе модели считывателя, особо обратите внимание на корректную поддержку используемых форматов карт.
125 КГц (Proximity)
Все перечисленные выше стандарты бесконтактных идентификаторов имеют несовместимые друг с другом технологии кодирования и радиопередачи. Что, в свою очередь, приводит к невозможности считывания идентификатора одного стандарта считывателем другого стандарта.
13,56 МГц
2,4 ГГц
Форматы идентификаторов
Формат карты — это длина и структура двоичных данных (бит), хранящихся в памяти карты.
26 бит Wiegand (H10301)
Открытый промышленный формат карт. Самый распространённый. Состоит из 24 бит кода и 2 бит контроля на четность.
P — биты четности (первый и последний бит) – EXXXXXXXXXXXX XXXXXXXXXXXXO;
Контроль целостности переданных от считывателя в контроллер данных обеспечивается двумя битами чётности. Первый бит (E) принимает значение 1, если в следующих за ним 12 битах данных содержат нечетное количество 1 (делая общее количество единиц в 13 битах четным), иначе первый бит четности принимает значение 0. Последний бит (O) четности принимает значение 1, если идущие перед ним 12 бит данных содержат четное количество единиц (делая общее количество единиц в 13 битах нечетным), иначе его значение 0.
Например, есть карта Wiegand-26 с фасилити кодом = 142 и номером 02136. Тогда 26 бит данных на карте представлены в следующей последовательности: 0 1000 1110 0000 1000 0101 1000 1. Первый бит четности 0, т.к. последующие за ним 12 бит данных содержат четное количество единиц.
Wiegand 34 бит
Состоит из 32 бит кода и 2 бит контроля на четность.
P — биты четности (первый и последний бит);
XXXX XXXX XXXX XXXX XXXX XXXX XXXX XXXX — номер карты и фасилити. Размер и положение данных может изменяться, поэтому фасилити не выделяется. Все значимые биты относятся к номеру карты, а фасилити равен 0.
Wiegand 37 бит (HID H10304)
Стандарт HID Global. Состоит из 35 бит кода и 2 бит контроля на четность.
P — биты четности (первый и последний бит);
FFFF FFFF FFFF FFFF — фасилити-код (16 бит, диапазон значений: 0 — 65535);
Wiegand 37 бит (HID H10302)
Стандарт HID Global. Состоит из 35 бит кода и 2 бита контроля на четность.
P — биты четности (первый и последний бит) – E XXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXX O;
Другие
Существует несколько разновидностей интерфейса Wiegand, отличающихся количеством бит в посылке, наличием/отсутствием битов чётности. В этом случае значимыми считаются все биты, присылаемые считывателем. Двоичный код преобразуется в десятичный формат, фасилити равен 0. Считыватель 1-Wire всегда присылает 64 бита, которые преобразуются в большое десятичное число вида 12 802 481 456 215 952 123.
Преобразование номеров карт
При настройте точки доступа указывается алгоритм преобразование полученного идентификатора карты из двоичного формата.
БОРЕЙ/ЯРС поддерживают три алгоритма:
Номер карты в базе данных СКУД может не соответствовать номеру, указанному на карте.
При выборе разного алгоритма преобразования один и тот же номер карты будет представлен по-разному. Например, карта Wiegand-26 с фасилити кодом = 142 и номером 02136:
Проверить номер карты, получаемый контроллером, можно в приложении Журнал событий. Вы можете в реальном времени менять режим работы точки доступа и в «живом журнале» или в архиве событий просмотреть получаемый фасилити/номер карты. Сообщение «Неверный формат карты» отображается, если установлен автоматический режим, а карта в реальности не соответствует форматам Wiegand-26/34/37. Измените режим на «Сырой (с переменной длиной)».
ВНИМАНИЕ
В системе контроля доступа с несколькими источниками данных (usb-считыватель в бюро пропусков, разные контроллеры доступа, мобильные терминалы) необходимо добиться идентичности номера карты, получаемого от каждого источника.
Настольный USB-считыватель
В АРМ НЕЙРОСС Доступ вы можете ввести фасилити и номер карты в данные пропуска вручную, считать с помощью считывателя, подключенного к контроллеру БОРЕЙ/ЯРС, или с помощью настольного USB-считывателя, имеющего возможность работы в режиме клавиатуры (например, – в режиме Keyboard Wedge для считывателя HID® OMNIKEY® 5427 CK). При использовании стандартных карт Wiegand необходимо настроить вывод номера карты и фасилити в следующем формате:
Дополнительная информация приведена в разделе Настройка считывателя номера карты.
Мобильный терминал контроля МТК оснащён бесконтактным считывателем OMNIKEY® с поддержкой широко спектра идентификаторов. Также должен быть настроен в режим клавиатуры (выполняется при изготовлении) с выдачей номера в требуемом формате.
ITRIUM/ПАК Интеграция
Для работы в НЕЙРОСС с контроллерами «сторонних» производителей, интегрированными через ITRIUM/ПАК Интеграция, для идентичности номеров карт требуется воспользоваться функционалом автоматического преобразования номеров Службы бюро пропусков.
Конвертер кодов wiegand 26
A simple utility to convert an RFID card/tag number as if it was transmitted following the Wiegand 26 standard.
I have an RFID card/tag reader placed remotely, used for access control. This only reads the cards and sends data (using Wiegand 26 protocol) to a controller relay board that is network connected. Installed on a PC, there is a software used to manage users, time schedules and so on.
I noticed that the card number is not the same that I see in the software. It seems that the number gets changed between the reader and controller board.
Doing a bit of research I found online some documentation on Wiegand 26 protocol, without repeating here what it’s easy to find on the web, here is a brief summary.
26 stand for 26 bits, two of which (first and last) are parity bits used for data integrity validation, flow control or such tasks. Remaining 24 bits are actual information, divided in two groups, first 8 bits stands for «facility code» and can be anything between 1 and 255, last 16 bits stand for «user code» and can be anything between 1 and 65535.
The reason for this is that with only «user code» would be easy for a card belonging to company «A», let’s say card number 1, to grant access also to other companies «B» and «C» that use cards for access control. Adding a facility code diminishes the probability of coincidence.
Examining my card number and the number appearing in the access control software I could detect a pattern, I can see that there are «facility code» and «user code» one next to the other, forming an integer number.
Per the tests that I did there is no padding between two numbers or before the «facility code», so there is no precise way to split them. NOTE: as a side note, this can lead to a bug because number «111» could be «facility 1 user 11» but also «facility 11 and use 1».
Anyway what I was trying to accomplish is read RFID cards/tags on my desk and register them into the software without having to go to the reader itself, read the card and check how the number is «converted».
This task must be easy and usable also by non skilled personnel.
I wrote this nice little utility to convert a number to the format used by my software and vice-versa.
I tried to make code as clear as possible in order to be easily modifiable for someone else needs. There are lots of comments trying to explain the logic.
There is a custom error class inheriting from ValueError to be able to handle errors specific to the conversion.
There are two main functions responsible for the conversions: card_2_wiegand and wiegand_2_card with an helper function to ensure that a valid string (one that can be converted to integer) is passed to the main functions.
There is a class for the GUI. I decided not to inherit from tkinter.Frame as I saw quite often in the documentation. I opted also to initialize my root element tkinter.Tk inside the class without inheriting from it or defining it outside the class. In this way I have a clean Namespace to deal with my variables and all the GUI stuff «all in one» but within separated variables. This may be an issue if you want to implement this GUI inside an existing application, anyway, having just one window, makes this setup ok for me and is also quite easy to re-arrange the code in case of need.
Inside GUI class there are some functions for user experience and graphical functioning of the window, as well as error handling.
The main function runs accordingly to a variable: if _GRAPHICS is set to True runs the GUI, otherwise parses command line parameters and runs a function for command line use. If you are on Windows and you want a nice GUI, just set the variable to True and with a double click you will get the graphics. This has been tested on linux and on Windows.
TODO and contributions
Beside this points, every other improvement to the GUI or to the logic of the code is welcome.
About
An utility to deal with RFID over Wiegand 26 protocol.
Преобразователь Wiegand-TTL
Двустороннее преобразование данных Wiegand-26/34/42 и сигналов Tx/Rx TTL-уровня:
— полученные данные Wiegand-26/34/42 передаются 3/4/5 байтами с выхода Tx;
— полученные 3/4/5 байт на выход Rx передаются в формате Wiegand-26/34/42.
Настраиваемые скорость и четность Tx/Rx интерфейса TTL (по умолчанию 9600 8-N-1).
Светодиодная индикация приема и передачи данных по интерфейсу Wiegand.
Питание 5В или 12В (любое удобное).
Каждое изделие после производства проходит проверку.
VTR-W/TTL
Преобразование Wiegand в TTL
При поднесении карты, считыватель передает код полученной карты по линиям передачи данных Data0 и Data1. Преобразователь VTR-W/TTL сразу после получения кода передает его через последовательный интерфейс (UART Tx) со скоростью 2400/4800/9600/19200/38400/57600/115200 бит/с. Скорость передачи настраивается специальной программой. По умолчанию установлено 9600 бит/с.
В момент приема Wiegand и передачи TTL включается светодиод синего цвета.
Возможно использование дополнительных устройств для дальнейшей передачи кода карточки по одному из интерфейсов:
— USB USB-TTL;
— Ethernet (протокол TCP/IP) VTR-E/TTL;
— RS485 с гальванической развязкой TTL-485B или без нее TTL-485.
Преобразование TTL в Wiegand
В момент приема TTL и передачи Wiegand включается светодиод желтого цвета.
Возможно использование дополнительных устройств для приема данных TTL по одному из интерфейсов:
— USB USB-TTL;
— Ethernet (протокол TCP/IP) VTR-E/TTL;
— RS485 с гальванической развязкой TTL-485B или без нее TTL-485.
Настройка используется только для установки одной из возможных скоростей работы интерфейса TTL (2400/4800/9600/19200/38400/57600/115200 бит/с).
Если установленная по умолчанию скорость 9600 удовлетворяет пользователя, то никакой необходимости в настройке нет.
Для перехода в режим настройки необходимо:
— замкнуть вход Wiegand (IN-D1) на землю (GND)
— включить электропитание
— 3 раза одновременно моргнут желтый и синий светодиоды
— разомкнуть вход Wiegand (IN-D1) и землю и приступить к настройке.
Настройка выполняется через TTL порт Rx, Tx, Gnd. Для этого может использоваться переходник USB-TTL или любой другой с интерфейсом TTL. Переходник должен создать виртуальный COM-порт для работы программы настройки.
Программа настройки переходника Wiegand-TTL
Рабочее окно программы имеет следующий вид:
Выберите COM-порт, к которому подключен VTR-W/TTL и нажмите кнопку «Определить». Программа путем отсылки запросов на различных скоростях определит на какой скорости работает преобразователь.
Чтобы изменить скорость работы преобразователя, выберите желаемую скорость из списка и нажмите кнопку «Установить».
Инсталляция, монтаж » Преобразование кода карты из HEX
4 года 10 месяцев назад
Конвертер кодов карт EM-Marin в формат контроллеров Болид:
https://drive.google.com/file/d/1QhUbRQx_jyv9bnykomxNLcD-AM-Cb8nk/view?usp=sharing
– Довгаль Илья 1 год 1 месяц назад
42 ответа
Качайте конвертер
https://drive.google.com/file/d/0B1JyuCCGLL5nVHhJZGd6MHM5RkE/view?usp=sharing
или
https://drive.google.com/file/d/0B1JyuCCGLL5nc1lSWHh1M0dZOVE/view?usp=sharing
4 года 10 месяцев назад
Тремасов Константин Александрович
– Тремасов Константин Александрович 4 года 10 месяцев назад
– Плаксин А.И. 2 года 11 месяцев назад
– Тремасов Константин Александрович 2 года 11 месяцев назад
А на вопрос этот вопрос нет готового решения?:
«Есть база(более 2000тыс чел) от старого скуда где храняться коды карт в виде код объекта-код карты 128-50173
У нас на объекте считки физически подключены в режиме TouchMemory.
Соответсвеенно все коды карт мне надо перевести в формат понятный болиду.
В представленных выше конвертерах код карты например 128-50713 переводиться в 9700000080c61901
А в болид со считывателя та же карта прилетает как 0D00180080C61901
Вот пытаюсь понять по какому принципу нужно перекодировать эту карту?»
У меня та же ситуация.
– Плаксин А.И. 2 года 11 месяцев назад
– Тремасов Константин Александрович 2 года 11 месяцев назад
– Тремасов Константин Александрович 2 года 11 месяцев назад
– Плаксин А.И. 2 года 11 месяцев назад
– Плаксин А.И. 2 года 11 месяцев назад
– Тремасов Константин Александрович 2 года 11 месяцев назад
Имейте в виду, что wconvert имеет ошибку. Если пятизначный код начинается с 00, то байт серийного номера смещается, соответственно и контрольная сумма неверная и весь полученный код в формате TM. Такие номера приходится вторым конвертером считать. Хотя в wconvert можно сразу HEX вводить без лишней конвертации.
4 года 10 месяцев назад
Скрипко Алексей Николаевич
4 года 10 месяцев назад
4 года 10 месяцев назад
4 года 5 месяцев назад
Бавский Андрей Сергеевич
4 года 5 месяцев назад
Тремасов Константин Александрович
– Батанов Александр Владимирович 4 года 5 месяцев назад
4 года 5 месяцев назад
Бавский Андрей Сергеевич
– Тремасов Константин Александрович 4 года 5 месяцев назад
4 года 5 месяцев назад
Андрей, Ростов на Дону
Андрей, Ростов на Дону, немного сложновато или просто много инфы.
Я взял на основу скрипт отсюда https://www.maximintegrated.com/en/app-notes/index.mvp/id/4600 и малость доделал что бы он по строкам пробегал.
Вот что получилось :
https://yadi.sk/i/QIV609F93Gr35V
4 года 5 месяцев назад
Бавский Андрей Сергеевич
– Андрей, Ростов на Дону 4 года 5 месяцев назад
4 года 5 месяцев назад
Бавский Андрей Сергеевич
Таких бы людей побольше на форуме, ответсвенных, которые хотя бы о результате отписывают, еще к тому же и делятся.
4 года 5 месяцев назад
Тремасов Константин Александрович
Коллеги, доброго времени суток.
Может кто подскажет.
Есть база(более 2000тыс чел) от старого скуда где храняться коды карт в виде код объекта-код карты 128-50173
У нас на объекте считки физически подключены в режиме TouchMemory.
Соответсвеенно все коды карт мне надо перевести в формат понятный болиду.
В представленных выше конвертерах код карты например 128-50713 переводиться в 9700000080c61901
А в болид со считывателя та же карта прилетает как 0D00180080C61901
Вот пытаюсь понять по какому принципу нужно перекодировать эту карту?
Байченко Дмитрий Петрович
– Тремасов Константин Александрович 4 года назад
– Байченко Дмитрий Петрович 4 года назад
– Тремасов Константин Александрович 4 года назад
– Тремасов Константин Александрович 4 года назад
– Байченко Дмитрий Петрович 4 года назад
видимо тоже стану читателем этого топика))
все офисные карты в вейганде, а скоро надо будет в работу включать БКИ.
– Волков Андрей 3 года 11 месяцев назад
Может БКИ поменять? Судя по фото у 2.40 версии оба протокола поддерживаются:
– Тремасов Константин Александрович 3 года 11 месяцев назад
– Волков Андрей 3 года 11 месяцев назад
– Тремасов Константин Александрович 3 года 11 месяцев назад
– Волков Андрей 3 года 11 месяцев назад
1 год 10 месяцев назад
– Тремасов Константин Александрович 1 год 10 месяцев назад
1 год 10 месяцев назад
ДОброго. расскажите, пожалуйста, как пользоваться вышеуказанными программами для конвертации ключей?
мне Орион 1.20 дает выгрузку ключей (сотрудников) вот в таком виде
8800000007A65601 |
CB0000007EAB4C01 |
9E000000A5793B01 |
B300000081C56501 |
как мне их конвертировать в 10-ричный формат. ключей порядка 700 хотелось бы максимально автоматизировать этот процесс.
Спасибо.
1 год 9 месяцев назад
– Тремасов Константин Александрович 1 год 9 месяцев назад
– Шехин Александр 1 год 8 месяцев назад
1 год 7 месяцев назад
– Тремасов Константин Александрович 1 год 7 месяцев назад
BE000000898AE901 Считывал с С2000-2 c подключенного к нему считывателя Proxy-3A-1 с настройкой по TM (как и все ранее записанные коды в БД Орион), а потом также, но с настройкой С2000-2 в виганде и получил 04000000000FFF01. Длина номера стоит 12
1 год 7 месяцев назад
– Тремасов Константин Александрович 1 год 7 месяцев назад
Считыватели одни и теже Proxy-3A, что в случае с ТМ, что в случае с вигандом. Микрик №6 в положении ON, остальные OFF. Настройка считывателя либо тач либо виганд. Длина номера 12.
1 год 7 месяцев назад
– Тремасов Константин Александрович 1 год 7 месяцев назад
А сохраненные коды в БД ОРион про как-то из тачмемори в виганд перекодировать надо или так допуск по ним в виганде предоставлятся будет? Там где комп с орионом интернета нет, спрашивать от туда не смогу.
1 год 7 месяцев назад
– Тремасов Константин Александрович 1 год 7 месяцев назад
Спасибо. Поеду пробовать. Отпишусь
1 год 7 месяцев назад
Доброй ночи. Подскажите как преобразовать десятичный ключ 6957002 в болидовский 4F0000006A27CA01 либо hex 6A27CA в 4F0000006A27CA01 максимально автоматизировано. База на 1500 человек уж очень не хочется чере замечательный конвертер преобразовать это все в ручную!
1 год 7 месяцев назад
Кузнецов Максим Александрович
– Андрей, Ростов на Дону 1 год 7 месяцев назад
– Тремасов Константин Александрович 1 год 7 месяцев назад
– Андрей, Ростов на Дону 1 год 7 месяцев назад
1 год 7 месяцев назад
Первые два столбца это серия и номер карты, если их нет, ставить 0, далее столбец с табельным номером сотрудника (обязательно), далее название уровня доступа (если пустое то будет назначен УД Запрет), дата начала действия ключа в формате ДД.ММ.ГГ, конец действия ключа ДД.ММ.ГГ, код в формате ТМ, далее дополнительный код в формате ТМ может быть пустым, но я ставлю 0.
Итого имеем запись строки в виде:
0, 0, Таб.№, УД, ДД.ММ.ГГ, ДД.ММ.ГГ, код ТМ, 0
0, 0, 1, Администрация ТК, 27.03.13, 27.03.50, 670000003A743901, 0.
Если есть серия и номер карты, то выглядит это так:
89, 28955, 1, СКД Служащие, 01.01.14, 01.12.25. (дальше ничего не надо)
– Тремасов Константин Александрович 1 год 7 месяцев назад
Спасибо, с ключами то все нормально, я с сотрудниками мучаюсь. Те кто выдавал ключи создавали сотрудников от болды еще с версии 1.12. Табельные номера идут с буквам, пробелами, дробями и тире. Фамилии с цифрами тире, дробями и пробелами между цифрами и буквами. Что из символов импорт проглотит и какие поля обязательны?
1 год 7 месяцев назад
– Тремасов Константин Александрович 1 год 7 месяцев назад
Спасибо,все получилось. Успел 380 человек в ручную забить в базу пока ждал помощи.
1 год 7 месяцев назад
Кузнецов Максим Александрович
1 год 6 месяцев назад
– Волков Андрей 1 год 6 месяцев назад
– Тремасов Константин Александрович 1 год 6 месяцев назад
Да, по ссылке можно всех удалить пакетно.
1 год 6 месяцев назад
1 год 6 месяцев назад
– Волков Андрей 1 год 6 месяцев назад
Не, так нельзя. Надо по группам доступа. Они тоже пересохранятся по первому сотруднику, если всей кучей менять. Вовремя заметил, иначе неделю бы возвращал кому куда ходить.
1 год 6 месяцев назад
– Волков Андрей 1 год 6 месяцев назад
1 год 6 месяцев назад
Рыбкин Евгений Сергеевич
Пускай дальше я высчитаю этот crc8 код, получу 1D0000000F50B601, по какому алгоритму дальше это число (текст) дальше форматировать, что бы потом в верном формате записать в поле CodeP?
1 год 6 месяцев назад
Иванов Константин Петрович
Если появилось желание в понимании, то можно начать отсюда:
Контрольная сумма
.
Циклический избыточный код
.
Хеш-функция
(и это не первое, второе, третье, а всё взаимосвязано)
– Карпов Дмитрий 1 год 6 месяцев назад
Коды карт буду считывать через Proxy-USB-MA в режиме hex 5 bytes + Enter
1. Так например я считал код (в блокноте, в поле в MS Access):
«00DE1F50B6»
Прекрасно 🙂
Пускай дальше я высчитаю этот crc8 код, получу 1D0000000F50B601, по какому алгоритму дальше это число (текст) дальше форматировать, что бы потом в верном формате записать в поле CodeP?
В БД Ориона-про это не текст, а байт, можно сформатировать из текста через преобразование типов в МS-SQL, пример на работе завтра постараюсь найти.
– Андрей, Ростов на Дону 1 год 6 месяцев назад
а если пихать в базу и 3, и 5 байт, то можно и со считывателями потом на париться, и темы на форуме «хелп. как мне из BF0000001F50B601 получить 520000DE1F50B601. стотыщщмиллионов карт я же до конца жизни буду собирать у людей, а там шефы, которые на простых работяг как на г. о смотрят» и ответ «с помощью машины времени, слетать в прошлое и долбануть себя, чтобы легких путей не искал))».
Вот только карты в контроллеры так записываться не будут автоматически, надо же будет манипуляции с АБД производить.
Ну и главное, делайте бэкапы почаще)) работа с базой напрямую, запросто приводит к тому, что и простые действия приходится делать уже не через АБД, т.к. проверку на целостность база перестаёт проходить. Зато напрямую в базу можно записать одинаковые карты с разным сроком действия))
– Волков Андрей 1 год 6 месяцев назад
Добрый день!
Прошу оказать помощь.
Помогите разобраться. У нас на объекте установлены биометрические считыватели Hikvision DS-K1T607PE ( https://hikvision.ru/product/ds_k1t607pe ) и СКУД Болид (С2000-2 v.2.50).
Данный терминал имеет выход Wiegand _26.
Если я в поле карты на терминале заношу код 254615135 то результат следующий:
— при вводе в поле карты номера 254615135 терминал на выход Wiegand26 посылает код карты (на прибор СКУД С2000-2) приходит код в формате 040000002D1E5F01.
Мне необходимо все коды карт из формата (040000002D1E5F01) преобразовать/конвертировать в формат 254615135.
Насколько я понял мне необходимо конвертировать из Touch Memory в Wiegand 26.
Подскажите есть ли такая программа?
1 год 5 месяцев назад
– Волков Андрей 1 год 5 месяцев назад
Мне необходимо чтобы СКУД Болида получал коды карт от терминала Hikvision DS-K1T607PE как от обычного считывателя, а так как база карт в Болиде (около 250 шт.) уже есть необхордимо к каждому фото привязать код карты из Болида. Из TM перевести в Wiegand 26.
– Владимир Иванович 1 год 5 месяцев назад
– Тремасов Константин Александрович 1 год 5 месяцев назад
– Владимир Иванович 1 год 5 месяцев назад
– Владимир Иванович 1 год 5 месяцев назад
Владимир Иванович,
Болидовский ТМ получен из Вейганда 26го, в дело идут только три байта номера карты
Хиквижновский терминал хранит больше байтов, чем три. Это не Вейганд 26! а на выход даёт обрезанное количество бит до 26. Покрутите настройки терминала, может там можно как-то ограничить формат входных или увеличить формат выходных данных.
Вы ен сказалиЮ откуда терминал получает номер 254615135. Он считывает его встроенным считывателем с карточки (ем-марин или иной) или просто пользователь регистрируется в терминале с этим кодом и всё?
Вам в любом случае надо будет регистрировать сотрудников на биометрическом считывателе, и в этот самый момент можно будет записать в Болид и новые карты.
Описание биосчитывателя куцее, указано, что интерфейс Вейганд и всё. Один вейганд или два, вход, выход, что за интерфейс то? От этого зависит использование считывателя.
– Андрей, Ростов на Дону 1 год 5 месяцев назад
Этот код я руками сам заношу в поле где указываеться код карты.
т.е. у меня есть Вася Пупкин в Болиде и карта у него к примеру 04 000000 2D1E5F 01, в терминал тот же Вася Пупкин сфотографирован и записан.
Для того чтоб мне поженить Болид и Хиквижен я подумал что смогу их поженить по Виганду. Соответственно я беру код карты Васи Пупкина из базы Болида ( в терминале Хиквижена пока нет никакой карты), конвертирую в код понятный для Терминала (8 цифр, не больше 25565535) и записываю в терминал (поле где храниться код карты) в формате (8 цифр, не больше 25565535).
В том и беда есть код 04 000000 2D1E5F 01 а нет кода ХХХ ХХХ ХХХ Х
Сейчас по факту две системы работаю отдельно друг от друга.
В СКУД Болида прописаны коды карт в формате ТМ. Когда формировалась база Болид я потихоньку наполнял базу руками (прикладывал карты к считывателю). Сейчас собрать все карты нет возможности. Да они и не нужны так как терминал понимает E-Marin, а у меня все карты Indala.
Сейчас при регистрации нового пользователя, в СКУД Болида я заношу карту путем прикладывания ее к считывателю и получю код карты. Далее в ПО Хиквижен я завожу нового сотрудника, делаю фото чтоб его система узнавала и тут мне нужно внести код который должен выдавать терминал. Код должен прийти на С2000-2 и он должен быть таким же как и при считывании в первый раз с карты. Я не могу приложить карту к терминалу так как терминал не понимает данных карт. а код не такого формата какой в Болиде.
Вот и болит у меня голова о том как имея код карты только в болиде, конвертировать этот код и получить код в формате (8 цифр, не больше 25565535) и тогда у меня будет счастье.
– Владимир Иванович 1 год 5 месяцев назад
– Андрей, Ростов на Дону 1 год 5 месяцев назад