Группа ДИАГНОСТИКА

  @e_SIAD

  @e_Alarm_Report

  @e_Logger

  @Net_Code

  @e_M_LINK_Host

  @e_DCS

  @e_MODBUS

  @e_PLC1Type

  @e_PLC2Type

  @Above

  @Modem

  @SIAD_Synchronize

  @e_TCP_ModBus

  @RS_Reinit

  @e_OPC

  @Redundant

  @e_Dump

  @e_DDE

  @e_MLink_Slave

  @e_Connect

  @q_SIAD_Lost

  @e_IO_Error

  @q_Lost_Alarms

  @Idle_Loop

  @Graphics_Loop

  @q_Queue_Alarms

  @Calc_Loop

  @q_IP_Lost

  @q_IP_Send_Q

  @q_SIAD_Q

  @Node_Lock

В переменные типа INPUT данной группы записываются результаты диагностики различных параметров.

Как правило, посылка положительного значения в переменную типа OUTPUT обнуляет значение аналогичной переменной-счетчика типа INPUT.

Каналы, связанные с переменными данной группы, имеют подтип 15.

@e_SIAD

Дополнение к подтипу – 0.

В зависимости от атрибута Параметр (см. sysdiag_siad.tmc), данная переменная типа INPUT индицирует результаты соответствующей диагностики архивов SIAD.

   Если Параметр равен номеру архива (0 – System; 1 – SIAD1; 2 – SIAD2; 3 – SIAD3), то значение переменной индицирует код ошибки соответствующего архива (см. Коды диагностируемых ошибок ).

   Если Параметр = 128 (DEC), Work Mask, то установленные в 1 биты значения переменной указывают на работоспособность соответствующих архивов (бит 0 – System, бит 1 – SAID1 и т.д.).

   Если Параметр = 129 (DEC), Error Mask, то установленные в 1 биты значения переменной указывают на наличие критической ошибки соответствующих архивов (бит 0 – System, бит 1 – SAID1 и т.д.).

@e_Alarm_Report

Дополнение к подтипу – 1.

В данную переменную типа INPUT записываются результаты диагностики отчета тревог (см. Коды диагностируемых ошибок ).

@e_Logger

Дополнение к подтипу – 2.

Данная переменная зарезервирована.

@Net_Code

Дополнение к подтипу – 4.

В данную переменную типа INPUT записываются коды ошибок обмена по IP операционной системы.

@e_M_LINK_Host

Дополнение к подтипу – 5.

В данную переменную типа INPUT записывается код ошибки при обмене по протоколу M-LINK в режиме MASTER (см. Коды диагностируемых ошибок ).

@e_DCS

Дополнение к подтипу – 6.

В данную переменную типа INPUT записывается код ошибки при обмене по протоколу DCS (см. Коды диагностируемых ошибок ).

@e_MODBUS

Дополнение к подтипу – 7.

В данную переменную типа INPUT записывается код ошибки при обмене по протоколу MODBUS (см. Коды диагностируемых ошибок ).

@e_PLC1Type

Дополнение к подтипу – 8.

В данную переменную типа INPUT записывается код ошибки при обмене через драйвер t11 (см. Коды диагностируемых ошибок ).

@e_PLC2Type

Дополнение к подтипу – 9.

В данную переменную типа INPUT записывается код ошибки при обмене через драйвер t12 (см. Коды диагностируемых ошибок ).

@Above

Дополнение к подтипу – 10.

Значение этой переменной типа INPUT равно количеству ситуаций, когда реальное время цикла CALC превышало заданное.

@Modem

Дополнение к подтипу – 11.

В данную переменную типа INPUT записывается код ошибки при обмене по коммутируемым линиям (см. Коды диагностируемых ошибок ).

@SIAD_Synchronize

Дополнение к подтипу – 12.

Данная переменная зарезервирована.

@e_TCP_ModBus

Дополнение к подтипу – 13.

Если Параметр=0, в данную переменную типа INPUT записывается код ошибки при обмене по протоколу MODBUS TCP/IP (см. Коды диагностируемых ошибок ).

Если Параметр<>0, он задает номер устройства MODBUS TCP/IP, для которого данная переменная типа INPUT диагностирует ошибки:

   2, In – ошибка WINDOWS обмена по TCP (DEC, >=10000);

   95, C2 – ошибка устройства; если бит 7 (0x80) не установлен – ошибка, генерируемая самим устройством, если установлен – ошибка, генерируемая МРВ:

   0x80 – ошибка соединения;

   0x81 – соединение с устройством принудительно разорвано;

   96, C3 – число неудачных попыток соединения;

   97, C4 – число очисток приемного буфера; буфер принудительно очищается в случае некорректного ответа устройства на запрос (например, если ответ содержит неверное число байтов);

   98, C5 – разница между текущим временем ОС и последним обменом (в секундах, <=255).

