4.1.4.6.1. Опросчик МЭК 60870-5-104

 
 
Опросчик МЭК 60870-5-104 работает в составе Astra.Server, который является частью системы для сбора, анализа и регулирования параметров технологического процесса.
 
Опросчик МЭК 60870-5-104 реализует опросчик в соответствии с ГОСТ Р МЭК 870-5-104-2004 и расширением стандартного диапазона типов IEC_CT1.
 
Основными функциями опросчика МЭК 60870-5-104 являются:
опрос подчиненных станций;
управление подчиненными станциями (отправка команд ТУ и ТР).
 
Опросчик МЭК 60870-5-104 является событийным модулем. Работая в составе Astra.Server опросчик МЭК 60870-5-104, получает данные со станции при изменении значения параметра, а также опрашивает подчиненные станции, циклически отправляя подчиненным станциям запросы. Полученные данные через интерфейсы ядра сохраняются в оперативную базу данных (ОБД). Ядро Astra.Server при получении изменившихся сигналов уведомляет об изменениях значений сигналов другие модули, которые обслуживают эти сигналы, в том числе и модуль OPC DA Server. Далее модуль OPC DA Server передает данные клиентам, подписанным на изменившиеся сигналы.
 
 
 
Модуль работает в двух режимах: РАБОТА и РЕЗЕРВ.
 
Опросчик МЭК 60870-5-104 производит параллельный опрос активного источника в составе станции по нескольким каналам связи. При параллельном опросе источника (когда количество каналов больше 1) применяются типы данных с меткой времени.
 
Для упорядочивания событий по времени и для получения времени наступления событий на подчиненных станциях имеется возможность синхронизации времени.
 
Для быстрого выявления неполадок связи поддерживается тестирование соединения согласно ГОСТ Р МЭК 870-5-104-2004.
 
Для расширения функциональных возможностей кроме поддержки стандартных типов данных МЭК, поддерживаются пользовательские типы данных.
Имеется возможность подключения 65534 подчиненных станций. Адрес 65535 является широковещательным, применяется при синхронизации времени и общем опросе.
История работы модуля сохраняется в журнале работы модуля. Изменение флага записи в журнал модуля может производиться динамически, т.е. без перезапуска Astra.Server.
 

Режимы работы модуля

 
Модуль Опросчик МЭК 60870-5-104 может работать в двух режимах: РАБОТА или РЕЗЕРВ. Режим функционирования модуля в Astra.Server устанавливает ядро. В процессе функционирования режим может измениться.
 
Режим РЕЗЕРВ предназначен для повышения надежности системы управления. Повышение надежности происходит благодаря тому, что при выходе из строя Astra.Server, содержащего активный модуль, происходит быстрое переключение на другой Astra.Server, и при этом минимизируются потери данных со станции. При работе двух модулей одновременно переключения нет. В режиме РЕЗЕРВ модуль имеет 2 варианта работы, вариант работы в режиме РЕЗЕРВ настраивается в параметрах конфигурации:
проводить опрос, при этом отсутствует выдача команд ТУ и команд ТР. В этом состоянии минимальное время для перехода в режим РАБОТА;
закрыть соединение.
 

Опрос подчиненных станций

 
При запуске модуля Опросчик МЭК 60870-5-104 происходит его инициализация. Процедура инициализации работы модуля требуется для установки модуля в правильное рабочее состояние до того, как начнется опрос и передача данных. Процесс инициализации включает в себя:
чтение конфигурационных данных модуля;
подписка у ядра на получение уведомлений об изменениях сигналов;
проверка корректности настройки адресов для сигналов уведомлений;
постановка сигналов уведомлений на обслуживание;
построение списка очереди опроса.
 
Так же во время инициализации модуля устанавливается соединение с подчиненными станциями и их источниками. При установленном соединении модуль отправляет станциям сообщение о своей готовности принимать данные.
 
Конфигурация модуля включает в себя список станций, номера которых соответствуют номеру КП. Каждая станция может содержать от 1 до 4 источников данных. Каждый источник данных может содержать от 1 до 4 каналов связи.
 
Опрос активного источника в составе станции ведется по всем каналам параллельно.
 
Общий опрос станции проводится периодически, период задается в настройках конфигурации.
 
Модуль Опросчик МЭК 60870-5-104 является событийным и получает данные со станции при изменении значения параметра, а также в зависимости от настроек подчиненной станции получает данные при изменении качества сигнала и метки времени.
 
Для получения данных с подчиненной станции, необходимо создать сигналы подписки на эти данные в конфигураторе Astra.Server.
 
Если адрес сигнала с подчиненной станции не обслуживается модулем, то пришедшие данные игнорируются. Если у подчиненной станции нет подписки на обслуживание команды отправленной модулем, то команда игнорируется.
 
