Виганд (интерфейс)

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Wiegand — простой проводной интерфейс связи между устройством чтения идентификатора (карточки) и контроллером, широко применяемый в системах контроля доступа (СКУД).

Предназначен для передачи уникального кода карты или pin-кода с клавиатуры в контроллер СКУД.

Интерфейс не имел официального стандарта, однако постфактум многие компании приняли внутренние нормативы на интерфейс. Один из наиболее известных документов предложен американской организацией Security Industry Association (англ.)русск. «SIA AC-01-1996.10 — Access Control — Wiegand».[1]

История[править | править вики-текст]

Изначально интерфейс применялся в считывателях магнитных карт и был максимально оптимизирован под простейшие считыватели. В сущности это был простой выход усилителя чтения. Из-за распространенности магнитных карт этот интерфейс стал стандартным де-факто. Позже магнитные карты были вытеснены бесконтактными картами (RFID) однако интерфейс был сохранен неизменным в целях совместимости оборудования.

Разновидности[править | править вики-текст]

Существует несколько разновидностей интерфейса Wiegand, различающихся цифрами в названии интерфейса. Эта цифра в названии обозначает количество бит в посылке.

Наиболее распространенные считыватели и контроллеры СКУД поддерживают следующие варианты Wiegand:

  • Wiegand-26. Самый распространенный. Состоит из 24 бит кода и 2 бит контроля на четность.
  • Wiegand-33. Состоит из 32 бит кода и 1 бита контроля на четность.
  • Wiegand-34. Состоит из 32 бит кода и 2 бит контроля на четность.
  • Wiegand-37. Состоит из 35 бит кода и 2 бит контроля на четность.
  • Wiegand-40. Состоит из 40 бит кода, контроля на четность нет.
  • Wiegand-42. Состоит из 40 бит кода и 2 бит контроля на четность.

Существуют разновидности считывателей с длиной Wiegand до 128 бит. На самом деле количество бит в формате Wiegand может быть практически любым разумным. Когда встречаешь новую цифру в названии остается неясным только наличие контрольных битов четности и методика их расчета.

Существуют и некоторые другие названия для аналогичных интерфейсов. Распространен, например, интерфейс KSF который является фактически Wiegand-32.

Электрическое подключение[править | править вики-текст]

Wiegand interface electrical.png

Для связи между считывателем и контроллером СКУД используется трехпроводная шина — два провода сигнальных, один земля. На рисунке приведена классическая схема подключения, из нее очевидны и электрические параметры интерфейса.

Максимальная длина линии связи сильно зависит от грамотного выбора кабеля (основные критерии — низкая погонная емкость, низкое омическое сопротивление) и грамотного построения схемы развязки питания считывателя и контроллера. Обычные значения, приводимые поставщиками оборудования — до 150…250 метров.

Формат данных[править | править вики-текст]

Передача данных[править | править вики-текст]

Wiegand interface oscillogram.PNG

Передача ведется короткими импульсами. Наличие импульса в линии «Data0» означает что был передан лог.0, наличие импульса в линии «Data1» означает что был передан лог.1. Ширина импульсов и их период сильно варьируется в зависимости от изготовителя считывателя. Ширина импульсов обычно в диапазоне 20…200 мкс. Период следования импульсов — 300…3000 мкс.

Связь односторонняя, в момент обнаружения карты происходит однократная передача кадра с кодом карты от считывателя к контроллеру СКУД. Передача идет старшим битом кода вперед.

Разделение кадров осуществляется по таймауту. Реально минимальное время между кадрами 0,5 сек., рекомендуемый таймаут для контроллера СКУД — 50…250мс.

Понятие фасилити[править | править вики-текст]

Исторически сложилось так что многие системы контроля доступа и изготовители карточек условно делят код карты на две неравные части которые называют фасилити и номер. Обычно к номеру относят младшие 16 бит кода, все остальное к фасилити. Причина такого деления — экономия памяти в очень старых контроллерах доступа. При монтаже объекта подбирались карты с одинаковым фасилити и в память контроллера записывались только младшие 16 бит кода метки (номер). С тех пор прошло много времени и подобная экономия давно в прошлом, но многие системы все еще оперируют этими понятиями, показывая код карты разделенным на части. В наше время никакой смысловой нагрузки такое разделение не имеет.

Контроль на четность[править | править вики-текст]

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

Первый бит четности (старшей половины кода) ставится в 1 если количество единиц в его половине кода нечетное. Последний бит четности (младшей половины кода) ставится в 1 если количество единиц в его половине кода четное.

Надо заметить, что встречаются считыватели не подчиняющиеся этому правилу контроля четности. Поэтому реально большинство универсальных контроллеров СКУД просто игнорируют контроль на четность. Кроме того, некоторые форматы бесконтактных карт несут информацию о количестве бит кода и четности прямо на карте, соответственно считыватель не может никоим образом влиять на реальный выходной формат данных. Таков, например, формат HID ProxPass, Indala ASP и др.

Wiegand и клавиатуры для ввода pin кода[править | править вики-текст]

Некоторые СКУД имеют возможность двойного удостоверения личности: поднесением карты и набором pin-кода на клавиатуре. Обычно при этом цифровая клавиатура вмонтирована в считыватель и набранный код передается также по интерфейсу Wiegand. Обычно передается каждая набранная цифра индивидуально с помощью Wiegand-4. Контроля четности нет. Служебные клавиши * и # передаются кодами 10 и 11 соответственно.

Примечания[править | править вики-текст]

  1. Product Detail Page. Проверено 6 апреля 2013.