Назначение
Modbus обеспечивает простой запрос–ответ с приборами и контроллерами. Поддержка широка, но не каждый промышленный прибор реализует протокол или допускает все команды. RTU и TCP имеют общую базовую модель, но разные кадры.
Данные
Coils/discrete inputs содержат биты, holding/input registers — 16-битные слова. 01/02 читают биты, 03/04 — регистры, 05/06 записывают одиночные, 15/16 — группы. Exception устанавливает старший бит функции и сообщает причину. Карта изделия определяет смысл, масштаб и права.
В регистре старший байт первый. Порядок слов многорегистрового значения задаёт изготовитель. UINT32/FLOAT32 обычно занимают два регистра, 64-битные — четыре. Проверяют знак, единицы и масштаб. Reference 4xxxx отличается от нулевого offset в PDU.
RTU и TCP
RTU добавляет адрес и CRC-16. Индивидуальные адреса 1–247, 0 — broadcast без ответа. На низкой скорости кадры разделяют 3,5 символами; выше 19200 бит/с рекомендованы t1.5=750 мкс и t3.5=1,75 мс.
TCP обычно использует 502 и семибайтовый MBAP с Transaction ID, Protocol ID, Length, Unit ID, без RTU CRC. Контроль передачи TCP не является криптозащитой. Transaction ID связывает ответ и запрос; параллелизм и сессии ограничены реализацией.
Физические пределы и шлюз
Последовательный master управляет циклом запросов. 32 unit loads — традиционная нагрузка RS-485, не обязательно 32 прибора. Длина зависит от скорости, фронтов, ответвлений и среды. Около 1200 м на низкой скорости и 100 м для распространённого медного Ethernet — условные физические ориентиры.
Шлюз преобразует TCP в serial по Unit ID и маршрутам. Ёмкость зависит от портов, нагрузки и времени. Скорость, parity и stop bits согласуют: руководство задаёт even parity либо два stop bits без parity; конкретные изделия могут использовать 8N1.
Модели и безопасность
Счётчики могут выдавать энергию, мощность, напряжение и ток; инверторы и батареи — состояние и разрешённые настройки. SunSpec добавляет модели для поддерживаемых устройств. Обычный Modbus не гарантирует общей карты, временных меток или журнала.
Классические RTU/TCP не имеют встроенного шифрования и удостоверения. Modbus Security использует TLS/X.509 на 802 при поддержке сторон. Нужны сегментация, права и защищённый удалённый доступ. Проверяют offsets, порядок слов, повторные адреса, timeout, терминаторы и частоту опроса.
