MQTT — лёгкий протокол обмена сообщениями по модели «издатель — подписчик» (publish/subscribe). В промышленности он связывает источники телеметрии с системами мониторинга, историческими базами, MES и аналитикой. MQTT полезен для распределённых объектов и IIoT, но не заменяет контур управления ПЛК и системы безопасности.

Как работает MQTT: издатель, брокер и подписчик
Издатель публикует данные в тематический канал — topic. Брокер принимает сообщение и передаёт его подписчикам этого канала. Источник не обязан знать адрес каждой принимающей системы: при согласованной модели данных можно подключать новых потребителей без изменения логики технологического управления.
- Издатель: ПЛК с поддерживаемым MQTT-клиентом, промышленный шлюз, edge-компьютер или SCADA с соответствующим модулем.
- Брокер: сервер обмена сообщениями в инфраструктуре предприятия либо управляемый сервис. Для выбора оценивают поддерживаемые функции, нагрузку, отказоустойчивость, сопровождение и ограничения лицензии.
- Подписчик: сервис сбора данных, архив, интеграционный модуль MES/ERP или приложение аналитики. Панели Grafana и Power BI обычно получают данные через подходящий коннектор, сервис или базу данных, а не автоматически от любого MQTT-брокера.
Пример потока: ПЛК → промышленный edge-шлюз → MQTT-брокер → сервис обработки → архив и панель мониторинга. Уведомления в приложениях, по SMS или в мессенджерах подключаются отдельной интеграцией и не заменяют технологическую сигнализацию.
Топики и модель данных
Структура топиков должна отражать площадку, линию, оборудование и параметр. Для каждого значения согласуют тип, единицы измерения, метку времени, качество и правила обновления.
factory/line1/temperature— температура линии;factory/line1/pressure— давление;factory/line1/pump1/status— состояние насоса;factory/line2/pump1/current— ток двигателя.
В фильтрах подписки знак + заменяет один уровень: factory/+/temperature. Знак # охватывает несколько уровней: factory/#. Эти символы применяются в подписках, а не в именах публикуемых топиков.
QoS, восстановление связи и актуальность данных
- QoS 0: доставка не более одного раза; подтверждения нет, сообщение может потеряться.
- QoS 1: доставка как минимум один раз; принимающая система должна учитывать возможные повторы.
- QoS 2: доставка ровно один раз в рамках соответствующего протокольного обмена, с дополнительными служебными сообщениями.
QoS выбирают по требованиям к данным, допустимым потерям и нагрузке. Подтверждение доставки сообщения не означает подтверждение физического выполнения команды оборудованием. Для управляющих команд отдельно проектируют авторизацию, проверку допустимости и обратное подтверждение результата.
Retained-сообщение хранит последнее опубликованное с этим признаком значение топика, но не заменяет архив. Сессии, локальная очередь edge-шлюза и повторная передача помогают восстановить обмен после обрыва. Last Will позволяет сообщить о неожиданной потере соединения. В интерфейсе важно отличать свежее значение от устаревшего и показывать время последнего обновления.
MQTT Sparkplug B
Сам MQTT не задаёт промышленную структуру полезной нагрузки. Sparkplug описывает пространство имён, метрики и управление состояниями. Birth/death-сообщения помогают приложениям понимать появление узлов, состав данных и потерю связи. Это упрощает интеграцию оборудования и SCADA, если участвующие компоненты поддерживают согласованную версию спецификации.
Как подключить MQTT к существующей АСУ ТП
ПЛК продолжает управлять технологией через существующие промышленные сети. Данные считываются доступным интерфейсом — например, OPC UA или Modbus TCP — и публикуются через шлюз. Прямой MQTT-клиент в контроллере также возможен, но его наличие и допустимую нагрузку проверяют для конкретной модели, прошивки и библиотеки производителя.
При выборе шлюза проверяют совместимость с ПЛК, буферизацию, TLS, управление сертификатами, число тегов, частоту опроса, условия эксплуатации и возможность обслуживания. Прототип на одноплатном компьютере не следует автоматически считать готовым промышленным решением. MQTT-передача не должна нарушать цикл управления или создавать обходной доступ к защите оборудования.
Локальный сервер, облако или гибрид
MQTT не требует обязательной передачи данных в публичное облако. Брокер и архив можно разместить на предприятии, в корпоративном центре обработки данных или использовать доступный облачный сервис. Гибридная схема оставляет сбор и буферизацию на объекте, а централизованную аналитику выносит на верхний уровень.
При сравнении платформ учитывают поддержку протокола и Sparkplug, ограничения топиков и сообщений, экспорт данных, доступность сервиса для компании, размещение информации и полную стоимость эксплуатации. Название облачного сервиса само по себе не гарантирует совместимость со всеми MQTT-приложениями.
Безопасность и надёжность
Брокер размещают в выделенной сетевой зоне с управляемым доступом. Используют шифрование TLS, индивидуальные сертификаты или учётные записи, права чтения и записи на конкретные топики, журналирование и мониторинг. Переход на MQTT 5 сам по себе не включает все эти меры. Резервирование сервера, ёмкость очередей и восстановление после отказа определяются требованиями проекта.
Не следует открывать производственный брокер для анонимного доступа. Для внешних подключений предусматривают защищённый канал и контролируемую точку доступа. Канал аналитики отделяют от управления и технологических защит.
Типовые сценарии применения
- Удалённый мониторинг: шлюзы насосных станций передают давление, ток и состояние оборудования в единый архив; оператор видит отклонения и доступность объектов.
- Диагностика: данные о вибрации и температуре поступают в аналитический сервис; результаты отображаются в SCADA или системе обслуживания после проверки качества модели.
- Энергетический учёт: показания счётчиков объединяются с выпуском продукции для анализа удельного потребления.
- Интеграция площадок: одинаковая модель тегов упрощает подключение новых линий и передачу данных в MES/ERP.
Это примеры архитектур, а не заявления о конкретных реализованных объектах или гарантированной экономии. Для жёсткого управления в реальном времени MQTT не заменяет специализированные промышленные сети.
Что влияет на стоимость внедрения
Смета зависит от числа устройств и тегов, объёма сообщений, хранения истории, шлюзов, лицензий, резервирования, интеграций, требований безопасности и сопровождения. Даже при бесплатном программном компоненте остаются затраты на сервер, настройку и эксплуатацию. Точные суммы определяют после обследования и выбора архитектуры.
С чего начать
Подготовьте перечень оборудования, доступные протоколы, список параметров, требования к частоте обновления и сроку хранения. Для пилота проверяют потерю связи, повторные сообщения, заполнение очередей, права доступа и отображение устаревших значений. После испытаний решение масштабируют.
Связанные материалы
- IIoT: промышленный интернет вещей — архитектура и внедрение
- OPC UA в промышленной автоматизации
- Индустрия 4.0: концепция, технологии, внедрение
Технические основы: спецификация MQTT OASIS и спецификация Eclipse Sparkplug.
Заказать услугу
