IEC 60870-5
Стандарт IEC 60870-5 определяет набор протоколов для контроля и управления с использованием постоянного соединения. Стандарт разработан рабочей группой 3 технического комитета 57 МЭК.
Существует идентичный ему российский стандарт ГОСТ Р МЭК 60870-5 «УСТРОЙСТВА И СИСТЕМЫ ТЕЛЕМЕХАНИКИ. Часть 5. Протоколы передачи.».
Изначально вся группа стандартов именовалась IEC 870. Позже к нему добавили префикс 60 и получился IEC 60870. Часть документов ГОСТ также имеет старый индекс ГОСТ Р МЭК 870.
Стандарт состоит из ряда документов, разбитых на две группы. Первая группа документов именуется базовыми стандартами и определяет набор протоколов. Вторая группа называется обобщающими стандартами (англ. companion standard) и проясняет взаимоотношения между базовыми стандартами при построении конкретного протокола для конкретной сферы применения.
Группа базовых документов
Взаимосвязь группы базовых документов с точки зрения сетевой модели OSI показана в таблице.
Процесс пользователя | Прикладные функции по IEC 60870-5-5 |
Прикладной уровень | Прикладные элементы информации по IEC 60870-5-4 |
Блоки данных прикладного уровня по IEC 60870-5-3 | |
Канальный уровень | Процедуры передачи по каналу по IEC 60870-5-2 |
Форматы кадра передачи по IEC 60870-5-1 | |
Физический уровень | RS-232 (ITU-T V.24 и V.28) |
IEC 60870-5-1
IEC 60870-5-1 «Transmission frame formats».
ГОСТ Р МЭК 870-5-1 «Форматы передаваемых кадров».
Стандарт определяет различные форматы кадров для данных. В частности, FT1.2 c фиксированным и переменным числом пользовательских данных.
Начало (0x10) |
Данные фиксированной длины |
Контрольная сумма (КС) |
Конец (0x16) |
Начало (0x68) |
Длина пакета |
Длина пакета (повтор) |
Повтор байта начала (0x68) |
Данные определенной выше длины |
Контрольная сумма (КС) |
Конец (0x16) |
Контрольная сумма = арифметическая сумма по модулю 256 всех пользовательских данных.
IEC 60870-5-2
IEC 60870-5-2 «Link transmission procedures».
ГОСТ Р МЭК 870-5-2 «Процедуры в каналах передачи».
Стандарт детерминирует диаграмму состояний узлов канала связи и переходы между ними по событиям в канале. Под событиями понимается передача или прием различных кадров, ошибки приема/передачи и т.п. Также на этом уровне осуществляется контроль целостности и последовательности кадров и данных, контроль потока, отсчет таймаутов.
В частности, уточняет структуру пользовательских данных:
Начало кадра (см. IEC 60870-5-1) |
Байт управления |
Поле адреса |
ASDU (только для кадров переменной длины) |
Конец кадра (см. IEC 60870-5-1) |
Байт управления
DIR | PRM=1 | FCB | FCV | Функциональный код |
PRM=0 | ACD | DFC |
Где:
DIR - физическое направление (только для балансной передачи): 1 - от A к B, 0 - от B к A;
PRM - 1 - сообщение от первичной станции, 0 - сообщение от вторичной станции;
FCB (Frame Count Bit) - бит счетчика кадров, передаваемых первичной станцией, служит для защиты от потери и дублирования кадров при искажениях в канале связи;
При передаче каждого нового сообщения в режиме S2 SEND/CONFIRM или S3 REQUEST/RESPOND тому же адресату (вторичной станции) значение бита FCB изменяется на обратное (кадры нумеруются по модулю 2). Повторная передача кадра с тем же значением FCB производится в двух случаях: когда ответный кадр от вторичной станции бракуется и когда ответ отсутствует в течение установленного тайм-аута.
FCV - бит, указывающий актуальность функции бита FCB:
1 - изменение бита FCB актуально и должно контролироваться при приеме,
0 - изменение бита FCB (по сравнению с предыдущим кадром) не должно контролироваться при приеме, но значение FCB должно запоминаться для контроля изменения при приеме следующего кадра с FCV=1;
ACD - 1 - наличие на вторичной станции высокоприоритетной информации - класса 1 (режим S3 ЗАПРОС/ОТВЕТ);
DFC - управление потоком данных: 1 - дальнейшие сообщения могут вызвать переполнение каких-либо буферов памяти.
Функц. код | Тип кадра | Функция | FCV | |
U* | B* | |||
0 | Посылка с ожиданием | Сброс удаленного канала | 0 | 0 |
1 | Посылка с ожиданием | Сброс процесса пользователя | 0 | 0 |
2 | Посылка с ожиданием | Тестирование канала | - | 1 |
3 | Посылка с ожиданием | Пользовательские данные | 1 | 1 |
4 | Посылка без ожидания | Пользовательские данные | 0 | 0 |
5 | Резерв | - | - | |
6 | Использование по соглашению | - | - | |
7 | Посылка без ожидания | Сброс FCB в 0 (Только для МЭК 60870-5-103) | 0 | 0 |
8 | Общий запрос с ожиданием (870-5-5, п. 6.5) | Общий запрос о наличии данных класса 1 при магистральной структуре | 0 | - |
9 | Запрос с ожиданием | Запрос статуса канального уровня | 0 | 0 |
10 | Запрос с ожиданием | Запрос данных класса 1 | 1 | - |
11 | Запрос с ожиданием | Запрос данных класса 2 | 1 | - |
12, 13 | Резерв | - | - | |
14, 15 | Использование по соглашению | - | - | |
*U - небалансная передача, B - балансная передача. |
Функц. код | Тип кадра | Функция | FCV | |
U* | B* | |||
0 | Подтверждение | Положительная квитанция | + | + |
1 | Подтверждение | Отрицательная квитанция | + | + |
2-5 | Резерв | - | - | |
6 | Использование по соглашению | - | - | |
7 | Ответ | Конец последовательности блоков | + | + |
8 | Ответ | Пользовательские данные | + | - |
9 | Ответ | Запрошенные данные недоступны | + | - |
10 | Резерв | - | - | |
11 | Ответ | Статус канального уровня | + | + |
12 | Резерв | - | ||
13 | Использование по соглашению | - | ||
14 | Канальный сервис не работает | |||
15 | Канальный сервис отсутствует | |||
*U - небалансная передача, B - балансная передача. |
Поле адреса
Поле адреса определяет адрес контролируемой станции. Может быть разной длины (обычно 1 или 2 байта). В балансном режиме данное поле имеет нулевую длину (направление определяется битом DIR.
IEC 60870-5-3
IEC 60870-5-3 «General structure of application data».
ГОСТ Р МЭК 870-5-3 «Общая структура данных пользователя».
IEC 60870-5-4
IEC 60870-5-4 «Definition and coding of application information elements».
ГОСТ Р МЭК 870-5-4 «Определение и кодирование элементов пользовательской информации».
IEC 60870-5-5
IEC 60870-5-5 «Basic application on functions».
ГОСТ Р МЭК 870-5-5 «Основные прикладные функции».
Группа обобщающих документов
Обобщающий стандарт (англ. companion standard) проясняет взаимоотношения между базовыми стандартами при их совместном использовании в определенной области. Представляет собой выборку из излишне универсальных базовых документов и других стандартов.
IEC 60870-5-101
IEC 60870-5-101 «Companion standard for basic telecontrol tasks».
ГОСТ Р МЭК 60870-5-101 «Обобщающий стандарт по основным функциям телемеханики».
Физический уровень
Используется асинхронный интерфейс (UART) с 1 стопбитом, 1 битом четности и 8 битами данных. Регламентирован стандартный ряд скоростей от 300 до 9600 бод. Стандарт допускает использование других интерфейсов в специализированных применениях.
Обязательно правило передачи R3 IEC 60870-5-1, которое определяет, что между символами одного кадра не допускаются паузы более чем длительность одного бита. Тем не менее стандарт не требует контроля длительности пауз.
Формат кадров
Стандарт допускает исключительно формат кадра FT1.2 согласно IEC 60870-5-1. Допускается три вида кадров: с переменной длиной блока; с фиксированной длиной блока; одиночного байта. Кадр с переменной длиной блока используется для передачи данных (ASDU). Кадр с фиксированной длиной блока используется для передачи команд. Одиночный байт используется для подтверждений обмена.
В таблице ниже приведен формат кадра с переменной длиной блока. Поля между Start Frame и Stop Frame называются блоком данных прикладного уровня (ASDU, англ. application specific data unit). В протоколе IEC 60870-5-104 этот блок имеет аналогичный формат.
Формат кадра с переменной длиной блока | ||||
---|---|---|---|---|
Data unit | Имя (длина, байт, если более 1) | Function | ||
Start Frame | Start Character | |||
Length Field (*2) | Total length of Frame | |||
Start Character (повтор) | ||||
Control Field | Indicates control functions like message direction | |||
Link Address (0, 1 или 2) | Сетевой адрес | |||
ASDU Identifier | Type Identifier | Все данные в одном ASDU имеют одинаковую структуру и тип. Значения 1..127 стандартизованы, остальные могут назначаться разработчиком прибора. | ||
Variable Structure Qualifier | Indicates whether type contains multiple information objects or not | |||
COT (1 or 2) | Причина передачи | |||
ASDU Address (1 or 2) | Denotes separate segments and its address inside a device | |||
Данные-1 | Information Object Address (1, 2 или 3) | Идентификатор данных | ||
Information Elements (n) | Данные | |||
Метка времени (0, 3 или 7) | Данные могут снабжаться стандартной меткой времени длиной 3 или 7 байт в размерности миллисекунд | |||
Данные-2 | ----- | |||
----- | ----- | |||
Данные-m | ----- | |||
Stop Frame | Checksum | Used for Error checks | ||
Stop Char | Indicates end of a frame |
IEC 60870-5-102
IEC 60870-5-102 «Companion standard for the transmission of integrated totals in electric power systems».
ГОСТ Р МЭК 60870-5-102 «Обобщающий стандарт по передаче интегральных параметров в энергосистемах».
IEC 60870-5-103
IEC 60870-5-103 «Companion standard for the informative interface of protection equipment».
ГОСТ Р МЭК 60870-5-103 «Обобщающий стандарт по информационному интерфейсу для аппаратуры релейной защиты».
IEC 60870-5-104
IEC 60870-5-104 «Network access for IEC 60870-5-101 using standard transport profiles».
ГОСТ Р МЭК 60870-5-104 «Доступ к сети для ГОСТ Р МЭК 870-5-101 с использованием стандартных транспортных профилей».
Документ формализует инкапсуляцию блока ASDU из документа 60870-5-101 в стандартные сети TCP/IP. Поддерживается как Ethernet так и модемное соединение с использованием протокола PPP. Криптографическая безопасность данных формализована в стандарте IEC 62351[англ.]. Стандартный порт TCP 2404.
См. также
Примечания
Ссылки
- Основные положения базовых стандартов ГОСТ Р МЭК на устройства и системы телемеханики. Вулис А., Сумительнов В. Часть 1 и часть 2.
- OpenSCADA. Подсистема «Сбор данных (DAQ)» – KA ProtocolFT3 (АПСТМ)
- Описание протокола МЭК 60870-5-101 для чайников
- Github - IEC 60870-5-101 Server Client Simulator, Windows Linux Implementation
- IEC 60870-5-104 Server Client Simulator, Windows Linux Implementation - Github
- Некоторые особенности реализации стандарта IEC-60870-5-104