- DNP3
-
DNP3 (Distributed Network Protocol) — это протокол передачи данных используемый для связи между компонентами АСУ ТП. Был разработан для удобного взаимодействия между различными типами устройств и систем управления. Может применяться на различных уровнях АСУ ТП.
Содержание
Введение
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, как IEEE Std 1815-2010
Реализации
- DNP3 protocol C++ library - открытая (MIT) реализация на C++ от Turner Tech
- Open source Distributed Network Protocol - открытая (Apache) реализация на C++ от Green Energy Corp
Ссылки
- DNP Users Group — группа пользователей DNP3, членство платное
- A DNP3 Protocol Primer — Базовый технический обзор протокола
Это заготовка статьи о компьютерах. Вы можете помочь проекту, исправив и дополнив её.
Это примечание по возможности следует заменить более точным.Категории:- Промышленные сети
- Сетевые протоколы
- Автоматизация производства
Wikimedia Foundation. 2010.