Мониторинг Modbus параметров по TCP

Протокол Modbus появился в конке 70-х годов и до сих пор не теряет актуальность в области машинного взаимодействия (Machine-to-Machine, M2M). Это сетевой протокол, который широко используется в промышленности для мониторинга и интеграции различного оборудования. По сути, Modbus — стандарт де-факто и поддерживается почти всеми производителями промышленных устройств и приборов. С помощью протокола Modbus можно снимать показания с датчиков и управлять контроллерами. Изначально, Modbus использовал в своей реализации интерфейс RS-232 и RS-485. Позже повилась разновидность протокола Modbus TCP, использующая для взаимодействия между участниками обмена сеть Ethernet. По умолчанию этот протокол использует порт TCP 502.

Устройства Modbus взаимодействуют между собой по принципу master-slave. Устанавливает соединение и выполняет запросы master-устройство, slave же может только отвечать на них. Недавно разработчик Modbus переименовал терминологию master-slave в более привычную Client-Server. Клиентское устройство или ПО (master) отправляет запросы опрашиваемому устройству-серверу (slave) и получает ответы на них.

Каждое устройство Modbus идентифицируется уникальным адресом (Slave ID), который может назначаться из диапазона 1-247. Адрес 0 используется для широковещательных запросов от клиента всем серверам, а адреса 248–255 считаются зарезервированными. В Modbus TCP в качестве идентификатора выступает обычный IP-адрес устройства. Однако, и стандартный адрес может потребоваться для соединения, если оно устанавливается с сетью RS485 через специальный шлюз.

Запрос Modbus состоит из кода функции и данных, которые нужно запросить или записать в устройство. Каждая функция может оперировать только с конкретным типом данных. Есть функции только для чтения и только для записи.

 

Функции для чтения регистров Modbus TCP

Код функции
Что делает функция
Тип значения
Тип доступа
01 (0x01)
Read Coil Status
Дискретное
Чтение
02 (0x02)
Read Input Status
Дискретное
Чтение
03 (0x03)
Read Holding Registers
16 битное
Чтение
04 (0x04)
Read Input Registers
16 битное
Чтение

Доступ к регистрам выполняется с помощью 16-битного адреса. Первому элементу в каждой группе регистров соответствует адрес 0. То есть адрес (индекс) любого регистра может принимать значения из диапазона 0-65535. В регистрах хранятся значения внутренних переменных, счётчиков, показания различных датчиков и флагов. Адреса (индексы) нужных регистров можно узнать в документации к конкретному устройству. Обычно они указываются в разделе «Modbus Mapping Table».

Для чтения и мониторинга параметров Modbus-устройств можно использовать специальные программы, которые поддерживают этот протокол. Программа «Мониторинг Сети Pro» позволяет подключаться к устройствам по Modbus TCP и считывать из них необходимые параметры. Для чтения регистра нужно всего лишь задать несколько параметров:

  • IP-адрес устройства
  • Порт (502 по умолчанию)
  • Slave ID
  • Индекс регистра
  • Код функции

 

мониторинг устройств modbus tcp

Программа может выполнять подключение по Modbus TCP к устройству, находясь на сервере в другой сети (связанной с первой). Для этого используются возможности удалённого агента, который можно установить в одной сети с опрашиваемым устройством. При такой схеме, программа будет отправлять запрос агенту по указанному в IP-адресу, а тот, в свою очередь, переадресует его Modbus-устройству.

При выходе значения параметра за заданные пределы программа оперативно оповещает об этом несколькими способами. Порог срабатывания сигнализации задаётся в параметрах проверки.

Полученные значения можно отображать на графических индикаторах или схеме сети в SCADA-стиле.

мониторинг устройств и отображение результатов SCADA

 

Недостатки протокола Modbus

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

  • Отсутствие аутентификации и шифрования передаваемых данных. Для их защиты необходимо использовать VPN-тоннели.
  • Инициировать передачу данных может только master-устройство. Оно должно постоянно опрашивать slave-устройство, генерируя лишний трафик.
  • Slave-устройство не может отследить разрыв соединения с master.

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

 

Внимание! Эта проверка доступна только в версии Pro.

 

Смотрите также:

Мониторинг OPC DA

Мониторинг MQTT

 

Скачайте бесплатную 30-дневную версию программы мониторинга сети прямо сейчас и попробуйте!

 

Все наши программы:
Программа учета компьютеров в сети
Инвентаризация Компьютеров
Учет "железа" и программ на компьютерах сети предприятия
Программа мониторинга сети
Мониторинг Сети,
Мониторинг серверов, служб, БД, хостов в сети
Программа визуального мониторинга и администрирования сети
LANState
Мониторинг хостов на карте сети, администрирование сети
Аудит программ и лицензий на предприятии
Учет Программного Обеспечения
Аудит программного обеспечения и лицензий на компьютерах
Программа исследования сетей и создания схем
Схема Сети
Сканирование топологии сети, создание схем сетей
Программа учета трафика на компьютерах и мониторинга пропускной способности
Учет Трафика
Учет трафика на ПК в сети, мониторинг скорости канала
Программа поиска файлов в сети
Поиск файлов в сети
Поиск файлов и документов на компьютерах сети предприятия
Программа мониторинга доступа к общим ресурсам
Connection Monitor
Аудит доступа пользователей к файлам и папкам по сети
Программа-сканер хостов в сети
Сканирование Сети (FREE!)
Бесплатная программа-сканер для сканирования хостов и IP-адресов в сети
Акции и скидки: