SCADA

Алармы и события (Лекция)

 

ПЛАН ЛЕКЦИИ

1. Типовые алармы

2. Алармы и события в InTouch

3. Алармы в Citect

 

Состояние тревоги, в дальнейшем аларм (Alarm) - это некоторое сообщение, предупреждающее оператора о возникновении определенной ситуации, которая может привести к серьезным последствиям, и потому требующее его внимания, а часто и вмешательства. А принял - ли оператор сообщение об аларме? Чтобы снять эти сомнения, в системах управления принято различать неподтвержденные и подтвержденные алармы. Аларм называется подтвержденным после того, как оператор отреагировал на сообщение об аларме. До этого аларм оставался в состоянии неподтвержденного. Наряду с алармами в SCADA - системах существует понятие событий. События представляют собой обычные статусные сообщения системы и не требуют реакции оператора. Обычно событие генерируется при возникновении в системе определенных условий (типа регистрации оператора в системе). От эффективности подсистемы алармов зависит скорость идентификации неисправности, возникшей в системе, или технологического параметра, вышедшего за установленные регламентом границы. Быстродействие и надежность этой подсистемы могут существенно сократить время простоя технологического оборудования. Например, если оператор не получит вовремя информацию о том, что двигатель насоса перегрелся, это может привести в лучшем случае к выходу насоса из строя, а то и к крупной аварии.

Причины, вызывающие состояние аларма, могут быть самыми разными. Неисправность может возникнуть в самой SCADA-системе, в контроллерах, каналах связи, в технологическом оборудовании. Может выйти из строя датчик или нарушатся его метрологические характеристики. Параметры технологического процесса могут выйти за границы, установленные регламентом и т. д.

 

1. Типовые алармы

 

Подсистема алармов - это обязательный компонент любой SCADA - системы. Но возможности подсистем алармов различных SCADA - систем, вероятно, разные. С другой стороны, когда речь идет о типах алармов, то все SCADA - системы поддерживают такие типы алармов, как дискретные и аналоговые.

Дискретные алармы срабатывают при изменении состояния дискретной переменной. При этом для срабатывания аларма можно использовать любое из двух состояний: TRUE / ON (1) или FALSE / OFF (0). По умолчанию дискретный аларм может срабатывать на ON или OFF, в зависимости от конкретной SCADA - системы.

Аналоговые алармы базируются на анализе выхода значений переменной за указанные верхние и нижние пределы. Аналоговые алармы могут быть заданы в нескольких комбинациях:

·                     High и High High (верхний и выше верхнего);

·                     Low и Low Low (нижний и ниже нижнего);

·                     Deviation (отклонение от нормы);

·                     Rate of Change - ROC (скорость изменения).


Рис. Графическая интерпретация алармов типа Hi и HiHi

 

Из рисунка видно, что алармы Hi и HiHi срабатывают при достижении переменной заданных для каждого аларма пределов (High Alarm, High High Alarm). Для выхода переменной из состояния аларма (HiHi или Hi) необходимо, чтобы ее значение стало меньше порогового на величину, называемую зоной нечувствительности (Deadband). Аналогично можно интерпретировать алармы типа Lo и LoLo.

Все вышеизложенное справедливо и для аларма типа Deviation, только речь в этом случае идет об отклонении значения переменной от заданного значения (Setpoint), причем это заданное значение в ходе технологического процесса может изменяться либо оператором, либо программно (автоматически). Аларм сработает при выходе значения переменной за границу предельно допустимого отклонения.

 


Рис. 2. Графическая интерпретация алармов типа Deviation

Алармы типа ROC срабатывают, когда скорость изменения параметра становится больше предельно допустимой. Понятие "зона нечувствительности" (Deadband) к алармам этого типа не применяется.

 

2. Алармы и события в InTouch

 

В InTouch имеется две системы алармов: стандартная и распределенная.

Стандартная система используется для отображения информации и подтверждения всех аварийных ситуаций и событий, возникающих в локальном InTouch - приложении.

