Performance/Throughput Comparison For ModbusTCP FC 03


Thread Starter


We have developed our own ModbustTCP stack and it works fine with a number of devices, including Siemens Sentron PAC3200 meter. Our stack works fine with one meter. But when we configure many meters, we think, we have hit the performance bottleneck using approach-1 (see below), with just 16 numbers of PAC3200 meters and our data updates very slow. Every meter is polled at every 1 second, and within this 1 second duration, we try to read about 8 parameters (16 registers) sequentially.

What will give better performance/throughput from the following two approaches to read all (available) holding registers:

Approach-1. Read all available registers, depending upon the data type and use FC 03 sequentially, e.g. Parameters are all Float or Unsigned 32-bit Integers, we read two registers in every sequential requests.

Approach-2. Read all (available) registers in a single FC 03 request and once response is received, extract the Parameters values required.