Добрый день.
Система передает в WinCC 8.0 три переменные.
Tag1 - основное событие (останов, пуск)
Tag2 причина, вызвавшая первое событие останов (низкое давление, низкое напряжение и пр.)
Tag3 причина, вызвавшая первое событие пуск (автоматически, вручную и пр.)
Tag1 , Tag2, Tag3 - тип Int. Кодировка расшифровывается по документации (1- пуск, 2-останов и тп).Точнее Tag1 расшифровывается по состоянию взведенного бита, а Tag2 и 3 по его целочисленному значению.
Вопрос- Как реализовать Alarm, чтобы в одном поле было сообщение типа "Останов низкое давление"?
При этом, если Tag1 всегда обновляется, т.е. событие в системе приводит к смене значения тега, то Tag2 и Tag3 могут остаться неизменными . Например три цикла пуск (автоматически)-останов(низкое давление) приведут к изменению только Tag1 . Tag2 и 3 останутся не измененными.
И таких систем около сотни заведено в WinCC.
- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не надо писать свой вопрос в первую попавшуюся тему - всегда лучше создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения. Непонятно? - Читать здесь.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь, а затем здесь и здесь.
- Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.
Создание аларма из двух переменных
Модератор: Глоб.модераторы
-
- здесь недавно
- Сообщения: 60
- Зарегистрирован: 30 ноя 2011, 15:36
- Имя: Сидоров С.И.
- Благодарил (а): 12 раз
- Поблагодарили: 1 раз
Создание аларма из двух переменных
У вас нет необходимых прав для просмотра вложений в этом сообщении.
-
- здесь недавно
- Сообщения: 33
- Зарегистрирован: 09 фев 2024, 08:43
- Имя: Евгений
- Страна: Россия
- Благодарил (а): 10 раз
Создание аларма из двух переменных
Как вариант, если написать глобальный скрипт, который будет по формуле tag_sys_1= (tag1*1000+ tag2*10 + tag3) получать уникальное число, которому можно поставить в соответствие уникальное состояние
Допустим, tag1=1(запущен) tag2=3(по высокому уровню) tag3=1 (в авто режиме)
tag_sys_1=1*1000+3*10+1=1031 - двигатель запущен в автоматическом режиме по высокому уровню и т.п. Далее в Alarm Logging создать сообщения в Limit Monitoring забить все возможные сообщения для tag_sys_1.
Далее, на каждую систему из сотни создать по такому тэгу состояния.
Допустим, tag1=1(запущен) tag2=3(по высокому уровню) tag3=1 (в авто режиме)
tag_sys_1=1*1000+3*10+1=1031 - двигатель запущен в автоматическом режиме по высокому уровню и т.п. Далее в Alarm Logging создать сообщения в Limit Monitoring забить все возможные сообщения для tag_sys_1.
Далее, на каждую систему из сотни создать по такому тэгу состояния.
-
- здесь недавно
- Сообщения: 60
- Зарегистрирован: 30 ноя 2011, 15:36
- Имя: Сидоров С.И.
- Благодарил (а): 12 раз
- Поблагодарили: 1 раз
Создание аларма из двух переменных
Со скриптом у меня такая реализация нарисовывается.
1. Создается внутренний текстовый тег . Скрипт пишет в него текст исходя из числового значения внешнего тега (Tag 2 или Tag3 ), Select Case. Скрипт вызывается по изменению внешнего тега (Tag2 или Tag 3). В настройках Alarma заведено Process Value, где значение берется из внутреннего текстового тега. В тексте сообщения делаю добавление к тексту значения Process Value. И сам Alarm генерируется по Tag1.
Была надежда без создания кучи скриптов\экшенов реализовать, средствами Alarm Logging.
У вас нет необходимых прав для просмотра вложений в этом сообщении.