Распределенная система расширяет возможности стандартной и позволяет подтверждать аварийные ситуации, генерируемые системами алармов других включенных в сеть InTouch - приложений.

InTouch поддерживает возможность отображения, регистрации и печати информации как об алармах, связанных с аналоговыми или логическими переменными, так и о системных событиях.

 

2.1. Типы алармов и событий

В зависимости от своих характеристик алармы подразделяются на несколько категорий по типу (Туре) и классу (Class). Представление о типах и классах стандартной и распределенной систем можно получить из таблице ниже.

 

Таблица1

Алармы

Стандартный
тип

Распределенный
класс

Распределенный
тип

Discrete

DISC

DSC

DSC

Deviation - Major

LDEV

DEV

MAJDEV

Deviation - Minor

SDEV

DEV

MINDEV

Rate - of - Change

ROC

ROC

ROC

SPC

SPC

SPC

SPC

Value - LoLo

LOLO

VALUE

LOLO

Value - Lo

LO

VALUE

LO

Value - High

HI

VALUE

HI

Value - HiHi

HIHI

VALUE

HIHI

 

С InTouch - переменной можно связывать алармы любого типа. В зависимости от типа переменной для нее можно определять один или более классов и типов алармов.

События в InTouch также делятся в зависимости от их характеристик на несколько общих категорий (Event Types). Типы событий одинаковы как для стандартной, так и для распределенной систем алармов.

Таблица 2

Тип

Событие

ACK

Аларм был подтвержден

ALM

Возникла аварийная ситуация

EVT

Возникло аварийное событие

RTN

Переменная перешла из аварийного состояния в обычное

SYS

Возникло системное событие

USER

Изменение значения переменной $Operator

DDE

Получено значение переменной от DDE - клиента

LGC

Скрипт изменил значение переменной

OPR

Оператор ввел новое значение переменной

 

Первые шесть событий выбираются автоматически при разрешении регистрации событий. Для остальных трех событий разрешение регистрации устанавливается при определении переменной в словаре переменной.

 

2.2. Приоритеты алармов

Каждому аларму в InTouch соответствует некоторая величина, называемая приоритетом аларма. Этот приоритет характеризует важность данного аларма и принимает значения от 1 до 999 (наиболее серьезные алармы имеют приоритет 1). Организовав несколько диапазонов значений и связав алармы с каждым диапазоном, можно достаточно легко отфильтровать критические алармы от некритических. Выполнение анимационных функций, скриптов подтверждения, печать и просмотр информации также могут зависеть от приоритетов.

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

Таблица 3

Алармы

Диапазон приоритетов

Критические

0 - 249

Существенные

250 - 499

Несущественные

500 - 749

Информационные

750 - 999

 

При определении InTouch - переменных и условий возникновения алармов каждый из них может связываться с определенным диапазоном при указании приоритета из этого диапазона. Определив уровни приоритетов, пользователь получает возможность просмотра и печати тех алармов, которые интересуют его в текущий момент.

 

2.3. Группы алармов

Каждый аларм связан с определенной логической группой алармов. Все эти группы определяются пользователем и могут быть организованы в иерархическую структуру до восьми уровней иерархии. Это позволяет сгруппировать алармы в зависимости от их организации, схемы размещения оборудования, приоритетов и любых других признаков. Группы алармов являются полезным средством фильтрации вывода информации об алармах на экран дисплея или принтер.

Каждая переменная связывается с какой-либо группой алармов. Если пользователь не определил такую группу для конкретной переменной, то она автоматически связывается с корневой группой алармов $System. С любой группой алармов можно связать как переменную, так и другую группу алармов. Взаимосвязи всех групп алармов представляются древовидной структурой, у которой в качестве корневой является группа $System. Все определяемые группы алармов автоматически становятся потомками этой группы.

Указанная иерархическая древовидная структура может иметь до восьми уровней, при этом каждая входящая в дерево группа может иметь до 16 подгрупп.