Если полученные данные с подчиненной станции не успевают обрабатываться и очередь данных достигает максимального размера (параметр конфигурации), то опрос станции не останавливается, но происходит запись в журнал работы модуля об этом событии. Данные, которые не входят в очередь – игнорируются.
В ответ на команду общего опроса модулю приходят кадры данных.
 
 
При достижении количества кадров для подтверждения w модуль отправляет уведомление подтверждения данных, в котором находится количество полученных кадров. Если по каналу не проходит каких-либо сообщений за интервал тестирования t3, то отправляется команда тестирования связи. После отправки команды модуль ожидает сообщение подтверждения тестирования промежуток времени t2.
 
Параметр
Описание
w
Количество входящих кадров для подтверждения.
t1
Интервал отправки данных. Таймаут при посылке данных. Если нет подтверждения на отправленные данные в течение этого времени, то сигналу выставляется качество COMM_FAILURE, и начинается отчет Таймаута потери связи (параметр конфигурации). В течение Таймаута потери связи модуль пытается восстановить соединение с подчиненной станцией. Если связь не восстановлена, то всем сигналам модуля выставляется плохое качество. При этом должно выполняться t2<t1.
t2
Таймаут подтверждения данных. Промежуток времени, после которого модуль должен выслать сообщение подтверждения пришедших данных. При получении данных от станции модуль увеличивает счетчик пришедших пакетов данных, когда истекает время t2, модуль высылает число пакетов, полученных за это время, для проверки верности передаваемых данных.
t3
Интервал тестирования. Период отправки команд тестирования. Если в течение этого промежутка времени по каналу связи не проходит, каких-либо сообщений, то отправляется команда тестирования связи. После отправки команды модуль ожидает сообщение подтверждения тестирования промежуток времени t1.

Качество сигналов

 
Качества сигналов, выставляемых коммуникационным модулем приведены в таблице ниже.
 
Числовое значение качества
Идентификатор качества
Расшифровка
4
CONFIG_ERROR
сигнал неправильно сконфигурирован
8
NOT_CONNECTED
сигнал принят на обслуживание, но устройство еще не инициализировано
12
DEVICE_FAILURE
ошибка инициализации устройства
24
COMM_FAILURE
КП нет на связи
28
OUT_OF_SERVICE
модуль не запущен
64
UNCERTAIN
связь установлена, но значения еще не пришли
192
GOOD
значение сигнала достоверно
216
LOCAL_OVERRIDE
значение достоверно, введено вручную
 
Для обеспечения дополнительной информации о качестве сигнала модуль Опросчик МЭК 60870-5-104 поддерживает дополнительные статусы для определенных протокольных типов сигналов. Статус состоит из шести определенных битов (флагов) качества, которые могут устанавливаться независимо друг от друга:
 
Флаг
Описание
OV
Флаг переполнения. Значение величины объекта информации лежит вне заранее определенного диапазона значений:
0 — нет переполнения;
1 — переполнение.
BL
Флаг блокировки. Значение величины объекта информации блокировано для передачи, оно остается в состоянии, в котором было до блокировки. Блокировка и деблокировка инициируются местными блокирующим устройством или автоматически на основании местной величины:
0 — нет блокировки;
1 — блокировка.
SB
Флаг замещения. Значение величины объекта информации поступает на вход от оператора или от автоматического источника:
0 — нет замещения;
1 — произведено замещение.
NT
Флаг актуальности. Значение величины актуально, если большинство опросов было успешным. Оно неактуально, если оно не обновлялось в течение заданного промежутка времени или было недоступно:
0 — актуальное значение;
1 – неактуальное значение.
IV
Флаг действительности. Значение величины действительно, если правильно получено. Данный флаг используется для указания месту назначения, что значение величины может быть неправильным и не должно использоваться:
0 — действительное значение;
1 — недействительное значение.
CY
Флаг переноса:
0 — за соответствующий период интегрирования не произошло переполнения счетчика;
1 — за соответствующий период интегрирования произошло переполнения счетчика.
 
При взведенных флагах статуса сигналу выставляется определенное ОРС качество. Преобразование статуса в качество для сигналов стандартного диапазона протокольных типов с номерами идентификаторов 1, 3, 30, 31 приведено в таблице ниже.
 
№ бита
Взведенный флаг
ОРС качество
1
BL
GOOD_Spec3 (204)
2
SB
GOOD_Spec2 (200)
3
GOOD (192)
4
NT
UNCERTAIN (64)
5
IV
BAD (0)
 
Преобразование статуса в качество для сигналов стандартного диапазона протокольных типов с номерами идентификаторов 5, 7, 9, 11, 13, 20, 32, 33, 34, 35, 36 приведено в таблице ниже.
 
