Русский
Русский
English
Статистика
Реклама

Скуд

Делаем копию карты-пропуска по фото

11.08.2020 00:10:13 | Автор: admin

Однажды мне срочно понадобилось попасть в один бизнес-центр с пропускной системой в виде турникетов, открывающихся при помощи карт-пропусков. Человек, у которого находился в этот момент пропуск, был далеко, передать мне его он не мог, а оформление новой карты в силу бюрократических особенностей заняло бы много времени.



С чем мы имеем дело


Итак, человек с пропуском находится далеко, считывателя для бесконтактных карт у него с собой конечно же нет, но есть телефон, на который можно сделать фотографию карты.
По фото карта была опознана как EM-Marin, она же EM4100. Эти бесконтактные карты работают на частоте 125 КГц и содержат номер (далее ID) размером 40 бит или 5 байт, который записывается на карту еще на заводе и не может быть изменен. Какой-либо защиты от чтения или копирования в них нет. Для создания дубликатов этих карт используются заготовки T5577 и EM4305, которые свободно продаются.
Перезаписываемые карты-болванки выглядят как обычная пустая пластиковая карта в форм-факторе кредитки, а не перезаписываемые (с прошитым на заводе серийным номером) чуть толще и на лицевой стороне у них нанесен текст, состоящий из нескольких групп десятичных цифр. Встречаются и карты в виде брелков.
Для записи таких карт потребуется соответствующий копировщик. Я использую Proxmark3, но можно взять любой другой, который может работать с T5577 и позволяет ввести ID карты вручную. Или же вовсе использовать эмулятор, тогда можно обойтись без болванок.


Карта не имеет своего источника питания, оно поступает со считывателя по воздуху, как в беспроводных зарядках. Считыватель генерирует электромагнитное поле, карта улавливает его через антенну и включается. Далее карта модулирует поле и начинает циклически передавать свой ID, который улавливается считывателем, связь при этом односторонняя.



Как именно передаются данные с карты: сперва идет преамбула из 9 бит 1, затем передается 1 байт Version Number, 2 байта Facility Code и 2 байта уникального номера карты, периодически следуют биты контроля четности. Взято по ссылке, там кстати еще неплохое описание протокола (на английском).


В самом простом варианте построения СКУД считыватель сам является контроллером доступа сравнивает ID карты с номерами в памяти и принимает решение об открытии замка или турникета. В системах посложнее он отправляет эту информацию на контроллер по какому-либо интерфейсу.


Эксперимент


Итак, на карте нанесены некие цифры. Было логично предположить, что это и есть ее ID. Для того, чтобы это выяснить, я взял данные аналогичной карты, получилось следующее:


Цифры на карте: 0013396136 204.26792ID: 4A00CC68A8

После преобразования ID из HEX в DEC, получилось 317840976040, что не похоже на цифры с карты. Спойлер: если бы я сделал наоборот, и конвертировал цифры с карты в шестнадцатеричный формат, то я добился бы успеха сразу, но тогда эта статья была бы не такой содержательной :)


Размышляя над тем, что еще оно может значить, я вспомнил, что Proxmark помимо ID карты показывает еще кое-какие данные:


lf search
proxmark3> lf searchNOTE: some demods output possible binary  if it finds something that looks like a tagFalse Positives ARE possibleChecking for known tags:EM410x pattern found:EM TAG ID      : 4A00CC68A8Possible de-scramble patternsUnique TAG ID  : 5200331615HoneyWell IdentKey {DEZ 8          : 13396136DEZ 10         : 0013396136DEZ 5.5        : 00204.26792DEZ 3.5A       : 074.26792DEZ 3.5B       : 000.26792DEZ 3.5C       : 204.26792DEZ 14/IK2     : 00317840976040DEZ 15/IK3     : 000352190666261DEZ 20/ZK      : 05020000030301060105}Other          : 26792_204_13396136Pattern Paxton : 1256236712 [0x4AE0A6A8]Pattern 1      : 10853441 [0xA59C41]Pattern Sebury : 26792 76 5007528  [0x68A8 0x4C 0x4C68A8]Valid EM410x ID Found!proxmark3>

Ага, 0013396136 и 204.26792 это именно то, что написано на карте!
Но ведь на ней хранится всего лишь 5 байт, значит эти числа должны вычисляться из ID по некому алгоритму ридером или его клиентом. К счастью, Proxmark open-source проект, его исходные коды доступны на гитхабе . Я сделал поиск в репозитории по строке DEZ 10 и нашел функцию cmdlfem4x.c.


Часть кода cmdlfem4x.c:
...    //output 88 bit em id            PrintAndLog("\nEM TAG ID      : %06X%016" PRIX64, hi, id);        } else{            //output 40 bit em id            PrintAndLog("\nEM TAG ID      : %010" PRIX64, id);            PrintAndLog("\nPossible de-scramble patterns");            PrintAndLog("Unique TAG ID  : %010" PRIX64,  id2lo);            PrintAndLog("HoneyWell IdentKey {");            PrintAndLog("DEZ 8          : %08" PRIu64,id & 0xFFFFFF);            PrintAndLog("DEZ 10         : %010" PRIu64,id & 0xFFFFFFFF);            PrintAndLog("DEZ 10         : %010" PRIu64,id & 0xFFFFFFFF);            PrintAndLog("DEZ 5.5        : %05lld.%05" PRIu64,(id>>16LL) & 0xFFFF,(id & 0xFFFF));            PrintAndLog("DEZ 3.5A       : %03lld.%05" PRIu64,(id>>32ll),(id & 0xFFFF));            PrintAndLog("DEZ 3.5B       : %03lld.%05" PRIu64,(id & 0xFF000000) >> 24,(id & 0xFFFF));            PrintAndLog("DEZ 3.5C       : %03lld.%05" PRIu64,(id & 0xFF0000) >> 16,(id & 0xFFFF));...

Из кода выше становится ясно, что эти числа части ID карты:
0013396136 (DEZ 10) первые 4 байта, если считать от младшего к старшему.
204.26792 (DEZ 3.5C) третий байт отдельно (он же Facility Code) и непосредственно 2 байта серийного номера карты.
Таким образом, по цифрам на карте можно восстановить часть ее ID. Но как быть, если известны 4 байта, а требуется 5? И если четвертый байт имел значение 0 на всех считанных мной картах, то пятый байт всегда ненулевой. Перебирать этот байт в конкретном случае не вариант не хочется вызывать подозрения у охраны.


Тут я вспомнил, что СКУД в этом бизнес-центре установлен достаточно давно, поэтому я предположил, что там может использоваться для передачи данных популярный, но устаревший Wiegand-26. Этот протокол предназначен для связи считывателя с контроллером, и позволяет передавать за одну посылку 24 бита данных и 2 бита четности, итого 3 байта. Это означает, что ID карты не передается полностью и неизвестный пятый байт никак в идентификации не участвует и может быть рандомным.
Стоит отметить, что некоторые современные считыватели все же читают и сравнивают старший байт карты, в таком случае придется перебирать 255 комбинаций, но это можно сделать за приемлемое время, особенно если использовать эмулятор.


Ну что же, теперь осталось проверить на практике все изыскания выше. Для создания копии карты я взял заготовку T5577 и записал на нее полученный ID (пятый байт случайный):


Запись карты
proxmark3> lf em 410xwrite 0100CC68A8 1Writing T55x7 tag with UID 0x0100cc68a8 (clock rate: 64)#db# Started writing T55x7 tag ...#db# Clock rate: 64#db# Tag T55x7 written with 0xff80600630c8d23aproxmark3>

Получилась почти полная копия карты с фото, отличается только старший байт. Для уверенности можно еще раз ввести команду lf search и проверить, совпадают ли DEZ 10 и DEZ 3.5C с цифрами на оригинальной карте.


После этого я записал уже преобразованный аналогичным образом ID нужного мне пропуска.
Как и ожидалось, карта считалась корректно, турникет щелкнул, мигнул зеленым индикатором :)


Пост-скриптум


Если вы отвечаете за безопасность, то скорее всего, все описанное в этой статье не будет для вас новостью. В противном случае все же не стоит преждевременно рвать волосы на теле. Проблема кроется в том, что данный формат карт изначально не обеспечивает высокого уровня безопасности. Эти карты не поддерживают каких-либо механизмов аутентификации и шифрования, следовательно могут быть скопированы в любой момент подходящим считывателем. На серьезных объектах, таких как банки, дата-центры и хранилища ядерных боеголовок, вместо EM-Marin применяются более защищенные форматы карт (по крайней мере, хочется в это верить). Например, это семейство MIfare, где карты разделены на сектора с индивидуальными ключами чтения и записи, а некоторые карты этого стандарта поддерживают даже алгоритм шифрования AES. Ну и не стоит забывать про дополнительные методы контроля доступа.
В любом случае, не копируйте чужие карты без согласия их владельцев.

Подробнее..

Ковидная индустрия и системы распознавания

21.04.2021 14:19:32 | Автор: admin

Прошло больше года с момента введения жестких ограничительных мер, связанных с распространением COVID-19. Сейчас мир постепенно возвращается в нормальный режим жизни, хотя угроза новых вспышек заболевания остается. Поэтому принимаются все необходимые меры: маски, перчатки и сдача ПЦР-тестов по разным поводам. С административной точки зрения, это, скорее всего, правильно. А вот с организационной система не готова. Главная проблема слабо организованная система проведения ПЦР-тестов. В сегодняшней статье поговорим о том, как ее усовершенствовать.

С точки зрения организации администрирования всего процесса, в целом, ПЦР-тестирование это не просто мазок из носоглотки. Необходимо организовать следующие процессы:

  • регистрация клиента и взятие мазка из ротоглотки ПЦР-теста (в стационарных или мобильных пунктах);

  • логистика биоматериала до исследовательской лаборатории;

  • проведение анализа биоматериала;

  • предоставление результатов тестирования;

  • контроль результатов на пропускных пунктах (в аэропортах, гостиницах, офисах и т.п.).

Оказывается, в качестве bottle neck в приведенном списке выступают первая и последняя позиции. Действительно, логистика и проведение самого анализа биоматериала давно автоматизированные и проработанные со стороны лабораторий процессы. А вот процедура взятия мазка и последующий контроль результатов исследования на пропускных пунктах в условиях массового наплыва клиентов новая задача.

Впрочем, сам по себе мазок это минутное дело. Большую часть времени занимает регистрация клиента в базе данных лаборатории, ввод персональных данных, проведение анкетирования, заключение договора, оплата услуг. Получается, что процедура проведения ПЦР-теста на 70% представляет из себя утомительный процесс, связанный с заполнением различных документов.

Регистрация клиента в лаборатории

Первый этап автоматизации ввод персональных данных клиента и заключение договора на оказание медицинских услуг. Smart Engines уже выпустил продукт для автоматизации ввода персональных данных. Намного проще вводить паспортные данные, просто сфотографировав документ на веб-камеру или приложив его на секунду к специализированному паспортному сканеру. Банки, мобильные операторы, транспортные компании уже оценили удобство технологии распознавания документов. Кстати, даже в РЖД автоматизировали кассы на вокзалах волшебными коробочками, которые за мгновение вводят паспортные данные.

Почему бы не использовать данный опыт в пунктах сдачи биоматериала? Сотрудник лаборатории с помощью веб-камеры или паспортного сканера за мгновение может заполнить анкету клиента. Другой вариант использование специального мобильного программно-аппаратного комплекса, состоящего из терминала сбора данных и портативного принтера, который используется для мгновенной печати наклеек на пробирки.

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

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

Контроль результатов ПЦР-теста

Второй этап автоматизации это контроль валидности выданных тестов. Нет ничего сложного, если надо проверить результаты теста у 100 человек. А если их тысячи (крупные офисы в мегаполисе) или десятки и даже сотни тысяч человек (аэропорта, ж/д вокзалы, речные и морские порты)? И каждый идет со своим индивидуальным бланком справки (как бы это смешно ни звучало, но нет единого шаблона таких справок о результатах ПЦР тестирования).

Помимо проверки непосредственно результата теста, важно следить за валидностью и подлинностью таких справок. Помните этот громкий международный скандал, когда 190 пассажиров рейса Москва Чжэнчжоу предоставили идентичные результаты серологического теста на антитела к COVID-19, что в результате привело к проблемам международного авиасообщения?

Система распознавания Smart Document Engine не только автоматически контролирует результаты в сертификатах тестирования COVID-19 для трех основных лабораторий России (Гемотест, Инвитро и Хеликс), но и возвращает все необходимые данные (как текстовые, так и графические), которые могут быть использованы для анализа валидности и подлинности таких сертификатов.

Помимо мобильного кейса, на базе Smart Document Engine можно построить полноценный роботизированный комплекс - автономный программно-аппаратный комплекс сканирования и анализа данных, совместимый с различными системами СКУД. Роботизированный комплекс способен за мгновение распознать данные из сертификата, контролировать наличие или отсутствие РНК и передавать управляющее действие в СКУД. Таким образом удастся полностью исключить человека из контроля тестов на загруженных пропускных пунктах.

Итого

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

Update. Буквально вчера была опубликована новость о том, что россиян, прибывающих из Турции и Танзании до 1 мая, а после 1 мая всех граждан, прибывающих из-за границы, обязали дважды сдать тест на COVID-19. Такие нововведения лишь подтверждают, что крайне необходима автоматизация процесса проведения ПЦР тестирования и контроля полученных результатов.

Подробнее..

Как мы создали облачный сервис для управления и контроля за маршрутами обходов на предприятиях

10.05.2021 14:18:51 | Автор: admin

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

На предприятиях куча различных механизмов, станков и различного оборудования. На некоторых из них, безусловно, есть электронный учет параметров, однако, как быть, если стоит оборудование постарше или просто без какого-либо электронного учета? Конечно же, идти по заданному маршруту с обычным блокнотом и шариковой ручкой, попутно снимая все показатели. И это хорошо, если сотрудник добросовестно пройдет все контрольные точки, а не просто для вида поставит галочки в блокнот, минуя все условности.

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