Рис. 3. Иерархическая древовидная структура групп алармов

 

Для создания таких групп в меню окна WindowMaker предусмотрена команда Special/Alarm Groups (группы алармов), вызывающая появление диалога Alarm Groups (рис.3.2.2). При определении переменных в словаре Tagname Dictionary нажатие кнопки Group (см. рис.2.3.4) также выводит на экран этот диалог.


Рис.4. Диалог Alarm Group (группы алармов)

 

Воспользовавшись кнопкой Add, можно добавить группу алармов, а также формировать древовидную структуру системы алармов, определяя родительские группы и группы - потомки. При этом открывается диалог (рис.3.2.3) Add Alarm Group (добавить группу алармов). Кнопка Parent Group (родительская группа) предназначена для выбора родительской группы в древовидной структуре. В диалоге предусмотрено поле Comment (комментарий) для ввода необязательного текста, комментирующего данную группу.

 


Рис.5. Диалог Add Alarm Group (добавить группу алармов)

 

На рис. 6 диалог Alarm Group (группы алармов) заполнен в соответствии с древовидной структурой групп алармов, представленной на рис.1.

 


Рис. 6. Диалог Alarm Group

 

2.4. Определение условий аларма для переменной

Условия возникновения аварийных ситуаций определяются в словаре переменных (Tagname Dictionary). После выбора типа переменной откроется диалог ее подробного описания. Диалог подробного описания аналоговой переменной типа Integer I/O был приведен в предыдущем разделе (рис. 7). Для дискретный переменной этот диалог имеет следующий вид:


Рис. 7. Диалог подробного описания дискретной переменной

 

Поле Initial Value с опциями On-1/Off-0 (начальное значение - вкл./откл.) предназначено для задания дискретного состояния переменной в момент запуска WindowViewer (среда исполнения).

В поле Input Conversion (преобразование входных значений) указывается тип преобразования входной величины в момент обновления базы данных:

·                     Direct - входная величина читается без преобразования;

·                     Reverse - входная величина после чтения инвертируется.

Поля On Msg/Off Msg определяют текст, который будет отображен в окне вывода алармов при срабатывании аларма на ON/OFF.

 

2.5. Вывод информации об алармах

 

Для отображения информации об аварийных ситуациях или событиях в InTouch предусмотрены два типа объектов (окон): Alarm Summary (текущие алармы) и Alarm History (архивная сводка алармов).

С помощью объекта "Текущие алармы" на экран дисплея выводится информация только о текущих подтвержденных или неподтвержденных аварийных ситуациях. В случае возврата ситуации в нормальное состояние запись о ней исчезает из текущей аварийной сводки.

С помощью объекта "Архивная сводка алармов" на дисплей выводятся данные об аварийных ситуациях или событиях, включая количество уже произошедших аварийных ситуаций данного типа, время подтверждения, время возврата в нормальное состояние.

Создание системы алармов производится в несколько этапов:

  1. создание объекта (окна) вывода аварийной информации;
  2. конфигурирование окна вывода аварийной информации; - форматирование сообщений;
  3. конфигурирование системы алармов (определение общих свойств алармов, свойств регистрации и печати).

 

Для создания объекта вывода алармов следует сначала вывести на экран диалоговое окно Wizard Selection (Выбор мастера). Это достигается нажатием кнопки Wizard в инструментарии InTouch.. Далее производится выбор категории Alarm Displays (окна вывода алармов) в списке мастеров, в категории выбирается стандартная система алармов (Standard Alarm Displays). Осталось щелкнуть по Ok и вставить объект вывода аварийной информации в окно.


Рис. 8. Стандартный объект вывода аварийной информации

 

Конфигурирование окна вывода аварийной информации производится в диалоге Alarm Configuration (параметры окна вывода аварийной информации). Вызов этого диалога производится командой Special/Animation Links меню WindowMaker (рис.3.2.7). Быстрый доступ к этому диалогу можно получить, воспользовавшись меню правой кнопки мыши с последующим щелчком на строке Properties.


