ПРОЕКТ

ПО для мониторинга Modbus TCP и передачи данных с датчиков в реальном времени

Разработка индивидуального ПО, Коммуникация по Modbus TCP, Регистрация данных датчиков, Информационные панели мониторинга в реальном времени, Анализ исторических тенденций, Предупреждения и уведомления, Отчёты и экспорт данных

  • Отрасль: Промышленное оборудование
  • Латвия Местоположение: Латвия
  • Срок разработки: 10 недель
  • Технологии: Python, JavaScript / TypeScript (Node.js)
3 месяца

Клиент контролирует состояние оборудования, параметры процессов и окружающую среду с помощью подключённых устройств и датчиков. ПО представляет собой систему мониторинга Modbus TCP для настройки подключений оборудования, считывания данных датчиков и исполнительных механизмов и отображения текущих значений для инженерной команды. Система также регистрирует измерения, отображает исторические тенденции, применяет пороговые значения предупреждений и формирует отчёты. Рабочая среда помогает сократить объём ручной работы при контроле данных оборудования.

Краткое содержание

Проблема

Клиенту необходимо контролировать состояние оборудования, параметры процессов и показания окружающей среды на подключённых устройствах.

Решение

Решение представляет собой модульную среду мониторинга Modbus TCP с информационными панелями в реальном времени, регистрацией данных, предупреждениями и отчётами.

Результат

ПО помогает сократить объём ручного мониторинга и сохранять данные оборудования для последующего просмотра.

История клиента

Клиент - оператор промышленного оборудования из Латвии. Он контролирует состояние оборудования, параметры процессов и окружающую среду с помощью подключённых устройств и датчиков.

Клиент работает с данными датчиков, исполнительных механизмов и регистрами Modbus.

Требовалось передавать данные оборудования по подходящим сетям, при необходимости обеспечивать безопасную передачу, отображать текущие и исторические показания, а также поддерживать настраиваемые сигналы тревоги или управляющие действия.

Решение было создано как модульная система мониторинга. Особое внимание уделили настройке Modbus TCP и отображению текущих показаний.

Были добавлены исторические данные о состоянии, настройки пороговых значений и отчёты с возможностью позднее подключить сбор данных об окружающей среде или управление реле.

Клиент запросил

  1. Передавать данные с использованием защищённых беспроводных или сетевых протоколов
  2. Обеспечить надёжную передачу данных при перебоях соединения
  3. Отображать текущие показания, статус, тенденции, графики и отчёты
  4. Настраивать пороговые значения, предупреждения, уведомления и управляющие действия

Почему готовое ПО не подошло

Готовые IoT-инструменты разработки предоставляют общие возможности для устройств, облачных сервисов и разработки, однако их описания не охватывают все задачи мониторинга этого клиента в одной индивидуальной рабочей среде. Клиенту требовались настройка Modbus TCP, считывание регистров, регистрация данных оборудования, информационные панели, пороговые значения для конкретного проекта и возможные управляющие действия, связанные с его оборудованием и правилами.

Обзор проекта

Решение разработано для настройки подключения промышленных датчиков и оборудования. Инженер вводит название устройства, сетевой адрес и определения регистров.

Настройка завершается параметрами считывания данных и результатом проверки подключения.

Для мониторинга в реальном времени рабочая среда дополнена выбором устройства, статусом подключения и карточками датчиков. В таблице регистров отображаются текущие значения с временными метками.

На одной информационной панели отображаются данные датчиков, исполнительных механизмов и температуры. Также доступны показания влажности и статус устройства.

Исторические данные о состоянии оборудования сохраняются для анализа во времени. На графиках отображаются данные о вибрации, температуре и оборотах, а в таблице журнала доступны зарегистрированные измерения.

Для мониторинга инцидентов добавлены настраиваемые пороговые значения. Руководители и администраторы могут задавать пределы температуры, давления и вибрации, а также параметры уведомлений.

Для сохранённых данных мониторинга добавлены отчёты. Система создаёт файлы JSON, CSV и PDF и позволяет сравнивать выбранные источники данных.

Модульная структура позволяет позднее добавить измерение параметров окружающей среды, датчики давления и управление реле.

Реализованные ключевые функции

  • Настройка устройств и регистров Modbus TCP
  • Информационная панель датчиков и исполнительных механизмов в реальном времени
  • Показания температуры и влажности в реальном времени
  • Регистрация исторического состояния оборудования
  • Графики тенденций вибрации и других измерений
  • Настраиваемые пороговые значения предупреждений
  • Настройки уведомлений об инцидентах
  • Сравнительные отчёты для выбранных источников данных
  • Экспорт данных в JSON, CSV и PDF

Можно добавить

+ Сбор данных об окружающей среде + Интеграция датчиков давления + Управление реле отопления и охлаждения + Удалённые команды для клапанов + Поддержка прошивки и оборудования + Подключение мобильного приложения

Кому ещё подойдёт это решение

