Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: СКУД
Диалог специалистов АВОК > ОБЩИЙ ФОРУМ > Автоматизация систем > Экспертный клуб EVIKA: вопросы и ответы > Логический контроллер Logic Machine 2
Alferov
Информация с сайта:
Цитата
Для реализации СКУД-системы можно взять любой считыватель отпечатков пальцев или магнитных карт. Он поключается к контроллеру EVIKA Logic Machine. При получение события из считывателя, скрипт обрабатывает его, анализируя возможность доступа по этому идентификатору (EVIKA Logic Machine может делать запросы во внешние БД)


Вопрос: как это сделать?
Arrow
LM2 имеет модуль поддержки биометрических считывателей e-key. При распознавании пользователя шлется knx телеграмма, которую можно или обработать скриптом, или послать напрямую на knx реле, управляющее открыванием и закрыванием двери.

Другой вариант, если известен протокол обмена со считывателей других производителей по RS232, RS485 или Ethernet, то не сложно написать скрипт, обрабатывающий этот протокол. Если потребуется помощь в написании подобных скриптов, обращайтесь, поможем
Alferov
А это что за считыватель такой - E-key? Где про него почитать можно?
Что значит - модуль поддержки? Это как реализовано - в виде какого то плагина, или средствами ОС внутри LM?
Поподробнее плиз расскажите.
Aurelius Marcus
Цитата(Alferov @ 3.3.2013, 22:39) *
А это что за считыватель такой - E-key? Поподробнее плиз расскажите.

Здесь много чего есть , а вот с кнх ничего не нашёл, только по 485 -му и Ethernet... придётся всё таки Олегу писать скрипт, предварительно получив от икея протокол обмена со считывателей по RS232, RS485 или Ethernet, ".... не сложно написать скрипт, обрабатывающий этот протокол. Если потребуется помощь в написании подобных скриптов, обращайтесь, поможем...." (С) rolleyes.gif
Сам сканер-считыватель по отпечатку д.б. "умным" - не просто давать сигнал "свой", но и индифицировать пальцедателя.....в гире в самом сканере до 100-ни пальцев можно заложить, а сигнал на выходе релейный.... хотя на борту порт стоит, но, как пишут - типа для служебного пользования..
Pasekov
Цитата(Alferov @ 3.3.2013, 22:39) *
А это что за считыватель такой - E-key? Где про него почитать можно?

Александр!
Информацию про считыватели найти можно в сети. Но правильно замечено, что с KNX-интерфейсом вроде нет.
Вопрос, а может и не надо?
Зачем именно на LM делать СКУД?
Хотя в данной теме обсуждается скорее не СКУД (она сложнее несколько, контроллер двери, например нужен ), а только система доступа по отпечатку пальца.
Есть специальные системы СКУД, которые намного дешевле, чем даже та LM, что ты достал.
Могу ссылку скинуть.
Alferov
За ссылку спасибо.
Почитал... всего лишь один из многих вариантов организовать скуд.
Никак не раскрывается тема про взаимодействие контроллера и сети knx.

Есть задача - организовать интеграцию СКУД в систему knx. Причем не просто отслеживать открытие замка (или даже командовать этим) - это достаточно просто делается (z5r и бинарный вход), а на более глубоком, если можно так выразиться, уровне.
В результате, в KNX необходимо получить информацию о том, кто именно вошел.

Вариантов вижу пока два.
1. Z5R-net и взаимодействие через rs485. (есть описание протокола этого контроллера).
2. usb-адаптер 1-wire в LM и никаких внешних контроллеров. Тут одно но - нужно вручную допиливать linux внутри LM... в общем то никаких проблем не составит.
Pasekov
Цитата(Alferov @ 14.3.2013, 8:09) *
В результате, в KNX необходимо получить информацию о том, кто именно вошел.

Это как?
В СКУД обычно фото выскакивает на экран охраны.
А что ты предполагаешь сделать?
Лампочки зажигать? 1, 2, 3....
Alferov
Мне не нужны другие программные средства скуд... не надо фото и прочих радостей.
Мне просто нужно, чтобы LM знала, какой номер таблетки ™ был приложен к считывателю. А дальше уже можно что угодно по факту события делать.
Pasekov
Цитата(Alferov @ 14.3.2013, 16:12) *
Мне просто нужно, чтобы LM знала, какой номер таблетки ™ был приложен к считывателю. А дальше уже можно что угодно по факту события делать.

Согласен. Для этого можно использовать LM.
Решишь - напиши, плиз.
Arrow
Цитата(Alferov @ 14.3.2013, 8:09) *
Вариантов вижу пока два.
1. Z5R-net и взаимодействие через rs485. (есть описание протокола этого контроллера).
2. usb-адаптер 1-wire в LM и никаких внешних контроллеров. Тут одно но - нужно вручную допиливать linux внутри LM... в общем то никаких проблем не составит.

На сколько я понял описание оба варианта решаются очень просто если есть описания протоколов. Что usb что rs485 это просто сериальные порты отличающиеся только инициализацией. Делается резидентный скрипт который постоянно опрашивает соответствующий порт, и по получению идентификатора таблетки пишет какое-то значение в групповой адрес или через storage. Далее вешаем скрипт на этот групповой адрес и делаем что нужно.
Если нужно помочь в написании скриптов, обращайтесь в EVIKA
leonid
Если не изобретать велосипед.