Рис. 9. Диалог Alarm Configuration

 

В этом диалоге определяется тип окна вывода аварийной информации ("Текущие алармы" или "Архивная сводка алармов"), группа алармов (Alarm Group), границы диапазона приоритетов окна вывода алармов (From/To Priority), дискретные переменные для перехода на предыдущую (Previous Page) и следующую (Next Page) страницу списка алармов. Для выбора шрифтов следует воспользоваться кнопкой Select Display Font.

Нажатие кнопки Format Alarm Message (форматирование аварийного сообщения) выводит на экран одноименный диалог, где определяется информация, включаемая в аварийное сообщение.


Рис. Диалог Format Alarm Message

 

В строку аварийного сообщения можно включить текущую дату (Date), текущее время (Time), тип аларма (Alarm Type), приоритет (Priority), имя переменной (Tagname), ее текущее значение (Value), а также группу алармов (Group Name) и статус аларма (Alarm State).

 

2.6. Конфигурирование стандартной системы алармов

 

В соответствии с алгоритмом настройки системы алармов InTouch следующий этап предполагает настройку системы алармов в целом, т. е. определение общих свойств системы, а также свойств регистрации и печати алармов. Для входа в диалог конфигурирования стандартной системы алармов следует воспользоваться командой Special/Configure/Alarms либо в группе Configure окна Application Explorer дважды щелкнуть на строке Alarms. На экране появится диалоговое окно Alarm Properties (Свойства алармов) с открытой страницей General (Общие).


Рисиалог Alarm Properties (Свойства алармов)

 

Не останавливаясь подробно на описании полей этого диалога, следует отметить лишь, что пользователь может здесь определить самые различные параметры стандартной системы алармов:

  1. количество записей об аварийных ситуациях, которые одновременно будут находиться в буфере алармов;
  2. размер буфера печати подключенного к параллельному порту принтера;
  3. период времени в миллисекундах, через который WindowViewer будет периодически обращаться к принтеру;
  4. поведение окна при добавлении нового аварийного сообщения к списку;
  5. разрешение регистрации событий, связанных с изменением данных в результате операций ввода/вывода, действий оператора, скрипта или системы и т. д.

Кроме того, возможно определение параметров регистрации и печати событий и алармов.

 

Параметры регистрации алармов/событий

Кроме возможности отображения информации об аварийных ситуациях на экране дисплея InTouch позволяет сохранять ее на жестком диске компьютера. Регистрационный файл является обычным ASCII - файлом и может впоследствии обрабатываться любым текстовым редактором. Генерация файлов, определение максимальной длины, вид регистрируемой информации, срок хранения регистрационных файлов на диске и другие параметры задаются пользователем.

Для определения параметров регистрации в файле надо щелкнуть на закладке Logging (Регистрация) диалога Alarm Properties.

Параметры печати

В дополнение к выводу информации об аварийных ситуациях на экран дисплея и в регистрационный файл на диск возможен вывод ее и на печать. Содержание выводимой информации определяется пользователем на закладке Printing (Печать) диалога Alarm Properties.

Во время печати информации об аварийных ситуациях порт принтера находится под полным контролем InTouch, поэтому для этой цели необходимо использование отдельного принтера. Никакое другое приложение, включая операционную систему, не сможет пользоваться этим принтером в обычном режиме, пока не будет запрещен вывод аварийной информации.

На этой закладке можно определить следующие параметры печати:

  1. порт, к которому подключен принтер;
  2. параметры этого порта (скорость передачи, вид контроля четности, разрядность данных, количество стоповых битов);
  3. формат аварийных сообщений (все отображаемые, записываемые на диск и печатаемые сообщения форматируются одинаковым образом).
  4. группу аварийных ситуаций; - значение приоритета регистрируемой аварийной ситуации.

 

Работа с удаленными алармами