№ бита
Взведенный флаг
ОРС качество
1
BL
GOOD_Spec3 (204)
2
SB
GOOD_Spec2 (200)
3
GOOD (192)
4
NT
UNCERTAIN Engineering Units Exceeded (84)
5
NT
UNCERTAIN (64)
6
IV
BAD (0)
 
Если в регистре статуса присутствует несколько взведенных флагов, то результирующее ОРС качество будет наихудшим среди качеств, соответствующих каждому из флагов.
 

Параллельный опрос источника

 
Модуль Опросчик МЭК 60870-5-104 имеет возможность обмена данными с активным источником станции по нескольким каналам связи в параллельном режиме. Максимальное количество каналов связи Master-Slave равно 4. Количество каналов настраивается в параметрах конфигурации.
 
Модуль Опросчик МЭК 60870-5-104 производит опрос активного источника в параллельном режиме (производится опрос по всем активным каналам источника). Активными источником является, тот в составе которого имеется как минимум один канал с работающим протоколом МЭК. При старте модуля Опросчик МЭК 60870-5-104 активным станет тот источник, который первым установит TCP соединение хотя бы по одному каналу связи.
 
В процессе работы модуля может произойти смена активного источника по следующим причинам:
ошибка по протоколу МЭК;
ошибка TCP соединения;
принудительная смена активного источника командой пользователя;
захват активности источником с более высоким приоритетом.
 
Автоматическая смена активного источника происходит при появлении потенциально активного источника с более высоким приоритетом или при разрыве связи по всем каналам с текущим активным источником. Потенциально активным источником считается тот, у которого есть TCP соединение, как минимум по одному каналу связи. Появление на связи потенциально активного источника сопровождается проверкой его приоритета. Если приоритет потенциально активного источника выше приоритета активного источника, то происходит смена активного источника на новый источник. Если при появлении потенциально активного источника у станции ещё не было активного источника, то потенциально активный источник становится активным автоматически.
 
Деактивация активного источника сопровождается посылкой команды STOPDT по всем каналам источника. При деактивации источника TCP соединение не рвется и продолжается обмен кадрами жизнеохраны (test_act, test_con).
 
Активация источника сопровождается параллельной рассылкой по всем его каналам (с установленным TCP соединением) команд: STARTDT, синхронизация времени и общий опрос.
 
Параллельный опрос не допускает использование сигналов без метки времени. При параллельном опросе источника по нескольким каналам модуль получает несколько значений сигнала от источника, но в ядро устанавливается значение сигнала с меткой времени позднее текущей (в данный момент установленной в ядре). Таким образом повторное получение данных игнорируется.
 
Управляющие воздействия подаются параллельно по всем каналам источника, которые имеют активированный МЭК. По первому подтверждению доставки кадра с управляющей информацией, формируется сигнал доставки со значением равным 3. Остальные подтверждения, не генерируют изменения значения сигнала доставки.
 

Алгоритмы валидации входящих значений

 
Модуль Опросчик МЭК 60870-5-104 поддерживает два алгоритма валидации входящих значений с меткой времени:
Проверка верхнего ограничения метки времени;
Проверка принадлежности метки времени доверительному интервалу.
 
В результате обработки сигналу устанавливаются качество и метка времени с учетом параметров выбранного алгоритма.
 
Алгоритм и параметры обработки задаются при конфигурировании модуля в настройках станции.
 

Проверка верхнего ограничения метки времени

 
Если метка времени сигнала превышает величину предельного отклонения (P0) относительно текущего времени сервера Tnow, то сигнал считается недостоверным с качеством QUALITY_DEVICE_FAILURE (12).
 
Величина P0 задаётся в параметре настройки станции (А1) Предельное отклонение метки времени сигнала, сек. Если значение параметра равно 0, то контроль отклонения метки времени не ведется.
 

Проверка принадлежности метки времени доверительному интервалу

 
Если метка времени сигнала Ts попадает в определённый интервал относительно текущей метки времени сервера Tnow и метки времени последнего сохраненного значения Tlast, то сигналу устанавливаются качество и метка времени, соответствующие данному интервалу.
 
Отклонение
Описание
P1
Минимальное негативное отклонение метки времени полученного значения относительно метки времени последнего сохраненного значения Tlast, при котором значение считается недостоверным. Задаётся в параметре настройки станции (А2) Негативное отклонение метки времени, с. Значение по умолчанию 60 секунд.
P2
Максимальное позитивное отклонение метки времени полученного значения относительно метки времени сервера Tnow, при котором значение считается достоверным. Задаётся в параметре настройки станции (А2) Допустимое отклонение метки времени, с. Значение по умолчанию 60 секунд.
P3
Максимальное позитивное отклонение метки времени полученного значения относительно метки времени сервера Tnow, при котором значение не будет учитываться. Задаётся в параметре настройки станции (А2) Максимальное допустимое отклонение метки времени, с. Значение по умолчанию 52560000 минут (100 лет).
 
