![]() |
Genesis32 - аварии и события |
Ответить ![]() |
Автор | |
![]() Новичок ![]() Присоединился: 28 Сентябрь 2008 Online Status: Offline Публикации: 7 |
![]() ![]() ![]() ![]() Опубликовано: 10 Июнь 2016 12:38 |
День добрый!
Интересует, как в AlarmWorx32 server configurator правильно решить следующие задачи. 1. Аварийный тег с OPC input типа "enumeration". То есть, устройство выдает integer, где значение "0" - нет аварий, значение "1" - авария типа 1, "2" - авария типа 2, и так далее. Сконфигурировал каждый тип аварии в виде отдельного тега, digital alarm, в поле "OPC input 1" ставим выражение x = {{тег OPC}} == 1 для аварии 1-го типа, x = {{тег OPC}} == 2 для аварии 2-го типа, итд. Почему-то не удается просто прописать OPC тег, а значения 1, 2, 3 итд подставлять в поле ALarm State Value, похоже что там все, что больше 0, считается как TRUE и приводит к генерации аварии. Но это ладно. Плохо то, что когда какая-то авария прекратилась, будет выдано сообщение из поля "Return to normal", а если оно пустое, то получим сообщение "digital is normal". Если устройство перешло из одной аварии сразу в другую, это явно лишнее. 2. Хочу записывать логгером события, и опять исходный тег OPC типа enumeration - режим 1, режим 2, режим 3... Опять для каждого значения (режима) создается свой алармовый тег с выражением {{тег OPC}}== 1, {{тег OPC}}== 2 итд. Определяем минимальный приоритет 100, будем расценивать это как события, а не как аварии, убираем необходимость подтверждения оператором "Req ack". И опять проблема в том, что при перехода из режима 1 в режим 2 будет сгенерировано два сообщения: сначала нечто навроде "режим 1 деактивирован", а потом "активирован режим 2". Да, я знаю, что в events можно писать значения, которые ввел оператор с рабочей станции. Но здесь тот случай, когда информация о переключении режимов приходит с самого полевого устройства, т.к. переключения могут производиться с локального дисплея на устройстве. Мои вопросы: 1. Как оптимально решить данные задачи в Gen32? 2. Можно ли в принципе убрать генерацию сообщений по возвращению аварийного тега в норму, для определенных тегов (где поле return to normal пустое, например)? |
|
![]() |
|
![]() Участник ![]() ![]() Присоединился: 29 Май 2014 Online Status: Offline Публикации: 85 |
![]() ![]() ![]() ![]() |
Какую версию GENESIS32 используете?
|
|
Антон Соколов
|
|
![]() |
|
![]() Новичок ![]() Присоединился: 28 Сентябрь 2008 Online Status: Offline Публикации: 7 |
![]() ![]() ![]() ![]() |
v 9.35.
|
|
![]() |
|
![]() Участник ![]() ![]() Присоединился: 29 Май 2014 Online Status: Offline Публикации: 85 |
![]() ![]() ![]() ![]() |
К сожалению, убрать генерацию сообщения при возврате в норму нельзя, но можно изменить текст (если это поможет задаче): например, сделать вывод пустой строки.
Для AlarmWorX Viewer можно отфильтровать нежелательные сообщения о возврате в норму, но в лог (через Alarm Logger) они всё равно писаться будут. Оптимальное решение для enumerated-аварий именно через регистрацию Digital (как Вы и делаете), но с фильтрацией Viewer по возврату в норму. |
|
Антон Соколов
|
|
![]() |
Ответить ![]() |
Переход на форум | Права доступа на форуме ![]() Вы не можете публиковать новые темы в этом форуме Вы не можете отвечать на сообщения в этом форуме Вы не можете удалять Ваши сообщения на этом форуме Вы не можете редактировать Ваши сообщения на этом форуме Вы не можете создавать голосования на этом форуме Вы не можете выражать своё мнение в голосованиях на этом форуме |