Основное назначение стандартной системы - это отображение аварийных ситуаций и событий, возникающих на одном (локальном) InTouch - приложении. Вместе с тем Wonderware предлагает возможность использовать эту систему и для сетевых приложений. Но при этом должно быть выполнено следующее требование: в каждом узле должна функционировать идентичная копия InTouch - приложения и NetDDE. Одно из приложений конфигурируется как сервер алармов, который снабжает аварийной информацией один или несколько удаленных узлов. Сохраняется возможность подтверждения отдельных алармов и групп алармов.

Для создания такой конфигурации системы алармов следует при определении параметров окна вывода аварийной информации (диалог Alarm Configuration, рис.3.2.7) отметить опцию Server в поле Display Alarms для просмотра аварийной информации, накопленной узлом сервера.

На следующем этапе должно быть произведено конфигурирование сервера алармов в диалоге Свойства WindowViewer. Этот диалог вызывается командой Special/Configure/WindowViewer. Для быстрого вывода этого диалога надо дважды щелкнуть на строке WindowViewer группы Configure окна Application Explorer.


Рис. Диалог Свойства WindowViewer

 

В группе Master/Slave Configuration (архитектура ведущий/подчиненный) в поле Server Node (имя серверного узла) следует ввести имя узла с сервером алармов, от которого удаленные узлы будут получать аварийную информацию.

 

2.7. Распределенная система алармов

 

Стандартную систему алармов рекомендуется использовать для идентичных InTouch - приложений. Распределенная система расширяет возможности стандартной и позволяет подтверждать аварийные ситуации, генерируемые системами алармов других включенных в сеть lnTouch-приложений.

Распределенная система имеет следующие характеристики:

  1. Возможность отображения и подтверждения алармов любого InTouch- узла сети.
  2. Новый объект вывода с линейками прокрутки, настраиваемой шириной столбцов, возможностью выбора группы алармов, панелью состояния, динамическими типами вывода и различными цветами для разных приоритетов алармов.
  3. Функции QuickScript, реализующие динамическое управление отображением и подтверждением алармов.
  4. Механизм группирования, обеспечивающий одновременное обращение к нескольким контрольным группам разных приложений по одному имени.
  5. Возможность добавления комментариев к аварийной информации при подтверждении алармов.

Поскольку распределенная система является расширением стандартной, то она обладает такими же параметрами, как и стандартная (уже описанными ранее).

 

3. Алармы в Citect

3.1. Типы алармов

 

Citect поддерживает два типа алармов:

·   аппаратные алармы;

·   конфигурируемые алармы.

Аппаратные алармы призваны информировать оператора о неисправностях, возникающих в устройствах (Hardware) системы управления (контроллерах, модулях ввода/вывода, каналах связи). Citect постоянно запускает диагностические процедуры для проверки как собственного состояния, так и состояния всего периферийного оборудования независимо от желания оператора. Сведения об обнаруженных неисправностях выводятся оператору автоматически. Это свойство Citect является встроенным и не нуждается в предварительной настройке (конфигурировании). Аппаратные алармы отображаются на специальной странице (Hardware Alarm Page).

Алармы, вызываемые отклонениями технологических параметров за допустимые границы, неисправностью технологического оборудования, надо предварительно конфигурировать. Система алармов Citect позволяет конфигурировать алармы по отдельным переменным, по группам переменных, по выражениям, по результатам расчетов и т. д.

В Citect различают четыре типа алармов:

  1. дискретные (digital) алармы;
  2. аналоговые (analog) алармы;
  3. алармы с метками времени (time stamped);
  4. составные (advanced) алармы.

Дискретные алармы срабатывают при изменении состояния дискретной переменной. При этом для срабатывания аларма можно использовать любое из двух состояний: TRUE / ON (1) или FALSE / OFF (0). По умолчанию аларм срабатывает, когда переменная принимает значение TRUE / ON (1). Если при конфигурировании аларма перед именем переменной поставить логический оператор NOT, это приведет к инвертированию логики. Аларм сработает, когда переменная примет значение FALSE / OFF (0). Например, для создания дискретного аларма, срабатывающего при выключении насоса (переменная PUMP), в поле имени переменной надо ввести NOT PUMP и аларм сработает на FALSE/OFF (0).

