Протокол МЭК 60870-5-104
Описание
МЭК 60870-5-104 – протокол телемеханики, предназначенный для передачи сигналов в систему верхнего уровня, регламентирующий использование сетевого доступа по протоколу TCP/IP. Чаще всего применяется в энергетике для информационного обмена между энергосистемами, а также для получения данных от измерительных преобразователей (вольтметры, измерительные преобразователи и прочее).
Особенностями протокола МЭК 60870-5-104 являются:
- малое количество трафика, что актуально для передачи информации через сотовые каналы связи
- поддержка инициативных сообщений от опрашиваемого устройства
- передача аналоговых значений по апературе - изменение значимого порога
- поддержка меток времени
- поддержка синхронизации времени
Процедура настройки
Практически все настройки в протоколе МЭК 60870-5-104 являются критически важными для правильной работы протокола.
Необходимо задавать настройки сервера и клиента идентичными.
Для приема и передачи используется один и тот же реализованный протокол МЭК 60870-5-104 - отличие только в настройках.
Режим клиента (опрос нижестоящих устройств)
ПО ТМИУС может принимать информацию с различных устройств, с различными настройками для каждого устройства. Количество устройств ограничено мощностью устройства, на котором использует ПО ТМИУС. Для каждого параметра есть всплывающая подсказка при наведении на соответствующее поле.

Пример конфигурационного файла
Скачать файл можно по ссылке: Пример конфигурационного файла для приема данных в МЭК 60870-5-104
Настройки протокола МЭК 60870-5-104

Описание - необязательный текстовый параметр
Сигнал исправности - обязательный параметр - любой созданный сигнал в базе, например, iec_port104:1
Старт/Стоп - Управление передачей с использованием процедуры Старт/Стоп. Пассивная/Активная сторона. (По умолчанию - Активная)
Параметр K - Количество переданных APDU на квитанцию. (По умолчанию - 12)
Параметр W - Количество принятых APDU на квитанцию. (По умолчанию - 8)
Таймаут t0 - Время ожидания ответа на STARTDT. (По умолчанию - 30)
Таймаут t1 - Таймаут в случае не подтверждения последнего ADPU. (По умолчанию - 15)
Таймаут t2 - Таймаут для подтверждения ADPU. (По умолчанию - 10)
Таймаут t3 - Таймаут для проверки канала тестовыми ADPU (По умолчанию - 20)
Длина адреса ASDU - (По умолчанию - 2)
Длина причины передачи - (По умолчанию - 2)
Длина адреса объекта - (По умолчанию - 3)
Лог файл - Сохранять обмен по протоколу в лог-файл (По умолчанию - нет)
Размер лог-файла - Максимальный размер лог-файл (По умолчанию - 100 Кб)
I (данные), S (квитанции), U (канал) - какие данные включать в лог файл
Настройки канала для протокола МЭК 60870-5-104

Канал TCP - активировать или деактивировать канал
Описание - необязательный текстовый параметр
Сигнал исправности - обязательный параметр - любой созданный сигнал в базе, например, iec_tcpport104:1
Сигнал блокировки - необязательный параметр. Для блокировки сигнал должен быть в любом состоянии, кроме достоверного "0".
Тип - Клиент - соединяется с другим сервером, Сервер - ждет подключения. (По умолчанию - Клиент)
IP адрес - Для клиента удаленный адрес, для сервера локальный IP адрес. Если не указывать, ожидания подключения будет происходить на всех сетевых интерфейсах. (По умолчанию IP адрес устройства)
TCP порт - для клиента удаленный порт, для сервера - локальный (По умолчанию - 2404)
Скорость (бод/с) - Скорость канала для расчета оптимального таймаута передачи. (По умолчанию поле пустое)
Старт-пауза - пауза перед стартом в секундах для первичного сбора телеметрии. (По умолчанию поле пустое)
Сохранять связь - Не отключать связь по TCP порту на время рестарта ПО ТМИУС. (Рекомендуется отключать данную опцию)
В лог - писать данные в лог на уровне порта.
Настройки приема данных для протокола МЭК 60870-5-104

Прием данных - активировать или деактивировать прием
Описание - необязательный текстовый параметр
Синхр. удаленное время - синхронизировать удаленное время по данному протоколу обмена. (По умолчанию - 1 минута)
Временная зона - смещение в UTC время в часах на удаленной стороне. (По умолчанию - 3)
Летнее время - учитывать летнее время удаленной стороны. (По умолчанию - Нет)
Период контроля ТУ - данная опция используется в случае, когда требуется автоматически передавать телеуправление по протоколу МЭК 60870-5-104 и контролировать наличие срабатывание. Например, функция оперативной блокировки. (По умолчанию поле пустое)
Настройки уровня ASDU протокола МЭК 60870-5-104

Описание - необязательный текстовый параметр
Адрес - Адрес ASDU (по умолчанию - 1)
Период опроса - период общего опроса в минутах (по умолчанию 1 минута)
Выравнивать период - выравнивать период опроса на начало минуты или часа (по умолчанию - нет)
Период передачи - Время передачи циклической информации. Задается в секундах. (по умолчанию - Нет)
Ожидать инициализацию - После подключения ждать окончанию инициализации (пакет 70). Данная опция может сильно влиять на обмен с нижестоящим устройством (по умолчанию - Нет)
Игнорировать метку времени - Игнорировать метку времени для ТС и ТИ (по умолчанию - Нет)
Период опроса счетчиков - период общего опроса счетчиков командой '101' в минутах (по умолчанию 1 минута)
ТС/ТИ/ТУ
Составление базы данных происходит исходя из опрашиваемого устройства
Для формирования базы рекомендуется использовать папки.
Объекты информации ТС и ТС2 бита имеют настройки только адреса для передачи на верхний уровень и Сигнал в базе данных
Объекты информации ТИТ имеют настройки адреса для передачи на верхний уровень, Сигнал в базе данных
Объекты информации ТУ и ТУ2 имеют настройки адреса для передачи на верхний уровень, Сигнал в базе данных, Управление (Без указания типа/Включить/Отключить/Сброс 1/Сброс 0), Исполнение (1 стадийная или 2 стадийная команда), Метка времени, Сигнал Контроля)
Режим сервера (передача данных на верхний уровень)

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

