- •Лабораторная работа №2 Робота з скриптами QuіckScrіpt. Робота з алармами й подіями. Робота із трендами й архівами .
- •1. Используя результаты предыдущего задания, создайте real time trend (тренд реального времени) в окне 1, который будет отображать значения тегов level1, level2, sum2.
- •2. Создайте Historical Trend (исторический тренд), который показывает 4 значения, привязанные к ползункам. Также добавьте элемент масштабирования для исторического тренда.
- •Лабораторная работа №3 Особливості адресації в InTouch. Обмін даними по протоколам dde і opc. Работа з непрямими тегами. Цель работы:
1. Используя результаты предыдущего задания, создайте real time trend (тренд реального времени) в окне 1, который будет отображать значения тегов level1, level2, sum2.
1. Вставьте объект REAL TIME TREND из панели инструментов: “Real-Time Trend” быстрая кнопка.
2. Дважды кликните на объекте REAL TIME TREND >> Pen >> expression >> привяжите теги:
• PEN1 -> level1 (толщина 2)
• PEN2 -> level2 (толщина 2)
• PEN3 -> sum2 (толщина 2)
Сконфигурируйте следующее:
• SAMPLE INTERVAL (интервал выборки) каждые 500MS
• TIME SPAN (интервал времени) 30S
• VALUE DIVISIONS (диапазон значение) MAX=200 MIN=0 . Проверьтеприложение.
2. Создайте Historical Trend (исторический тренд), который показывает 4 значения, привязанные к ползункам. Также добавьте элемент масштабирования для исторического тренда.
1. Создайте новое окно InTouch в рабочем каталоге с именем HistTrend.
2. Создайте 4 ползунка в окне.
3. Определите 4 тега (Тип Memory Real, имена lev1..lev4) для каждого ползунка соответственно. Введите Min/Max значение: 0-100, установите галочку “Log Data” (сохранять данные).
4. Создайте Historical Trend с помощью кнопки Wizards “Trends” >> “Historical Trend Scooter and Scale”.
5. Определите теги для объекта Historical Trend:
• Hist Trend >> Hist_tag
• Pen Scale >> Scale
6. Определите перья тренда: дважды кликните на объекте Historical Trend >> Pens >> введите следующие значения:
• 1 >> levl1
• 2 >> lev2
• 3 >> lev3
• 4 >> lev4
7. Создайте следующие кнопки:
• 1 >> Update to Current time (обновить на текущее время) >> определить свойства кнопки >> Action >> Script: HTUpdateToCurrentTime(“Hist_tag”);
• 2 >> HTZoom OUT (уменьшить) >> определить свойства кнопки >> Action >> Script: HTZoomOut(“Hist_tag”,”Endtime”);
• 3 >> HTZoom IN (увеличить) >> определить свойства кнопки >> Action >> Script: HTZoomIn(“Hist_tag”,”Endtime”);
8. Сконфигурируйте систему хранения исторических данных: закройте windowsviewer, затем в меню WindowsMaker >> Special >> Configure >> Historical Logging >> Enable Historical Logging (разрешить хранение данных) >> нажмите OK.. Проверьте приложение.
Т
Алармы и события в InTouch.
InTouch поддерживает возможность отображения, регистрации и печати информации как об алармах, связанных с аналоговыми или логическими переменными, так и о системных событиях.
Типы алармов.
Стандартные (бывают и распределенные) алармы подразделяются по типу (Туре) на несколько категорий.
Дискретные алармы срабатывают при изменении состояния дискретной переменной. При этом для срабатывания аларма можно использовать любое из двух состояний: TRUE/ON (1) или FALSE/OFF (0).
-
Алармы
Стандартный тип
Discrete
DISC
Deviation - Major
LDEV
Deviation - Minor
SDEV
Rate - of - Change
ROC
Value - LoLo
LOLO
Value - Lo
LO
Value - High
HI
Value - HiHi
HIHI
Аналоговые алармы базируются на анализе выхода значений переменной за указанные верхние и нижние пределы. Как видно из таблицы, аналоговые алармы могут быть заданы в нескольких комбинациях:
- Deviation (отклонение от нормы);
- Rate of Change - ROC (скорость изменения).
- Low и Low Low (нижний и ниже нижнего);
- High и High High (верхний и выше верхнего);
С InTouch - переменной можно связывать алармы любого типа. В зависимости от типа переменной для нее можно определять один или более классов и типов алармов.
Приоритеты алармов.
Каждому аларму в InTouch соответствует некоторая величина, называемая приоритетом аларма. Этот приоритет характеризует важность данного аларма и принимает значения от 1 до 999 (наиболее серьезные алармы имеют приоритет 1). Организовав несколько диапазонов значений и связав алармы с каждым диапазоном, можно достаточно легко отфильтровать критические алармы от некритических. Выполнение анимационных функций, скриптов подтверждения, печать и просмотр информации также могут зависеть от приоритетов.
Группы алармов.
Каждый переменная связана с определенной логической группой алармов. Все эти группы определяются пользователем и могут быть организованы в иерархическую структуру до восьми уровней иерархии. Это позволяет сгруппировать алармы в зависимости от их организации, схемы размещения оборудования, приоритетов и любых других признаков.
Если пользователь не определил такую группу для конкретной переменной, то она автоматически связывается с корневой группой алармов $System. С любой группой алармов можно связать как переменную, так и другую группу алармов. Взаимосвязи всех групп алармов представляются древовидной структурой, у которой в качестве корневой является группа $System. Все определяемые группы алармов автоматически становятся потомками этой группы.
Для создания групп алармов в меню окна WindowMaker предусмотрена команда Special/Alarm Groups (группы алармов), вызывающая появление диалога Alarm Groups. При определении переменных в словаре Tagname Dictionary нажатие кнопки Group также выводит на экран этот диалог.
Определение условий аларма для переменной.
Условия возникновения аварийных ситуаций определяются в словаре переменных (Tagname Dictionary). Включение опции Alarms (или Details & Alarms) вызывает на экран диалог определения условий алармов, соответствующий типу переменной.
В поля Alarm Value вводятся соответствующие граничные значения переменной.
Поле Value Deaddand предназначено для ввода величины, на которую должно измениться значение переменной после возврата в диапазон допустимых значений, чтобы прекратилось состояние аварийной ситуации.
В поля % Deviation вводят отклонения в % от заданного значения (Target), на которые должна измениться переменная для возникновения аварийной ситуации.
Для конфигурирования аларма по скорости отклонения в поле % per следует ввести максимально возможное изменение переменной в % за секунду, минуту, час (Sec, Min, Hr).
Вывод информации об алармах.
Для отображения информации об аварийных ситуациях или событиях в InTouch предусмотрены два типа объектов (окон): Alarm Summary (текущие алармы) и Alarm History (архивная сводка алармов).
Создание системы алармов производится в несколько этапов:
- создание объекта (окна) вывода аварийной информации;
- конфигурирование окна вывода аварийной информации;
- форматирование сообщений;
- конфигурирование системы алармов (определение общих свойств
алармов, свойств регистрации и печати).
Выполнение работы : Алармы и события.
Создайте всплывающее окно, которое будет содержать элемент отображения алармов и две кнопки - “Close” (закрыть) и “Acknowledge” (подтвердить) для подтверждения алармов. Также создайте кнопку “Alarms” (Алармы) в окне 1, нажатие на которую будет открывать всплывающее окно.
1. Создайте новое окно с именем ”Alarms”, выберите тип окна “popup”.
2. Используя кнопку”Wizards...” на панели инструментов, вставьте элемент отображения алармов AlarmViewerCtrl из раздела ActiveX Controls.
3. Добавьте кнопки с надписями ”Close” и ”Acknowledge”.
4. Определите кнопки:
• Дважды кликните на кнопке ”Close” >> Action >> и добавьте следующий скрипт:HideSelf;
• Дважды кликните ”Acknowledge” >> Action >> и добавьте следующий скрипт:Ack $System;
5. Добавьте кнопку ”Alarms” в окно1. Определите свойства кнопки: дважды кликните на кнопке >> Action >> введите следующий скрипт: Show “Alarms”;
6. Определите границы алармов для тегов: Menu >> SPECIAL >> TagName Dictionary >> выберите пометку Alarms >> установите границы алармов для следующих:
• level1 >> HiHi=90, LoLo=10
• level2 >> HiHi=90, LoLo=10
• sum2 >> HiHi=180, LoLo=20
Далее нажмите ”Close”. Проверьте приложение.
Добавьте две кнопки “Ack1” и “Ack2” в окне “Alarms” из предыдущего задания, которые позволят независимо подтверждать алармы уровня (level1, level2) и суммы (sum2).
1. Создайте две новые группы алармов ”levels” и ”sum”. Перед внесением изменений в проект закройте программу”WindowViewer”. Затем Menu >> SPECIAL >>ALARM GROUPS >> ADD >> “levels” >> ADD “sum”
2. Измените группы алармов для тегов соответственно. Menu >> SPECIAL >> TagName Dictionary >> найдите и измените группы алармов для следующих тегов:
• level1 >> Group >> levels
• level2 >> Group >> levels
• sum2 >> Group >> sum
3. Добавьте две кнопки ”Ack1” и ”Ack2” в окне ”Alarms”.Определите свойства кнопки:
• Дважды кликните на кнопке”Ack1” >> Action >> добавьте следующий скрипт: Ack levels;
Затем нажмите OK.
• Дважды кликните на кнопке”Ack2” >> Action >> добавьте следующий скрипт: Ack sum;
Затем нажмите OK. Проверьте приложение