Citect допускает возможность конфигурирования дискретного аларма в зависимости от изменения состояния одной или двух дискретных переменных. Если определены две переменные, то они обе должны изменить свое состояние для срабатывания аларма. Для создания аларма, срабатывающего при одновременно открытых двух клапанах, достаточно в соответствующие поля ввести имена переменных, например, VALVE1 и VALVE2. Аларм сработает, когда оба клапана будут в состоянии TRUE / ON.

Аналоговые алармы базируются на анализе выхода значений переменной за указанные верхние и нижние пределы. Аналоговые алармы могут быть заданы в нескольких комбинациях:

  1. High и High High (верхний и выше верхнего);
  2. Low и Low Low (нижний и ниже нижнего);
  3. Deviation (отклонение от нормы);
  4. Rate of Change - ROC (скорость изменения).

Алармы с меткой времени подобны дискретным алармам - аларм срабатывает при изменении дискретного параметра. Однако эти алармы имеют точную привязку ко времени (с разрешением в 1 миллисекунду !!!), которая позволяет установить точное время его срабатывания. Таймер обычно считывает время из устройства ввода/вывода. Миллисекундная точность позволяет выявлять взаимосвязи между алармами.

Составные алармы срабатывают, когда результат выражения Cicode меняет значения от FALSE к TRUE. Они требуют большего времени на обработку, чем другие типы алармов. Поэтому большое количество составных алармов существенно ухудшает характеристики системы управления. Составные алармы рекомендуется использовать лишь в том случае, когда невозможно применить другие типы алармов.

 

3.2. Конфигурирование алармов

 

Конфигурирование алармов можно производить в Citect Explorer или в Project Editor. В первом случае следует выбрать проект и открыть папку Alarms. В окне содержания проектов (Contents) появятся четыре иконки, каждая из которых предназначена для конфигурирования определенного типа алармов. В Project Editor для конфигурирования алармов потребуется открыть меню Alarms и выбрать соответствующую команду.

На рисунке ниже приведен интерфейс Citect Explorer с открытой папкой Alarms.


Рис. Интерфейс Citect Explorer с открытой папкой Alarms

 

Двойной щелчок по любой из представленных в поле Contents иконок вызывает появление на экране соответствующего диалога конфигурирования аларма. Ниже приведены диалоги для конфигурирования дискретного и аналогового алармов.

 


Рис. Диалог для конфигурирования дискретного аларма

 

В поле Var Tag A имени переменной WP_STAT предшествует логический оператор NOT. Значит, дискретный аларм сработает на FALSE/OFF.

 


Рис. Диалог для конфигурирования аналогового аларма

 

Каждый тип аларма имеет свои специфические параметры (поля) для настройки, но имеются и общие для всех типов алармов параметры:

  1. Alarm Tag - имя аларма;
  2. Alarm Name - имя физического устройства, связанного с алармом;
  3. Variable Tag - переменная, вызывающая аларм;
  4. Category - номер группы (категории) аларма (см. ниже).

Первые два понятия - Alarm Tag и Alarm Name - используются системой Citect только для организации вывода алармов на монитор и их регистрации (на диск, принтер и т. д.). В нижней части каждого диалога размещены четыре кнопки: Add (добавить связь), Replace (заменить), Delete (удалить), Help (справка). Конфигурирование любого аларма завершается нажатием кнопки Add. Для конфигурирования следующего аларма надо вновь заполнить поля диалога и снова нажать кнопку Add. При каждом нажатии этой кнопки срабатывает счетчик, и в поле Record появляется число, характеризующее общее количество алармов данного типа в проекте. Таким образом, при конфигурировании большого количества алармов данного типа достаточно один раз войти в соответствующий диалог и произвести конфигурирование всех алармов данного типа.