Как обычно происходит процесс обхода маршрутов (если проходит)Как обычно происходит процесс обхода маршрутов (если проходит)

Естественно, здесь обязательно вмешается и человеческий фактор: не очень понятный почерк, не туда посмотрел, не то записал, пропустил какие-нибудь параметры или, как говорилось выше, сотрудник просто проигнорировал обход, создав лишь видимость работы. Все эти косяки можно выявить много позже, когда начальник начнет листать журнал и удивляться показаниям или вообще не понимать, что обозначают данные каракули и откуда они взялись. И это еще хорошо, если все оборудование в порядке или проблемы успели устранить. А что если нет? Сразу, можно сказать, что остановка оборудования и его ремонт обходятся для компании в космические суммы, ибо такие инциденты могут вывести из строя весь технологический процесс.

Поэтому хотелось бы описать одну реальную историю, которая произошла несколько лет назад. Одна известная компания, которой свойственны все проблемы, описанные выше, обратилась к нам и запросила дополнительный функционал для нашего ПО, которым они уже давно пользовались (облачная система учета рабочего времени TARGControl). Когда мы начали вникать в суть проблемы, то поняли, насколько важным для предприятий является проблема обхода маршрутов и ужаснулись, с чем сталкиваются компании на постсоветском пространстве, где данные процессы не автоматизированы. Собирая бизнес-аналитику от клиента, анализируя существующие решения, мы поняли, какие вопросы должен будет закрыть наш новый модуль:

  1. Создание графиков и маршрутов обходов.

  2. Контроль своевременного обхода маршрутов сотрудниками.

  3. Учет действий сотрудников при прохождении маршрутов.

  4. Возможность получать фото- и текстовые уведомления с контрольных точек.

  5. Удобство для обходчика: возможность фиксировать все с помощью телефона (планшета), никаких журналов.

  6. Хранение отчетов в системе на протяжении всего времени.

Формирование системы обхода маршрутов

Сперва нужно было доработать нашу существующую систему. Исходя из составленного плана было решено разработать специальное приложение под Android (TARGControl Patrol) и новый модуль для нашей облачной системы, который мы назвали просто Маршруты.

Для WEB сразу написали возможность добавления точек обхода и формирования из них маршрутов (первоначально это были только RFID-метки), чтобы изучить возможность сканирования меток на устройствах с помощью NFC-считывателя. Параллельно велась работа и над APP (приложение писали на Java/Kotlin), с помощью которого мы собственно и считывали метки.

После первых успешных тестов мы начали допиливать функционал WEB. Сразу же для визуализации маршрутов был создан раздел Отчеты, где можно было просмотреть время прохождения маршрута и точек, после чего добавили в систему раздел Расписания маршрутов для тестирования возможностей прохождения маршрутов по заданному графику (дням и времени).

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

Раздел Отчет по параметрамРаздел Отчет по параметрам

В завершении был представлен раздел Графические планы, с помощью которого можно загрузить схемы помещений, чтобы позже в отчетах было удобно визуально воспринимать, какая точка и в каком именно месте не была пройдена.

Раздел Графический планРаздел Графический план

Итого на WEB были сформированы следующие разделы модуля Маршруты:

  1. Отчет (глобальный отчет по маршрутам).

  2. Отчет по точке (отчет по конкретной точке за заданный интервал времени).

  3. Отчет по параметрам (отчет по показателям оборудования, снятыми соответствующим персоналом).

  4. Контрольные метки (в данном разделе создаются (QR) или вносятся существующие (RFID) контрольные метки).

  5. Маршруты (создание маршрутов с помощью внесенных в систему меток).

  6. Расписание маршрутов.

  7. Графические планы.

Во время разработки приложения TARGControl Patrol было решено добавить возможность не только считывания меток маршрутов, но также регистрации и замен этих же меток, что дало бы возможность вносить данные автоматически, не вбивая RFID-коды руками в систему. Дублировать отчеты по маршрутам, точкам и параметрам в приложение не стали, ибо для большинства обходчиков этот функционал не нужен.

Итого функционал приложения позволяет:

  1. Авторизация в приложении с помощи карты или личного PIN-кода.

  2. Просмотр маршрутов и их контрольных точек.

  3. Просмотр расписания маршрутов.

  4. Процесс прохождения маршрутов по контрольным точкам и просмотр прогресса.

  5. Возможность оставлять у каждой контрольной точки текстовую и фотоинформацию. Можно просто сфотографировать показатели или оставить дополнительную информацию, если на объекте, например, произошло ЧП.

  6. Регистрация меток.

  7. Замена этих же меток.

Настройка системы маршрутов обхода для производства

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

  1. RFID-метки, которые будут использоваться как контрольные точки маршрута (возможны QR-метки).

  2. Приложение TARGControl Patrol.

  3. Смартфон (или планшет) на операционной системе Android.

  4. Система учета рабочего времени (УРВ) TARGControl Cloud

В качестве устройства выбрали такие защищенные устройства, которые в условиях предприятия сможет с легкостью выжить. Менять телефоны каждый месяц дело не из дешевых. Плюс главное условие для устройств наличие NFC, с чем данные модели успешно справляются. Сразу скажу, возможен вариант и с устройством без NFC однако вместо RFID-меток придется использовать QR-коды, что иногда является не самым удобным вариантом.

Устройства для считывания метокУстройства для считывания меток

В качестве контрольных точек были взяты RFID-метки следующего вида.

Данные метки хороши тем, что подходят для помещений с тяжелыми условиями работают при температуре от -20 до 200 C, что соответствовало запросам предприятия.

Подробнее остановимся на создании самих маршрутов в системе TARGControl Cloud. Компания, для которой разработали приложение и доработали облачное ПО, использовало нашу систему УРВ и активно пользовалась ей, поэтому весь список необходимых сотрудников был внесен и все учетки, необходимые для входа в приложение, были созданы. Осталось дело за малым настроить сам модуль Маршруты.

В системе создаем группу меток (для удобства), после чего вносим туда сами метки, в нашем случае это RFID.

При создании метки вбиваем имя, выбираем тип метки, вносим сам код (как писал выше, можно выполнить данную операцию и с помощью приложения) и создаем нужные строки для снятия показаний. Готово, выполним операцию еще n-ое количество раз, пока не внесем все нужные метки.

Создание метки в системеСоздание метки в системе

Далее создаем сами маршруты. Вводим название, выбираем цвет индикатора (для лучшего визуального восприятия на устройствах), выбираем нужные для нас метки, которые будут использоваться в маршруте обхода. Чтобы поторопить обходчика, выставим время на прохождение точки и все, маршрут готов. В этом случае для примера я выставил только 2 точки, но сути это не меняет в системе можно указать любое количество точек.

Создание маршрута обходаСоздание маршрута обхода

Остается лишь создать расписание: указать дату/время обходов, выбрать необходимых сотрудников, которые будут осуществлять обход по заданному маршруту и проставить галочку напротив поля Учитывать порядок обхода, чтобы считывание меток осуществлялось в заданном заранее порядке. Существует возможность и дополнительных настроек расписания, таких как Учитывать время начала и Учитывать время окончания, благодаря чему сотрудники, проходящие маршрут, должны будут начать и закончить маршрут только в определенно установленное время (с допустимым интервалом). На этом настройки закончены, можно приступить к самому принципу работы.

Добавление расписанияДобавление расписания

Как происходит процесс обхода?

Площадка, на которой происходит обход, обвешана RFID-метками, находящимся возле оборудования, с которых необходимо списывать показатели. Общий порядок действий при прохождении маршрута выглядит следующим образом:

  1. Сотрудник, который начинает обход, берет в руки устройство и проходит процесс авторизации в приложении вводит личный PIN или подносит свою карту. Данную операцию можно выполнить один раз, однако если маршрут проходит другой сотрудник с этого же устройства, то ему нужно нажать кнопку Выйти и авторизоваться под своим именем.

  2. Зайдя под своим именем, сотрудник выбирает маршрут, на котором будет осуществлен обход. Выбрав нужный маршрут, сотрудник отправляется в путь.

  3. Подойдя к первой точке маршрута, сотрудник подносит телефон (планшет) к метке, после чего приложение просканирует ее и предложит ввести определенные параметры оборудования, которые мы заранее указали в облаке TARGControl Cloud (описано выше). Существует возможность прикрепить фотографию. Все данные сразу же прилетают в систему.

  4. Далее обходчик просто направляется к следующей точке маршрута и повторяет операцию. На маршруте могут комбинироваться типы меток. Например, точка 1, 2 и 3 RFID-метки, а точка 4 QR.

Считывание меткиСчитывание метки

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

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

Итог

После внедрения решения маршрутов обхода, на предприятии отпала необходимость вести бумажные журналы на предприятии и все отчеты по маршрутам были размещены в облачной системе УРВ TARGControl (с возможностью экспорта в Excel). Все показатели оборудования стали фиксироваться в режиме реального времени, что позволило оперативно устранять неисправности.

Особо полезной функцией для руководителей стала реализация уведомлений в мессенджер (которая была реализована через API), благодаря чему руководство смогло всегда знать, какой сотрудник прошел маршрут не по расписанию или же допустил какие-нибудь нарушения.

В ходе дальнейшего сотрудничества было разработано еще множество улучшений как для модуля Маршруты, так и для всей системы УРВ в целом, однако эти нюансы заслуживают отдельной статьи.

Подробнее..

Из песочницы Облачный СКУД ЗА и ПРОТИВ из первых рук

06.07.2020 02:17:13 | Автор: admin
Пандемия жёстко заставила каждого из нас, без исключения, если не воспользоваться, то признать до сих пор преимущественно информационную среду интернет ещё и системой жизнеобеспечения. Ведь многих сегодня интернет буквально кормит, одевает и обучает. Интернет проникает в наши дома поселяясь в чайниках, пылесосах и холодильниках. IoT internet of things это любое оборудование, бытовые приборы например, в которые встроены крошечные электронные модули для обмена данными в сети Интернет через наш домашний WiFi.

Даже дверные замки многие производители начали делать с управлением через смартфон. Очередь за системами контроля доступа и эксплуатацией зданий и сооружений. И тут я хочу обсудить известные мне ЗА и ПРОТИВ облачных СКУД, поскольку работаю в коллективе, который одну из таких систем и разрабатывает.

Обсудить, пока что в независимости от профиля объекта, будь то жильё, промышленное предприятие, склад, ТРЦ, БЦ или образовательное учреждение.

Перечислю очевидные ЗА и ПРОТИВ облачных СКУД



PRO


  • Заявки на пропуск оформляются онлайн, без необходимости заполнять бумажки и собирать подписи согласования.
  • Пропуск доступен для редактирования и управляющему, и принимающему, и СБ, причём, с онлайн уведомлением владельца пропуска в удобном ему мессенджере, СМС или эл. почте об внесённых изменениях.
  • Удобный доступ к данным СКУД для руководителя администрации, начальников охраны, отдела кадров, особенно на предприятиях с филиальной сетью, в любое время, с любого ПК с веб браузером, на мобильном устройстве. Отпуск, командировка, больничный не препятствие справится о текущих делах, глянуть статистику.
  • Внедрение на объекте без сложного проектирования. Поскольку топология веб-сервисов позволяет легко менять тех. процессы и логику, возможные ошибки первоначальной схемы легко поправить уже в процессе эксплуатации и выбрать оптимальную структуру КПП, проходных и уточнить режим объекта.
  • Для настройки и тем более для управления не требуется специальной квалификации и подготовки. Современные инструменты программирования настолько нацелены на создания программных продуктов интуитивных в использовании, что создаваемые облачные сервисы обречены быть просто управляемыми и удобными в эксплуатации.
  • Дешевизна оборудования обусловлена его практическим отсутствием. Высокопроизводительные микро-ПК Ардуино, Расберри, Оранж заменяют специализированные контроллеры. Вся логика уходит на серверную часть и в оперативную память мобильных устройств, смартфонов. Смартфоны заменяют собой привычные RFID карточки и брелки, обеспечивая экономию на расходных материалах. Открывающее воздействие на замок, турникет оказывает тот самый крохотный элемент IoT интернета вещей. Дешёвый в силу своей простоты и тиражей производства.

image

пример структуры СКУД как облачного сервиса

Как вы догадались это были аргументы в пользу веб-сервисов СКУД. Буду честен и без утайки перечислю все аргументы против применения СКУД как облачного решения.

CONTRA


  • Хранение данных пользователя в облаке. Риски утраты информации по техническим причинам, утечки третьим лицам. Снизить эти риски можно распределением микро-сервисов по большему числу ЦОД (центр обработки данных) и выбору надёжных поставщиков этой услуги с классом TIER 3 или выше.
  • Отсутствие у части пользователей смартфонов. Нежелание использовать личный смартфон для служебных целей. Для решения этой проблемы у управляющий компании есть опция печати QR пропуска на чековом принтере, что под чертой выгоднее чем выдавать брелок или карту.
  • Наличие на объекте СКУД установленной годами ранее, но исправно работающей хоть и устаревшей. В этом случае есть опция применить для интеграции штатный в веб-сервисах API (application program interface) и расширить функционал до желаемого. Тем более что к большинству известных систем контроля доступа как правило уже написаны интеграции.
  • Традиционное нежелание наёмных сотрудников отказываться от знакомых систем и технологий, неважно что в пользу более эффективных и выгодных технологических аналогов. Саботаж среднего звена на этапах согласования может и часто вынуждает руководство, собственников сдаться и отказаться от модернизации.

Но лидером контраргументов, какие я только слышал, остается классическое " а что если пропадёт интернет...". Тут у меня нет слов, и в голову приходит старый анекдот:

Я самая главная, дерзко заявила Эл. Почта, меня все читают! Нет, я главнее, негромко возразил Интернет, ты во мне живешь. Электричество тихо вздохнуло и отвернулось.

И так, приглашаю подебатировать на тему ЗА и ПРОТИВ Интернета в охранных системах, в частности СКУД. Пожалуйста, смело комментируйте с чем не согласны, буду рад услышать критику, возразить или честно согласиться. Стесняетесь высказаться публично пишите в личку.

Спасибо
Илья
Подробнее..

Интеграция в системах контроля доступа

07.08.2020 12:20:56 | Автор: admin
Одна из основных тенденций рынка систем контроля доступа упрощение интеграции с другими системами: системами видеонаблюдения, охранно-пожарной сигнализации, управления предприятием, билетными системами.



Принципы интеграции


Одним из способов интеграции является передача SDK программного обеспечения стороннему ПО для управления контроллерами СКУД. При использовании Web-технологий упростить процесс интеграции позволяет реализация функций SDK в формате JSON API. Для интеграции также может применяться передача SDK контроллера стороннему ПО для управления контроллером. Еще один способ интеграции в СКУД использование дополнительных входов/выходов контроллера для подключения дополнительного оборудования: видеокамер, датчиков, устройств сигнализации, внешних верифицирующих устройств.

Построение комплексной системы безопасности




Комплексная системы безопасности строится на совокупности четырех последовательных рубежей защиты: сдерживании, обнаружении, оценке и реагировании. Сдерживание предполагает предотвращение возникновения угрозы, обнаружение и оценка отсеивание ложных угроз, реагирование противодействие реальным.

Для реализации первого этапа устанавливаются турникеты и шлагбаумы. Доступ на контролируемую территорию осуществляется строго по идентификаторам картам доступа, отпечаткам пальцев, смартфонам, распознаванию лиц. Интеграция с системами видеонаблюдения позволяет использовать при организации автотранспортной проходной систему автоматического распознавания автомобильных номеров.

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

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

Например, при срабатывании пожарного извещателя данные от ближайшей видеокамеры автоматически выводятся на монитор. Сотрудник может оценить, действительно ли имеет место возгорание, или это ложная тревога. Это позволит быстро принять меры, не тратя времени на проверку события на месте.

Для расширения функционала СКУД может быть интегрирована с внешними верифицирующими устройствами: пирометрами, алкотестерами, весами, дозаторами антисептика. Предотвратить доступ нетрезвых сотрудников позволяет алкотестирование. Система контроля доступа может в онлайн режиме оповещать службы безопасности о положительных результатах на алкоголь, что позволяет оперативно реагировать на инциденты и вовремя проводить освидетельствование. Впоследствии в системе контроля доступа оператор имеет возможность формировать отчёты по результатам алкотестирования для получения информации о нарушителях режима и их количестве среди работников. Для предотвращения хищений можно организовать доступ с подтверждением от весов как внешнего верифицирующего устройства.

В условиях борьбы с коронавирусной инфекции все большее распространение получают системы контроля доступа, позволяющие осуществить интеграцию с пирометрами устройствами, измеряющими температуру тела, и бесконтактными дозаторами антисептика. В таких системах доступ на объект разрешается только при нормальной температуре тела и только после использования дезинфицирующей жидкости. Для реализации бесконтактной идентификации турникеты СКУД интегрируются с терминалами распознавания лиц и сканерами штрих-кодов.

Для упрощения процесса монтажа внешних верифицирующих устройств применяются специальные стойки и кронштейны: например, кронштейн для установки сканера штрих-кодов, стойка для алкотестера или терминала распознавания лиц.

Интеграция с системами документооборота и кадрового учета




Для автоматизации учета рабочего времени и контроля трудовой дисциплины СКУД может быть интегрирована ERP-системами, в частности с 1С. Учет рабочего времени производится на основании событий входа-выхода, регистрируемых контроллерами системы и передаваемых из системы контроля доступа в 1С. При интеграции производится синхронизация списков подразделений, организаций, должностей, ФИО сотрудников, графиков работы, событий и классификаторов.

Учет рабочего времени сотрудников может вестись как с помощью оборудования контроля доступа турникетов или замков со считывателями, так и с помощью специальных терминалов учета рабочего времени: стационарных или мобильных. Стационарные терминалы применяются на объектах, где нет необходимости устанавливать турникеты, или в случае удаления рабочих мест от проходной. Мобильные терминалы регистрации, для организации которых используется смартфон с NFC-модулем, применяются на удаленных объектах, где невозможно или нецелесообразно устанавливать стационарные терминалы.

Территория предприятия делится на рабочие зоны (кабинеты, цеха,) и нерабочие (кафе, комната для курения). На основе данных о входах и выходах сотрудников в рабочие и нерабочие зоны в системе строится табель учета рабочего времени, который передается в 1С для корректного начисления заработной платы.

Интеграция с билетными системами




Интеграция СКУД с билетными системами широко применяется на транспортных и спортивно-развлекательных объектах. Получение SDK контроллера доступа упрощает интеграцию с билетными системами и позволяет использовать контроллер в системах платного доступа: в фитнес-центрах, музеях, театрах, парках развлечений и многих других объектах.

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

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

Терминалы распознавания лиц в системах контроля доступа

11.09.2020 14:12:59 | Автор: admin
Распознавание лиц в системах контроля доступа отвечает растущему спросу на бесконтактные решения в области идентификации. Сегодня данный способ биометрической идентификации является общемировым трендом: среднегодовой рост объема рынка систем на базе распознавания лиц оценивается аналитиками в 20%. Согласно прогнозам, в 2023 году эта цифра увеличится до 4 млрд USD.



Интеграция терминалов с системой контроля доступа


Распознавание лиц в качестве способа идентификации может применяться в СКУД для контроля доступа, учета рабочего времени и интеграции с CRM- и ERP-системами. Лидирующими производителями терминалов распознавания лиц на российском рынке являются Hikvision, Suprema, Dahua и ZKteco.

Интеграция терминалов распознавания лиц с системой контроля доступа может осуществляться тремя способами, различие которых заключается в интерфейсе связи и функционале SDK. Первый способ позволяет добавлять новые данные сотрудников или посетителей непосредственно в интерфейсе СКУД, без добавления в терминалы за счет SDK терминала. При втором способе добавление новых пользователей осуществляется как в интерфейсе СКУД, так и непосредственно в терминалах, что менее удобно и более трудозатратно. В обоих случаях подключение осуществляется по интерфейсу Ethernet. Третий способ подключение по интерфейсу Wiegand, но в этом случае у терминалов и СКУД будут раздельные базы данных.

В обзоре будут рассмотрены решения с подключением по интерфейсу Ethernet. Возможность добавления пользователей в интерфейсе системы определяется SDK терминала.Чем шире возможности СКУД, тем больший функционал будет возможно реализовать при помощи терминалов. Например, интеграция системы контроля доступа PERCo-Web с терминалами Suprema позволяет добавлять данные непосредственно в интерфейсе ПО системы. Среди других возможностей занесение и сохранение фотографий сотрудников и посетителей для идентификации, осуществление конфигурации устройств и управления ими в режиме онлайн.

Все события проходов через терминалы сохраняются в системе. Система позволяет назначать алгоритм реакций на события, полученных с терминалов. При проходе сотрудника с распознаванием по лицу можно сформировать уведомляющее событие, которое будет отправляться на Viber или e-mail оператора системы. Система поддерживает работу с терминалами Face Station 2 и FaceLite от Suprema, ProfaceX, FaceDepot 7А, Facedepot 7 В, SpeedFace V5L от ZKteco. При проходе сотрудника или посетителя с повышенной температурой в СКУД формируется событие, на основании которого доступ может быть автоматически заблокирован.

Определяющими факторами при выборе терминалов для работы в составе системы контроля доступа являются безопасность идентификации, быстродействие и точность работы, удобство при использовании. Надежность идентификации в первую очередь определяет наличие защиты от эмуляции и возможность проведения двухфакторной идентификации. Быстродействие высокая скорость распознавания лиц, обеспечивающая бесперебойную работу оборудования даже в условиях интенсивного потока людей. На точность распознавания влияют эффективность применяемого алгоритма, количество шаблонов лиц и пользователей в памяти терминала, а также параметры работы камеры в условиях различной освещенности. Удобство при использовании обеспечивают языковой интерфейс, габариты и вес устройства. Простоту интеграции, как было отмечено выше интерфейс связи и SDK терминала. Облегчить интеграцию также позволяет наличие у турникетов креплений для терминалов распознавания лиц.

Рассмотрим с точки зрения работы в СКУД технические характеристики следующих моделей данных производителей:

Face Station 2 и FaceLite от Suprema



ProfaceX, FaceDepot 7А, Facedepot 7 В, SpeedFace V5L от ZKteco



DS-K1T606MF, DS-K1T8105E и DS-K1T331W от Hikvision



ASI7223X-A, ASI7214X от Dahua



Защита от эмуляции


Распознавание лиц может базироваться на 2D или 3D- технологиях. Первая из них является более бюджетной, что сказывается и на стоимости терминалов. Среди ее недостатков высокие требования к освещению, более низкая в сравнении с 3D статистическая достоверность, неспособность учитывать мимику лица. Увеличить точность идентификации терминалов на базе 2D позволяют инфракрасные камеры.

Терминалы, работающие по 3D- технологии, являются более дорогостоящими, но обеспечивают высокую точность и достоверность идентификации и демонстрируют способность работы в условиях низкой освещенности. В терминалах Suprema и ZKteco для защиты от предъявления фотографии применяется детектирование живого лица, основанное на инфракрасной подсветке. Терминалы Hikvision используют алгоритм глубокого машинного обучения и детекции подлинности биометрических данных лица. Терминалы распознавания лиц от Dahua используют технологии искусственного интеллекта и глубинного изучения с поддержкой детекции витальности.

Скорость идентификации


Скорость идентификации терминалов распознавания лиц имеет особенно большое значение для объектов с интенсивным потоком посетителей: офисов крупных компаний, промышленных предприятий, мест массового пребывания людей. Высокая скорость идентификации препятствует образованию очередей и обеспечивает максимальную пропускную способность. Терминалы Hikvision DS-K1T331W, Dahua ASI7223X-A и ASI7214X распознают лица всего за 0,2 секунды. У модели DS-K1T606MF идентификация осуществляется за 0,5 секунд, у DS-K1T8105E менее чем за 1 секунду. Скорость идентификации терминалов Face Station и FaceDepot 7А составляет менее 1 секунды.

Двухфакторная идентификация




Удобным решением для работы в СКУД являются терминалы распознавания лиц, поддерживающие также и другие способы идентификации: например, доступ по карте, отпечатку пальца, ладони или смартфону. Такие решения позволяют усилить контроль доступа на объект за счет двухфакторной идентификации. Терминалы FaceLite и FaceStation 2 отличает наличие встроенного считывателя бесконтактных карт доступа, в других рассматриваемых нами моделях считыватель можно подключить дополнительно. Терминалы ZKteco поддерживают также идентификацию по ладони и коду. Терминалы Hikvision DS-K1T606MF поддерживают идентификацию по отпечаткам пальцев и картам Mifare, DS-K1T8105E имеет встроенный считыватель карт EM-Marine, к терминалу DS-K1T331W может быть подключен считыватель бесконтактных карт. Терминал ASI7214X также поддерживает работу с бесконтактными картами и отпечатками пальцев.

Измерение температуры


Одним из драйверов роста рынка решений по распознаванию лиц в системах контроля доступа стала пандемия Covid19, поэтому терминалы распознавания лиц с возможностью контроля температуры тела получили широкое распространение. Данный функционал из рассматриваемых нами моделей позволяют реализовать терминалы SpeedFace V5L, которые также определяют наличие на лице маски. Измерение температуры происходит бесконтактно, что снижает риск передачи инфекций и позволяет минимизировать
необходимость антисептической обработки устройства после каждого измерения.
Удобным решением является установка параметров контроля температуры и наличия маски в интерфейсе СКУД, если SDK терминала позволяет заносить данные непосредственно в системе.

Количество шаблонов лиц


Ёмкость шаблона максимальное количество наборов данных, которые могут храниться в системе. Чем выше данный показатель, тем выше точность идентификации. Большой ёмкостью распознавания обладают терминалы Face Station 2 и FaceLite. Они обрабатывают до 900 000 шаблонов. Терминалы ProFace X хранят в памяти по 30 000 шаблонов, FaceDepot 7А и Facedepot 7 В по 10 000 шаблонов, SpeedFace V5L 6000.
Терминалы ASI7223X-A и ASI7214X вмещают по 100 000 шаблонов.

Количество пользователей и событий


Количество пользователей в памяти терминала распознавания лиц определяет количество максимально возможных идентификаторов для доступа на объект. Чем крупнее объект, тем выше должен быть данный показатель. Память контроллеров Face Station 2 и FaceLite рассчитана на 30000 пользователей, как и память ProfaceX. FaceDepot 7А, Facedepot 7 В, SpeedFace V5L обрабатывают данные 10 000 человек. Память терминала DS-K1T8105E рассчитана на 1600 пользователей, DS-K1T331 на 3000, DS-K1T606MF на 3200 пользователей. Терминалы ASI7223X-A и ASI7214X обрабатывают данные 100 тысяч пользователей. В памяти терминалов распознавания лиц сохраняются все событиях о проходах через данный терминал. Наибольшее количество событий в памяти позволяет строить отчеты за максимально долгий выбранный период времени.

Самый большой объем журнала событий у терминалов Face Station 2 и FaceLite 5 млн. У ProfaceX 1 млн. Терминалы ASI7223X-A и ASI7214X вмещают по 300 000 событий. Объем журнала SpeedFace V5L составляет 200 000 событий, у DS-K1T331W 150 000. У терминалов FaceDepot 7А и Facedepot 7 В и DS-K1T606MF 100 000 событий. Самый скромный объем памяти у терминала DS-K1T8105E всего 50 000 событий.

