Виртуальный контроллер СКУД.
Виртуальный контроллер СКУД - логическая сущность, представляющая собой комбинацию программных и аппаратных средств для решения задач СКУД и соответствующая абстрактной модели контроллера СКУД.
Появление виртуального контроллера вызвано все возрастающими требованиями к СКУД:
- усложняются алгоритмы обработки данных. Существующие аппаратные реализации контроллеров СКУД не могу обеспечить эти требования, либо их реализация экономически неэффективна.
- увеличивается количество и типа оборудования, с которым необходимо взаимодействовать. Для взаимодействия с оборудованием необходимо поддерживать сложные протоколы обмена.
- снижение стоимости владения системой.
- увеличение гибкости работы оборудования за счет использования однотипных решений с разными настройками.
Реализация виртуального контроллера СКУД позволяет удовлетворить всем поставленным требованиям.
Структура виртуального контроллера СКУД.
Виртуальный контроллер СКУД включает в себя следующие модули:
- терминал - физическое устройство для подключение внешнего оборудования. К терминалу подключаются внешние устройства как источники сигналов и объекты управления.
- драйвер виртуального контроллера - программно реализованное устройство обработки данных. Драйвер решает задачи:
- обмен данными с оборудованием,
- реализация алгоритма обработки данных,
- предоставляет интерфейс для прикладных программ.
Взаимодействие программного обеспечения СКУД и контроллеров СКУД.
Программное обеспечение СКУД, ориентированное на работу с абстрактной моделью контроллера СКУД, не видит разницы между физическим и виртуальным контроллером СКУД, т.к. основные команды управления и методы получения события одинаковы.
Эволюция физического контроллера СКУД в виртуальный.
Классический вариант взаимодействия ПО СКУД с физическим контроллером СКУД.
Рис.1 Взаимодействие ПО СКУД с физическим контроллером СКУД.
В классическом варианте программное обеспечение СКУД (ПО СКУД), установленное на компьютере (показан желтым цветом), организует работу с физическим контроллером СКУД через имеющиеся у контроллера каналы связи. Связь с контроллером осуществляется через драйвер.
В ходе работы ПО СКУД обращается к драйверу контроллера СКУД. Драйвер контроллера СКУД организует необходимый процесс обмена.
В случае отказа компьютера контроллер СКУД продолжает работать в штатном режиме.
При этом ПО СКУД взаимодействует с контроллером через фиксированный набор команд.
Возникновение потребности в доработке физического контроллера СКУД.
На каком-то этапе требуется:
- внести изменения в алгоритм работы физического контроллера.
- реализовать управление дополнительным устройством.
Как решить задачу? Менять firmware контроллера? Разрабатывать новый? Все это возможно, но потребует время и средств, и в результате доработка становится экономически бессмысленна для конечного заказчика.
Виртуалный контроллера СКУД.
Основная идея виртуального контроллера - подменить алгоритм обработки данных, полученных от контроллера СКУД, на требуемый. Для этого достаточно создать драйвер виртуального контроллера, который:
- предоставит для ПО СКУД точно такой же протокол обмена, как и драйвер контроллера. ПО СКУД не увидит разницы при работе с физическим контроллером или драйвером, и нет необходимости вносить изменение в ПО СКУД,
- нужный алгоритм работы реализован в драйвере. При этом драйвер "знает" все нюансы работы физического контроллера СКУД, что позволяет эффективно разделить процесс обработки данных между контроллером и драйвером.
- драйвер виртуального контроллера для связи с физическим контроллером использует штатный драйвер связи с этим контроллером (хотя в ряде случаев это необязательно, можно сразу реализовать обмен виртуального контроллера с контроллером).
Общая схема виртуального контроллера представлена на рис. 2.
Рис.2 Взаимодействие ПО СКУД с виртуальным контроллером СКУД.
Т.о., виртуальный контроллер - это комплект, состоящий из драйвера виртуального контроллера и физического контроллера. Элементы виртуального контроллера на рис.2 отображены на сером фоне.
На сервере СКУД (желтый фон) установлено ПО СКУД, драйвер виртуального контроллера и драйвер контроллера СКУД.
В ходе своей работы ПО СКУД обращается к драйверу виртуального контроллера (так же, как и ранее обращался к драйверу контроллера СКУД), передавая ему команды и получая события.
Драйвер виртуального контроллера, реализую заложенный в него алгоритм, сам распоряжается полученными от ПО данными.
Физический контроллер СКУД, получив данные от внешних источников (от считывателя по Wiegand, от кнопок и других извещателей), выполняет их штатную обработку и формирует свой журнал событий.
Виртуальный контроллер через драйвер контроллера СКУД получает события от физического контроллера (вычитывая журнал событий этого контроллера) и организует обработку этих данных по алгоритму, определенному не в физическом, а в виртуальном контроллере.
Закончив обработку данных, виртуальный контроллер выдает в физический контроллер набор команд, связанных с управлением внешними устройствами.
Т.о., реализация идеи виртуального контроллера позволяет существенно расширить возможности имеющегося физического контроллера СКУД.
Анализ виртуального контроллера.
Особенности:
- физический контроллер СКУД меняет свою роль. Он превращается в терминал для подключения физического оборудования. В связи с этим резко снижаются требования к физическому контроллеру, можно использовать простые дешевые контроллеры. Возможно, появится новый класс устройств.
- виртуальный контроллер может работать и с несколькими физическими контроллерами СКУД (терминалами). При этом сложность виртуального контроллера возрастает, но не выходит за рамки отработанных решений (что гарантирует стабильную работу драйвера). Например, комплект оборудования КПП (несколько считывателей, несколько шлагбаумов, элементы безопасности и т.п.) можно будет рассматривать как один контролер, в который ПО СКУД передает коды карт для проезда и из которого получает события. При этом сложность алгоритма может быть реализована в соответствии с требованиями Заказчика, но ПО СКУД менять нет необходимости.
- виртуальный контроллер предполагает получение событий от физического контроллера. Очевидно, что время получения события должно быть минимальным. При использовании большого количества физических контроллеров задача быстрого получения данных имеет свою специфику. Однако очевидно, что использование ethernet позволяет резко упростить решение этой задачи.
Достоинства:
- реализация алгоритма любой сложности (т.к. обработка выполняется программным модулем, разработка и отладка которого несоизмерима меньше и дешевле, чем отладка аппаратного контроллера),
- подключение внешних источников со своими специфическими протоколами (например, считыватели диапазона UHF RFID с протоколом ethernet; информационные табло; сканеры штрих-кода).
- Программное обеспечение СКУД не требует изменения, что позволяет расширять установленную систему без дополнительных затрат!
- виртуальный контроллер, являясь программным продуктом, может предоставить свои экранные формы настроек режимов работы.
Недостатки:
- виртуальный контроллер выполняет свои задачи только при работающем компьютере.
- виртуальный контроллер выполняет свои задачи только при наличии связи с терминальным контроллером.
Обрыв связи. Авария питания. Что делать?
Но что же произойдет со СКУД как с системой при аварии питания или отказе линий связи (или ее отдельных сегментов)?
В целом ничего страшного не будет:
- Терминальные контроллеры перейдут в режим работы классического контроллера СКУД: будет так же обеспечивать пропуск посетителей согласно временным окнам, сохранять лог событий и прочее и прочее. Очевидно, что для посетителей будут недоступны расширенные функции, которые были реализованы в виртуальном контроллере, но на то она и аварийная ситуация чтобы не обращать внимания на красивые бантики.
Примеры реализованных виртуальных контроллеров.
Виртуальный контроллер СКУД - реальность!
Уже сегодня созданы виртуальные контроллеры, точно соответствующие изложенной выше теории. В ходе системы достаточно выбрать тип виртуального контроллера и настроить режимы его работы.
Этот драйвер следует рассматривать как базовый виртуальный контроллер СКУД. В качестве терминала выступает контроллер СКУД Артонит СЕ. В описании видна панель настройки драйвера (можно программно включить/выключить antipassback, включить/выключить тестовый режим).
Драйвер принимает от ПО СКУД команды на запись карт, нозаписывает их не в память контроллера, а в файл.
Принципиального ограничение на количество записанных карт нет, счет может идти на миллионы карт.
Т.к. драйвер поддерживает спецификации ТС2, то он может быть использован во всех приложениях, где используется контроллер Артонит СЕ (например, в 1С).
При необходимости на базе виртуального контроллера СКУД может быть создан контроллер с более сложными алгоритмами работы с данными.
В этом драйвере канал получения данных и вывода команд сделаны раздельно.
В качестве считывателя может выступать любое устройство, для которого есть драйвер, соответствующий спецификации ТС2.
В качестве исполнительного устройства может быть любое устройство, для которого есть драйвер, соответствующий спецификации ТС2.
В приведенном примере в качестве источника данных выступает драйвер модуля ST-LAN, к которому подключен сканер штрих-кода. При получении от модуля ST-LAN данных драйвер модуля преобразует их в стандартный вид событий от контроллеров (событие - Неизвестная карта, key - код штрих-кода).
Драйвер combo, получи событие Неизвестная карта, выполняет его анализ по своим данным. Если валидация выполнена успешно, то в драйвер Исполнительного устройства передается команда Открыть дверь. Драйвер исполнительного устройства доносит команду до нужного контроллера.
Процесс передачи данных, их обработки и выдача решения занимает очень малое время (замерения не проводились, но визуально задержки между считыванием кода и открытием турникета не было).
Формат событий и команды управления соответствуют Абстрактной модели СКУД.
Заключение.
Виртуальный контроллер СКУД - логическое развитие аппаратной части контроллеров СКУД.
На сегодняшний день задачи, стоящие перед контроллерами СКУД, становятся настолько сложны, что их реализация в виде специальной прошивки становится все сложнее.
Переход в локальные сети, задачи полноценного поддержания IP протоколов, защита (шифрование) данных толкает разработчиков к применению различных ОС непосредственно на борту контроллера.
Рост вычислительной мощности и снижение ее стоимости позволяет создавать мощные устройства за приемлемые деньги.
Контроллеры с каналами связи ethernet становятся нормой.
Грань между "большим" компьютером (сервер СКУД) и контроллером СКУД начинает размываться.
Вычислительная мощь современных контроллеров (не обязательно СКУД) такова, что в них может быть реализованы все задачи, возлагаемые на сервер СКУД.
Использование виртуальных контроллеров позволяет перешагнуть имеющиеся ограничения физических контроллеров СКУД.
Виртуальные контроллеры занимают промежуточное положение между "слабыми" контроллерами сегодняшнего дня и мощными вычислительными устройствами, которые идут им на замену.
Слабое место виртуального контроллера - зависимость от работоспособности компьютера - имеет гораздо более простое решение, нежели отладка малый партий контроллеров с уникальными прошивками.
|