PLC and DCS comparison for scan and poll rates


Thread Starter

Adil S Khan

I am interested in knowing the significance of scan rates/polling rates for automation systems.And then a comparison of PLC with DCS.Anyone with authentic expert feedback is welcome.
Hi Adil,

Scan rate is time for reading inputs + logic execution time + updating outputs.

Scan rates for Automation systems (either PLC or DCS) are important since these scan rates are required to defined/implemented based on process requirements. For example,if the process is fast varying one then scan rates should be faster to have better control over the process.

If the process requires faster scan rates of digital I/Os (more number of digital I/Os when compare to Analog I/Os), it is better to go for PLC since this will be cheaper when compare to DCS (eventhough it is possible to achieve the same in DCS).But there are other important parameters to be considered to choose either PLC or DCS for a particular application.

In case of emergency shutdown applications, it is always better to go for PLC because of faster scan rate (typically 100 ms)and SOE requirements.

Hope this helps.



Shawn Walling

It is also worth noting that some PLCs have a single scan rate for all of the logic running in the unit. The DCS that I am using allows me to choose different scan rates for different "blocks" of logic. This is a very helpful feature that allows me to operate certian control logic at 100msec and others at up to 1 minute. This allows me to save processor resourses by only calculating tank volume of diesel in a 20,000 bbl tank every minute instead of every 100ms.

Francis Lovering

You said "It is also worth noting that some PLCs have a single scan rate for all of the logic running in the unit. The DCS that I am using allows me to choose different scan rates for different "blocks" of logic"....

For PLCs, mostly, it depends on how the PLC has been programmed. For DCS's, often, it depends on how the DCS has been designed.

You should also consider the order in which the blocks in the logic are executed, since this can be a major issue that determines the overal rate of execution of the logic. Ideally you execute them all in one 'scan' and in the right order. The order is important. For example if the blocks that process input (or upstream) functions are executed after those that process the outputs then bang goes one scan. With complex block relationships it can be several scans. If you cannot execute them all in one go then execute the fast changing ones faster than the ones that need to change less often. (see Nyquist etc). Do any systems actually work out the optimum execution order of the blocks (A) ? Or do they just let you, the programmer, control them (B) ? In this age of incredible processing speeds does it matter? I think so myself, I have incidentally found it easier with PLC's to do (B). Equally I have come across many PLC's that have been programmed by people who did not have a clue about how to do it.

Incidentally, does anyone know algorithms for finding 'the right order' from a function block diagram*? Does Excel anyone know how Excel determines the order to execute cell functions?

* At present my best effort with Function block diagrams goes like this: Start with the outputs in the diagram, work back through each blocks input connection until you reach the inputs, counting how many steps it took. (It is a recursive algorithm.) Then execute the blocks forward starting with the most backward inputs. It gets difficult when block send values back to previous blocks. How do spreadsheets work out the order to execute cell functions? There must be some maths for this, does anyone know where it is?


Hi Adil

The best way of automation is to find out response time of the process & dynamics of various element.

Based on the requirement find out critical & not
critical variables & opt for either DCS & PLC
but the scan rates & processing rates are very
vague terms suitable for vendors. The simple thumb-rule is any commitment by vendor
multiply 3-4 , than you will never have problem.

It seems you have different problem,if you can address it to me probably may be able to give you correct solution.

[email protected]

Classical definition of PLC-DCS seem to have dissappeared, and we are in a new era in instrumentation and controls.

As for your need for different speeds, you can always put some timer logics and then have different things happening at different times. Perhaps a bit of additional programming at your end, but doesnt mean that it cannot be done in the plc with single scan time.

Seven to ten years ago and perhaps before that, many PLC scans were milli/microseconds and DCS controller cards had scans in 100 ms range. This difference was basically due to analog and digital processing speeds. PLC's when processing Analogs had similar higher scan rates. Do not know about vice versa.

It was always controls oh..DCS and interlocks... oh PLC's. But that isn't the case anymore. where cost matters PLC-SCADA has emerged a favourite which doesn't mean that DCS's have not trimmed or are out, but they have also restructured to customer needs.

The market has DCS, PLC's and don't forget PID controllers (MOD-30, 761 etc.), mux-demux systems all work together so user gets the maximum benefit at the lowest possible cost.

A mix and match approach is the best bet today!

The website that changes regularly
Cruise Control project ongoing on
This is the same as my experience.

PLCs I've seen are used for one of two purposes - on a serial link to do all the donkeywork in big MCCs and as dedicated dual redundant (or in Tricons case) triple redundant ESD systems.

I'm not completely sure but I think also a DCS has some issues over how regulatory provable it can be as an ESD systems as regards scan speed, redundancy and reliability, hence PLCs are used.

Feel free to quote all the rules....
In my opinion the major difference is in the way PLC and DCS scans. in a PLC, all the inputs are first read, then the calculation is done by the processor and then the outputs are given out. this appens all the time. this means in some order or the other there is a fixed sequence of generating output. but this is not the case with DCS. outputs are generated in parllel. two or more outputs can be given out at the very same moment, which is not possible in PLC.