НТК Интерфейс
ПО обеспечение поддержки "ОИК Диспетчер НТ" в качестве ОРС-сервера и ОРС-клиента
×
Меню

4.1.2.1. Описание файла конфигурации программного обеспечения поддержки «ОИК Диспетчер НТ» в качестве ОРС - клиента DA 2.0

Файл конфигурации состоит из разделов, название которых заключено в квадратные скобки “[]” и параметров, отделенных от значений знаком равенства “=”.
Раздел [OPC_Connection] определяет параметры подключения к серверу OPC. Подробное описание данного раздела представлено в Таблице №1.
 
Параметр
Назначение
Пример
MachineName
Необязательный параметр, задающий Windows имя компьютера, на котором запущен OPC сервер
MachineName=\\MY_PC
MachineName=.
MachineName=
ServerName
Обязательный параметр, определяющий имя OPC сервера для подключения (определяется программами мониторинга)
ServerName= Fastwel.UniOpc
ScanRate
Частота обновления значений тегов (OPC – параметр), мс
ScanRate=1000
DisableRefreshOPCGroup
Отключение обновления группы тегов ОРС
DisableRefreshOPCGroup=1
WaitBeforeConnect
Время ожидания перед попыткой соединения с ОРС-сервером
WaitBeforeConnect=5
WaitAfterConnect
Тайм-аут ожидания после соединения
WaitAfterConnect=20
UnreliableAsIV
Помечать параметры флагом Invalid
UnreliableAsIV=1
Таблица 2 – Раздел [OPC_Connection] файла конфигурации.
 
Раздел [AnalogPoints] задает соответствие аналоговых сигналов ОИК и тегов OPC и состоит из записей вида:
 
Для трехадресного пространства
<Канал:КП:объект>”=”<полное имя тега OPC>
 
Полное имя тега определяется программой мониторинга OPC и определяется на OPC-сервере, к которому производится подключение.
 
Или в случае представления имени тега 4-мя адресными полями в структурированном адресном пространстве OPC - сервера, где из имени объекта OPC возможно выделить номер, где значение <Size> задает количество параметров в группе, а имя тега OPC должно быть представлено как: “CHANNEL_*.RTU_*.GR1_*.OBJ_*.item_name”, где * - символ, замещаемый номером объекта в структуре OPC, выделенного из имени объекта. Имя тегов можно представить как (N1.N2.N3.N4.tag_name), где N1 задает номер канала, N2 задает номер КП, а N3 и N4 формируют номер объекта согласно следующей формуле:
 
номер_объекта_ОИК = (N3 - 1) * <Size> + N4,
 
Значения N1, N2, N3, N4 получаются посредством подстановки числовых значений из имен объектов OPC сервера.
В качестве значения объекта ОИК будет ТИТ, представленный одним из следующих типов данных OPC: VT_I2 (знаковое целое длиной 2 байта), VT_R4 (действительное длиной 4 байта), VT_R8 (действительное длиной 8 байт).
 
“Group”<Size>”=”<полное имя тега OPC в четырехадресном пространстве>
 
Примеры раздела [AnalogPoints]
Пример 1:
0:104:1=Device1.unit1.analog_1
 
В этом примере объект 1 в КП 104 на канале 0 принимает значения тега analog_1 группы unit1 устройства Device1 (Device1.unit1.analog_1) в трехадресном пространстве.
 
Пример 2:
Group32=Канал_*.КП_*.Сб_ТИ_*.ТИ_*.Значение_текущее
 
Часть структурированного адресного пространства сервера OPC для этого примера. В этом примере 32 значения тега Значение_текущее будут записаны в объекты (ТИТ) с номерами от 1 до (N3 -1)*32 + N4.
 
Раздел [StatusPoints] задает соответствие дискретных сигналов ОИК и тегов OPC и имеет синтаксис аналогичный разделу [AnalogPoints] за тем исключением, что в качестве значения объекта будет ТС, переданный одним из следующих типов данных: VT_UI1 (беззнаковое целое длиной 1 байт), VT_BOOL (логический тип данных).
 
Пример раздела [StatusPoints].
Пример 1:
0:1:1=Device1.unit1.bit_1
 
В этом примере объект 1 в КП 1 на канале 0 принимает значения тега bit_1 группы unit1 устройства Device1 (Device1.unit1.bit_1).
 
Пример 2:
Group32= Канал_*.КП*.Сб_ТС_*.ТС_*.Значение_текущее
В этом примере 32 значения тега Значение_текущее будут записаны в объекты (ТС) с номерами от 1 до (N3 -1)*32 + N4.
 
Пример файла конфигурации:
 
[OPC_Connection]
MachineName=.
ServerName=IFACE.OPC.GW
ScanRate=1000
 
[AnalogPoints]
0:105:6=Device1.unit1.analog_1
0:1:12=Device1.unit1.analog_2
Group48=Канал_*.КП_*.Сб_ТИТ2_*.ТИТ_*.Значение_текущее
Group24=Канал_*.КП_*.Сб_ТИТ_*.ТИТ_*.Значение_текущее
Group64=Канал_*.КП_*.Сб_ТИ_*.ТИ_*.Значение_текущее
 
[StatusPoints]
0:1:1=Device1.unit1.bit_1
0:2:1=Device1.unit1.bit_2
Group64=Канал_*.КП*.Сб_ТС_*.ТС_*.Значение_текущее
 
Важно: Для корректного сохранения настроек, добавьте Enter после последней строки в настройках задачи