В правой части диалога имеется линейка для просмотра всех созданных алармов данного типа. Это дает возможность редактировать ранее созданные алармы. Заканчивается редактирование аларма нажатием кнопки Replace. В отличие от дискретных и аналоговых алармов составные алармы срабатывают на результат выражения Cicode (рис.3.3.4).


Рис. Диалог Advanced Alarms.

 

Cicode - выражение состоит из базовых элементов языка Cicode. В этом выражении могут быть константы, значения переменных, а также результаты сложных вычислений. В рассматриваемом диалоге выражение HW_TEMP>=80 имеет следующий смысл: запустить состояние аларма, когда значение некоторой переменной HW_TEMP будет больше или равно 80 (True).

 

3.3. Категории алармов

 

В системе Citect предусмотрена возможность классифицировать алармы по самым различным признакам: по участкам производства, по типу алармов, имени, приоритету и т. д. В зависимости от этого каждый аларм может быть отнесен к определенной категории, и каждая категория обрабатывается как группа. Для каждой категории можно установить индивидуальные атрибуты отображения элементов аларма (шрифт и тип страницы), способ регистрации (на принтер или в файл) и действие, производимое тогда, когда срабатывает аларм определенной категории (например, включение звукового сигнала).

При разработке проекта можно определить до 255 категорий. Если категория для аларма не установлена, аларм будет иметь такие же атрибуты, как и аларм категории 0. Категория 255 используется для всех аппаратных алармов. Если не определять категорию аларма 0 или 255, Citect использует значения по умолчанию для этих категорий.

Каждая категория может иметь свой приоритет. Приоритеты алармов могут быть использованы для определения порядка их появления, обеспечивая необходимую для оператора фильтрацию. Важность приоритета уменьшается с увеличением его значения от 1 до 255. Таким образом, приоритет с номером 1 - самый высокий. Например, если алармы с приоритетами от 1 до 8 должны выводиться на экран, то первыми будут выводиться алармы с приоритетом 1 в порядке их поступления, затем - алармы с приоритетом 2 и т. д.

Задание свойств категории алармов производится в специализированном диалоге Alarm Categories, приведенном ниже.


Рис. Диалог Alarm Categories.

 

Поля Alarm On Font и Alarm Off Font предназначены для выбора шрифтов при выводе "включенных" (активных) алармов и "выключенных" алармов (переменная возвратилась в нормальное состояние).

Поля ON Action и OFF Action предписывают действие, которое должно быть реализовано при включении (выключении) аларма. Действие задается командой на языке Cicode.

Поле ACK Action предписывает действие, которое должно быть реализовано при подтверждении аларма. Также как и для предыдущих полей, действие задается командой на языке Cicode.

Каждый аларм может быть представлен на странице текущих алармов (Alarm Display) и в сводке алармов (Alarm Summary) одной строкой. Поля Alarm Format и Summary Format определяют формат вывода всех алармов данной категории на этой странице. Символ ^t между полями формата означает признак табуляции (выравнивание выводимой информации в полях формата). Действие этого формата распространяется только при отображении алармов на экран.

Поля Log Alarm Transitions (ON, OFF, ACK) определяют момент регистрации алармов данной категории (когда включается, выключается, подтверждается).

 

3.4. Отображение алармов

Для предоставления оператору информации об алармах в Citect можно создавать страницы текущих алармов (Alarm Display) и страницы сводки алармов (Alarm Summary). Более того, Citect предлагает для этих целей готовые шаблоны. Основные типы таких шаблонов приведены в главе 1. После создания новой страницы с использованием шаблона следует произвести ее конфигурирование в диалоге Properties.


Рис. Диалог Properties (свойства страницы).

 

