Issue
When polling data from the Modbus IP and RTU X Drivers, how fast can data be retrieved?
Product Line
Andover Continuum
Environment
- Modbus RTU, Modbus IP X-Drivers
- bCX1, Netcontroller II, ACX57xx
Cause
Polling data too fast particularly with the Modbus RTU XDriver can cause the controller Scan time to rapidly rise to excessive levels.
Resolution
The Modbus RTU X Driver can typically make 2 polls per second. These polls can be for single values or block reads.
As this X Driver operates outside the regular controller scanning process, polling too many points or many points that are offline can cause the scan time to rapidly rise.
Use a single Plain English program to schedule the polling of all points.
See Helpful Modbus register Information for advice on how to handle offline devices.
If 2 off Modbus RTU X Drivers are used on the same controller, then again use a single Plain English program to poll across both ports and do not exceed the recommended overall rate of 2 polls per second.
For the Modbus IP X Driver, only one port can be used to load this driver on any controller.
It can typically make 8 polls per second for single or block reads.
Also see What should be considered when analyzing the performance of a Modbus TCP/IP implementation?on analyzing the performance of the Modbus IP X Driver.
NOTE: The ability to enable 2 comm ports using Xdrivers can be done, but is not recommended by the Xdriver developers nor supported by PSS.
The RTU Xdriver is poll on demand. This type of driver can request a lot of data and starve the CPU on the controller which then makes the polling irregular. If 2 ports are being used then there are typically more devices being added and therefore more points increasing the requests and demand on the controller's CPU.
Use one program to control the polling on both ports. Two programs attempting to control the polling asynchronously will cause communication issues.