Информирование: Сервер (rtISrv/rtISrvSH)#
Утилита «Информирование: Сервер» предназначена для получения данных реального времени от произвольного количества специальных клиентов «Информирование: Источник данных» и отображения этих данных в графической форме.
Система информирования предает состояния определенного набора датчиков из общего объема конфигурации IngortechSCADA используемой на объекте в настоящий момент.
Источник данных получает данные от РТС сервера и передает их на сервер Информирования. При передаче данных, передаются только изменения значений относительно предыдущих переданных данных.
Основное окно#
Основное окно программы состоит из пяти областей:
Данные конфигурации текущего выбранного объекта информирования.
Дневник состояния - список сообщений генерируемые утилитой во время выполнения различных операций в виде выпадающего списка.
Состояние работы программы:
- Связь с сервером установлена.
- Программа находится в состоянии остановки связи с сервером.
- Связь с сервером отсутствует.
Основное меню#
Меню основного окна утилиты состоит из двух закладок:
Программа
Инструменты
Программа
Группа настроек Программа определяет поведение основного окна утилиты.
- Запустить/Остановить:
Запускает или останавливает процесс соединения с сервером.
- Сохранить данные:
При выборе пункта сохраняется текущий используемый список клиентов информирования и переданных ими данных конфигурации.
- Окно сообщений:
Окно отображает стандартное окно сообщений, создаваемых при работе программы.
- Настройка:
Отображает диалог настроек утилиты.
- Сохранить настройки:
Сохранение всех настроек утилиты.
- О программе:
Отображает стандартный диалог О Программе.
- Выход:
При выборе этого пункта завершается работа программы.
Инструменты
- Просмотр лога:
Запускает утилиту Журнал запуска информирования (
rtISrvLogView.exe
) для просмотра данных работы программы.
Список объектов#
В области Список объектов отображаются все объекты, с которыми когда-либо была установлена связь.
Каждый объект в списке - это отдельное соединение с источником информации.
Для облегчения идентификации источников информации в общем списке на экране, для каждого из них можно указать:
Регион, к которому относится источник информации.
Задать для него уникальное имя.
Эти и другие операции с объектами и регионами доступны из контекстного меню объектов и регинов, вызываемого при нажатии правой кнопки мыши на области списка объектов.
Каждый объект отображается с помощью цвета фона, установленного для его региона.
На элементе объекта отображаются:
Индикация состояния и качества связи.
Этот индикатор обозначает установлена ли связь с этим объектом в текущий момент и, если да, то цвет этого элемента обозначает уровень аварийности для передаваемых данных объекта.
Уровень аварийности обозначается цветом и может принимать значения: красный, желтый и зеленый, в зависимости от уровня аварийности.
Цветовое состояние индикатора устанавливается в настройках утилиты на закладке Отображение.
Наименование объекта, как оно задано при его настройке из контекстного меню объекта.
В случае, если объект не настроен или имя для него не задано, вместо имени будет отображаться уникальный идентификатор объекта, настраиваемый в параметрах утилиты Информирование: Источник данных.
При наведении мыши на объект появляется подсказка содержащая следующую информацию:
- Состояние:
Состояние связи.
Отключено - связь с объектом не установлена.
Подключено - связь с объектом установлена.
- Идентификатор:
Идентификатор объекта, установленный в параметрах Информирование: Источник данных.
- Название:
Название, установленное для этого объекта в его свойствах в утилите Сервер.
- Задержка значений:
Время удержания, установленное для этого объекта в параметрах Информирование: Источник данных.
- Последние данные:
Время, прошедшее с последнего приема данных.
Контекстное меню регионов и объектов#
При нажатии правой кнопки мыши на основном окне, в области отображения объектов, будет показано контекстное меню, которое позволяет выполнить операции с текущим выделенным в списке объектом.
В зависимости от того, на каком элементе будет вызвано контекстное меню, набор функций в нем будет различаться.
Контекстное меню можно вызвать для следующих объектов:
-
В контекстном меню можно настроить параметры отображения и привязки конкретного источника информации.
-
В контекстном меню можно настроить параметры отображения региона.
Меню вызвано на пустом месте области списка.
Управление списками регионов и объектов.
Контекстное меню области списка
При нажатии правой кнопки мыши на пустой области списка объектов будет отображено следующее контекстное меню:
Добавить новый регион
При выборе этого пункта откроется диалог Редактирование региона.
В диалоге Редактирование региона можно установить следующие параметры:
- Название:
Наименование региона.
- Цвет фона:
Цвет фона заголовка.
- Цвет шрифта:
Цвет шрифта заголовка.
Добавить новый объект
При выборе этого пункта откроется окно Редактирование объекта.
В диалоге Редактирование объекта можно установить следующие параметры:
- Название:
Наименование объекта.
- Идентификатор:
Персональный номер объекта.
- Регион:
Регион нахождения объекта. Регион выбирается из выпадающего списка. Добавить новый регион можно из любого контекстного меню.
Информация
При добавлении нового объекта, контекстное меню можно вызывать на любом пустой области окна Список объектов.
После заполнения окна Редактирование объекта, элемент будет размещен под заголовком соответствующим выбранному региону.
Контекстное меню Региона
При нажатии правой кнопки мыши на наименовании любого региона будет отображено следующее контекстное меню:
- Редактировать регион:
Открывает окно Редактирование региона, в котором можно изменить наименование региона, цвета фона и шрифта.
Окно Редактирование региона можно открыть двойным нажатием ЛКМ на поле региона.
- Переместить выше по иерархии / Переместить ниже по иерархии:
Используя перемещения по иерархии весь блок состоящий из заголовка с наименованием региона и объектов размещенных ниже заголовка будет перемещен выше или ниже в общем списке регионов.
- Удалить регион:
Удаляет регион, вместе с привязанными к региону объектами из области Список объектов.
Перед удалением появляется стандартное окно подтверждения команды.
- Добавить новый регион / Добавить новый объект:
Добавляет новый регион или объект согласно описания в разделе Контекстное меню области списка.
Контекстное меню Объекта
При нажатии правой кнопки мыши на наименовании любого объекта будет отображено следующее контекстное меню:
Из всплывающего меню доступны следующие функции:
Редактировать объект
Открывает диалог Редактирование объекта.
В диалоге Редактирование объекта можно установить следующие параметры:
- Название:
Наименование объекта.
- Идентификатор:
Персональный номер объекта.
- Регион:
Регион нахождения объекта. Регион выбирается из выпадающего списка. Добавить новый регион можно из любого контекстного меню.
Диалог Редактирование объекта можно открыть двойным нажатием ЛКМ на объекте.
- Изменить регион объекта:
Вызывает выпадающий список смены региона из заранее заполненного списка регионов.
Редактируемый объект будет перемещен в выбранный регион.
- Удалить объект:
Удаляет выбранные объект. Перед удалением появляется стандартное окно с подтверждением действия.
- Добавить новый регион / Добавить новый объект:
Добавляет регион или новый объект согласно описанию в разделе Контекстное меню области списка.
Данные конфигурации и измерений#
Область Переменные основного окна отображает данные конфигурации и измерений текущего выбранного объекта.
В левой части окна Переменные отображается данные конфигурации для текущего объекта в виде дерева, последовательно сгруппированные по имени «Объекта контроля» и «Точки контроля», как они заданы в конфигурации сервера РТС, связанного с этим объектом информирования.
В правой части окна отображается общий список измерений, передаваемые в реальном времени утилитой Информирование: Источник данных.
При выборе в дереве конфигурации, в правой части, в области списка данных реального времени будут отображаться только те данные, которые совпадают с выбранным условием, то есть при выборе определенного объекта контроля будут отображаться только данные переменных связанные с этим объектом контроля, при выборе точки контроля, будут отображаться переменные, связанные с выбранной точкой контроля, расположенной на выбранном объекте контроля.
Для отображения полного списка всех переменных необходимо выбрать корневой элемент данных конфигурации.
Данные реального времени
В списке данных измерений отображаются данные передаваемые утилитой Информирование: Источник данных в реальном времени.
Данные измерений отображаются в виде таблицы и состоят из следующих данных:
- Первая колонка:
Время прошедшее с начала передачи данных от источника информирования.
- Имя:
Наименование переменной, как она указана в конфигурации сервера РТС, связанного с этим источником информирования.
- Последнее значение:
Значение и состояние переменной, полученные при последнем получении данных.
- Время измерения:
Время передачи последнего значения в формате
чч.мм.сс
.В случае, если данных для этой переменной не было получено эта колонка будет пустой.
- Точка контроля:
Наименование «Точки контроля», как она задана в конфигурации сервера РТС, связанного с этим объектом информирования.
Диалог настроек#
Настройка утилиты осуществляется через панель меню.
Окно настроек Параметры состоит из четырех закладок:
Общие#
Раздел Общие содержит общие настройки работы утилиты.
Раздел состоит из двух групп настроек:
Подтверждения
В разделе находятся настройки вывода стандартного окна подтверждения команд.
Если , то при При завершении программы, При остановке сервера, При сохранении настроек на экран будет выведено окно с подтверждением действия.
Если , то действие будет выполнено сразу без подтверждения.
Интерфейс
- Авто-сохранение настроек:
Если , то при завершении программы настройки утилиты будут автоматически сохранены в конфигурационном файле.
- Сворачивать при закрытии:
Если , то при нажатии на кнопку
х
окно программы будет не закрыто, а свернуто.- Запускать свернутым:
Если , то при запуске программы она автоматически будет свернута.
- Разрешить запуск нескольких копий программы:
Если , то можно будет запустить несколько копий программы.
Если , и утилита уже запущена, то новая копия программы активирует окно предыдущей копии программы и автоматически завершится.
Сервер#
Область настроек Сервер описывает настройки серверной части программы.
Раздел состоит из трех групп настроек:
Базовые
- Автоматически запускать сервер при запуске программы:
Если , то при запуске утилиты сервер будет запущен автоматически и программа перейдет с состояние «Запущен», как если бы осуществлялось подключение к серверу через меню
.- Порт ожидания соединения:
Номер порта, который будет использован для ожидания соединения с клиентами-источниками данных системы Информирование.
- Период проверки клиентов:
Устанавливает время проверки связи с клиентами-источниками данных системы Информирование.
В случае, если клиент не передает данные дольше указанного времени связь с ним будет считаться потерянной и клиент будет удален из списка установленных соединений.
Данные
- Каталог сохранения данных конфигурации:
Каталог сохранения файла с историей смены конфигураций.
- Файл журнала событий:
Открывает стандартное окно для выбора файла для сохранения данных работы программы.
- Сохранять в лог получаемые значения:
Если , то все значения переданные серверами будут сохранены в лог файл.
- Сохранять в лог получаемую конфигурацию:
Если , то все конфигурации будут сохраняться в лог файл.
Лог файл
- Запретить лог файл:
Если , то при работе программы лог файл не создается.
Если , то при работе программы все данные сохраняются в лог файл.
- Размер лог файла:
Устанавливает лимит размера лог файла.
При достижении указанной величины лог файл будет удален и начат заново.
Значение 0 байт предполагает, что создается один лог файл без ограничения размера.
- Файл лога:
Указывается лог файл, в который происходит сохранение данных работы программы.
Отображение#
К группе настроек относятся цветовые настройки окна утилиты, состояния и качества связи с объектом.
Раздел состоит из двух групп настроек:
Состояния
В группе Состояния устанавливается цветовая схема, которая будет отображаться в области Список объектов на индикаторе состояния и качества связи .
Перевод цветовой схемы
В утилите используется следующие цвета для отображения состояния полученных измерений.
Цвета из списка используются для отображения измерений в соответствующих состояниях и используются для отображения значения измерения в области Данных конфигурации текущего выбранного объекта.
Настройки окна утилиты
В нижней части окна настроек Отображение располагаются настройки фоновых цветов главного окна утилиты, настройка шрифта области данных и расположение областей в окне утилиты.
Способ расположения элементов
Меняет положения окон с горизонтального на вертикальный.
Список шахт#
К группе настроек «Список шахт» относятся настройки текстовых надписей (заголовков) и расположения элементов в области Списка регионов и объектов информирования.
Заголовок
Блок для создания заголовка основного окна утилиты.
Группа настроек свойств надписей элементов и их расположение относительно друг друга.
- Размер шрифта названия региона / шахты:
Определяет размер шрифта, которым будет написаны наименования шахт и регионов.
- Высота / длина заголовка шахты:
Устанавливает высоту и длину блока, ка котором располагается наименование шахты.
- Использовать крупные значки индикации состояния:
При , используется крупный значок индикации.
- Фон под картинкой:
Если , то под значком индикации будет заливка соответствующая цвету блока объекта.
Если , то под значком индикации не будет заливки цвета блока объекта.
- Ширина границ между объектами:
Устанавливает расстояние между блоками объектов.
Группа настроек цвета и наименования региона для объектов, которые не относятся ни к одному из существующих регионов.
Если при создании в области Списка регионов и объектов информирования нового объекта с помощью контекстного меню не будет задан регион из выпадающего списка, то вместо региона будет помещена надпись указанная в пункте Название.
Для цветового оформления заголовка региона будут использованы цвета выбранные в пунктах Цвет текста и Цвет фона.
Изменить название региона можно через контекстное меню.
Информация
После установки настроек необходимо, для их сохранения необходимо нажать кнопку .
При нажатии кнопки настройки сохранены не будут.
Протокол обмена данными#
В этом разделе описан протокол обмена данными, используемый утилитами «Информирование: Сервер» и Информирование: Источник данных.
Каждый датчик может находиться в следующих состояниях:
- IVS_NOTWORK:
Значение
1
. Неработоспособное состояние или датчик отключен.- IVS_OK:
Значение
2
. Безопасное состояние измерения.- IVS_H:
Значение
3
. предаварийное состояние;- IVS_HH:
Значение
4
. Аварийное состояние.
Каждый датчик может быть связан со следующими контролируемыми параметрами:
- IPT_METAN:
Значение
1
. Метан.- IPT_CO:
Значение
2
. Оксид углерода.- IPT_PIL:
Значение
3
. Концентрация пыли.
Порядок обмена данными
Обмен данными осуществляется по технологии клиент-сервер, когда любые передачи от сервера происходят только в ответ на команду, принятую от клиента.
Для передачи данных используется постоянно поддерживаемых канал TCP/IP
типа STREAM
.
Ответственность за поддержание канала лежит на клиенте.
Если сервер не получает от клиента данных дольше чем установленный период, то связь с клиентом считается потерянной, отображение клиента переключается в неактивное состояние и канал связи закрывается со стороны сервера.
Все данные, которыми обмениваются клиент и сервер оформлены в синтаксисе языка XML
и передаются в текстовом виде.
Общий формат команд
От клиента серверу передается команда в формате:
КОМАНДА\n[ДАННЫЕ\n]\n
Где:
- КОМАНДА:
Имя команды, которую требуется выполнить на сервере.
- n:
Текстовый перевод строки в виде единичного символа с кодом
13
.- ДАННЫЕ:
Опциональные данные, передаваемые вместе с командой, которая подразумевает получение дополнительных данных от клиента.
Команды завершаются дополнительным символом перевода строки (символом с кодом 13
).
Формат ответа сервера
Сервер отвечает на любую обработанную им команду.
Ответ сервера может быть двух видов: «ОК
» или «ОШИБКА
».
- ОК:
Ответ ОК говорит о том, что команда успешно обработана.
- ОШИБКА:
Ответ ОШИБКА говорит о том, что в процессе выполнения команды произошла ошибка, расшифровка которой следует далее за идентификатором ответа.
Формат ответа «ОК»:
ОК\n
Формат ответа «ОШИБКА»:
ERROR: ТЕКСТ\n
Где:
- ТЕКСТ:
Текстовая расшифровка произошедшей ошибки.
Порядок использования команд
Последовательность работы клиента и использования команд следующая:
Установка связи с сервером, открытие потокового канала передачи данных TCP/IP.
Идентификация клиента на сервере с использованием команды
HELO
.Передача текущей конфигурации и данных с использованием команды
CFG
.
Далее, по мере изменения состояния переменных, до завершения связи с сервером:
Передача новых значений датчиков с использованием команды
VALUE
.Периодическая проверка линии связи с сервером с использованием команды
IDLE
.
Команда HELO
#
Команда приветствия, с которой начинается работа клиента сразу после установки связи.
Предназначена для идентификации клиента и установки уникальных параметров клиента, влияющих на отображение информации в оболочке сервера.
Формат:
HELO\nПАРАМЕТРЫ\n\n
Где:
- ПАРАМЕТРЫ:
Строка в формате XML с идентификационными данными клиента в виде:
<Params id="<id>" tUder="<value>"/>
Возможные параметры команды:
- id:
Идентификатор клиента (задается в настройках каждого клиента).
- tUder:
Время, в секундах, которое установлено у клиента источника данных в качестве параметра времени удержания значения.
Пример команды и ответа сервера:
> HELO\n<Params id="001" tUder="5"/>\n\n
< ОК\n
Команда IDLE
#
Команда предназначена для поддержания канала связи между клиентом и сервером в случае небольшого количества передаваемых данных.
Формат:
IDLE\n
Пример команды и ответа сервера:
> IDLE\n
< ОК\n
Команда VAR
#
Команда передачи значения датчика, использующаяся для передачи изменений в состояниях или значениях датчиков от клиента к серверу.
Формат:
VAR\nДАННЫЕ\n\n
Где:
- ДАННЫЕ:
Данные датчика в виде строки в формате XML.
Возможные параметры команды:
- name:
Имя датчика в текстовой форме.
- state:
Номер статуса датчика в виде значения, используемого для статусов аналоговых переменных в ПО IngortechSCADA.
- value:
Измеренное значение в виде числа с плавающей точкой.
- measure:
Время измерения в формате
DD-MM-YYY HH:MM:SS
.- status:
Состояние датчика в терминах системы информирования (числовое значение одной из констант IVS_xxx).
Пример команды и ответа сервера:
> VAR\n <VALUE Name="name1" state="11" value="0.500" measure="22-11-2010 11:00:03" status="2"/> \n\n
< ОК\n
Команда CFG
#
Команда передачи конфигурации, т.е. списков объектов контроля, точек контроля и контролируемых датчиков.
Команда конфигурации передается за сеанс связи один раз, после установки связи с сервером и успешной идентификации командой HELO
.
Конфигурация содержит как информацию о расположении датчиков, так и значения и состояния их на момент выполнения команды.
Дальнейшие обновления значений или состояний производятся командой VAR.
Формат:
CFG\ncfg_xml\n\n
Где:
- cfg_xml:
Описание конфигурации в синтаксисе XML.
Конфигурация состоит из текста в формате XML, который описывает все используемые датчики, объекты контроля и точки контроля, использующиеся с этими датчиками.
Формат конфигурации:
<Object Version="4E62D224">
<PLACES>
<Record Name="name1"/>
...
</PLACES>
<POINTS>
<Record Name="name1"/>
...
</POINTS>
<SENSOR>
<Record Name="name1" param="1" ln_obj="1" ln_point="1" state="11" value="0.500" measure="22-11-2010 11:00:03" status="2"/>
..
</SENSOR>
</Object>
Где:
- Version:
Версия используемой на сервере IngortechSCADA конфигурации.
- Name:
Имя объекта контроля в теге PLACES, имя точки установки в теге POINTS или имя датчика в теге SENSOR.
- param:
Идентификатор контролируемого параметра в виде числа со значение одной из констант IPT_xxx.
- ln_obj:
Порядковый номер используемого объекта контроля из списка PLACES, начиная с 0.
- ln_point:
Порядковый номер используемой точки установки из списка POINTS, начиная с 0.
- state:
Номер состояния датчика в значениях используемых в ПО IngortechSCADA для аналоговых переменных.
- value:
Измеренное значение в виде числа с плавающей точкой.
- measure:
Время измерения в формате
DD-MM-YYY HH:MM:SS
.- status:
Состояние датчика в терминах системы информирования (числовое значение одной из констант IVS_xxx).
Пример команды и ответа сервера:
> CFG\n<Object Id="Шахта N18" Version="4E76FFE6" LastAction="4E7712AC">\n
<PLACES>\n
<Record Name="ВУ "/>\n
<Record Name="РПП-6 гор. -450 м"/>\n
<Record Name="Общешахтный контроль №1, №4"/>\n
<Record Name="ПЗ "/>\n
</PLACES>\n
<POINTS>\n
<Record Name="Не используется"/>\n
<Record Name="Команда-отклик-уведомление"/>\n
<Record Name="== 30 ЮЛ / разделитель"/>\n
<Record Name="РПП-6 гор.-450 м"/>\n
<Record Name="БПР-3 (РПП-6 гор.-420 м)"/> \n
<Record Name="КРУГ-6 (РПП-6 гор.-420 м)"/> \n
</POINTS>\n
<SENSOR>\n
<Record Name="M11#3" param="1" i_unit="" ln_obj="0" ln_point="11" state="9" value="4.231" measure="10-11-2010 11:03:01" status="4" LastAction="4E7712A5"/>\n
<Record Name="M11#4" param="1" i_unit="" ln_obj="0" ln_point="12" state="9" value="4.286" measure="10-11-2010 11:03:01" status="4" LastAction="4E7712A9"/>\n
<Record Name="M11#6" param="1" i_unit="" ln_obj="0" ln_point="17" state="9" value="4.091" measure="10-11-2010 11:03:01" status="4" LastAction="4E7712AC"/>\n
<Record Name="M11#8" param="1" i_unit="" ln_obj="0" ln_point="16" state="9" value="4.286" measure="10-11-2010 11:03:01" status="4" LastAction="4E7712A7"/>\n
<Record Name="M15#3" param="1" i_unit="" ln_obj="2" ln_point="54" state="9" value="4.412" measure="10-11-2010 11:03:01" status="4" LastAction="4E77128A"/>\n
<Record Name="M11#5" param="1" i_unit="" ln_obj="0" ln_point="13" state="9" value="2.500" measure="10-11-2010 11:03:01" status="3" LastAction="4E77129D"/>\n
</SENSOR>\n
</Object>\n
\n\n
< ОК\n
Ключи командной строки#
Использование командной строки для передачи данных программе описано в разделе «Ключи командной строки».
Утилита rtISrv.exe
поддерживает следующие ключи командной строки:
rtISrv.exe [ПАРАМЕТРЫ]
|
Устанавливает имя для основного лог файла программы. Если ключ не указан, то для файла лога будет использовано имя по умолчанию, соответствующее имени программы, с указанием даты создания и расширением |
|
Если указан, то лог файл вестись не будет. |
|
Если ключ не указан, то для файла конфигурации будет использовано имя по умолчанию, которое, как правило, совпадает с именем программы. |
|
Устанавливает имя для программы. Установленное имя будет отображаться в заголовке программы и в заголовке окна с сообщениями. Это имя используется для того, чтобы различить различные копии программы. Если ключ не указан, то используется имя по умолчанию, совпадающее с именем программы. |
|
Если указан, то при запуске программа передаст сигнал о завершении предыдущей запущенной копии программы. После передачи команды на завершение, программа автоматически закроется. Этот ключ использует имя, установленное с помощью ключа Если предыдущая копия запущена, то программа дождется ее завершения. Если предыдущей копии программы не будет обнаружено, то программа сразу же завершится. |
|
Указывает что после запуска программа будет минимизирована. Если программа поддерживает отображение значка в системном лотке и установлен параметр конфигурации «Убирать при минимизации», то программа будет автоматически скрыта в системный лоток. |
|
Автоматически запускать утилиту при старте приложения. |
|
Сохранять в лог файл дополнительную информацию о низко-уровневой передаче данных серверу. |
|
Установить порт, который будет использоваться для приема соединений клиентов. |
|
Использовать указанный путь для сохранения данных (по умолчанию: |