Привязать Alarm на бит аналогового тега

Вопросы, не попадающие в другие разделы.

Привязать Alarm на бит аналогового тега

Сообщение avprokop » Пн мар 26, 2018 2:25 pm

Ребята, возможно ли привязать Alarm на бит аналогового тега?
Может через скрипты? Пробовал менять ТЕГ.Alarm в скрипте, но оно только для чтения похоже...

Просто программист ПЛК выдает на верхний уровень слово состояния объекта (I/O Integer). Там второй бит означает аварию.
Что мне теперь на каждый объект еще дискретный тег завадить придется?

Заранее благодарен!
avprokop
 
Сообщения: 22
Зарегистрирован: Пн мар 26, 2018 2:10 pm

Re: Привязать Alarm на бит аналогового тега

Сообщение Генератор зла » Пн мар 26, 2018 2:35 pm

Tag1 = I/O Integer
Tag2 = Memory Discrete

Script DataChange (Tag1)
Tag2 = Tag1.00; (подставить номер нужного разряда, от 00 до 31)
Vita est dolor.
Генератор зла
 
Сообщения: 2860
Зарегистрирован: Вс янв 23, 2011 5:08 pm

Re: Привязать Alarm на бит аналогового тега

Сообщение avprokop » Пн мар 26, 2018 2:40 pm

А Alarm настроить именно на Tag2... Ясно. Спасибо.
А объектов таких штук 200! ))
Эт получается надо 200 скриптов DataChange писать. Там нет ограничений на их количество?
avprokop
 
Сообщения: 22
Зарегистрирован: Пн мар 26, 2018 2:10 pm

Re: Привязать Alarm на бит аналогового тега

Сообщение avprokop » Пн мар 26, 2018 2:45 pm

... можно, конечно, всё это запихать в один общий скрипт (на раз в секунду, например)...
avprokop
 
Сообщения: 22
Зарегистрирован: Пн мар 26, 2018 2:10 pm

Re: Привязать Alarm на бит аналогового тега

Сообщение Генератор зла » Пн мар 26, 2018 2:54 pm

Пробовать надо.
Если аналоговые теги часто не меняются, то 200 датаченч-скриптов худа не сделают.
А вот 1 длинный и стабильно часто срабатывающий может заметно затормозить СКАДу.
Про ограничения на кол-во скриптов...
На окна = 1000
Думаю на скрипты - по-более в разы.
Vita est dolor.
Генератор зла
 
Сообщения: 2860
Зарегистрирован: Вс янв 23, 2011 5:08 pm

Re: Привязать Alarm на бит аналогового тега

Сообщение Генератор зла » Пн мар 26, 2018 3:05 pm

Кстати...
DataChange-скрипт можно привязать к ... Tag1.00 (вместо просто Tag1)
:wink:
Vita est dolor.
Генератор зла
 
Сообщения: 2860
Зарегистрирован: Вс янв 23, 2011 5:08 pm

Re: Привязать Alarm на бит аналогового тега

Сообщение avprokop » Пн мар 26, 2018 5:42 pm

Пока решил сделать так:

200 тегов состояний объектов:
Tag1 - I/O Integer (в Comment пишу строку "Tag1")
Tag2 - I/O Integer (в Comment пишу строку "Tag2")
...
Tag200 - I/O Integer (в Comment пишу строку "Tag200")

200 тегов тревог (на них настраиваю Алармы):
Tag1alm - Memory Discrete
Tag2alm - Memory Discrete
...
Tag200alm - Memory Discrete

Еще два вспомогательных indirect тега:
indirTag - Indirect Integer
indirTagALM - Indirect Discrete

200 скриптов типа DataChange(Tag1.02)
с содержимым типа
Код: Выделить всё
CALL almManager(Tag1.Comment);


И наконец одна Quick-функция:
almManager(tagComment(тип: Message))
с содержимым:
Код: Выделить всё
indirTag.Name = tagComment;
indirTagALM.Name = tagComment + "alm";
indirTagALM = indirTag.02;


----
Вариант позволит при необходимости быстро дописать в одном месте дополнительную обработку меняющихся состояний объектов.
Еще бы как-то ускорить производство 200 очень похожих скриптов типа DataChange )))
avprokop
 
Сообщения: 22
Зарегистрирован: Пн мар 26, 2018 2:10 pm


Вернуться в Другое

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1