Языковой интерфейс


Не все терминалы распознавания лиц, представленные на российском рынке, имеют русскоязычный интерфейс, поэтому его наличие может являться важным фактором выбора.
Русскоязычный интерфейс доступен в терминалах ProFace X, SpeedFace V5L. В терминале Face Station 2 русскоязычная прошивка предоставляется по запросу. Терминал Face Station 2 имеет англоязычный интерфейс. DS-K1T331W поддерживает английский, испанский и арабский языки, русскоязычный интерфейс пока не доступен.

Габариты


Самыми крупными и тяжелыми в нашем обзоре являются терминалы Dahua.
ASI7223X-A 428X129X98 мм, вес 3 кг.
ASI7214X 250,6Х129Х30,5 мм, вес 2 кг.
Далее идет FaceDepot-7A с его весом в 1,5 кг и габаритами 301х152х46 мм.
Самым легким и компактным терминалом в нашем обзоре является Suprema FaceLite его габариты составляют 80x161x72 мм при весе в 0,4 кг.

Габариты терминалов Hikvision:
DS-K1T606MF 281X113X45
DS-K1T8105E 190X157X98
DS-K1T331W 120X110X23

Габариты терминалов Zkteco:
FaceDepot-7B 210X110X14 при весе 0,8 кг
ProfaceX 227X143X26 при весе 1 кг
SpeedFace V5L 203X92X22 при весе 0, 9 кг

Габариты терминала Suprema Face Station 2 141Х164Х125 при весе 0,7 кг.

Характеристики камеры


Терминал Proface X оснащен камерой 2MP WDR Low Light для распознавания лиц в условиях сильного внешнего освещения (50 000 люкс). Терминалы Face Station 2 и FaceLite оборудованы камерой CMOS 720x480 с инфракрасной подсветкой в 25 000 люкс, что позволяет им работать в условиях как низкой, так и высокой освещенности. Данные терминалы могут быть установлены под козырьком на открытом воздухе во избежание сильной засветки. Терминалы Hikvision и Dahua оснащены камерами на 2MP с двойным объективом и WDR, что позволяет получать четкое изображение в условиях различной освещенности. Терминалы FaceDepot 7А, Facedepot 7 В, SpeedFace V5L оснащены камерой
2MP.

Интеграция с турникетами




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

Экспансия скоростных проходов на мировом рынке турникетов

22.09.2020 18:18:39 | Автор: admin
Скоростные проходы турникеты с распашными или раздвижными створками в настоящее время уверенно лидируют на мировом рынке турникетов, демонстрируя стабильный рост. Недавние исследования британского аналитического агентства IHS Markit прогнозируют увеличение их доли рынка на 7% в течение ближайших 5 лет.



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

Комфортный бесконтактный проход



Скоростные проходы PERCo ST-01 в ЖК Мосфильмовский

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

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

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

Высокая пропускная способность



Скоростные проходы PERCo ST-01 в аэропорту Красноярска

Изо всех разновидностей турникетов скоростные проходы обладают максимальной пропускной способностью, что позволяет использовать их на объектах массового пребывания людей: аэропортах, вокзалах, стадионах. Среди основных драйверов роста рынка скоростных проходов аналитики IHS Markit называют глобальное расширение метрополитена в самых густонаселенных странах мира: Индии и Китае. Активное строительство новых станций и оснащение их турникетами обуславливает спрос на скоростные проходы: именно этот вид турникетов обладает максимальной пропускной способностью, что позволяет предотвратить образование очередей даже в условиях интенсивного потока пассажиров. Скоростные проходы устанавливаются на объектах транспортной инфраструктуры по всему миру.

Простота интеграции с дополнительным оборудованием


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

Одним из главных трендов рынка систем контроля доступа сегодня является распознавание лиц. Среднегодовой рост объема рынка таких систем оценивается аналитиками в 20%. Распознавание лиц широко применяется на объектах массового пребывания людей: в аэропортах, на вокзалах и стадионах. В последнее время технология распознавания лиц становится все более востребованной в связи с пандемией Covid-19 благодаря бесконтактному принципу идентификации.

По данным компании Sita Air Transport IT Insights, до 2021 системы на базе распознавания лиц будут тестировать и внедрять 77% аэропортов и 71% авиалиний. Уже сегодня такие решения используются в крупнейших аэропортах США, Австралии, Гонконга, Нидерландов. Скоростные проходы могут быть дополнены специальными кронштейнами для интеграции с терминалами распознавания лиц. Для проверки документов без участия сотрудников объекта скоростные проходы оборудуют терминалами распознавания документов.



Распознавание штрих-кода осуществляется с помощью сканеров, установленных на специальных стойках. Такое решение значительно упрощает процесс проверки: система принимает решение о доступе и открывает турникет без участия сотрудников объекта.

Упростить интеграцию скоростных проходов с дополнительным оборудованием позволяет исполнение крышек из нержавеющей стали. Такое исполнение также повышает износостойкость крышек турникетов.

Некоторые модели скоростных проходов позволяют устанавливать считыватели не только на кронштейны, но и под крышки турникетов. Ряд моделей, например, PERCo ST-02, также предусматривает возможность встраивания и считывателя, и контроллера. На объектах с большим потоком посетителей и необходимостью сбора гостевых пропусков скоростные проходы могут быть интегрированы с картоприемниками.

Основные мировые производители скоростных проходов


Согласно исследованию Marketwatch в 2020 году, в рейтинг ведущих мировых производителей турникетов входят следующие компании:

  • Digicon
  • Centurion Systems
  • PERCo
  • Saela
  • Turnstar
  • Manusa
  • Smarter Security
  • Cominfo
  • Meesons
  • Controlled Access
  • AKTUEL
  • TiSO
  • Dormakaba Group
  • Boon Edam
  • Kaba Gallenschuetz
  • Hayward Turnstiles
  • Godrej Security Solutions
  • Fastlane Turnstiles
  • Gunnebo
  • Alvarado
  • Axess
  • DaoSafe

В рейтинге из 20 компаний PERCo является единственным российским брендом. Продукция компании экспортируется в 90 стран мира. В нашем обзоре мы рассмотрим скоростные проходы компаний Digicon, PERCo, Manusa, Alvarado, Dormakaba, Cominfo, Fastlane Security, Gunnebo, Boon Edam.

Digicon (Бразилия)



Скоростные проходы DGate в офисе корпорации Furnas

Линейка скоростных проходов бразильского производителя Digicon сегодня представлена моделями Slide и DGate. Slide турникеты с раздвижными створками, выполненными из стекла и нержавеющей стали. Ширина прохода составляет 500 или 900 мм. Турникеты снабжены 16 оптическими датчиками для контроля прохода. DGate AW турникеты с раздвижными створками, DGate SW турникеты с распашными створками. Ширина прохода составляет 500 или 900 мм. Корпус выполнен из нержавеющей стали, створки из оргстекла или поликарбоната. Контроль прохода осуществляется с помощью 12 оптических датчиков.

Турникеты DGate могут быть интегрированы со сканерами штрих-кодов, считывателями карт доступа HID /Mifare и сканерами отпечатков пальцев. Боковые панели и крышки турникетов DGate могут быть исполнены в различных цветах в соответствии с потребностями заказчика.
В случае экстренной ситуации или пропадании электропитания створки турникетов Slide и DGate открываются автоматически.

Турникеты Digicon установлены, в частности, на нескольких станциях метрополитена Рио-де-Жанейро и на проходных производственной и электроэнергетической корпорации Furnas.

PERCo (Россия)



Скоростные проходы ST-02 в аэропорту Внуково

На текущий момент линейка скоростных проходов PERCo представлена моделями ST-01 и ST-02 в различных модификациях.

Скоростной проход ST-01 оснащен распашными створками. Ширина прохода может составлять 650, 900 и 1000 мм. Высота перекрытия 1010 и 1300 мм. Материалом исполнения крышек может служить закаленное стекло, нержавеющая сталь, закаленное стекло со вставками из нержавеющей стали.

В линейке скоростных проходов ST-01 представлены модели со встроенным картоприемником и стойкой для сканера штрих-кода, позволяющие упростить монтаж и сохранить внешний вид проходной. Также скоростные проходы могут быть оборудованы стойкой для терминала распознавания лиц.

Простота интеграции дополнительного оборудования позволяет адаптировать скоростные проходы под задачи различных объектов. В прибалтийской сети кинотеатров Cinamon для удобства зрителей при предъявлении билетов скоростные проходы оборудованы стеклом- подставкой для еды и напитков. В индийском подразделении банка Goldman Sachs скоростные проходы дополнены стойкой со сканером отпечатков пальцев.

Скоростной проход ST-02 отличают раздвижные створки. Ширина зоны прохода также может варьироваться в зависимости от модификации. Характеристики данной модели аналогичны ST-01: пропускная способность 60 человек в минуту, инфракрасные датчики для безопасного прохода и предотвращения проникновения нескольких человек одновременно, автоматическая разблокировка при экстренной ситуации или пропадании электропитания.

Благодаря своим потребительским свойствам скоростные проходы ST-02 были выбраны для установки на проходной крупнейшего в России центра автоматизированного управления воздушным движением, расположенного в аэропорту Внуково, Москва. Высокая пропускная способность скоростных проходов ST-02 позволяет эффективно организовать контроль доступа в условиях интенсивного потока людей персонал МЦ АУВД работает в шесть смен. 11 скоростных проходов ST-02 установлены в московском офисе компании Яндекс. В соответствии с растущим мировым спросом на скоростные проходы, линейка PERCo вскоре пополнится новой моделью скоростных проходов ST-11. Скоростные проходы ST-11 оптимально подходят для использования в условиях ограниченного пространства благодаря компактным размерам.

Fastlane Security (Великобритания)



Скоростные проходы Fastline Glassgate в офисе компании Sports Direct

В линейке производителя представлено несколько моделей скоростных проходов с распашными и раздвижными створками под общим названием Glassgate. Несмотря на общее название, скоростные проходы существенно различаются формой, шириной, материалом исполнения, формой створок и другими характеристиками.

В линейке есть турникеты в корпусе из нержавеющей стали, турникеты со стеклянными боковыми панелями, также варьируются высота створок и ширина зоны прохода. Ширина зоны прохода, в зависимости от конкретной модели, может составлять 660, 914, 1100 и 1200 мм. Высота перекрытия от 805 до 1800 мм. Пропускная способность составляет 60 человек в минуту.

Скоростные проходы Fastline Glassgate оснащены 18 оптическими датчиками для контроля зоны прохода. При чрезвычайной ситуации створки турникетов раздвигаются автоматически. Турникеты могут быть оснащены встроенными считывателями, также считыватели можно установить дополнительно. Среди мест, где установлены Fastline Glassgate: Мировой торговой центр в Нью-Йорке, университете Notre Dame в Индиане, офис компании Sports Direct в Лондоне.

Boon Edam (Нидерланды)



Скоростные проходы Lifeline Speedlane в офисном центре The River Building

Американский производитель выпускает две линейки скоростных проходов: турникеты с распашными створками Lifeline Speedlane и турникеты с раздвижными створками Speedlane, а также безбарьерную модель Speedlane Open.

Все модели скоростных проходов Boon Edam оснащены оптическими датчиками для контроля зоны прохода. При чрезвычайной ситуации створки турникетов открываются автоматически.
И распашные, и раздвижные модели имеют пропускную способность 25-30 человек при полном закрытии турникета после каждого прохода. Турникеты могут быть интегрированы со сканерами штрих-кодов и отпечатков пальцев, считывателями карт доступа, кодонаборными панелями.

Скоростные проходы выполнены из стекла и нержавеющей стали. Ширина зоны прохода модели Speedlane Compact может составлять 510 или 910 мм, высота перекрытия от 980 до 1800 мм. У турникетов. Lifeline Speedlane ширина зоны прохода варьируется от 500 до 915 мм. Высота перекрытия может быть увеличена по запросу. Также в зависимости от потребностей заказчика турникеты могут быть окрашены в цвета каталога RAL и брендированы. Например, в лондонском офисном центре The River Building установлены скоростные проходы с распашными створками.

Alvarado (США)



Скоростные проходы SU5000 в здании администрации штата Мичиган

В линейке скоростных проходов американского производителя новейшей разработкой является SU5000. SU5000 турникет с распашными створками, выполненный из нержавеющей стали и стекла. Турникет снабжен оптическими датчиками для контроля прохода. По запросу заказчика доступны такие опции как окраска корпуса в различные цвета, светодиодная подсветка, гравировка логотипа на панелях и возможность дополнения стойкой для установки дополнительного оборудования.

Пропускная способность SU5000 составляет до 30 человек в минуту. Турникеты поддерживают работу со считывателями RFID / NFC идентификаторов и штрих-кодов, а также могут быть интегрированы с билетными системами. Ширина прохода может составлять 723 или 926 мм, высота перекрытия 1165 или 1749 мм. Турникеты SU5000 установлены, в частности, в здании администрации штата Мичиган, США, сети магазинов Walmart и на многих других объектах.

Dormakaba (Швейцария)



Скоростные проходы Argus в аэропорту Минска

Швейцарский производитель выпускает три модели скоростных проходов, объединенных в линейку Argus: Argus 40, Argus 60 и Argus 80. Все модели выполнены в алюминиевых корпусах с распашными створками и могут быть окрашены в один из 12 предложенных цветов. Турникеты оснащены оптическими датчиками для контроля зоны прохода. Турникеты Argus 60 и Argus 80 также имеют подсветку зоны прохода и горизонтальную систему цветовой завесы.

Ширина прохода может составлять 650, 900, 915 и 1000 мм. Высота перекрытия 990, 1200, 1400, 1600 или 1800 мм. Скоростные проходы Argus могут быть интегрированы с дополнительным оборудованием: считывателями карт доступа, сканерами штрих-кодов и отпечатков пальцев, терминалами распознавания лиц. Например, турникеты Argus со сканерами штрих-кодов установлены в аэропорту Минска, Беларусь.

