Давайте поговорим о недостатках протокола Modbus

May 19, 2026 Оставить сообщение

Как профессионалы в области промышленного управления, вы, вероятно, знакомы с протоколом связи Modbus. Вероятно, это наиболее широко используемый протокол связи в области промышленной автоматизации. Его открытость, масштабируемость и стандартизация сделали его универсальным промышленным стандартом.


Я считаю, что преимущества протокола Modbus очевидны. Целью этой статьи является, прежде всего, обсуждение недостатков протокола Modbus.


У всего есть две стороны, и у каждого протокола есть свои недостатки. Тот факт, что у Modbus есть недостатки, не означает, что это плохой протокол; Я надеюсь, что все отнесутся к этому рационально.


1. Ограничения на объем данных, которые можно прочитать


На следующей схеме показан формат данных для функционального кода 03 протокола Modbus RTU:

 

图片

 

Как показано на рисунке, количество данных (количество байтов), возвращаемых ведомой станцией, составляет всего один байт.


Поскольку счетчик байтов занимает только один байт, при чтении регистров ввода/удержания одновременно можно прочитать максимум 127 регистров. В приложениях с очень большими объемами данных для извлечения всех данных требуется многократное чтение, что неизбежно снижает эффективность связи.


2. Отсутствие поддержки записи в отдельные биты регистра.


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


Обычно существует два подхода к решению этой проблемы:


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


Второй подход: мы можем рассматривать один бит как отдельный регистр, где запись 1 представляет истину, а запись 0 представляет ложь. Этот метод можно выполнить за одно взаимодействие, но он тратит значительный объем памяти.


Протокол Modbus был создан в 1979 году и сейчас используется в десятках тысяч устройств. Я считаю, что его изобретатели, конечно, знали об этих проблемах, но не смогли реализовать единое решение.


Возможно, однажды протокол Modbus сможет решить эти две проблемы...


Некоторые могут возразить, что протокол Modbus имеет уязвимости безопасности. Однако, поскольку он является протоколом, разработанным для промышленных приложений, его основная цель — облегчить обмен данными. В автономной среде вреда нет, если нет атаки.

Отправить запрос

whatsapp

Телефон

Отправить по электронной почте

Запрос