При посылке значений в данную переменную типа OUTPUT выполняются следующие команды (номер устройства задается атрибутом Параметр<>0):

   3, 5 или 7 – блокировать обмен с устройством (разрыв соединения);

   2 – сбросить блокировку обмена;

   1 – сбросить ошибку TCP;

   16 – реинициализировать обмен;

   17 – реинициализировать обмен с инвертированием битов байта XXX.xxx.xxx.xxx IP-адреса;

   18 – реинициализировать обмен с инвертированием младшего бита байта xxx.xxx.XXX.xxx IP-адреса;

   19 – реинициализировать обмен с инвертированием 2 младших битов в байтах xxx.xxx.XXX.XXX IP-адреса.

@RS_Reinit

Дополнение к подтипу – 14.

Значение байта 0 (0x00FF) переменной типа OUTPUT задает номер последовательного порта (1 – COM1 и т.д.). Отличное от 0 значение байта 1 (0xFF00) инициализирует обмен через порт. При нулевом значении старшего байта реинициализируется указанный порт, инициализированный ранее.

@e_OPC

Дополнение к подтипу – 15.

В данную переменную типа INPUT записывается результат диагностики обмена по OPC (см. Коды диагностируемых ошибок ).

Если переменная имеет тип OUTPUT, то посылка в нее 0 сбрасывает код ошибки, а посылка любого другого числа переинициализирует все связи с OPC-серверами. При этом если в начальный момент времени сервер не был найден, то надо использовать полную реинициализацию (значение больше 255). Если связь была оборвана уже при работе, то можно провести частичную реинициализацию (значение меньше 255).

@Redundant

Дополнение к подтипу – 16.

Значение этой переменной типа INPUT равно времени (в секундах) отсутствия данных от резерва, указанного атрибутом Параметр.

@e_Dump

Дополнение к подтипу – 17.

В данную переменную типа INPUT записываются результаты диагностики дампа узла (см. Коды диагностируемых ошибок ).

@e_DDE

Дополнение к подтипу – 18.

В данную переменную типа INPUT записывается код ошибки при обмене по DDE (см. Коды диагностируемых ошибок ).

@e_MLink_Slave

Дополнение к подтипу – 19.

В данную переменную типа INPUT записывается код ошибки при обмене по протоколу M-LINK в режиме SLAVE (см. Коды диагностируемых ошибок ).

@e_Connect

Дополнение к подтипу – 20.

В эту переменную типа INPUT записывается код ошибки при обмене по TCP.

@q_SIAD_Lost

Дополнение к подтипу – 21.

Данная переменная типа INPUT индицирует число сообщений, которые не удалось вставить в очередь на запись в архив, заданный атрибутом Параметр (0 – System; 1 – SIAD1; 2 – SIAD2; 3 – SIAD3).

@e_IO_Error

Дополнение к подтипу – 22.

Эта переменная типа INPUT используется для индикации ошибок обмена с платами ввода/вывода, установленными в слоты контроллера (при ошибке устанавливается бит с номером, равным номеру слота).

@q_Lost_Alarms

Дополнение к подтипу – 23.

Данная переменная типа INPUT индицирует число сообщений, которые не удалось вставить в очередь на запись в отчет тревог.

@Idle_Loop

Дополнение к подтипу – 24.

В данную переменную типа INPUT записывается реальное время цикла 18, IDLE (см. Потоки монитора ).

@Graphics_Loop

Дополнение к подтипу – 25.

В данную переменную типа INPUT записывается реальное время цикла потока 16 (вызов графики) (см. Потоки монитора ).

@q_Queue_Alarms

Дополнение к подтипу – 26.

   Параметр=0 – значение переменной индицирует (INPUT) или задает (OUTPUT) величину первой очереди сообщений, генерируемых монитором. Эта очередь предназначена для сообщений, передаваемых по направлениям AR и G. Значение по умолчанию – 64000 строк.

   Параметр=1 – значение переменной индицирует (INPUT) или задает (OUTPUT) величину второй очереди сообщений, генерируемых монитором. Эта очередь предназначена для сообщений, передаваемых по всем направлениям, кроме AR и G. Значение по умолчанию – 64000 строк.

   Параметр=2 – значение переменной INPUT индицирует текущую величину первой очереди сообщений.

   Параметр=3 – значение переменной INPUT индицирует текущую величину второй очереди сообщений.

   Параметр=4 – значение переменной INPUT индицирует максимальный размер первой очереди, достигнутый за все время работы (отрабатывается только в профайлере).

   Параметр=5 – значение переменной INPUT индицирует максимальный размер второй очереди, достигнутый за все время работы (отрабатывается только в профайлере).