Gunnebo (Швеция)




В линейке Gunnebo присутствуют скоростные проходы с распашными и раздвижными створками.
Турникеты с распашными створками представлены в стандартной серии SpeedStile FL и компактной серии SpeedStile FLs. Серия SpeedStile FLs включает турникеты SpeedStile FLs BA/EV длиной 1200 мм, 1400 мм и 1800 мм и турникеты SpeedStile FLs DS длиной до 1800 мм.

В серии SpeedStile FL доступны турникеты с различной высотой перекрытия: 1000, 1200, 1800 мм. Также предусмотрена увеличенная ширина прохода 900 мм. Турникеты обеих линеек выполнены из нержавеющей стали и стекла. Пропускная способность турникетов обеих серий составляет 40 человек в минуту. В случае чрезвычайной ситуации створки остаются в текущем положении. Опционально турникет может быть оснащен аккумулятором, позволяющим автоматически открыть створки в случае отключения питания.

Скоростные проходы с раздвижными створками представлены моделями SpeedStile BP и SpeedStile FP. SpeedStileBP турникеты со створками высотой 900 мм, SpeedStileFP турникеты со створками высотой 1200 или 1800 мм. Корпуса обеих моделей выполнены из нержавеющей стали и окрашенного пластика. Турникеты SpeedStile доступны в нормально-открытой и нормально-закрытой версиях. Контроль прохода осуществляется 6 инфракрасными датчиками для нормально-закрытой версии и 14 датчиками для нормально-открытой версии. Турникеты Gunnebo установлены на транспортных и развлекательных объектах, в бизнес-центрах и на предприятиях.

Manusa (Испания)



Cкоростные проходы Express Gate в спа-центре Spalas

Cкоростные проходы испанского производителя Express Gate турникеты с раздвижными створками. Корпус выполнен из нержавеющей стали, крышки из дерева или искусственного камня в нескольких вариантах цветов. Створки турникетов выполнены из стекла, их ширина и высота может варьироваться в зависимости от пожеланий заказчика. Одним из вариантов исполнения является турникет с полноростовыми стеклянными створками. Ширина прохода может быть увеличена для проезда маломобильных групп населения по запросу.

При отключении электропитания или экстренной ситуации створки открываются автоматически. Турникеты интегрируются со считывателями карт доступа, отпечатков пальцев, терминалами распознавания лиц. Турникеты Express Gate установлены в университетских кампусах, отелях, на проходных предприятий.

Cominfo (Чехия)



Скоростные проходы Easygate в БЦ Dominion Tower

Чешская компания Cominfo производит турникеты с распашными и раздвижными створками под общим названием Easygate. Новая модель турникеты Easygate Superb изготовлены из нержавеющей стали и стекла и могут быть окрашены в различные цвета. Доступен различный вид отделки: матовая, полированная или бронзовая нержавеющая сталь. Верхняя панель турникета может быть окрашена в выбранный цвет. Турникеты оснащены 24 парами оптических сенсоров в верхней и нижней части турникета. Данная модель имеет световую и звуковую индикацию прохода.

Турникеты оборудованы встроенным считывателем карт доступа и картоприемником. Возможна интеграция со сканерами штрих-кодов и отпечатков пальцев. Ширина зоны прохода может составлять 550, 650 или 920 мм. Высота перекрытия 990 и 1800 мм. Турникеты Cominfo установлены, в частности, в БЦ Dominion Tower (Москва), БЦ Flow Building (Прага), офисе Siemens в Нидерландах.
Подробнее..

Выбор оборудования для системы контроля доступа

19.06.2020 12:20:11 | Автор: admin
При построении системы контроля доступа определяющими параметрами являются быстродействие, надежность, удобство использования и соответствие поставленным задачам.



Архитектура СКУД


В современных СКУД связь между контроллерами, рабочими местами пользователей и сервером системы осуществляется по сети Ethernet. Интерфейс Ethernet обеспечивает высокую надежность работы системы за счет применения типовых IT- решений и работы всех устройств системы в едином адресном пространстве по единому протоколу. Ethernet также дает возможность использования технологии PoE (Power over Ethernet) привлекательного альтернативного способа электропитания сетевых устройств, существенно облегчающего монтаж оборудования СКУД.

Все контроллеры и ПК системы работают в единой информационной среде с единой базой данных, установленной на сервере системы. При этом наличие постоянной связи контроллеров с БД не требуется.

В энергонезависимую память контроллеров передаются все необходимые права доступа, там же сохраняются регистрируемые события. Для контроллеров можно задать алгоритм работы, что позволяет системе продолжительное время работать в автономном режиме без подключения к серверу.

Например, Global antipass поддерживается посредством таблиц маршрутизации, которые передаются всем контроллерам системы. Такие настройки позволяют организовать сложные решения контроля доступа с учетом зональности. При отключении электропитания таблица маршрутизации остается в памяти контроллера без поддержки сервера, и вся система остается полностью функциональной. При восстановлении связи с сервером системы события переносятся в БД.

Для обеспечения автономной работы контроллера важной характеристикой является объем памяти. Например, современные контроллеры могут хранить в памяти данные о 150 000 событий и 50 000 пользователей.

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

Возможность подключения к контроллеру контроллеров второго уровня упрощает расширение системы, что особенно актуально для крупных предприятий. Для связи контроллера с контроллерами второго уровня может применяться интерфейс связи RS-485, позволяющий существенно оптимизировать затраты на расширение системы.

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

При выборе контроллеров для СКУД стоит обратить внимание на наличие у них дополнительных входов/выходов для подключения дополнительного оборудования: видеокамер, датчиков, устройств сигнализации. Вход Fire Alarm позволяет подключить устройства пожарной сигнализации и настроить разблокировку турникетов при получении тревожного сигнала от устройств ОПС. При подключении камеры к выходу контроллера можно задать алгоритм, при котором камера начинает вести запись при получении сигнала о тревожном событии. К входу контроллера можно подключить датчики затопления: при достижении определенного уровня воды по сигналу от датчиков турникеты разблокируются для эвакуации. Дополнительные входы и выходы также позволяют подключать внешние верифицирующие устройства, например, пирометры, алкотестеры, весы.



Контроллер как сервер


Один из главных драйверов рынка СКУД распространение WEB-технологий. Среди их преимуществ возможность удаленной работы на мобильных устройствах с сохранением централизованного администрирования, функционирование под различными операцион-ными системами.

Контроллеры нового поколения позволили встроить программное обеспечение, что дало возможность использовать контроллер как сервер. Такая архитектура упрощает внедрение системы и снижает ее стоимость. Например, система PERCo-Web, построенная на без такого контроллера, может обработать данные 500 сотрудников и 500 посетителей и иметь в соста-ве до 10 контроллеров. Контроллер подключается к сети по интерфейсу Ethernet. Для кон-троля доступа в компании численностью до 100 сотрудников будет достаточно бесплатной версии ПО.
Развитие интернет-технологий и пропускной способности каналов позволяет говорить о том, что Web-технологии в скором времени заменят традиционный подход к разработке не только программного обеспечения СКУД, но и вообще любых систем. По мере появления все более мощных контроллеров все возможности ПО систем контроля доступа можно будет реализовать в них самих, без установки сервера системы на компьютер.

Web-интерфейс контроллеров


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

Возможности интеграции


Получение SDK контроллера позволяет осуществлять интеграцию с различными системами: например, системами платного доступа или ERP-системами. Открытый протокол контрол-лера позволяет организовывать на его базе контроль доступа в фитнес-центрах, музеях, теат-рах, парках развлечений, на парковках и многих других объектах.

Выбор способов идентификации


При выборе оборудования для системы контроля доступа необходимо определить, какие способы идентификации будут использоваться на объекте: карты доступа форматов EMM/HID или MIFARE с защитой от копирования, мобильный доступ, доступ по штрих-коду, отпечаткам пальцев, распознаванию лиц. Характеристики контроллеров и считывателей должны позволить реализовать выбранный способ идентификации.

Для связи контроллера и считывающих устройств применяются интерфейсы Wiegand, RS-485 и USB. Wiegand применяется в СКУД для чтения магнитных карт и RFID-идентификаторов. Среди достоинств интерфейса: простота, распространенность, дальность действия до 150 метров, совместимость оборудования различных производителей. Среди недостатков уязвимость для взлома за счет отсутствия двухсторонней аутентификации и шифрования данных, отсутствие контроля целостности передаваемых данных и линии между контроллером и считывателем.

Для подключения к контроллеру сканеров отпечатков пальцев или штрих-кодов, а также для подключения к ПК контрольных считывателей, предназначенных для занесения идентификаторов в систему, применяется USB-интерфейс универсальный интерфейс для связи между собой различных цифровых электронных устройств.

Для использования сразу нескольких способов идентификации, например, доступа по картам EMM/HID и MIFARE с защитой от копирования, а также мобильного доступа можно выбрать мультиформатные считыватели. При выборе считывателя важно обращать внимание на такие характеристики, как рабочий диапазон температур (при использовании на открытом воздухе), степень защиты IP и вандалозащищенность.

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

От SMS до AWS выбор технологии управления в зависимости от проекта

04.09.2020 18:19:39 | Автор: admin
Пост ориентирован на людей, размышляющих над созданием первой системы управления. Опытных специалистов может заинтересовать взгляд сверху на разные технологии управления Интернета вещей, выводы и короткий прогноз в заключении.



Задача


Мы в Synergy Team разрабатываем и выпускаем промышленные контроллеры. Они предназначены для учета ресурсов, управления объектами энергетики и других применений, которые принято называть Интернетом вещей (IoT). Часто нашим заказчикам не нужны просто контроллеры. Им нужно комплексное решение, включающее систему управления.

И эта система должна быть близка к оптимальной: быстрой, легкой и надежной. Но, согласно известному анекдоту, одновременно выполнить все эти требования невозможно. Нужно искать баланс в зависимости от задачи, что мы и попробовали сделать.


В этом посте мы ограничились классом задач, когда IoT контроллеры напрямую подключаются к управляющей системе (Directly-connected IoT). Итак, наша задача разработать систему управления, которая должна:
  • передавать данные от датчиков, подключенных к контроллерам,
  • передавать события (например, о превышении температуры, открытии двери, потере связи и т.п.),
  • передавать команды управления к исполнительным устройствам,

Если система состоит из большого количества объектов и/или выполняет ответственные задачи, она дополнительно должна:
  • постоянно контролировать наличие связи с объектами,
  • собирать статистику по своей работе,
  • обновлять настройки и программное обеспечение контроллеров (по запросу);
  • иметь защиту от несанкционированного доступа. Для государственных и крупных частных компаний система также должна соответствовать законодательству по работе с объектами критической информационной инфраструктуры (КИИ). В частности, требованиям 187-ФЗ, ФСБ, ФСТЭК, приказам Минкомсвязи и т.п.

Управление без выделенного сервера


Для нескольких объектов задача просто решается с управлением по GSM сети посредством SMS команд или звонков. Этот подход был популярен в начале 2010х, а его плюсы и минусы описаны, например, здесь. Для большинства серьезных систем этот подход на сегодня теряет актуальность.


Чуть более сложным является ручное управление контроллерами по выделенным IP через WEB или командную строку (CLI). Контроллеры должны быть постоянно включены в сеть, иметь статические белые или серые IP адреса. Альтернативно можно использовать динамические IP c привязкой к статическим доменным именам по технологии DynDNS или аналогичным. Это неплохо работает, если объектов мало и к надежности не предъявляется особых требований.

Недостатки:
  • неудобно, если WEB страницы от всех контроллеров нельзя разместить на экране(ах) диспетчера;
  • большая абонентская плата за статические IP адреса;
  • сложно настроить неподготовленным пользователям, когда устройства расположены за NAT;
  • долго согласовывать с оператором связи выделение пула адресов и доступ в IP подсеть. Например, для организации GSM APN у нас уходили недели;
  • неудобно, поскольку диспетчеру необходимо анализировать данные на мониторе глазами;
  • высокий риск несанкционированного доступа к контроллерам при использовании сетей общего пользования (Интернет).

Для быстрых демонстраций, контроля за несколькими объектами достаточно использовать управление по IP, SMS или телефонным звонкам.

Здесь мы не рассматривали ситуацию, когда на одном и том же компьютере работает диспетчер и установлена система управления, поскольку считаем ее вырожденным случаем следующего пункта.

Управление через выделенный сервер


В оставшихся случаях нужен сервер с выделенным IP, по которому будут подключаться контроллеры, диспетчеры и сторонние системы.

Если контроллеры передают данные только в направлении сервера, например, счетчики воды или простейшие навигационные устройства (трекеры), достаточно однонаправленного соединения. При этом контроллерам достаточно знать IP сервера.

В нашей задаче для обновления ПО контроллера и передачи команд нужен двухсторонний обмен данными. Для организации такого обмена необходимо:
  • периодическое считывание настроек или команд с сервера по инициативе контроллера (допустимо, если не нужна быстрая реакция на команды), либо
  • использование на контроллерах статических IP или доменных имен, чтобы сервер мог достучаться до них самостоятельно, либо
  • использование протоколов связи, предусматривающих установку туннеля. В частности, MQTT, EGTS или программных брокеров (надстроек над протоколами прошлых поколений). При этом контроллерам не нужны статические IP. После включения, потери связи или перезагрузки контроллеры инициативно установят и будут поддерживать туннельное соединение с сервером.


Разработка на базе коробочных продуктов


Когда речь заходит про систему управления на базе проверенного и надежного решения, в первую очередь, вспоминают про SCADA. И это полностью оправдано, когда речь идет об автоматизации производства или большом объекте энергетики. Словом, когда в системе содержится большое количество датчиков и исполнительных устройств разного типа. Для таких систем требуется разработка уникальных для каждого объекта мнемосхем и алгоритмов взаимодействия оборудования, что превосходно продумано в SCADA.

