Applies To:
  • CitectSCADA


The Polltime time parameter is one of a number of standard driver parameters which are listed in Q2141. That is to say, all protocol drivers have this parameter available. The KB article Q2141 provides excellent advise, which is not to modify these parameters except where described by documentation on your specific driver or by an experienced engineer.

So why another KB article to single out this particular parameter? Well the name of this parameter leads many to believe it is doing something very different to what it actually does.

The polltime parameter does not control the rate at which data is requested from your PLC. The polltime parameter is an internal setting which controls how often the driver checks the port for new data. If supported by the driver and polltime is set to zero then it is in interrupt mode ie the when the data comes in then the driver will be automatically called to collect it. The default setting is preset to deliver the best performance under most circumstances.

Depending on the particular board driver in use, the port may be a physical port or simply a software API. For example in the case of the TCPIP board driver the 'port' is really the windows sockets interface.

If your goal is to slow down the rate of requests to the PLC then increasing the cachetime for that IO device is often a better approach. The actual rate that data requests are sent to the IO server depends on the rate of the various clients are requesting it (or for V7 and above, the subscribed rate). Eg graphics pages are typically 250ms, Alarm servers 500ms, Trends depend on the sample period. However the rate that the IO server requests the data from the driver will depend on the both the incoming requests and also the setting of the IO server cache for that IO device. I.e it can service client requests out of the cache instead of sending a request to the driver. The default cachetime setting is usually 300ms.

Some drivers have an additional level of caching inside the driver itself. Usually this is to accommodate a front-end / back-end driver architecture typically used with report by exception protocols.


There is one notable driver combination where the polltime parameter does need to be set. That is ABTCP with CIKT board driver. But if you are using ABTCP with TCPIP board driver then you do not need to set the polltime.