Skip to content

Modbus RTU polling time calculator: cycle and traffic

Over Modbus RTU, a master polls devices one by one, and at low baud rates a full cycle can take a noticeable amount of time — which determines how fast SCADA sees fresh data. Set the baud rate, register count, and device count — the calculator computes the time for one transaction and for the whole polling cycle.

Input data

Result

Response size — байт
Transaction timeHow long a single request-response exchange with one device takes. It determines how often every device can be polled. — мс
Polls per second — 1/с
Full cycle for all devicesThe time to poll every device in turn — this is how often SCADA data refreshes. For fast loops, cut it by raising the baud rate or reducing the register count per poll. — мс

An estimate for reading registers (FC03) that doesn't account for error retries or RS-485/USB converter delays. Cycle time grows linearly with device count — for fast loops, raise the baud rate or reduce the number of registers per poll.

How it's calculated

  1. Calculate frame lengths: a read-registers request is 8 bytes, a response is 5 overhead bytes plus 2 bytes per register.
  2. Byte time is the number of bits per character divided by the baud rate; two inter-frame gaps and the device's processing time are added to the exchange.
  3. The polling cycle is one transaction's time multiplied by the number of devices on the bus — and it's what determines how fast SCADA sees fresh data.

Example: 9600 baud, 11 bits per character, 10 registers: a 25-byte response, a 45.8 ms transaction — about 22 polls per second.

Request frame (FC03) — 8 bytes, response — 5 + 2·N bytes. Byte time = bits/byte ÷ baud rate; the t3.5 gap = 3.5 character times (≤ 19200 baud) or 1.75 ms (above). Transaction = (request+response)·tbyte + 2·t3.5 + slave response delay.

This is an estimate

Verify final values against current standards, the project design, and equipment nameplates.

Explained in the article Modbus: регистры и адресация

All calculators