Если же нужен мониторинг и/или управление однотипными объектами (как в предложенной задаче), то использование SCADA может сделать решение слишком тяжелым из-за сложности настройки, трудоемкости добавления типовых объектов и повышенных требований к производительности сервера. Лучше использовать одну из специализированных коробочных систем, представленных на рынке, наиболее подходящую для задачи. Например:
  • систему мониторинга и управления сетевым оборудованием Network management system (SNMP, TR-069, CLI);
  • систему автоматизированного учета тепла, электричества, газа, воды. Для краткости АСКУЭ;
  • систему навигационного трекинга подвижных объектов с контролем бортовых систем;
  • систему управления климатом (вентиляция, кондиционирование и отопление) HVAC;
  • систему умный дом/офис/здание;
  • систему управления объектами энергетики: подстанциями, наружным (уличным) освещением, зарядными станциями для электротранспорта;
  • систему контроля доступа и охранно-пожарной безопасности, и т.д.

Перечисленные системы часто перекрывают функционал друг друга. Например, на базе АСКУЭ можно реализовать управление наружным освещением, а на базе Умного дома сделать управление климатом и доступом. Расширение функционала живых систем происходит постоянно. Появляются новые API для интеграции коробочных продуктов в решения заказчиков, а также поддержка пользовательских функций в коробочном ПО. Огромным плюсом коробочных продуктов является тот факт, что их можно купить и поставить на свой сервер, получив отчуждаемое решение, работающее в закрытом контуре заказчика.

При наличии планов по продаже собственной системы на свободном рынке надо понимать, что из сегодняшнего поставщика коробочного ПО завтра может вырасти конкурент. Кроме этого, использование коробочных систем несет в себе такие дополнительные риски, как:
  • повышение цены лицензий,
  • слабый контроль над системой (нет исходников, даже если есть, крайне сложно поддерживать),
  • многие системы можно использовать только в качестве облачного сервиса, что может быть неприемлемым для больших и/или государственных проектов.

Разработка на базе IoT платформ


Если использование коробочного ПО невозможно, хорошей идеей будет разработка на одной из популярных IoT платформ. Такие платформы содержат универсальные модули, необходимые в любой IoT системе для:
  • регистрации и удаления IoT устройств,
  • безопасной аутентификации IoT устройств и поддержания связи с ними,
  • работы с данными (базы данных, оптимизированные для разных задач),
  • регистрации пользователей и управления правами доступа,
  • формирования аналитики по собранным данным,
  • формирования уведомлений для пользователей (SMS, E-Mail, push сообщения, ),
  • хранения последних данных, считанных с IoT устройств,
  • выполнения различных действий по событиям,
  • визуализации данных и т.п.

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

Систему на IoT платформе можно разработать за минимальное время. Ее архитектура не будет сильно меняться при увеличении размера.

Плюсы разработки на облачной IoT платформе:
  • пилотный проект можно запустить с небольшими затратами. В AWS для большинства сервисов есть лимиты бесплатного использования. В Яндекс.Облаке предусмотрен тестовый период и стартовый грант.
  • гибкая тарификация, например, стоимость сервиса базы данных зависит от количества запросов, а стоимость MQTT-брокера от количества обработанных сообщений. Это особенно выгодно на старте, когда надо считать каждую копейку.
  • IoT платформы протестированы на миллионах устройств. Можно быть уверенным в масштабируемости (решение не придется сильно переписывать при увеличении количества устройств) и архитектурной грамотности решения (если советоваться с инженерами по поддержке используемых IoT платформ).
  • информационная безопасность обеспечивается самой платформой на различных уровнях.
  • задачу первичной разработки можно отдать на аутсорс. В перспективе решение смогут сопровождать не только разработчики изначальной системы, как это бывает обычно. Ведь IoT платформы имеют мощную техподдержку, подробно документированы, а количество разработчиков, умеющих с ними работать, неуклонно растет.

Недостатки:

  • компоненты IoT платформ работают только на мощностях их владельцев, создать полностью отчуждаемую систему, которая будет работать в ЦОД заказчика, возможно в редких случаях;
  • стоимость использования IoT платформы для крупных проектов может быть выше стоимости аренды виртуальных машин в ЦОД;
  • миграция с одной IoT платформы на другую связана с изменением приличного объема кода. Хотя сейчас наметилась тенденция к стандартизации API;
  • далеко не все IoT платформы развернуты в ЦОДах внутри России, что делает невозможным их использование в интересах государственных заказчиков.

Полностью своя разработка


Если недостатки предыдущих решений являются критическими, необходима разработка собственного решения. И как бы ни был хорош план, первые версии системы будут кривоваты.

Собственные решения часто реализуют на базе таких open-source систем, как ThingsBoard, OpenSCADA, MajorDoMo, Home Assistant, iobroker, Nokia glial. Для небольших проектов они могут оказаться слишком тяжелыми из-за:
  • большого срока разработки и соответствующих финансовых затрат. Обычно счет идет на человеко-годы;
  • c ростом количества объектов будут возникать узкие места в виде медленных баз данных, сборщиков, генераторов отчетов и т.п., для разрешения которых потребуется изменение архитектуры и дополнение ее баллансировщиками и дублирующими ресурсами;
  • расходов на постоянное администрирование и техническую поддержку.

В то же время:
Своя разработка оправдана либо для госзаказа, либо проектов с амбициозными планами и большими бюджетами, либо, когда независимость и безопасность критически важна.

Если нужна быстрая демонстрация (MVP), то ее можно сделать на IoT платформе или коробочном ПО, взяв на вооружение проверенные временем подходы, параллельно разрабатывая свое большое решение.

Заключение


На основе сделанного анализа разных систем предлагаем следующий алгоритм выбора системы управления.



Для демонстраций и маленьких IoT проектов на несколько объектов можно использовать прямое управление по IP, SMS или через GSM звонки. В остальных случаях необходима система верхнего уровня. Использование SCADA оправдано в промышленной автоматизации и на больших объектах энергетики. Для учета ресурсов, управления сетевым оборудованием, трекинга, охраны, умного дома и т.п. удобно использовать коробочное решение нужной специализации. Разработка систем на IoT платформах сложнее, но дает больше перспектив и гибкости. Решения на зарубежных IoT платформах серьезно ограничены по масштабу и областям применений в России. Самой сложной является полностью своя разработка. И она оправдана только для госзаказа и самых амбициозных проектов. При этом для быстрых демонстраций и копирования лучших практик будет полезно параллельно с собственной разработкой сделать эскизный проект на IoT платформе.

Напоследок хотим поделиться небольшим прогнозом:

  • в облачных IoT платформах стоит ждать появление преднастроенных шаблонов Умного дома, АСКУЭ, NMS, СКУД и т.п. Это еще больше упростит использование IoT платформ и привлечет к ним еще большую аудиторию.
  • традиционные разработчики SCADA и других коробочных решений предложат больше инструментов для внешних разработчиков, которые хорошо зарекомендовали себя в IoT платформах. Закрытые коробочные решения вряд ли выдержат рыночную конкуренцию.
  • отечественные IoT платформы для государственных и больших частных заказчиков будут развиваться еще активнее.
  • API разных IoT платформ станут со временем более похожими друг на друга. Из-за этого переход с одной IoT платформы на другую будет упрощаться.

В следующем, более техническом, посте мы расскажем о нашем проекте по мониторингу систем связи на платформе AWS и контроллерах GIC.

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

Системы контроля управления доступом в IoT умеем, знаем, практикуем

27.01.2021 14:17:26 | Автор: admin

И снова привет, мир!

В прошлой статье про IoT-елочку в голосовании многие отметили, что интересна тема управления устройствами в зависимости от количества человек в помещении. Это довольно масштабная задача, и мы предлагаем разделить ее решение на несколько этапов. Сегодня поговорим о системе контроля управления доступом (СКУД), которая, будучи подключенной к платформе интернета вещей Rightech IoT Cloud (далее по тексту - платформа), является базовым элементом в системе подсчета количества человек в офисе. Мы уже поверхностно освещали этот кейс в одной из статей, но сегодня рассмотрим этот проект более подробно и погрузимся в особенности исполнения.

СКУД?

Система контроля и управления доступом, СКУД (англ. Physical Access Control System, PACS) совокупность программно-аппаратных средств контроля и управления, главная цель которой - ограничение и регистрация входа-выхода объектов (людей, транспорта) на заданной территории через точки прохода: двери, ворота, КПП.

С чего все началось

Задача обеспечить контроль за входом-выходом в офисе возникла еще в те времена, когда у нас был выход на крышу с отличным видом на Москву, и поэтому часто приходили люди, не являющиеся нашими сотрудниками. Тогда мы решили принять какие-то меры по безопасности и установить СКУД.

Архитектура

Система открытия дверей по карте

В качестве модуля, отвечающего за обработку информации по считыванию бесконтактных карт, выбрали GATE-8000.

Основные достоинства контроллера:

  • формирование и хранение необходимой информации о факте открытия двери по карте и времени прохода человека в офис;

  • возможность автономной работы и защиты от зависания;

  • хранение 16 тысяч ключей и 8 тысяч событий;

  • простое подключение и управление;

  • российский производитель, хорошая документация с описанием работы контроллера.

Внешний вид платы с контроллеромВнешний вид платы с контроллером

Основной принцип работы: контроллер обрабатывает информацию, поступающую со считывателя, и с помощью встроенного реле коммутирует исполнительное устройство - электромагнитный замок двери.

Система взаимодействия с платформой

После того, как контроллер установили в систему по общей схеме подключения, а карты записали в память, мы уже обезопасили себя от прохода в офис посторонних. А дальше возник вопрос, как подключить этот контроллер к платформе Rightech ioT Cloud. Ведь очень здорово иметь а) графический интерфейс, в котором можно полистать историю всех проходов, б) возможность отправки команд на открытие двери удаленно, не отходя от рабочего места, например, для гостей или доставщика еды.

У контроллера нет выхода в Интернет и видимой возможности подключения к платформе, к тому же все события нужно принудительно считывать из его циклического буфера. Однако у него есть свой протокол обмена данными с компьютером управления, благодаря которому можно отправлять на контроллер команды, такие как считать из контроллера, записать в контроллер, открыть/закрыть замок и другие. Значит, нужно сделать некоторую программно-аппаратную прослойку между контроллером и платформой - агента, который будет отправлять команды на чтение событий и управление контроллером.

Обращаем внимание, что в данной архитектуре функция открытия двери при прикладывании карты не перестанет выполняться при отсутствии Интернета. За открытие двери и сбор информации отвечает контроллер СКУД, поэтому в случае потери Интернета, единственное, что нам грозит, - это то, что агент, который доставляет данные на платформу, не будет функционировать, так как не сможет получать команды на чтение буфера. Однако при восстановлении соединения все события считаются в полном объеме и не потеряются, так как они будут сохранены в буфере контроллера СКУД.

Аппаратная часть

Для начала нужно было выбрать устройство, которое будет всегда в активном состоянии с включенной программой-агентом в непосредственной близости от платы СКУД. Из многообразия микрокомпьютеров первое что попало под руку выбор пал на Raspberry Pi.

Дальше возник вопрос, как подсоединить GATE-8000 к Raspberry - то есть как подключить последовательный интерфейс RS485 от GATE к USB от микрокомпьютера. Начались поиски переходника USB-RS485. Первый вариант, который мы испробовали, - Espada за 200 рублей. Надежда на то, что маленький хлипкий китайский переходник заработает, была небольшой. Он и не заработал. Вместо нужных данных приходило что-то похожее по виду и размеру, но всё же не то. В чем было дело: в отсутствии гальванической развязки, невозможности поддерживать скорость 19200 bps или же просто в некачественной элементной базе, - загадка. Но после обращения к производителю GATE-8000, мы получили рекомендацию на более дорогой (в 10 раз) и громоздкий (но аккуратный и корпусированный) переходник Z-397, который заработал тут же как надо.

Программная часть

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

  1. Что нужно - взаимодействие с GATE-8000 для отправки команд и получения данных.

    Как решим - изучим протокол GATE, напишем сериализатор и десериализатор данных, подключим библиотеку для работы с последовательным портом.

  2. Что нужно - взаимодействие с платформой для получения команд и отправки данных.

    Как решим - выберем для общения протокол MQTT, в коде воспользуемся готовой библиотекой Paho MQTT.

Итак, мы приступили к изучению протокола GATE-8000, который является закрытым, поэтому ниже рассказано только о некоторых его особенностях. Он достаточно низкоуровневый, и необходимо обращаться напрямую к регистрам памяти устройства. В документе по этому протоколу описаны кадры запросов от компьютера контроллеру и кадры ответов контроллера компьютеру. Меняя поля в кадре запроса, можно отправлять на устройство различные команды и получать информацию из регистров.

Одна из особенностей протокола в том, что инициатором обмена всегда является компьютер. Поэтому есть два подхода работы с устройством:

1) задавать всю логику работы в агенте;

2) использовать внешние запросы (от платформы).

Мы выбрали второй вариант и вынесли логику с конечного устройства на платформу (подробнее про сервис сценариев автоматизации >>>). Так ее легко адаптировать и подстроить, при этом код программы остается компактным и позволяет просто формировать команды для устройства, а платформа в свою очередь координирует отправку команд и их периодичность.

Всегда ли нужно выносить логику работы с устройства?

Такое решение, конечно, не подойдет, если от устройства требуется предпринять действия мгновенно (например, если идет речь о жизни человека), но даже в таком случае часть логики можно вынести на платформу. Как вариант, для выбора заранее запрограммированных шаблонов поведения.

После того как мы внимательно изучили этот протокол, формат кадров и список команд, возникла первая сложность. Команды для чтения буфера, в котором содержатся события о том, кто и во сколько пришел, не оказалось. А ведь получить эту информацию - первоочередная задача. Понадобилось изучить карту памяти контроллера, чтобы определить адреса, по которым нужно считывать данные.