Этот диалог содержит несколько закладок, на которых можно определить заголовок окна в режиме исполнения (Window Title), предыдущую и последующую страницы (Previous, Next) в порядке их расположения в проекте, время обновления (scan time), видимые размеры окна, его стиль (закладка Appearance), клавиши и команды, выполняемые при их нажатии (закладка Keyboard Commands), команды, выполняемые при закрытии или открытии окна (закладка Events) и т. д.

Когда страницы для отображения алармов созданы, остается произвести конфигурирование алармов в соответствующих диалогах с присвоением категории и заполнить диалог Alarm Categories для каждой категории. При запуске режима исполнения алармы будут появляться на страницах алармов.

 


Рис. Страница текущих алармов Alarm Display.

Возможные выводимые поля в Alarm Display (текущие алармы):

  1. имя переменной, имя аларма, описание аларма;
  2. категория аларма, справочная информация, зона, уровень доступа;
  3. тип или состояние аларма: заблокирован, подтвержден, не подтвержден;
  4. время/дата смены состояния или подтверждения аларма: время и дата возникновения, время и дата окончания, время и дата подтверждения, длительность.

Для дискретных алармов имеется поле состояния: on (вкл.), off (выкл.).

Для алармов с метками времени в поле времени и даты добавлена информация о миллисекундах. Для аналоговых алармов предусмотрены поля для состояний (HiHi, Hi, Lo, LoLo, Rate, Deviation), значения переменной (Value) и полосы удержания аларма (Deadband - зона нечувствительности). Так же, как и на любой графической странице, на страницах текущих алармов и сводок алармов можно расположить различные средства навигации и управления алармами (кнопки перехода на другие страницы проекта, кнопки подтверждения алармов, линейки прокрутки, регистрации алармов в файл или на принтер и т. д.). Читатель еще не забыл, что для сетевого доступа к алармам с компьютера отображения (Display Client) один из компьютеров сети должен быть сконфигурирован как сервер алармов (Alarm Server). Это может быть отдельный компьютер, играющий роль сервера алармов, либо компьютер, на который возложены функции нескольких серверов (в том числе и сервера алармов).

 

3.4. Подсистемы алармов в Intouch и Citect

 

Безусловно, основные задачи подсистемы алармов реализованы в обеих SCADA - системах. Но особенностей ее реализации достаточно много.

Исполняющая система Citect всегда передает информацию об аппаратных (Hardware) алармах в Citect - приложениях. За разработчиком остается только решение по использованию конфигурируемых алармов. Доступность информации обо всех аварийных ситуациях в InTouch зависит от разработчика приложения.

Подсистема алармов в InTouch и Citect является распределенной: при этом используется архитектура Client/Server. В Citect в рамках одного домена (domain) в локальной сети допустимо использование только одного сервера алармов. Остальные компьютеры могут выполнять лишь функцию клиентов по отношению к этому серверу. В InTouch допустимо произвольное количество серверов и клиентов, если брать во внимание распределенную, а не стандартную систему.

В Citect предлагается два дополнительных типа алармов: с меткой времени и составные алармы. Последний тип алармов дает большую свободу разработчику в вопросе генерации алармов по любому условию.

Все алармы, генерируемые приложениями в InTouch и Citect, могут быть сохранены на диске. В первом случае используются ASCII - файлы в .CSV - формате, во втором допустимыми форматами хранения являются .TXT для ASCII - файлов, а также форматы .RTF и .DBF.

В InTouch существуют специальные графические объекты (Wizards) для отображения алармов, которые могут помещаться в любое окно (Window) приложения. При конфигурировании каждого объекта в окне определяются группы алармов с приоритетами, которые будут отображаться в объекте на этапе исполнения.

Citect разработал шаблоны страниц (Pages), специально ориентированные на вывод как текущих и аппаратных алармов, так и сводки алармов. Компания CiT создала более высокоуровневые средства для отображения алармов. Предлагаемый инструментарий является отражением "выстраданного" опыта компании в области разработки проектов.

Но в InTouch аналогичные решения можно получить с использованием базовых "кубиков", давая волю фантазии разработчика.