Производство по чертежам Подбор аналогов Цены производителя Оригинальная продукция в короткие сроки
INNERпроизводство и поставка промышленных комплектующих и оборудования
Отзыв ★★★★★ Будем благодарны за отзыв в Яндексе — это помогает нам развиваться Оставить отзыв →
Правовая информация Условия использования технических материалов и калькуляторов Правовая информация →
INNER
Контакты

Онлайн калькулятор протокола Modbus RTU TCP

Калькулятор Modbus RTU/TCP v2.1
Конфигурации:
Протокол
мс
Группы регистров ?
Запросы к slave
шт
мс
Пресеты
мс
мс
раз
Результаты
Цикл 1 slave
мс
Полный цикл
мс
Частота
Гц
Группа FC Рег. Запрос Ответ Время
Timeline полного цикла
Сравнение RTU vs TCP
Modbus RTU
мс
Modbus TCP
мс

Worst-Case
1 устройство молчит
с
Все молчат
с
Ввод данных
Результат
CRC-16 (HEX)
CRC-16 (DEC)
Поле HEX Значение
Проверка CRC
Параметры линии RS-485
шт
Результат
Макс. длина
м
Рекомендуемая
м
Параметр Значение
Важно: Стандарт EIA-485 гарантирует 1200м при 100 кбит/с. На практике длина сильно зависит от качества кабеля, помех и терминаторов.
Справочник по Modbus

Что такое Modbus?

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

Master: "Устройство №5, дай мне показания температуры!"
Slave №5: "Температура = 25.5°C"

Всегда есть один Master (ПЛК, компьютер, панель) и несколько Slave (датчики, частотники, счётчики). Master спрашивает — Slave отвечает. Slave никогда не говорит первым.

RTU vs TCP — в чём разница?

ПараметрModbus RTUModbus TCP
ФизикаRS-485 (2 провода)Ethernet (RJ-45)
Скорость9600-115200 бит/с10-1000 Мбит/с
Расстояниедо 1200м100м (без свитчей)
Устройствдо 32 (247 адресов)неограниченно
СтоимостьДешевлеДороже
ТопологияШина (daisy-chain)Звезда

Ключевые термины

Baudrate (скорость)Сколько бит в секунду передаётся. 9600 бод — стандарт. Чем выше скорость, тем короче кабель и выше требования к качеству линии.
Turnaround delayВремя "размышления" устройства перед ответом. Это ключевой параметр! Быстрые ПЛК: 2-15 мс. Счётчики Меркурий: 100 мс. Именно turnaround определяет реальную скорость опроса.
TimeoutМаксимальное время ожидания ответа. Если Slave молчит дольше — ошибка. Обычно 500-1000 мс.
t3.5 (межкадровый)Пауза в 3.5 символа между пакетами. При 9600 бод ≈ 4 мс. Нужна для разделения сообщений. При >19200 бод фиксируется на 1.75 мс.
Slave ID (адрес)Уникальный номер устройства: 1-247. Адрес 0 = broadcast (всем, без ответа).
РегистрЯчейка памяти = 16 бит = 2 байта. Диапазон: 0-65535. Для дробных чисел используют 2 регистра (32 бита, float).
CRC-16Контрольная сумма для проверки целостности данных. Если CRC не сошёлся — пакет повреждён (помехи, плохой контакт).
ТерминаторРезистор 120 Ом на концах линии RS-485. Гасит отражения сигнала. Обязателен при длине >100м или скорости >38400.

Функции Modbus (FC) — подробно

Чтение данных
FC01Read CoilsЧтение битов (дискретных выходов). Макс: 2000 бит за запрос.
FC02Read Discrete InputsЧтение дискретных входов (кнопки, концевики). Макс: 2000 бит.
FC03Read Holding RegistersЧтение регистров чтения/записи. Самая частая функция! Макс: 125 регистров.
FC04Read Input RegistersЧтение регистров только для чтения (измерения). Макс: 125 регистров.
Запись данных
FC05Write Single CoilЗапись одного бита. Значение: 0x0000 (OFF) или 0xFF00 (ON).
FC06Write Single RegisterЗапись одного регистра. Быстро, но только 1 значение.
FC15Write Multiple CoilsЗапись нескольких битов. Макс: 1968 бит.
FC16Write Multiple RegistersЗапись нескольких регистров. Макс: 123 регистра. Эффективнее чем много FC06.