Карта памяти контроллера? WTF?

Под картой памяти контроллера (термин из протокола) имеется в виду таблица с описанием заполнения регистров памяти, а не микрофлешка =).

Следующая особенность работы с контроллером в том, что за один цикл чтения можно получить только 12 событий, по 8 байт на каждое. А на каждый проход человека в офис генерируется уже два события:

1) найден ключ в банке ключей (банк ключей - еще один блок в распределенной памяти контроллера);

2) состоялся проход (если он, конечно, состоялся).

Ниже представлен фрагмент кода на С++, реализующий метод одного цикла чтения буфера.

bool SerialPortInlet::readBufferCycle(unsigned short& bottom, unsigned short const& top, unsigned char& u_lowerBound,    unsigned char& l_lowerBound, std::vector<unsigned char>& readBuffer, std::string& result){// Подсчет байтов, которые необходимо считатьunsigned short byteCountTmp = top - bottom;BOOST_LOG_SEV(log_, logging::info) << "Need read " << byteCountTmp << " byte";unsigned char byteCount;// За один цикл нельзя прочитать более 12 событий (96 байт)byteCount = byteCountTmp > 0x60 ? 0x60 : (unsigned char)byteCountTmp;BOOST_LOG_SEV(log_, logging::info) << "Read " << +byteCount << " byte";// Описываем тело командыstd::vector<unsigned char> body = {0x02, 0xA0, byteCount, u_lowerBound, l_lowerBound};std::vector<unsigned char> command;// Получаем полный текст командыgenerateComplexCommand(command, Command::BYTE_CODE_READ, body);// Если не удалось по каким-то причинам отправить команду (например, конечное устройство не подключено), возвращается falseif (!sendCommand(command, result)){    return false;}// Иначе отправляем ответ с устройства на парсинг по событиямSerialPortType::Answer answerEvents;if(!Parsers::parserAnswer(log_, result, answerEvents, Command::BYTE_CODE_READ)){    BOOST_LOG_SEV(log_, logging::error) << "Failed parse buffer reading";    return false;}readBuffer.insert(readBuffer.end(), answerEvents.body.begin(), answerEvents.body.end());// Сдвигаем нижнюю границу буфера для чтения следующих событийbottom = bottom + byteCount;u_lowerBound = (unsigned char)(bottom >> 8) ;l_lowerBound = (unsigned char)bottom;return true;}

Немного добавило хлопот то, что, наконец вытащив нужные байты, на месте информации о карте, мы увидели не номер карты, а адрес, по которому он находится. Поэтому потом каждый номер ключа приходится отдельно считывать по адресу. Также не сразу заметили наличие байтстаффинга, его обработку мы ввели уже после первого тестирования с платой.

Байтстаффинг?

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

Пример байтстаффинга из документацииПример байтстаффинга из документации

Полная структурная схема разработанной системы выглядит так.

Работоспособность всех устройств было очень удобно проверять с помощью графического последовательного терминала СuteCom. После успешного тестирования программа была поставлена на автозапуск, а Raspberry отправилась жить на потолке рядом с платой СКУДа.

Один делает, другой смотрит, третий фотографирует, огнетушитель придерживает дверь - настоящая командная работа =)Один делает, другой смотрит, третий фотографирует, огнетушитель придерживает дверь - настоящая командная работа =)

Работа на платформе Rightech IoT Cloud

Модель

Основные данные с контроллера - это события, на платформу они приходит в формате JSON и включают в себя поля

  • eventTime - время наступления события;

  • eventCode - код события;

  • keyNumber - номер карты сотрудника (поле может быть пустым, если событие вызвано не картой).

Модель устройства выглядит следующим образом.

Посмотреть оригинал >>>

Возможные события:

  • нажата кнопка звонка;

  • неопознанный ключ на входе;

  • неопознанный ключ на выходе;

  • ключ найден в банке ключей при входе;

  • ключ найден в банке ключей при выходе;

  • открывание оператором по сети;

  • дверь заблокирована оператором;

  • дверь оставлена открытой после входа;

  • дверь оставлена открытой после выхода;

  • проход состоялся на вход;

  • проход состоялся на выход;

  • перезагрузка контроллера.

Объект

Интерфейс объекта полностью формируется согласно разработанной модели.

Интерфейс истории журнала объектаИнтерфейс истории журнала объекта

Посмотреть оригинал >>>

Интерфейс командИнтерфейс команд

Ура, теперь, собравшись на кухне офиса в ожидании пиццы на праздник, можно никуда не идти, а просто открыть мобильное приложение и нажать кнопку открытия двери для курьера!

Автомат

Можно заметить, что есть команда не только на чтение буфера событий, но и на запись новых границ. В памяти контроллера хранятся границы буфера - начало и конец. Когда на устройство приходит команда чтения, из памяти берутся эти границы и в их пределах происходит чтение из буфера событий. Граница конца буфера сдвигается автоматически на контроллере при получении новых событий. А вот начальную границу буфера нужно перезаписать (указав конечную границу после прошедшего чтения), чтобы не прочитать одни и те же данные повторно. Но это необходимо сделать только после того, как данные о событиях успешно отправлены на платформу.

Зафиксировать успешное получение данных и затем отправить команду на перезапись начальной границы удобно в автомате.


Посмотреть оригинал >>>

Здесь виден цикл <чтение>-<запись новой границы буфера>-<ожидание таймера> (сейчас события считываются каждые 30 секунд).

  1. В состоянии Read events читаем новые события.

  2. В состоянии Clear buffer записываем новую границу.

  3. В состоянии Await timer ожидаем начала нового цикла.

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

Дальнейшее использование собранных данных

Данный проект нашел свое продолжение в интеграции с нашей внутренней CRM системой, в которой на вкладке информации о сотрудниках всегда видны актуальные сведения о том, кто находится или отсутствует в офисе.

Также отображается время входа/выхода из офиса, считается суммарное количество часов в месяц.

Посмотреть оригинал >>>

В мессенджер Slack каждый день пишется о том, что офис открыт, когда приходит первый человек, взявший ключи на ресепшене.

Забор данных из платформы производится по REST API. API платформы предоставляет возможность работы, взаимодействия и использования сущностей платформы и их данных в таких внешних системах, как веб-порталы, мобильные и веб-приложения или, как в нашем случае, - CRM системах.

Посмотреть проект, в котором есть пример настройки взаимодействия и получения данных с платформы >>>


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

Подробнее..

Бинарный поиск в микроконтроллере

10.02.2021 08:12:41 | Автор: admin

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

Одно время мы выпускали несложный контроллер облачной СКУД на 100 пользователей. В его основе лежал микроконтроллер PIC18F46K22. В качестве памяти для хранения кодов ключей пользователей использовалась FLASH-память с интерфейсом I2C ёмкостью 64 кБ. Сама флешка довольно быстрая, но на шине I2C находилась ещё микросхема часов DS1307, которая работает на скорости не выше 100 кбит/сек. Высокой скорости работы нам не требовалось, поэтому в итоге вся шина была запущена на частоте 100 кГц.

Однако со временем мы начали разрабатывать новую версию контроллера, поддерживающего уже 3000 пользователей. Не хотелось сильно менять архитектуру, поэтому основные узлы были сохранены, но при этом был увеличен объём FLASH-памяти до 256 кБ.

И вот тут возник один интересный момент. В первой версии поиск ключа в памяти осуществлялся простым перебором всех 100 ключей. Этот процесс занимал долю секунды и поэтому каких-либо оптимизаций кода не производилось. Но при количестве в 3000 записей это время увеличилось в 30 раз, что оказалось недопустимым, так как у пользователя появлялась неприятная задержка между считыванием карты и открытием замка.

Решить данную проблему можно двумя способами. Первый аппаратный вариант, предполагающий использование более быстрого интерфейса с флешкой, например, SPI. Скорости чтения здесь на два порядка выше, чем при использовании I2C. Это, так сказать, решение в лоб. Неудобство лишь состоит в том, что приходится закладывать в устройство новый компонент, переделывать код и печатную плату. Плюс потребуются дополнительные линии микроконтроллера для подключения такой микросхемы памяти.

Но есть и другой способ программный. Заключается он в переделке самой процедуры поиска. Изначально она выглядела так:

typedef struct{    uint32_t COD;    uint8_t nSchedule;} TSKUD_User;bool skudFindUserByCode(uint32_t pCOD){  TSKUD_User user;  for (uint8_t i = 0; i < SKUD_USERS_COUNT; i++)  {    skudReadUser(i, &user);    if (user.COD == pCOD)      return 1;  }  return 0;}

Функция skudReadUser считывала блок данных из I2C памяти, далее осуществлялась проверка на совпадение кода.

При ста пользователях в худшей случае (когда код находился в самом конце массива данных) время поиска занимало порядка 0,1 сек. При переходе же к 3000 пользователей время выросло 3 сек!

Поэтому для ускорения функция была переписана следующим образом:

bool skudFindUserByCode(uint32_t pCOD){  TSKUD_User user;  int16_t m, beg, end;  beg = 0;  end = SKUD_USERS_COUNT - 1;  while (beg <= end)  {    m = (beg + end) / 2;    skudReadUser(m, &user);    if (pCOD == user.COD)      return true;    if ((pCOD < user.COD) || (user.COD == 0))      end = m - 1;    else      beg = m + 1;  }  return false;}

Это классический вариант реализации алгоритма, работающий на отсортированном по возрастанию массиве данных. В нашем случае это не составляет проблемы, так как данные грузятся с сервера, который и осуществляет их сортировку перед отправкой в контроллер.