Контроль доступа на карточках в составе KNX (изначально разрабатывался для гостиниц) есть у http://www.eelectron.com и у http://www.ipas-products.com/ex/x_axesso_ovr.php
Arrow
На LM2 есть возможность более гибкого управления доступа. Зная user_id легко сохранить его все настройки, и восстанавливать при идентификации. Или на другом LM2. Например в одной гостинице сети человек настроил номер, настройки сохранились, и при вселении в другую гостиницу этой сети, можно их восстановить. KNX здесь только протокол передачи настроек устройствам.
Alferov
Итак... наконец нашлось время для экспериментов с 1-wire на LM2.
Решил пойти путем добавления модуля wire.ko в ОС. Столкнулся с проблемой совместимости версий.
Собрать openwrt-е пакеты на другой машине проблем не составляет... проблема в том, что в репозитарии нет той версии ядра, которая находится в LM.
Backfire есть, а ядро под платформу в нем другое.
В связи с этим возник вопрос - может ли разработчик пойти навстречу и скомпилировать модуль wire.ko и ds2490.ko?

п.с. понимаю, что может быть просьба не корректная, поэтому при отказе не обижусь )))
просто пожалуйста сообщите - да или нет
Arrow
Добрый день Александр,
Ваш запрос обязательно передам разработчику.
Подскажите через какой порт вы хотите подключать шину 1-wire к LM2?

Алексей
Alferov
хочу попробовать применить USB - 1wire адаптер DS9490R (на базе ds2490).
В системе при этом должен появиться порт ttyUSBx

Спасибо.
Arrow
Александр, для этого не нужно изменять саму систему. Вы вполне можете работать с этим устройством через USB порт, через скрипты, требуется лишь знание протокола 1-wire.
Пример вы можете взять отсюда http://openrb.com/serial-port-communication-in-lm2/
Arrow
Может вам помочь - описание реализации протокола 1-wire http://robocraft.ru/blog/arduino/118.html
Alferov
ок, спасибо, осталось научить систему распознать устройство, и получить собственно сам порт. smile.gif
Arrow
возможно просто использовать юниксовые команды, и выполнять через функцию os.execute(...)
Alferov
Все несколько сложнее. Насколько я понял из всевозможных обсуждений попыток работы с ds2490 напрямую, нужно использовать libusb.
Нашел на luaforge вот это... пытаюсь собрать под debian.

п.с.
если я правильно понял, помощь со сборкой нужных либ для LM мне ждать не стоит?
Arrow
Александр, я не понимаю зачем Вам нужны эти библиотеки?
Я же прислал описание протокола. Достаточно скриптом читать и посылать данные в порт, для этого никакие библиотеки не нужны. Все примеры я послал выше. Нужно лишь сформировать правильно пакет по спецификации и записать в порт, или же считать и распарсить его из порта
Alferov
Дык... я ж говорю - нет порта! И взяться ему неоткуда... конструкции типа insmod usbserial vendor=xxxx product=xxxx ни к чему не приводят. Насколько я понимаю, для получения доступа к железке нужна либа lualibusb.
Вот и пытаюсь ее скомпилить. smile.gif
Arrow
Александр, разработчики готовы сделать эксперементальную прошивку с поддержкой вашего устройства. Предварительно будет готово на следующей неделе. Сделайте мне пожалуйста письменный запрос на ak@evika.ru, и я пришлю вам ее
Alferov
Итак... вопрос работы LM с 1-wire можно считать решенным.
Задержал отчетик по причине скоропостижного отъезда в отпуск... с женой и детьми не поспоришь )))

В первую очередь хочу выразить огромную благодарность разработчикам и техподдержке за неоценимую помощь в борьбе с вышеозначенным 1-wire. Очень оперативно и с явно выраженным желанием помочь в решении вопроса... дорогого стоит.
Спасибо!!!
За терпение отдельная благодарность. ))


Теперь по существу.
Разработчиком была собрана экспериментальная прошивка с модулями для работы с 1-wire. Покрутив модуль wire и иже с ним, получил положительный результат, но...
Особенность работы этого решения в том, что модуль, при появлении на шине 1-wire устройства, отражает это событие в виде создания каталога с именем, совпадающим с номером устройства. Причем делает это весьма неспешно. Минимизация таймаута дала результат, но идеала достичь не помогла.
В итоге я пришел к выводу, что работа через файловую систему LM, мало похожа на работу домофона... вряд ли человек, прикладывающий таблетку к считывателю, готов держать ее в таком состоянии в течение 5-6 секунд.
Меньший результат, несмотря на все мои потуги, получить не вышло.

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

После очередного углубленного изучения темы в недрах гугла и окрестностях, я попытался прикрутить lua к libusb, с целью получить из LUA прямой доступ к USB. Весь свой путь описывать не буду, скажу только что у меня получилось собрать lualibusb под платформу LM2. Была получена работающая либа, использование которой без дальнейшего изучения работы с USB, смысла не имела.
А времени не хватает катастрофически... после 2-недельного отпуска приходится работать за двоих, в течение... тех самых 2-х недель. ))))))

Дальше...
Есть такая софтина - owfs. Принцип работы ее в какой то степени совпадает с принципами вышеописанного модуля, поэтому сборка ее и использование в качестве основы СКУД поначалу не рассматривалась. Изучал ее исключительно с целью понять принципы работы с libusb.
Однако при изучении исходников owfs и попытке осмысления кода, решил собрать ее под LM и попробовать. В силу отсутствия некоторых модулей (fuse.ko), отказался от использования owfs и прикрутил программку из этого же пакета - owhttpd.
Софтинка эта делает именно то, что надо. Она сканирует шину 1-wire, и выдает результат не в файловую систему, а в небольшой http-сервер, который она же и содержит. Скорость работы решения получилась вполне приемлемой.

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

Еще раз огромное спасибо разработчикам и техподдержке!

п.с. при необходимости, готов поделиться наработками.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.