В таблице приведены значения качества и метки времени, устанавливаемые сигналу при попадании в соответствующий интервал.
 
Интервал
Условие интервала
Качество
Метка времени
1
Ts ≤ Tlast – P1
OPC_QUALITY_BAD (0)
Tlast + 1 мс
2
Tlast – P1 < Ts ≤ Tlast
OPC_QUALITY_GOOD (192)
Tlast + 100 нс
3
Tlast < Ts ≤ Tnow + P2
OPC_QUALITY_GOOD (192)
Ts
4
Tnow + P2 < Ts ≤ Tnow + P3
OPC_QUALITY_BAD (0)
Tnow
5
Tnow + P3 < Ts
Значение отбрасывается

Отправка управляющих и регулирующих воздействий

 
Под управляющими и регулирующими воздействиями подразумеваются команды ТУ и ТР. Отправка команд выполняется, когда пара резервируемых серверов активна и Astra.Server находится в режиме РАБОТА.
 
Чтобы сразу после активации источника в очередь на отправку добавились текущие значения всех исходящих сигналов, используйте параметр Отправлять все исходящие сигналы при активации источника.
 
Для команд ТУ/ТР модуль позволяет настраивать сигналы доставки. Значения сигналов доставки дает понимание в каком состоянии находится отправленная команда.
 
Алгоритм отправки команд ТУ/ТР и формирования значения сигнала доставки:
1. Каждая станция обладает собственной независимой исходящей очередью команд.
2. Добавление команд ТУ/ТР в очередь происходит после успешного прохождения проверок:
управляющие данные должны быть хорошего качества;
сервер должен находиться в состоянии, подразумевающем управление.
Признаком успешного помещения команды ТУ/ТР в очередь является изменение значения соответствующего сигнала доставки на 1. Если данные не прошли проверку, то значение сигнала доставки меняется на -4.
3. Проверка первого элемента очереди на наличие устаревших данных (параметр Время отведенное на отправку команды в секундах). Устаревшие команды ТУ/ТР изымаются из очереди, а их сигналам доставки устанавливается значение -3.
4. Отправка команд ТУ/ТР:
команды отправляются в активный источник;
отправка команды в активный источник осуществляется параллельно по всем каналам;
некоторые каналы могут отказывать в передаче (нет соединения, не активен протокол МЭК, канал находится в состоянии ожидания);
отправка считается успешной, если хотя бы один канал отправил кадр с командой;
отправленные команды ТУ/ТР изымаются из очереди;
после каждой успешной попытки отправки команды увеличивается специальный счетчик и создается структура данных для ожидания подтверждения;
значение сигнала доставки меняется на 2, если была успешная попытка отправки команды.
5. Если доставка не подтверждена, то проверяется не закончились ли попытки отправки (параметр Количество повторов команд управления при их недоставке):
если попытки отправки подошли к концу, то сигналу доставки присваивается значение -2;
если ещё имеются попытки отправки, то команды снова возвращаются в очередь для новой попытки отправки.
6. Если доставка подтверждена, то значение сигнала доставки меняется на 3. Подтверждение отправляется по любому из каналов, которые были задействованы при отправке команды.
 
Ниже представлена таблица с возможными значениями сигнала доставки.
Состояние
Значение
Команды успешно помещены в очередь на отправку
1
В ожидании подтверждения доставки
2
Доставка подтверждена
3
Не удалось отправить
-1
Подтверждение доставки не получено
-2
Команды устарели и были изъяты из очереди на отправку
-3
Предварительные проверки не были пройдены и команды ТУ/ТР не были помещены в очередь на отправку
-4
 

Синхронизация времени

 
Чтобы иметь правильную хронологическую последовательность данных, которые передаются модулю, время подчиненной станции должно быть синхронизировано с временем модуля. В начале работы модуля синхронизация происходит после инициализации системы.
 
Команда синхронизации времени содержит информацию о дате и времени. Информация должна быть скорректирована на станции. Величина корректировки времени определяется как сумма задержки передачи и произведения длины кадра синхронизации на скорость передачи, согласно ГОСТ Р МЭК 60870-5-104. Время исчисляется в десяти миллисекундных тиках с начала года.
 
Синхронизация времени между подчиненной станцией и модулем Опросчик МЭК 60870-5-104 выполняется в случаях если:
1. В настройках модуля Опросчик МЭК 60870-5-104 установлен параметр Интервал синхронизации станции, мин.
2. Подчиненной станция имеет возможность корректировать время или в настройках модуля IEC Slave установлен флаг Корректировать время по команде опросчика.