Описание - необязательный текстовый параметр
Сигнал исправности - обязательный параметр - любой созданный сигнал в базе, например, iec_port104:1
Старт/Стоп - Управление передачей с использованием процедуры Старт/Стоп. Пассивная/Активная сторона. (По умолчанию - Пассивная)
Параметр K - Количество переданных APDU на квитанцию. (По умолчанию - 12)
Параметр W - Количество принятых APDU на квитанцию. (По умолчанию - 8)
Таймаут t0 - Время ожидания ответа на STARTDT. (По умолчанию - 30)
Таймаут t1 - Таймаут в случае не подтверждения последнего ADPU. (По умолчанию - 15)
Таймаут t2 - Таймаут для подтверждения ADPU. (По умолчанию - 10)
Таймаут t3 - Таймаут для проверки канала тестовыми ADPU (По умолчанию - 20)
Длина адреса ASDU - (По умолчанию - 2)
Длина причины передачи - (По умолчанию - 2)
Длина адреса объекта - (По умолчанию - 3)
Лог файл - Сохранять обмен по протоколу в лог-файл (По умолчанию - нет)
Размер лог-файла - Максимальный размер лог-файл (По умолчанию - 100 Кб)
I (данные), S (квитанции), U (канал) - какие данные включать в лог файл
Настройки канала для протокола МЭК 60870-5-104

Канал TCP - активировать или деактивировать канал
Описание - необязательный текстовый параметр
Сигнал исправности - обязательный параметр - любой созданный сигнал в базе, например, iec_tcpport104:1
Сигнал блокировки - необязательный параметр. Для блокировки сигнал должен быть в любом состоянии, кроме достоверного "0".
Тип - Клиент - соединяется с другим сервером, Сервер - ждет подключения. (По умолчанию - Сервер)
IP адрес - Для клиента удаленный адрес, для сервера локальный IP адрес. Если не указывать, ожидания подключения будет происходить на всех сетевых интерфейсах. (По умолчанию поле пустое)
TCP порт - для клиента удаленный порт, для сервера - локальный (По умолчанию - 2404)
Скорость (бод/с) - Скорость канала для расчета оптимального таймаута передачи. (По умолчанию поле пустое)
Старт-пауза - пауза перед стартом в секундах для первичного сбора телеметрии. (По умолчанию 10-15 секунд. Рекомендуется указывать время, за которое контроллер обновит первичную базу телеметрии)
Сохранять связь - Не отключать связь по TCP порту на время рестарта ПО ТМИУС. (Рекомендуется отключать данную опцию)
В лог - писать данные в лог на уровне порта.
Настройки передачи данных для протокола МЭК 60870-5-104

Формат времени - СР56, СР24 - формат метки времени передаваемых сигналов (По умолчанию - СР56)
Размер буфера передачи - требуемый размер буфера для передачи данных по спорадике. (По умолчанию - 1000)
Таймаут отложенной передачи - Время, в течение которого данные должны аккумулироваться при отсутствии связи. (По умолчанию - 30 минут)
Сигнал сброса буфера - Необязательный параметр. Буфер передачи сбрасывается, если его сигнал не равен "0" и достоверен. Используется для резервирования каналов. (По умолчанию поле пустое)
Размер пакета - максимальный размер пакета в байтах. (По умолчанию - 100)
Синхр. локальное время - синхронизировать локальное время по данному протоколу обмена. (По умолчанию - Да)
Временная зона - смещение в UTC время в часах на удаленной стороне. (По умолчанию - 3)
Летнее время - учитывать летнее время удаленной стороны. (По умолчанию - Нет)
Настройки уровня ASDU протокола МЭК 60870-5-104

Описание - необязательный текстовый параметр
Адрес - Адрес ASDU (по умолчанию - 1)
Адреса последовательности - SQ=1 (только первый, если возможно), SQ=0 (адрес для каждого элемента) (по умолчанию - SQ=1)
Спорадическая передача - Настройки передачи спонтанных сигналов. Нет/Да, со временем/Да, без времени (по умолчанию - Да, со временем)
Период передачи - Время передачи циклической информации. Задается в секундах. (по умолчанию - Нет)
Со временем - Передавать метку времени для общего опроса и циклических данных. Нет/Да (по умолчанию - Нет)
Отложенная передача - передача архивированной информации при отсутствии канала связи. Нет/Да, только ТС/Да, ТС и ТИ (по умолчанию - Да, только ТС)
ТС/ТИ/ТУ

Составление базы данных происходит исходя из требуемого перечня телеметрии
Для формирования базы рекомендуется использовать папки.
Объекты информации ТС и ТС2 бита имеют настройки только адреса для передачи на верхний уровень и Сигнал в базе данных
Объекты информации ТИТ имеют настройки адреса для передачи на верхний уровень, Сигнал в базе данных и апертуру для передачи спорадики
Объекты информации ТУ и ТУ2 имеют настройки адреса для передачи на верхний уровень, Сигнал в базе данных и Исполнение (1 стадийная или 2 стадийная команда)