Другие компании с похожими задачами мониторинга датчиков могут адаптировать это решение под своё оборудование, методы коммуникации и правила управления.

Оператор водного хозяйства и окружающей среды

Задача Он собирает данные распределённых датчиков или счётчиков и контролирует условия на объекте.
Как помогает решение Решение считывает подключённые измерения, отображает текущий статус, сохраняет историю и поддерживает предупреждения или управляющие действия.

Оператор умного сельского хозяйства

Задача Он собирает показания распределённых полевых датчиков и контролирует условия роста.
Как помогает решение Решение собирает данные датчиков на информационных панелях в реальном времени, сохраняет измерения во времени и поддерживает уведомления по пороговым значениям.

Оператор управления зданиями

Задача Он удалённо контролирует оборудование зданий и окружающую среду.
Как помогает решение Решение отображает текущие показания, сохраняет исторические журналы и обеспечивает предупреждения, отчёты или функции управления.

Технологический стек

Python

Сбор данных и сервисы

Python обеспечивает сервисы сбора данных и коммуникации.

JavaScript / TypeScript (Node.js)

Информационные панели и коммуникация

JavaScript и TypeScript обеспечивают интерфейсы мониторинга и сетевую коммуникацию.

PHP

Вспомогательные веб-сервисы

Библиотеки PHP при необходимости обеспечивают отдельные сервисы документов и приложений.

pymodbus

Коммуникация Python Modbus

pymodbus (библиотека Python для коммуникации Modbus) считывает и обрабатывает регистры Modbus.

modbus-serial

Коммуникация Node.js Modbus

modbus-serial (библиотека Node.js для Modbus RTU и TCP) обеспечивает связь с оборудованием.

jsmodbus

Последовательный и TCP Modbus

jsmodbus (реализация протокола JavaScript Modbus) обеспечивает последовательные и TCP-соединения Modbus.

grafanalib

Создание информационных панелей Grafana

grafanalib (библиотека Python для создания информационных панелей Grafana) помогает создавать панели мониторинга.

Plotly

Интерактивная визуализация данных

Plotly отображает интерактивные графики для мониторинга и исторического анализа.

httpx

Коммуникация данных по HTTP

httpx (HTTP-клиент Python) обеспечивает коммуникацию с подключёнными сервисами.

JSON, CSV, PDF

Обмен данными и отчёты

Система обменивается данными и формирует отчёты в форматах JSON, CSV и PDF.

Интеграции

Modbus TCP equipment

Система считывает регистры и обменивается данными датчиков или исполнительных механизмов с подключённым промышленным оборудованием.

HTTP and HTTPS services

Система мониторинга отправляет и получает структурированные данные через HTTP или защищённые HTTPS-соединения.

MQTT

Система может обмениваться данными датчиков с платформами и оборудованием через MQTT.

Grafana

Решение может подключать определения информационных панелей и визуальные представления мониторинга к Grafana.

SCADA systems

При необходимости решение мониторинга может обмениваться промышленными данными с системами SCADA.

Cloud platforms and databases

Система может отправлять сохранённые или текущие данные мониторинга подключённым облачным платформам или базам данных.

Результат

Текущий статус оборудования в одном представлении

Панель текущих данных объединяет текущие показания оборудования и окружающей среды в одном месте. Статус подключения и значения регистров отображаются рядом с показаниями температуры.

Инженерная команда также видит влажность, статус устройства и временные метки входящих данных.

Как это работает

  1. Выбор устройства определяет подключённое оборудование, отображаемое на информационной панели.
  2. Карточки датчиков показывают текущие данные датчиков, исполнительных механизмов и температуры.
  3. В таблице регистров Modbus для каждого значения отображаются содержимое регистра и временная метка.
  • Настраивать подключения Modbus TCP
  • Просматривать текущий статус подключения
  • Контролировать данные датчиков в реальном времени
Примечание: Информационная панель объединяет текущие показания со статусом подключения, необходимым для их интерпретации.
Информационная панель устройства Modbus в реальном времени

Информационная панель устройства Modbus в реальном времени

Функции этого экрана
Настраивать Modbus TCP Управлять данными датчиков Отображать данные в реальном времени

Исторические показания помогают оценить оборудование

Журнал состояния преобразует сохранённые измерения в тенденции во времени. Аналитики могут просматривать показатели состояния оборудования, а также изменения вибрации и температуры.

Показания оборотов, перемещения и ускорения доступны в том же историческом представлении для дальнейшего анализа.

Как это работает

  1. Фильтр временного диапазона ограничивает отображаемые на экране зарегистрированные измерения оборудования.
  2. График тенденций визуализирует данные температуры, вибрации и оборотов.
  3. Индикатор состояния оборудования и таблица исторического журнала показывают зарегистрированное состояние оборудования.
  • Просматривать зарегистрированные измерения оборудования
  • Сравнивать показания за выбранный период
  • Проверять исторический журнал
Тенденции оборудования и журнал состояния

Тенденции оборудования и журнал состояния

