Поддерживаемые протоколы связи
Обзор промышленных и IoT-протоколов связи, которые поддерживает платформа, — Modbus, OPC UA, MQTT и DLMS/COSEM.
Modbus (RTU / TCP)
Назначение и описание
Простой и широко распространённый промышленный протокол для обмена технологическими данными между контроллерами, датчиками и исполнительными механизмами. Разработанный в 1979 году компанией Modicon (ныне Schneider Electric), он стал фактическим стандартом промышленной автоматизации. Применяется в системах SCADA, ПЛК, частотных преобразователях, измерительных приборах и датчиках. Благодаря простоте реализации и минимальным требованиям к вычислительным ресурсам протокол идеально подходит для встраиваемых систем и устройств с ограниченным объёмом памяти.
Архитектура и модель данных
Регистровая модель данных строится на четырёх типах адресного пространства:
- Coils (0x) — дискретные выходы (чтение/запись битовых значений)
- Discrete Inputs (1x) — дискретные входы (только чтение)
- Input Registers (3x) — 16-битные входные регистры (только чтение)
- Holding Registers (4x) — 16-битные регистры хранения (чтение/запись)
Архитектура «клиент—сервер» (master—slave): ведущее устройство (master) инициирует запросы, ведомые (slave) отвечают. Каждое ведомое устройство имеет уникальный адрес (1–247). Протокол не содержит встроенной семантики данных — интерпретация значений регистров определяется на прикладном уровне и в документации устройства. Поддерживает операции чтения и записи одиночных и групповых регистров.
Транспорт
Modbus RTU:
- Последовательные линии RS-485 (до 32 устройств на шину, дальность до 1200 м) или RS-232 (соединение «точка—точка»)
- Двоичное представление данных
- Контроль целостности по CRC-16
- Скорость обмена: от 1200 до 115200 бод
- Полудуплексная передача
Modbus TCP:
- Инкапсуляция кадров Modbus в TCP/IP (порт 502)
- Заголовок MBAP (Modbus Application Protocol) для идентификации транзакций
- Полнодуплексная передача
- Возможность одновременной работы с несколькими устройствами
- Контрольная сумма не требуется (надёжность обеспечивает TCP)
Ключевые возможности
- Чтение и запись дискретных сигналов (Coils) и регистров
- Поддержка стандартных кодов функций (FC 01–06, 15–16, 23)
- Диагностические функции (FC 08)
- Чтение идентификационных данных устройства (FC 17, 43)
- Минимальные требования к вычислительным ресурсам устройств
- Простота реализации и отладки
- Низкая стоимость внедрения
- Обработка исключений и кодов ошибок
- Поддержка широковещательных сообщений (адрес 0) в RTU
- Масштабируемость до 247 устройств на линии (RTU) или без ограничений по TCP
OPC UA
Назначение и описание
Универсальный кроссплатформенный стандарт (OPC Unified Architecture, IEC 62541) для безопасного и структурированного обмена промышленными данными, метаданными и семантической информацией. Разработан организацией OPC Foundation как преемник классических спецификаций OPC DA/AE/HDA и устраняет зависимость от технологий Microsoft DCOM. Обеспечивает вертикальную и горизонтальную интеграцию в промышленных системах — от полевого уровня до корпоративных информационных систем (ERP, MES). Поддерживает концепции Industrie 4.0 и цифровых двойников благодаря богатым возможностям информационного моделирования.
Архитектура и модель данных
Объектно-ориентированная модель данных, представляющая информацию в виде адресуемого пространства узлов (Address Space):
- Узлы (Nodes) различных типов: Variable, Object, Method, View, DataType, ReferenceType
- Атрибуты узлов: Value, DataType, AccessLevel, Timestamp, Quality, DisplayName и др.
- Ссылки (References) между узлами: иерархические, ассоциативные, компонентные
- Типы данных: примитивы, структуры, массивы, перечисления
Поддерживаемые сервисы:
- Subscription — мониторинг изменений данных с настраиваемыми интервалами выборки и фильтрами
- Events & Alarms — асинхронные уведомления о событиях, тревогах и состояниях
- Historical Access — доступ к архивным данным и событиям
- Methods — удалённый вызов процедур на устройствах
Отраслевые информационные модели (Companion Specifications): машиностроение, энергетика, нефтегазовая отрасль, фармацевтика.
Транспорт
UA Binary Protocol поверх TCP/IP:
- Двоичный протокол с оптимизированной сериализацией (порт 4840)
- Высокая производительность и минимальные накладные расходы
HTTPS / SOAP:
- Профиль Web Services для интеграции с корпоративными системами
- Кодирование JSON для облачных приложений
OPC UA PubSub:
- Модель «издатель—подписчик» для распределённых систем
- Транспорт: UDP Multicast, MQTT, AMQP, Ethernet TSN
- Детерминированная передача для задач, критичных ко времени
Безопасность:
- Многоуровневые режимы безопасности (None, Sign, SignAndEncrypt)
- Сертификаты X.509 для аутентификации
- Шифрование AES, RSA
Ключевые возможности
- Информационное моделирование: передача не просто «сырых» значений, а сложных структурированных данных с семантикой, типизацией и метаданными
- Подписки с настраиваемыми интервалами опроса, фильтрами мёртвой зоны (deadband) и буферизацией
- События и система тревог с условной фильтрацией
- Вызов методов для управления устройствами и выполнения операций
- Доступ к историческим данным с агрегацией
- Обнаружение сервисов в локальных сетях
- Встроенная безопасность: шифрование канала, аутентификация по сертификатам или паре «имя пользователя/пароль», управление доступом на уровне узлов
- Резервирование серверов и отказоустойчивость
- Кроссплатформенность: Windows, Linux, VxWorks, QNX и другие ОС
- Масштабируемость: от микроконтроллеров до распределённых систем
MQTT
Назначение и описание
Лёгкий протокол передачи сообщений (Message Queuing Telemetry Transport) для телеметрии, удалённого мониторинга и управления IoT-устройствами, оптимизированный для ненадёжных сетей, ограниченной пропускной способности и высоких задержек. Разработан в 1999 году компанией IBM для мониторинга нефтепроводов, стандартизирован OASIS и ISO/IEC (20922:2016). Широко применяется в промышленном IoT, системах «умного дома», телематике транспортных средств и мобильных приложениях. Протокол ориентирован на минимизацию сетевого трафика и энергопотребления устройств.
Архитектура и модель данных
Асинхронная модель Publish/Subscribe с централизованным брокером:
- Publisher — устройство или приложение, публикующее сообщения в темы
- Subscriber — устройство или приложение, подписанное на получение сообщений из тем
- Broker — центральный сервер маршрутизации сообщений (Mosquitto, HiveMQ, EMQ X и др.)
Темы (Topics) — иерархическая структура путей для категоризации сообщений:
- Разделители уровней:
/(например,factory/building1/temperature) - Подстановочные символы:
+(один уровень),#(несколько уровней) - Пример подписки:
sensors/+/temperatureилиfactory/#
Формат данных определяется приложением: JSON, Protocol Buffers, XML, двоичные данные, текст.
Сохраняемые сообщения (Retained messages): брокер хранит последнее сообщение темы и доставляет его новым подписчикам.
Постоянные сессии (Persistent sessions): брокер сохраняет подписки клиента при разрыве соединения.
Транспорт
- Транспортный уровень: TCP/IP (порт 1883 для незащищённых соединений)
- TLS/SSL (порт 8883) для шифрования и аутентификации
- WebSockets для интеграции с браузерами и веб-приложениями
- Версии протокола: MQTT 3.1.1 (наиболее распространённая), MQTT 5.0 (расширенные возможности)
- Размер заголовка: минимум 2 байта (фиксированный заголовок)
- Механизм keep-alive: периодические PINGREQ/PINGRESP для контроля соединения
- Работа через брокер обеспечивает развязку издателя и подписчика, горизонтальное масштабирование и централизованное управление
Ключевые возможности
- QoS (Quality of Service) — три уровня гарантии доставки:
- QoS 0: At most once (без подтверждения)
- QoS 1: At least once (с подтверждением)
- QoS 2: Exactly once (четырёхэтапное квитирование)
- Минимальные сетевые накладные расходы: фиксированный заголовок 2 байта, эффективное двоичное кодирование
- LWT (Last Will and Testament): механизм автоматического уведомления о непредвиденном отключении устройства — брокер публикует заранее заданное сообщение, если клиент аварийно завершает сессию
- Clean Session / Persistent Session: возможность восстановления подписок и сообщений после переподключения
- Retained Messages: доступность последнего значения для новых подписчиков
- Низкое энергопотребление: идеально для устройств с батарейным питанием
- Масштабируемость: поддержка миллионов одновременных соединений на кластерах брокеров
- Подписки с подстановочными символами для гибкой фильтрации тем
DLMS / COSEM (IEC 62056)
Назначение и описание
Международный стандарт обмена данными с приборами учёта коммунальных ресурсов: электроэнергии, газа, воды и тепла (Device Language Message Specification / Companion Specification for Energy Metering). Разработан ассоциацией DLMS User Association совместно с IEC для обеспечения совместимости интеллектуальных приборов учёта в автоматизированных системах коммерческого учёта и биллинга (AMBS). Обеспечивает удалённый сбор показаний, контроль качества электроэнергии, управление тарифами и обнаружение несанкционированного доступа. Широко применяется операторами электросетей, поставщиками коммунальных услуг и интеграторами систем Smart Grid.
Архитектура и модель данных
Объектная модель COSEM (Companion Specification for Energy Metering):
- Данные прибора учёта представлены как логические объекты (COSEM objects) с классами интерфейсов
- OBIS-коды (Object Identification System) — шестибайтовый идентификатор для универсальной адресации параметров:
A-B:C.D.E*F- A — вид энергии (1=электричество, 6=тепло, 7=газ, 8=вода)
- B — измерительный канал
- C — физическая величина (например, 1=активная энергия)
- D — тип измерения (8=время интегрирования)
- E — тарифная зона
- F — глубина хранения истории
Протокол DLMS:
- Прикладной уровень по модели OSI
- Ассоциации (Associations) с различными правами доступа: Public, Reader, Manager
- Аутентификация: Low Level Security (LLS), High Level Security (HLS) по схеме «запрос—ответ» (challenge-response)
- Шифрование: поддержка DLMS Security Suite с алгоритмами AES-GCM-128
- Профили нагрузки (Load Profiles): буферные объекты для хранения временных рядов
- Система сценариев (Scripting): выполнение последовательностей действий на приборе учёта
Транспорт
Физический и канальный уровень:
- Оптический порт (IEC 62056-21, flag) — прямое подключение через инфракрасную головку для локального считывания
- RS-485 / RS-232 с протоколом HDLC (High-Level Data Link Control) для сетей с множественным подключением (multi-drop)
- TCP/IP (порт 4059) — DLMS поверх TCP или инкапсуляция в IP для удалённого доступа
- GSM/GPRS/LTE — передача данных через сети мобильной связи (обёрточные протоколы)
- PLC (Power Line Communication) — передача по силовым линиям (PRIME, G3-PLC)
- M-Bus — для интеграции с системами учёта воды и тепла
Профили передачи в зависимости от реализации прибора учёта:
- IEC 62056-46: COSEM over HDLC
- IEC 62056-47: COSEM transport over TCP-UDP/IP
Ключевые возможности
- Считывание показаний — текущие значения потребления энергии, мощности, напряжения, тока, коэффициента мощности
- Профили нагрузки (Load Profiles) — детальные данные с метками времени (15-минутные, часовые, суточные интервалы)
- Журналы событий — регистрация вскрытия корпуса, отключений питания, перенапряжений, изменений параметров
- Многоуровневая аутентификация и авторизация: ролевое управление доступом (публичный доступ, чтение, конфигурирование)
- Управление тарифами — удалённое изменение тарифных расписаний и ставок
- Синхронизация времени для точности меток времени
- Управление реле (подключение/отключение нагрузки)
- Контроль качества электроэнергии (провалы, выбросы, гармоники)
- Поддержка групповых операций для нескольких приборов учёта
- Криптографическая защита данных и контроль целостности сообщений
Связанные темы
Эта страница была полезной?
Спасибо за ваш отзыв!