О различных частных случаях при реализации бинарного поиска можно почитать в статье:Я не могу написать бинарный поиск (http://personeltest.ru/aways/habr.com/ru/post/146228).

Итак, рассмотрим работу алгоритма. Переменные beg и end задают начальный и конечный индекс массива данных. На каждой итерации мы вычисляем индекс m, который находится посередине между beg и end, и сравниваем требуемое значения ключа с тем, что находится по этому индексу. В этом случае возможны три варианта:

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

  2. Если номер искомой карты меньше, то следует его искать в левой части массива. Тут мы отбрасываем сразу половину заведомо не подходящих вариантов. Индекс end теперь будет равен m 1.

  3. Если номер искомой карты меньше, то следует его искать в правой части массива. Так же отбрасываем сразу половину заведомо не подходящих вариантов, но меняем индекс beg (он будет равен m + 1).

Если в массиве данных вообще нет искомого значения ключа, то нам нужно выйти из цикла. Условием выхода является beg > end.

Очень важным является дополнительное условие user.COD == 0 в строке:

    if ((pCOD < user.COD) || (user.COD == 0))

Дело в том, что неиспользуемые элементы массива данных мы просто заполняем нулями. Реально это происходит так. Из базы данных получается отсортированная по значению кода карты выборка пользователей. Эта информация записывается в массив данных, начиная с нулевого индекса. Остальные значения дописываются нулями:

Индекс

Значение

0

1307131

1

1308780

2

1318001

3

2174082

4

2290467

5

2291521

...

0

2996

0

2997

0

2998

0

2999

0

Можно было бы записывать туда значения 0xFFFFFFFF, но его мы используем в качестве сервисного для служебных нужд системы. Поэтому дополнительное условие user.COD== 0 всегда заставляет алгоритм искать код в левой половине массива данных.

Кто-то может справедливо заметить, что нет смысла тогда вообще обрабатывать эти нулевые значения. Но дело в том, что мы не передаём в контроллер реальное количество карт доступа. Изначально для 100 карт это не имело смысла (поиск и так работал очень быстро), а потом мы просто не стали менять структуру данных. Но, по большому счёту, это и не нужно, так как бинарный поиск очень сильно ускоряет работу.

Рассмотрим следующий пример. Пусть у нас имеется полный массив из 3000 записей. Пользователь подносит ключ и мы должны проверить, есть такая карта или нет. При линейном поиске нам понадобится в худшем случае просмотреть все записи. Итого нужно будет сделать 3000 сравнений.

А вот при бинарном поиске количество сравнений будет составлять log23000 11 шт!

Интересно, что если записей будет аж 4 миллиарда, то количество сравнений при использовании бинарного поиска увеличится всего лишь до 32!

Попробуем пошагово проверить алгоритм бинарного поиска на вышеприведённой табличке. Допустим, нам требуется найти значение ключа 2174082.

Итерация

beg

end

m

Код искомой карты

Код карты в массиве по индексу m

1

0

2999

1499

2174082

0

2

0

1498

749

2174082

0

3

0

748

374

2174082

0

4

0

373

186

2174082

0

5

0

185

92

2174082

0

6

0

91

45

2174082

0

7

0

44

22

2174082

0

8

0

21

10

2174082

0

9

0

9

4

2174082

2290467

10

0

3

2

2174082

1318001

11

3

3

3

2174082

2174082

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

Так в чём преимущество такого решения? В начале статьи я указывал, что алгоритм реализовывался на микроконтроллере. Использование крайне дешёвой памяти с интерфейсом I2C снижает общую себестоимость изделия, а новый алгоритм поиска сильно уменьшает время реакции контроллера.

Всегда интересно посмотреть как реализации алгоритмов работают вживую. Для этого я снял два небольших видео, где показана работа контроллера в двух вариантах: с линейным поиском и бинарным. Нужное значение карты памяти я специально внёс в самый конец списка (индекс 2999), чтобы можно было оценить работы обоих алгоритмов в худшем случае.

Вот работа линейного поиска:

А вот бинарного:

Результат, как говориться, на лицо!

Подробнее..

Создание терминала для СКУД и УРВ

21.06.2021 12:17:59 | Автор: admin

Вступление

Ранее, в предыдущих статьях, я рассказывал о бизнес-процессах, которые можно закрыть различными решениями нашего программного обеспечения, однако настало время рассказать о разработке железа, а именно терминале, который способен служить 2 целям - контролю доступа и учету рабочего времени в связке с нашей системой учета рабочего времени.

Историю можно начать с того, что наша компания очень долгое время сотрудничает со всемирно известной сетью фастфудов - KFC (на территории Беларуси и Украины). Головной болью такой сферы, как HoReCa, был и будет учет рабочего времени сотрудников. Учитывая огромную текучку кадров, в том числе и обычных студентов, которые пришли подработать на непродолжительное время, становится сложно проконтролировать, сколько часов отработано тем или иным сотрудником. Плюс немаловажным моментом стало то, что сотрудники часто перемещаются с ресторана на ресторан, а это требует дополнительного контроля. Как же быть?

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

Поэтому был придумал предельно простой и быстрый сценарий действий на терминале:

  1. Прийти на рабочее место, подойти к терминалу и пройти идентификацию (приложить палец, карту к считывателю или ввести PIN)

  2. Выбрать на тачскрине Работа, после чего отправиться на свое рабочее место и приступить к работе

  3. При необходимости перерыва подойти к терминалу, пройти идентификацию, выбрать Перерыв

  4. При возвращении на рабочее место - подойти к терминалу, пройти идентификацию, выбрать Работа

  5. По окончанию рабочей смены подойти к терминалу, пройти идентификацию и выбрать Завершить работу.

То есть все события должны были фиксироваться на терминале, после чего все данные залетали бы на облако системы рабочего времени TARGControl. И там, административным персоналом, формировались табели и отчеты по объектам (ресторанам), что позволило бы корректно начислять заработную плату сотрудникам.

Разработка

Имея на руках техническое задание, была разработана структурная и функциональная схема. Далее пошло самое интересное: мы начали рассматривать различные варианты одноплатных компьютеров, которые бы смогли обеспечить нужный функционал терминала. Среди вариантов были следующие компьютеры: Banana Pi M4, Orange Pi PC+, ODROID-C4, NanoPi M4 и Raspberry PI Computer Module 3+. Произведем небольшое сравнение данных моделей.

Banana Pi M4

Orange Pi PC+

ODROID-C4

NanoPi M4

Raspberry PI CM3+

Память

Слот MicroSD с поддержкой расширения до 256 ГБ и флэш-память eMMC 8 ГБ с поддержкой до 64 ГБ

TF-карта (макс. 32ГБ) / слот для карты eMMC

8 ГБ флэш-память EMMC

1x разъем EMMC (доступно 8/16/32/64 ГБ)

1 слот Micro SD

нет встроенной eMMC, но есть разъем eMMC,
1 слот для MicroSD до 128 GB

8 GB eMMc + поддержка 1 слота microSD

RAM

1 GB DDR4 (опционально 2 GB)

1GB DDR3

4GB DDR4

Двухканальный 2GB DDR3-1866

1GB LPDDR2 SDRAM

CPU

Realtek RTD1395 ARM Cortex-A53 Quad-Core 64 Bit 1.8 GHz

H3 Quad-coreCortex-A71.2 GHz

Amlogic S905X3 Quad-Core Cortex-A55 ARMv8.2-A 64-bit 1.5GHz

RK3399- Cortex-A72 + Quad Core Cortex-A531.8 GHz

Broadcom BCM2837B0 с четырьмя ядрами Cortex A53 1.2 GHz

GPU

Mali 470 MP4 GPU OpenGL ES 1.1/2.0

Mali400MP2 GPU 600MHz
с поддержкой OpenGL ES 2.0

Mali-G31, поддержка OpenGL ES 3.2 и API Vulkan последнего поколения

Mali-T864поддержка OpenGL ES1.1/2.0/3.0/3.1, OpenCL, DX11 и AFBC

Broadcom VideoCore IV

Сеть

Ethernet 10/100/1000 Мбит / с
Опциональный USB-ключ Wi-Fi. Поддержка PoE

10/100 Ethernet RJ45

RJ45 Ethernet порт (10/100/1000)

Порт Gbps Ethernet

10/100 для подключения маршрутизатора или коммутатора с функцией PoE

После детального изучения и анализа цены (все модели находились в примерно одном ценовом диапазоне на момент их анализа - 2019 год), мы все же пришли к выводу, что лучше всего подойдет Raspberry PI Computer Module 3+. Почему Raspberry ? Да, некоторые характеристики уступают конкурентам, однако главным преимуществом стало то, что по Raspberry банально больше поддерживаемых библиотек и лучше техническая поддержка, т.к Raspberry на рынке с 2012 года и вокруг него сформировалось активное комьюнити.

Решение со встроенной памятью eMMC, предусмотренное в CM3, позволяет не использовать флеш-карту в качестве носителя ОС. Большое количество циклов перезаписи eMMC повышает надежность и срок службы памяти по сравнению с флеш-картами. При этом мы зарезервировали разъем для SD карт. Сразу можно сказать, что заявленной памяти для терминала хватает с лихвой, ибо сохраняемые события весят от силы пару килобайт. Что касается хранения фотографий, то здесь все сложнее: программно мы поставили ограничение в 5000 фото, но так как у нас зарезервирована флеш-карта, то данный лимит можно расширить до приемлемого значения.

Разработку управляющей платы мы начали с организации необходимых питающих напряжений. На нашей плате нам необходимо было обеспечить 3 значения напряжений: 5.0В, 3.3В и 1.8В. Внешний источник питания у нас 12В 3А. Для получения 5В и 3.3В мы использовали схему на основе широтной импульсной модуляции. Для источника питания 1.8В мы задействовали линейный понижающий преобразователь. Это выглядит, примерно, следующим образом.

Схема питания терминалаСхема питания терминала

Исходя из схемы видно, что для электрической части терминала была организована схема защиты питания от короткого замыкания и переполюсовки.

Отметим также и схему защиты питания внешних считывателей, представленную ниже.

Схема защиты питания считывателя от диверсийСхема защиты питания считывателя от диверсий

То есть если закоротить питание, считыватель уйдет в защиту (питание считывателя отключится), а терминал продолжит работу. Номиналы резисторов R51 и R52 задают выходной ток. Изменяя номинал резистора R51 можно менять ток ограничения в значительных пределах (у нас стоят заданные на схеме номиналы исходя из рассчитанной нами нагрузки).

Питание мы организовали, самое время перейти к периферии.

К слову, Raspberry поддерживает UART-интерфейс и 2 USB версии 2.0. Через один из доступных USB мы решили организовать доступ к Ethernet с помощью микросхемы LAN9514 . Второй USB используется для подключения периферии, например индикатор алкоголя. Также задействовав GPIO для подключения кнопок, электромагнитных замков, защёлок, алкостестера в дискретном режиме работы и картаприемников.

Схема реализации Ethernet и USBСхема реализации Ethernet и USB

У CM3 на борту всего 2 UART. Один нам пригодится для организации интерфейса RS-485, а второй - debug. Поэтому мы использовали микросхему FT4232HL, для увеличения количества интерфейсов. У нее есть входной интерфейс USB, который поддерживает связь с LAN9514, он же в свою очередь коннектится с CM3.

Схема расширения количества UART-овСхема расширения количества UART-ов

Вот теперь у нас стало больше на целых 4 UARTa (задействуем всего 2). Один используется для подключения биометрического модуля отпечатков пальцев от южнокорейского производителя Suprema-SFM6020-OP6-8M/16M (8M - 5К отпечатков, 16М- 25К отпечатков).

Второй для подключения карточного модуля 7941D (поддерживает 2 частоты Emarine (125 кГц) и Mifare (13,56 МГц).

Suprema-SFM6020-OP6-8MSuprema-SFM6020-OP6-8M

Один из выделенных UART, как и планировали, мы задействовали под RS-485, позволяющий подключать внешние карточные или биометрические считыватели, а также передавать информацию во внешние системы при необходимости интеграции. Схема 485-го представлена ниже.

RS-485RS-485

В этой схеме мы прибегли к некоторым хитрым схемотехническим решениям, объединив и подключив линии RE и DE через транзистор, что позволило нам автоматизировать на аппаратном уровне переключение режимов приема/передачи.

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

Входной WiegandВходной WiegandВыходной WiegandВыходной Wiegand

Немаловажным моментом будет, что терминал имеет 2 реле для управления замком, турникетом или шлагбаумом. Рассмотрим данный момент на примере подключения турникета (стандартная ситуация для СКУД). Есть два режима управления турникетом, потенциальный режим и импульсный. При потенциальном режиме управления для разблокировки турникета в направлении А срабатывает выход L1 OUT (в направлении В выход L2 OUT). При окончании данного времени или при совершении прохода выходной сигнал возвращается в исходное состояние.

В импульсном режиме для разблокировки выхода L1 OUT и L2 OUT срабатывают кратковременно, посылая управляющий импульс на турникет (обычно 0,2-0,3 секунды). При получении импульса турникет разблокируется в соответствующем направлении на время 5 секунд либо пока не будет совершен проход в данном направлении.

Для контроля прохода в направлении А или направлении В используются две линии, на которые контроллер турникета выдает импульсные сигналы при совершении прохода в том либо другом направлении. Данные импульсные сигналы подключаются к входам SENS1 для прохода в направлении А и SENS2 для прохода в направлении В.

Например, для работы с турникетами PERCo в контроллере должен быть установлен импульсный режим управления. Для этого время срабатывания сигналов L1 OUT и L2 OUT должно быть установлено в пределах от 0,2 до 1 секунды.

Подключение турникета PERCoПодключение турникета PERCo

Как описано в самом начале статьи, по нашему техническому заданию, на терминале должна была быть организована фотофиксация, поэтому решили выбрать камеру от Raspberry, которая в терминалах имеет 2 исполнения:

  1. RPi D - 72.4 градуса обзор, 5 mpx, размер камеры 25x24 мм (старое исполнение).

  2. RPi G - 160 градусов обзор, 5 mpx, размер камеры 25x24 мм (теперь используем только этот вариант).

Схема организации интерфейсов DSI и CSIСхема организации интерфейсов DSI и CSI

Выбирая дисплей, выбор снова пал на знакомый бренд - 7-ми дюймовый touch-screen от Raspberry с разрешением 800x480 и DSI интерфейсом.

Исходя из размеров дисплея, считывателя и общей компоновки плат, были определены габариты корпуса для терминала - 210 x 173 x 44. Корпус решено было сделать цельнометаллическим алюминиевыми с гальваническим покрытием, что обеспечивало хотя бы минимальную вандалоустойчивость. Дисплей, конечно же, так не защищен.

Корпус терминалаКорпус терминала

Собрав все воедино мы получили терминал данного вида.

Знакомьтесь, терминал D1!Знакомьтесь, терминал D1!

Немного отклоняясь от темы, можно сказать, что мы были обмануты Raspberry, когда они в 4-ом поколении Compute Module поменяли форм-фактор и мы уже не смогли его просто заменить в нашей текущей плате и были вынуждены переходить на новое поколение путем разработки новой платы, но об этом в следующих статьях.

На данный момент с 2019 года нашей компаний было продано более 500 терминалов данной модели, а это показывает, что решение оказалось весьма успешным и надежным. В данной статье я коснулся лишь одной части - железа, однако большая работа была проделана и над прошивкой терминала. В следующей статье я расскажу, как реализована программная часть терминала. В случае возникновения вопросов или критических замечаний, прошу последовать в комментарии для бурного обсуждения!

Подробнее..

Учет рабочего времени с расчетом баланса

31.07.2020 16:11:33 | Автор: admin
Автоматизация процессов учета рабочего времени повышает эффективность работы компании, упрощает контроль трудовой дисциплины и расчет заработной платы и нивелирует влияние человеческого фактора. Однако жесткие алгоритмы учета рабочего времени могут вызвать негативную реакцию сотрудников. Контролировать дисциплину и сохранить комфортный климат в коллективе позволяет учет рабочего времени c расчетом баланса по алгоритму гибкого графика.



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

Применение


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

Алгоритмы учета


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



Факт входа в рабочие и нерабочие помещения регистрируется системой. Например, когда сотрудник входит в столовую, система фиксирует выход из рабочей зоны и вход в нерабочую. Таким образом время, проведенное в курительной комнате, столовой, зоне отдыха, учитывается как нерабочее. На основании данных о входах и выходах система рассчитывает рабочее время сотрудника с учетом графика работы и допустимых отклонений и формирует табель.

Например, при рабочем дне с 9:00 до 17:45 и обеденном перерыве в 45 минут сотрудник может прийти на 15 минут позже в 9:15 и уйти на 15 минут раньше в 17:30. Время, потраченное на приходы позже и уходы раньше в рамках заданных отклонений, сотрудник может отработать. Время, отведенное на обед, сотрудник может использовать частями.

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



Графики работы


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



Параметры сменного графика также предусматривают возможность указывать неограниченное количество интервалов работы в течение рабочей смены. Возможность указывать день начала смены и количество дней в смене сотрудника позволяет организовать любую сменную схему работы. Например, график работы 3/3 с указанием дня начала смены.

Параметры сменного графика позволяют организовать учет ночных смен, когда рабочий интервал переходит через 0-00, а также указывать различные интервалы на разные дни недели.



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

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



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



Построение табеля


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

При отрицательном балансе нарушения должны быть отработаны или закрыты оправдательными документами. В этом случае табель рабочего времени формируется без учета незначительных отклонений. Например, при разрешенных опозданиях на 10 минут и нарушениях только в этих пределах в табель сотрудника будут занесены не 7 часов 50 минут, а 8 часов.

Поскольку табель формируется по стандартной форме T-13 и соответствует нормам и требованиям российского трудового законодательства, он может быть экспортирован в 1С для расчета зарплаты без изменений

Гибкий учет рабочего времени в системах PERCo позволяет контролировать баланс отработанного времени и автоматически формировать корректный табель УРВ в рамках ТК РФ. За текущим балансом сотрудники могут следить самостоятельно.
Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru