Interested Article - DNP3

DNP3 ( англ. Distributed Network Protocol ) — это протокол передачи данных , используемый для связи между компонентами АСУ ТП . Был разработан для удобного взаимодействия между различными типами устройств и систем управления. Может применяться на различных уровнях АСУ ТП .

Существует расширение Secure Authentication для DNP3 для безопасной аутентификации.

Введение

DNP3 базируется на трех уровнях сетевой модели OSI : прикладном (оперирует объектами основных типов данных), канальном (предоставляет несколько способов извлечения данных) и физическом (в большинстве случаев используются интерфейсы RS-232 и RS-485 ).

Каждое устройство имеет свой уникальный адрес для данной сети, представленный в виде целого числа от 1 до 65520.

Основные термины:

  • Outstation ведомое устройство .
  • Master ведущее устройство .
  • Frame (фрэйм) — пакеты, передаваемые и принимаемые на канальном уровне. Максимальный размер пакета 292 байта.
  • Static data (постоянные данные) — данные, ассоциированные с каким-либо реальным значением (например, дискретным или аналоговым сигналом)
  • Event data (событийные данные) — данные, ассоциированные с каким-либо значимым событием (например, изменения состояния, достижение значением пороговой отметки). Предоставляется возможность присоединения временной метки.
  • Variation (вариация) — определяет как интерпретируется значение, характеризуется целым числом.
  • Group (группа) — определяет тип значения, характеризуется целым числом (например, постоянное аналоговое значение относится к группе 30, а событийное аналоговое значение к группе 32). Для каждой группы назначен набор вариаций, с помощью которых интерпретируются значения этой группы.
  • Object (объект) — данные фрэйма, ассоциированные с каким-то конкретным значением. Формат объекта зависит от группы и вариации.


Список вариаций:

Вариации для постоянных данных
Значение
1 32-битное целое с флагами
2 16-битное целое с флагами
3 32-битное целое
4 16-битное целое
5 32-битное с плавающей точкой с флагами
6 64-битное с плавающей точкой с флагами
Вариации для событийных данных
Значение
1 32-битное целое с флагами
2 16-битное целое с флагами
3 32-битное целое с флагами и меткой времени
4 16-битное целое с флагами и меткой времени
5 32-битное с плавающей точкой с флагами
6 64-битное с плавающей точкой с флагами
7 32-битное с плавающей точкой с флагами и меткой времени
8 64-битное с плавающей точкой с флагами и меткой времени
Флаги подразумевают под собой наличие специального байта со следующими информационными битами: источник данных on-line, источник данных был перезагружен, соединение с источником потеряно, запись значения форсирована, значение вне допустимых границ.
Фрэйм
Заголовок Данные
10 B до 282 B
Заголовок фрэйма
Синхронизация Длина Контроль соединения Адрес назначения Исходный адрес CRC
2 B 1 B 1 B 2 B 2 B 2 B
  • Синхронизация — 2 байта синхронизации, позволяющие получателю идентифицировать начало фрэйма.
  • Длина — количество байт в оставшейся части пакета без учета октетов CRC.
  • Контроль соединения — байт для координирования приема/передачи фрэйма.
  • Адрес назначения — адрес устройства, которому назначается передача.
  • Исходный адрес — адрес устройства, осуществляющего передачу.
  • CRC CRC для байт заголовка

Раздел данных DNP3 фрэйма содержит (помимо самих данных) по 2 байта CRC для каждых 16 байт передаваемой информации. Максимальное количество байт данных (не включая CRC ) для одного фрэйма — 250.

Стандартизация

23 июля 2010 года стандартизирован институтом IEEE , как

Реализации

  • — открытая ( MIT ) реализация на C++ от
  • — открытая ( Apache ) реализация на C++ от

Примечания

  1. . DNP.org (8 ноября 2011). Дата обращения: 21 октября 2013. Архивировано из 23 сентября 2015 года.

Ссылки

  • — группа пользователей DNP3, членство платное
  • — Базовый технический обзор протокола
Источник —

Same as DNP3