1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

InTouch Alarm

Ответить

Автор темы
Romale
здесь недавно
здесь недавно
Сообщения: 4
Зарегистрирован: 10 сен 2015, 07:10
Имя: Галюта Роман Николаевич
Страна: Россия
город/регион: Норильск
Поблагодарили: 2 раза

InTouch Alarm

Сообщение Romale »

Здравствуйте! Помогите решить как правильно начать проект. Существуют объекты, для которых состояние аларма, это несанкционированная смена их режима работы (ВКЛ/ВЫКЛ). То есть аларм может быть при состоянии как 1 так и 0. В Интаче значение аларма тега задается при его создании и онлайн менять нельзя. Можно конечно в скриптах организовать проверку состояния тега с системным (memory) тегом-блинкером, и при несовпадении выводить аларм, но это очень большой код, и трата лицензированных тегов, так как очень большое количество объектов. При таком решении, на каждый объект приходится по сигнализации как минимум 3 тега, OB1SIG1 - IODiscrete, OB1SIG1_BUF - MemoryDiscrete, OB1SIG1_Error - MemoryDiscrete. В скрипте сравниваем OB1SIG1 с OB1SIG1_BUF, если неравны то устанавливаем OB1SIG1_Error в 1, где состояние 1 алармовое. При таком алгоритме все соответствует задаче, но если учесть что объектов 720, скрипт получится весьма внешительным и тегов на сигнализацию уйдет 2160.
Может у кого есть другой вариант решения такой задачи? :ext_dont_ment:
Ответить

Вернуться в «Wonderware Intouch»