Если с помощью переменной с атрибутом Параметр=0,1 задать размер очереди меньше, чем текущее число сообщений в ней, из очереди удаляется соответствующее количество сообщений с младшими временами.

При посылке положительного значения в переменную OUTPUT с атрибутом Параметр=2,3 соответствующие очереди очищаются.

При посылке положительного значения в переменную OUTPUT с атрибутом Параметр=4,5 соответствующие переменные INPUT обнуляются.

@Calc_Loop

Дополнение к подтипу – 27.

   Параметр=0 – реальное время цикла CALC, мс (INPUT) (см. Время цикла монитора );

   Параметр=5 – заданный цикл TF, мс (INPUT/OUTPUT);

   Параметр=6 – реальное время цикла TF, мс (INPUT);

   Параметр=9 – заданный цикл FAST, мс (INPUT/OUTPUT);

   Параметр=10 – реальное время цикла FAST, мс (INPUT);

   Параметр=18 – заданный цикл IDLE, мс (INPUT/OUTPUT);

   Параметр=19 – реальное время цикла IDLE, мс (INPUT).

Время циклов CALC, TF, IDLE и FAST может быть задано также в конфигурационном файле узла – см. Файл CNF в разделе Задание параметров работы мониторов .

@q_IP_Lost

Дополнение к подтипу – 28.

Значение данной переменной типа INPUT равно количеству потерянных данных для отправки по IP.

@q_IP_Send_Q

Дополнение к подтипу – 29.

   Параметр=0 – переменная INPUT индицирует текущий размер очереди на отправку по IP (число пакетов);

   Параметр=1 – переменная INPUT (OUTPUT) индицирует (задает) максимальный размер очереди на отправку по IP. Данный параметр может быть задан также с помощью ключа QUEUE в файле *.cnf;

   Параметр=2 – переменная INPUT индицирует максимальный размер очереди, достигнутый за все время работы.

@q_SIAD_Q

Дополнение к подтипу – 30.

Атрибут Параметр этой переменной может принимать следующие значения (см. sysdiag_queuesiad.tmc):

   0…11, Queue System Queue SIAD3 Copy2 (функция 0)

   16…27, Lost System Lost SIAD3 Copy2 (функция 1)

   32…43, Used System Used SIAD3 Copy2 (функция 2)

   48…59, K System K SIAD3 Copy2 (функция 3)

   64…75, Count System Count SIAD3 Copy2 (функция 4)

   80…91, S System S SIAD 3 Copy2 (функция 5)

   96…107, First SystemFirst SIAD 3 Copy2 (функция 6)

   112…123, Last SystemLast SIAD 3 Copy2 (функция 7)

Значение переменной INPUT индицирует следующие характеристики:

   Параметр=0…11 – размер текущей очереди на запись в соответствующий архив (в процентах к максимальному числу записей);

   Параметр=16…27 – число потерянных сообщений для записи в соответствующий архив;

   Параметр=32…43 – приблизительный процент заполнения соответствующего архива. При старте МРВ значение этого параметра соответствует текущему уровню заполнения архива. После достижения значения 100 параметр обнуляется и затем снова растет до 100 по мере затирания старых записей новыми;

   Параметр=48…59 – коэффициент полезного использования объема соответствующего архива (в процентах);

   Параметр=64…75 – число сообщений, посланных в соответствующий архив с момента старта монитора;

   Параметр=80…91 – число запросов на выборку из соответствующего архива в очереди;

   Параметр=96…107 – время первой записи в соответствующем архиве;

   Параметр=112…123 – время последней записи в соответствующем архиве.

Значения 48-59 и 64-75 атрибута Параметр отрабатываются только в профайлере.

Номер выполняемой функции (0-7) и индекс архива (0-11) записываются соответственно в старший (0xF0) и младший (0x0F) полубайты байта 0 атрибута 93, C0 канала.

@Node_Lock

Дополнение к подтипу – 31.

Для удержания связи с узлом N при обмене через модем или по GPRS нужно присвоить значение N+1 переменной @Node_Lock типа OUTPUT:

   Параметр=0 – по всем RS;

   Параметр=<номер RS> – по заданному RS (1 – COM1).