Структура кадра Modbus RTU

Адрес
1 байт
Функция
1 байт
Данные
0-252 байт
CRC Lo
1 байт
CRC Hi
1 байт

Пример запроса FC03: Прочитать 10 регистров начиная с адреса 0 у устройства #1

01 03 00 00 00 0A C5 CD
│ │ │ │ └─ CRC-16
│ │ │ └─ Количество: 10 (0x000A)
│ │ └─ Начальный адрес: 0 (0x0000)
│ └─ Функция: FC03
└─ Slave ID: 1

Как рассчитывается время опроса?

Формула для одного запроса к одному устройству:

T = t3.5 + Tзапроса + Turnaround + Tответа

Пример расчёта: FC03 x10 регистров, 9600 бод, turnaround 20 мс

  • t3.5 = 3.5 × (11 бит / 9600) × 1000 = 4.01 мс
  • Запрос 8 байт = 8 × 11 / 9600 × 1000 = 9.17 мс
  • Turnaround = 20 мс
  • Ответ 25 байт = 25 × 11 / 9600 × 1000 = 28.65 мс
  • Итого: 61.8 мс = 16.2 Гц

Почему ×12 скорости ≠ ×12 быстрее?

При переходе с 9600 на 115200 бод (×12) реальное ускорение всего ×2-3. Почему?

Turnaround delay не зависит от скорости линии! Это время обработки внутри микроконтроллера устройства.

9600 бодt3.5=4мс + передача=38мс + turnaround=20мс = 62 мс
115200 бодt3.5=1.75мс + передача=3мс + turnaround=20мс = 25 мс

Turnaround занимает 80% времени на высокой скорости!

Типичные ошибки и их решения

Timeout / Нет ответаПроверьте: адрес устройства, скорость, формат кадра (8N1/8E1), полярность A/B, питание устройства.
CRC ErrorПомехи на линии. Решение: экранированный кабель, терминаторы, проверка заземления, отвод от силовых кабелей.
Illegal FunctionУстройство не поддерживает эту функцию. Проверьте документацию.
Illegal Data AddressЗапрошен несуществующий регистр. Проверьте карту регистров устройства.
Медленный опросБольшой turnaround устройства или много мелких запросов. Объединяйте регистры!

Практические советы

Оптимизация скорости
  • Объединяйте регистры в группы
  • Один запрос на 100 регистров быстрее чем 10 по 10
  • Изолируйте медленные устройства на отдельную линию
Надёжность линии
  • Терминаторы 120 Ом на концах
  • Экранированная витая пара
  • Не прокладывать рядом с силовыми кабелями
Отладка
  • Используйте USB-RS485 конвертер + Modbus Poll
  • Проверяйте CRC калькулятором
  • Осциллограф для анализа сигнала
Масштабирование
  • >20 устройств → делите на 2 линии
  • >50 устройств → переходите на TCP
  • Используйте шлюзы RTU→TCP

Протокол Modbus: принципы работы и расчет времени опроса

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

Архитектура протокола построена по принципу Master-Slave. Устройство-мастер инициирует запросы, а подчиненные устройства (slave) отвечают на них. В сети Modbus может быть только один мастер и до 247 подчиненных устройств с уникальными адресами.

Modbus RTU и Modbus TCP: сравнение протоколов

Существует несколько реализаций протокола Modbus. Наиболее распространены Modbus RTU для последовательных линий связи и Modbus TCP для сетей Ethernet. Выбор между ними определяется требованиями конкретного проекта.

Modbus RTU RS-485
  • Физический уровень: RS-485
  • Скорость: 9600-115200 бит/с
  • Расстояние: до 1200 м
  • Устройств на шине: до 32
  • Топология: шина (daisy-chain)
Modbus TCP Ethernet
  • Физический уровень: Ethernet
  • Скорость: 10-1000 Мбит/с
  • Расстояние: 100 м (сегмент)
  • Устройств: не ограничено
  • Топология: звезда