Функции этого экрана
Регистрировать данные о состоянии Визуализировать данные датчиков

Пороговые значения делают инциденты заметными

Экран настроек предупреждений предоставляет понятное место для определения рабочих пределов. Пороговые значения температуры, давления и вибрации связаны с состояниями инцидентов и настройками уведомлений.

Правила предупреждений хранятся рядом с контролируемыми показателями и поддерживают последующие управляющие действия, если они предусмотрены проектом.

Как это работает

  1. Выбор показателя определяет измерение, к которому применяется правило предупреждения.
  2. Поля пороговых значений сохраняют пределы температуры, давления или вибрации.
  3. Предпросмотр состояния тревоги показывает настроенное состояние инцидента, а параметры уведомлений определяют связанные уведомления.
  • Настраивать пороговые значения предупреждений
  • Предпросматривать состояния тревоги
  • Настраивать параметры уведомлений
Совет: Пороговые значения настраиваются с учётом важных для контролируемого оборудования показателей.
Настройки пороговых значений и уведомлений

Настройки пороговых значений и уведомлений

Функции этого экрана
Настраиваемые пороговые значения предупреждений

Подключения оборудования имеют понятный порядок настройки

Экран настройки подключения объединяет конфигурацию устройства и регистров в одном месте. Инженеры задают сетевой адрес и подключённые регистры, затем проверяют результат подключения.

Параметры считывания данных адаптируют систему мониторинга к оборудованию клиента и правилам коммуникации.

Как это работает

  1. Поля названия устройства, IP-адреса и порта определяют подключение оборудования.
  2. Поля определений регистров сохраняют регистры Modbus, связанные с данными датчиков и исполнительных механизмов.
  3. Конфигурация считывания данных и результат проверки подключения показывают, как система взаимодействует с устройством.
  • Определять регистры Modbus
  • Настраивать параметры считывания данных
  • Просматривать проверку подключения
Настройка подключения Modbus TCP

Настройка подключения Modbus TCP

Функции этого экрана
Настраивать Modbus TCP

Отчёты превращают сохранённые данные в файлы, которыми можно делиться

Экран отчётов подготавливает исторические данные мониторинга для анализа. Аналитики и руководители могут создать отчёт и сравнить выбранные источники.

Система экспортирует выбранные данные в формате JSON, CSV или PDF для оперативного просмотра.

Как это работает

  1. Тип отчёта и фильтры диапазона дат определяют сохранённые данные датчиков, включаемые в отчёт.
  2. Выбор сравнения источников сопоставляет выбранные источники данных мониторинга.
  3. Генератор отчётов создаёт из выбранных данных файл JSON, CSV или PDF.
  • Создавать аналитические отчёты
  • Сравнивать выбранные источники данных
  • Экспортировать данные в JSON, CSV или PDF
Отчёты и экспорт данных

Отчёты и экспорт данных

Функции этого экрана
Создавать аналитические отчёты Отчёты для сравнения данных

Что даёт решение

С помощью этого решения оператор может:

  • Контролировать оборудование и показания окружающей среды в одной рабочей среде
  • Просматривать данные о состоянии оборудования с историческими графиками и журналами
  • Настраивать пороговые значения для инцидентов температуры, давления и вибрации
  • Получать уведомления на основе настроенных условий мониторинга
  • Создавать отчёты в форматах JSON, CSV и PDF
  • Расширять систему управляющими действиями и подключёнными платформами

Могут ли готовые системы выполнить эту задачу?

До начала разработки задачу сравнили с готовыми продуктами на основе их описаний.

Что нужно клиенту IoT-платформы Particle, AWS IoT, Blynk IoT platform IoT-фреймворки Eclipse IoT, Mozilla WebThings Разработка IoT-систем Niagara 4 Индивидуальное решение
Передавать данные с использованием необходимых протоколов частично
Безопасная и надёжная передача данных частично
Текущие показания и исторические отчёты частично
Пороговые значения, предупреждения и управление частично
Соответствовать правилам клиента: этапам, ролям и отчётам — — —
Все этапы в одном месте —
Отсутствие ручных действий между программами — — —

На основе общедоступных описаний продуктов и их категорий.

Готовые решения на базе IoT-платформ и фреймворков предлагают основные части задачи, и готового продукта достаточно, если требуется только одна из них.

Этому клиенту потребовалось собственное ПО, поскольку задача мониторинга объединяет настройку Modbus TCP, конкретные регистры, текущие и исторические представления, пороговые значения, отчёты и возможные управляющие действия.

Решение объединяет эти части в одной рабочей среде и адаптирует их к оборудованию и правилам клиента, не оставляя соединения между отдельными инструментами для ручной работы.

В заключение

В итоге решение было создано для сокращения ручной работы с мониторингом данных подключённого оборудования.

ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ

Рассматриваете создание похожей системы? Эти ответы объясняют, как адаптировать решение для мониторинга Modbus TCP под оборудование, данные датчиков, правила коммуникации и будущие задачи управления.