Работа в Симп Лайт с событиями и авариями
Последнее изменение:
Введение
Система контроля событий и аварий предназначена для оперативного информирования оператора о следующих типах событий:
Событие | Инициатор события | Описание |
Нарушение нижней уставки | Система | Если значение аналогового тега превысило Параметр «Низ уставки» |
Нарушение верхней уставки | Система | Если значение аналогового тега превысило Параметр «Верх уставки» |
Возвращение в рабочую зону | Система | Если значение аналогового тега вошло в рабочую зону, т.е. между параметрами Верх и Низ уставки |
Состояние ВКЛ | Система | Если дискретный тег изменил свое состояние на Включено (1, True) |
Состояние ВЫКЛ | Система | Если дискретный тег изменил свое состояние на Выключено (0, False) |
Действие пользователя | Система | Если пользователь изменил значение тега из мнемосхемы или из скрипта. Запуск и закрытие Монитора(Рантайм). Авторизация и деавторизация пользователя. |
Информация | Скрипт | Если использовались скриптовые команды Log LogTag |
Предупреждение | Скрипт | Если использовались скриптовые команды Log LogTag |
Авария | Скрипт | Если использовались скриптовые команды Log LogTag |
Информирование оператора производится следующими методами:
- Звуковое оповещение
- Графическое оповещение (смена цвета эл-тов мнемосхем, мигание элементов мнемосхем)
- Отображение в специализированном компоненте на мнемосхеме журнала аварий и событий.
Все события системы сохраняются в единый журнал для последующего анализа.
Компоненты для работы с событиями в системе:
Компонент Журнал событий (компонент для размещения на мнемосхеме)
Отображает список сообщений (информационных, предупредительных, аварийных) на мнемосхеме.
Можно разместить в любом месте мнемосхемы, в любом размере.
Позволяет настроить:
- внешний вид.
- какие теги будут туда попадать
- какие события будут отображаться и в каком внешнем виде.
В режиме исполнения возможен:
- просмотр событий,
- квитирование событий,
- отключение звука аварии,
- вызов журнала событий (двойной клик или кнопка)
Компонент Последнее событие (компонент для размещения на мнемосхеме)
Отображает последнее событие в СКАДА системе.
Кликнув, можно посмотреть список последних событий, упорядоченных по времени.
В режиме исполнения возможно квитирование, отключение звука, вызов журнала событий.
Общий Журнал событий
Отображает все события в системе с возможностью фильтрации по типу, по дате, по тексту.
Позволяет вывести на печать необходимые события или экспортировать их список в файл CSV для дальнейшей обработки.
Сейчас в журнале фиксируются все события системы:
- Выход параметра за норму и возвращение в норму
- Изменение значений параметра
- Изменение уставок или шкалы тега
- Авторизация и деавторизация пользователя(локального и сетевого).
- Запуск и закрытие Монитора
- Пользовательские сообщения из скриптов.
Функция Log
Описание:
Записывает в журнал сообщение с произвольным текстом и определенным типом без привязки к каналу.
Синтаксис:
procedure Log(State: TEventState; Text: String);
Параметры:
Параметр | Описание |
State | Тип сообщения. Возможные типы: * esInfo - Информационное сообщение, * esWarning - Предупреждающее сообщение, * esAlarm - Аварийное сообщение От типа будет зависеть окраска сообщения в журналах и перфикс перед тесктом. Так же влияет на фильтрацию сообщений в журнале. |
Text | Произвольный текст |
Пример:
Begin If ReadValue('Block7_Alarm') = 1 then Log(esAlarm, 'Авария на блоке №7'); end;
Функция LogTag
Описание:
Записывает в журнал сообщение с произвольным текстом и определенным типом c привязкой к каналу.
Обычно используется для обработки и записи предаварийных ситуаций.
Синтаксис:
LogTag(AName:string; State: TEventState; Text:string);
Параметры:
Параметр | Описание |
AName | Имя тега(канала) к которому будет привязано данное событие-сообщение. |
State | Тип сообщения.
Возможные типы: * esInfo - Информационное сообщение, * esWarning - Предупреждающее сообщение, * esAlarm - Аварийное сообщение От типа будет зависеть окраска сообщения в журналах и перфикс перед текстом. Так же влияет на фильтрацию сообщений в журнале. |
Text | Произвольный текст в котором можно использовать след.служебные шаблоны: ${Channel.Name} - имя тега ${Channel.Value} - значение тега ${User.Name} - имя текущего пользователя Например текст может быть такой: 'Значение канала ${Channel.Name} в предаварийной зоне | Значение: ${Channel.Value}. Пользователь ${User.Name}' |
Пример:
Begin If ReadValue('Tag1') < 5 then LogTag('Tag1', esWarning, 'Значение канала ${Channel.Name} в предаварийной зоне | Значение: ${Channel.Value}. Пользователь ${User.Name}'); end;