Интерфейс RS-485 обеспечивает надежную передачу данных на большие расстояния при относительно низкой стоимости оборудования. Modbus TCP IP предоставляет высокую скорость обмена и возможность интеграции с существующей сетевой инфраструктурой предприятия.

Регистры Modbus: типы и адресация

Модель данных протокола Modbus включает четыре типа регистров. Каждый тип имеет свое назначение и диапазон адресов.

Тип регистра Диапазон адресов Доступ Размер Назначение
Coils (DO) 00001-09999 Чтение/Запись 1 бит Дискретные выходы
Discrete Inputs (DI) 10001-19999 Только чтение 1 бит Дискретные входы
Input Registers (AI) 30001-39999 Только чтение 16 бит Аналоговые входы
Holding Registers (AO) 40001-49999 Чтение/Запись 16 бит Параметры, уставки

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

Функции Modbus: коды операций

Протокол определяет набор функций для работы с данными. Код функции указывает тип выполняемой операции. Наиболее часто используются следующие команды Modbus:

Код Функция Описание Макс. количество
01 Read Coils Чтение дискретных выходов 2000 бит
02 Read Discrete Inputs Чтение дискретных входов 2000 бит
03 Read Holding Registers Чтение регистров хранения 125 регистров
04 Read Input Registers Чтение входных регистров 125 регистров
05 Write Single Coil Запись одного бита 1 бит
06 Write Single Register Запись одного регистра 1 регистр
15 Write Multiple Coils Запись группы битов 1968 бит
16 Write Multiple Registers Запись группы регистров 123 регистра

Расчет времени опроса Modbus RTU

Время полного цикла опроса сети Modbus RTU складывается из нескольких составляющих. Понимание этих параметров позволяет оптимизировать настройки системы и достичь требуемой частоты обновления данных.

Формула расчета времени одного запроса

T = t3.5 + T_запроса + Turnaround + T_ответа

Где:

  • t3.5 — межкадровая пауза (3.5 символьных интервала)
  • T_запроса — время передачи запроса мастера
  • Turnaround delay — задержка ответа slave-устройства
  • T_ответа — время передачи ответа

Параметры, влияющие на скорость опроса

Скорость обмена данными по протоколу Modbus RTU определяется несколькими факторами:

Параметр Влияние Типичные значения
Baudrate (скорость) Время передачи байта 9600, 19200, 38400, 115200 бод
Turnaround delay Основной фактор задержки 2-100 мс в зависимости от устройства
Количество регистров Размер пакетов данных 1-125 регистров за запрос
Число slave-устройств Общее время цикла 1-32 устройства на шине
Формат кадра Бит на символ 8N1 (10 бит), 8E1 (11 бит)
Важно
Turnaround delay (время ответа устройства) часто является определяющим фактором скорости опроса. Увеличение скорости передачи с 9600 до 19200 бод не удвоит частоту опроса, если turnaround составляет десятки миллисекунд.

Пример расчета для типовой конфигурации

Рассмотрим расчет времени опроса для системы со следующими параметрами: 5 устройств, скорость 9600 бод, формат 8N1, чтение 10 регистров (FC03) с каждого устройства, turnaround delay 20 мс.

Компонент Расчет Значение
Время символа 10 бит / 9600 бод 1.04 мс
Межкадровая пауза t3.5 3.5 × 1.04 мс 3.65 мс
Запрос FC03 (8 байт) 8 × 1.04 мс 8.33 мс
Ответ (25 байт) 25 × 1.04 мс 26.04 мс
Turnaround delay 20.00 мс
Цикл 1 устройства Сумма компонентов 58.02 мс
Полный цикл (5 устройств) 5 × 58.02 мс 290.1 мс
Частота опроса 1000 / 290.1 3.45 Гц

CRC-16 Modbus: контрольная сумма

Протокол Modbus RTU использует циклический избыточный код CRC-16 для проверки целостности данных. Контрольная сумма вычисляется по всем байтам сообщения и добавляется в конец кадра в формате Little Endian (младший байт первым).

Параметры алгоритма CRC-16 Modbus

Параметр Значение
Полином 0x8005 (reversed: 0xA001)
Начальное значение 0xFFFF
Порядок байтов Little Endian (Lo, Hi)
Финальный XOR 0x0000

Структура кадра Modbus RTU

Поле Размер Описание
Адрес slave 1 байт Адрес устройства (1-247)
Код функции 1 байт Тип операции
Данные N байт Адрес регистра, количество, значения
CRC Lo 1 байт Младший байт контрольной суммы
CRC Hi 1 байт Старший байт контрольной суммы
Пример запроса
Чтение 10 регистров с адреса 0 устройства 1:
01 03 00 00 00 0A C5 CD
Где C5 CD — контрольная сумма CRC-16.

Настройка Modbus: типичные ошибки и решения

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

Ошибка Возможные причины Решение
Timeout (нет ответа) Неверный адрес, скорость, проводка Проверить настройки порта и подключение
CRC Error Помехи, неправильное заземление Использовать экранированный кабель, терминаторы
Illegal Function (01) Функция не поддерживается Проверить документацию устройства
Illegal Data Address (02) Адрес регистра вне диапазона Проверить карту регистров устройства
Slave Device Failure (04) Внутренняя ошибка устройства Перезагрузить устройство, проверить питание

Длина линии RS-485 для Modbus RTU

Максимальная длина кабеля для сети Modbus RS-485 определяется стандартом EIA-485 и зависит от скорости передачи данных. Формула расчета:

L × Baudrate ≤ 10^8

При скорости 9600 бод теоретический максимум составляет около 10 км, однако стандарт ограничивает длину линии значением 1200 метров. На практике достижимая длина зависит от качества кабеля, условий эксплуатации и количества устройств на шине.

Рекомендации по организации линии связи

  • Используйте витую пару с волновым сопротивлением 120 Ом
  • Устанавливайте терминаторы 120 Ом на концах линии при длине более 100 м
  • Избегайте прокладки кабеля параллельно силовым линиям
  • При наличии помех применяйте экранированный кабель с заземлением экрана в одной точке
  • Соблюдайте топологию шины без ответвлений или с минимальными стабами

Преобразователи Modbus RTU в Modbus TCP

Шлюзы Modbus RTU TCP позволяют интегрировать устройства с последовательным интерфейсом в сети Ethernet. Преобразователь протокола выполняет инкапсуляцию RTU-кадров в TCP/IP пакеты и обратное преобразование.

При выборе шлюза Modbus следует учитывать количество портов RS-485, поддерживаемое число одновременных TCP-соединений, наличие гальванической развязки и возможности настройки через веб-интерфейс.

Modbus в системах автоматизации

Протокол Modbus широко применяется для подключения разнообразного промышленного оборудования: контроллеров (ПЛК), панелей оператора (HMI), частотных преобразователей, датчиков температуры и влажности, счетчиков электроэнергии, модулей ввода-вывода.

Интеграция с системами SCADA и диспетчеризации осуществляется через OPC-серверы Modbus или напрямую по протоколу Modbus TCP. Современные среды разработки, такие как Codesys, TIA Portal, имеют встроенную поддержку протокола.

Совет по оптимизации
Для повышения скорости опроса объединяйте последовательные регистры в групповые запросы. Один запрос на 100 регистров выполняется быстрее, чем 10 запросов по 10 регистров, за счет экономии на межкадровых паузах и turnaround delay.

Пресеты оборудования для расчета

Калькулятор включает типовые параметры turnaround delay для распространенного оборудования. Эти значения получены из документации производителей и практического опыта настройки систем.

Оборудование Turnaround delay Примечание
ОВЕН МВ/МК 2 мс Модули ввода-вывода
ОВЕН ПЛК 15 мс ПЛК110, ПЛК160, ПЛК210
Moxa MGate 5 мс Шлюз TCP-RTU
Меркурий 100 мс Счетчики электроэнергии
Delta VFD 15 мс Частотные преобразователи
Delta DVP 20 мс ПЛК серии DVP
Siemens S7 20 мс S7-1200, S7-1500

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

Заказать товар

ООО «Иннер Инжиниринг»