How many PID loops that can execute correctly in Controllogix?

bundhit

Member
Join Date
Sep 2003
Location
Bangkok
Posts
39
1.I need to control at least 25 PID loops of
temperature, pressure, flow and pH.
Can controlLogix:1756-L55M12 control them?

2.May a huge of PID loops affect to the efficiency of the CPU?

3.What are the factors to be concerned for selecting the CPU used
for PID loop control?

Thanks
 
ControlLogix has no PID/PIDE loop limitations, most likely controller will run out of memory and connections first.

By putting PID/PIDE in periodic task with rate=loop update time, processor will execute specific loop only onece in a second of so.

Also for all new applications use 1756-L6x processors - they are much faster and cheaper than L55s.
 
bundhit said:
1.I need to control at least 25 PID loops of
temperature, pressure, flow and pH.
Can controlLogix:1756-L55M12 control them?

An L6x won't even break a sweat, rendering questions 2 and 3 moot.
 
same problem for pid/pide loop limitations

Contr_Conn said:
ControlLogix has no PID/PIDE loop limitations, most likely controller will run out of memory and connections first.

By putting PID/PIDE in periodic task with rate=loop update time, processor will execute specific loop only onece in a second of so.

Also for all new applications use 1756-L6x processors - they are much faster and cheaper than L55s.
i am wondering if bundhit have find the nice solutions for pid/pide puzzle? actually i have the same puzzle. in my opinion Controllogix PID/PIDE just like programming module a kind of arithmetic using in the software. when you apply 25 pid/PIDE, in the different zone ,it is just like excute the same programming module . so you have no need to worry about the limitation .
but must consider of the memory of CPU.
i can not provide the right solution . just hope more people can support this question .
 
You are not really talking about that much more code. The PID's should definitely all be in periodic tasks set at the correct interval for the process being controlled.

Neither memory or processor scantime should be a problem unless you have a LOT of other code and extremely time sensitive system to control. Obviously if you are short on memory that is a problem. The processor you mentioned uses expandable memory modules though.

There are really way too many things to consider without knowing a lot more about the whole system.

As mentioned above, new L6x processors waaaaaaaay faster. No reason to ever buy another L55 processor.

RSL

Quick knee jerk answer, Yes will work.
 
It is preferential to use the PIDE. I have experienced major problems with the PID function if you have a negative SP or PV.
 
We have L55's running more than 25 loops without any problems. We also have loops with negative SP's/PV's and have never had a problem with this so I was surprised by Screweye's reply.

Andybr.
 
RSL said:
You are not really talking about that much more code. The PID's should definitely all be in periodic tasks set at the correct interval for the process being controlled.

Neither memory or processor scantime should be a problem unless you have a LOT of other code and extremely time sensitive system to control. Obviously if you are short on memory that is a problem. The processor you mentioned uses expandable memory modules though.

There are really way too many things to consider without knowing a lot more about the whole system.

As mentioned above, new L6x processors waaaaaaaay faster. No reason to ever buy another L55 processor.

RSL

Quick knee jerk answer, Yes will work.


Thanks for all the kind answers! actually i did not clarify the issure which happend on me. my CPU is compactlogix (a new controller of ROCKWELL),and the controlled object is a ferment tank have "temperature,flow and pressure "(Which using 5 PID/PIDE),and the same objects extend to 7 clusters tanks,so i have all of the 35 PID/PIDE loops.
now i want to put the pid/pide in the continuous task, (due to many other process control condition judgement, can not using periodic task) ,
should i add some timer (seting loop update time equal the timer present value) , whether it can work?
 
What a thing to have to worry about!

This thread is one of the reasons we switched to a PC based solution - you don't have to worry about processing capacity or memory. We use SoftPLC (www.softplc.com) which costs the same as CompactLogix, but has more power than ControlLogix. Base memory avaiable for users is 64MB and the minimum data table size is 100 MILLION WORDS, including 10000 PID loops.

We have an heat treat application with 70 PID loops on a P266 based system and our scan time is only 8msec - and we execute every loop every scan.
 
thanks all the replay.
that is to say the pid/pide efficiency is relate to the cpu memory and sum scan time in one scan period ?
 
I am going to tear down a castle

Cody said:
This thread is one of the reasons we switched to a PC based solution - you don't have to worry about processing capacity or memory. We use SoftPLC (www.softplc.com) which costs the same as CompactLogix, but has more power than ControlLogix. Base memory avaiable for users is 64MB and the minimum data table size is 100 MILLION WORDS, including 10000 PID loops.

We have an heat treat application with 70 PID loops on a P266 based system and our scan time is only 8msec - and we execute every loop every scan.

First, 64MB, is 64 million bytes...it takes two bytes (a byte is 8 bits) to equal a word (16 bits). How do you get a 100 million out of what should be max 32 million, using your train of thought?

If you have a 100 million (or 32 million) word capability why do you only have 10000 PID loops? It take 10000 or 3000 words per loop?

You use what you use because you like it and it fit your needs. There are advantages to a PC option and MANY disadvantages, it is not an end all solution to using a PLC.
 
Last edited:
Able Lee

At the risk of being contradicted by others on this forum I would say that it is probably perfectly OK to run your Temperature, Flow and Pressure loops in the continuous task using a timer to trigger each loop. Process controls do not normally require the high speed processing needed for Motion control and in any case it is likely that your process values are updated relatively slowly. One of the most common mistakes I see when looking at process controls is that PID loops are set to run faster than the sampling time for the PV. In order to avoid aliasing you should ensure that the PV is being updated at least twice and preferably several times for every time you update the loop. For most analogue input cards the sample time is much longer than the PLC scan time and for many process instruments the update times can be in seconds (or more for flow rates calculated from meter pulses). If your required update time is several seconds then there is no real benefit in using a seperate periodic task for each different update time. Using very short update periods for these loops will actually degrade their performance.
Note. - The above comments are not intended to be applicable to Motion Control loops where processing times normally need to be much higher. There are people with far more experience than me in this field who regularly give advice on these applications on this forum.
Andybr.
 
Something to think about

Andybr said:
Able Lee

At the risk of being contradicted by others on this forum I would say that it is probably perfectly OK to run your Temperature, Flow and Pressure loops in the continuous task using a timer to trigger each loop.
You can get away with that if your process doesn't require the derivative gains. If the derivative gains are required then the sampling should be done at fixed intervals so that accurate rates of change can be calculated.

Andybr said:
Process controls do not normally require the high speed processing needed for Motion control and in any case it is likely that your process values are updated relatively slowly. One of the most common mistakes I see when looking at process controls is that PID loops are set to run faster than the sampling time for the PV. In order to avoid aliasing you should ensure that the PV is being updated at least twice and preferably several times for every time you update the loop.
Aliasing occurs when the frequency of the signal being sampled is higher than the sample time. If this is the case then the PID is running too slow. Aliasing is not a problem with process systems because the process changes too slowly.

Over sampling is good to do because the data can be sampled and filtered before it is used by the PID. Over sampling effectively adds resolution to the input data. If an input is sampled 8 times per PID update, then the resulution is increased by the square root of 8 or almost 3 bits. This can make a significant difference if the derivative gain is required.

Andybr said:
For most analogue input cards the sample time is much longer than the PLC scan time and for many process instruments the update times can be in seconds (or more for flow rates calculated from meter pulses). If your required update time is several seconds then there is no real benefit in using a seperate periodic task for each different update time.
Again, this depends on whether the rate of change in PV is required.

Andybr said:
Using very short update periods for these loops will actually degrade their performance.
It can, but why?

2.May a huge of PID loops affect to the efficiency of the CPU?
Each PID will take time to execute and increase the minimum scan time.

3.What are the factors to be concerned for selecting the CPU used for PID loop control?

Flexibility and options. Some PLC have only one kind of PID which may not be optimal for your needs. There are different forms of PID. The Control Logix has many options. It can also
sample at regular intervals which is important if the derivative gains are required.

 
Peter
When adding the note to the end of my reply guess who's name was at the top of my list of "people with far more experience than me in this field". In any case I will try to clarify the points you have raised:-
1) The timer used to trigger a loop provides the fixed interval so derivative terms can be used. The only difference between this method and using a periodic task is the accuracy of the timing. If you are executing the loop every 100mS then this will be an issue. If you are only executing it every 10S then it will not unless your PLC scan time is extraordinarily long.
2) I apologise for my misuse of the term aliasing. In any case my comments about sampling and processing times are still valid.
3) My statement about the sampling time of analogue inputs does not relate to the rate of change of the PV but concerns the apparent waveform of the signal as presented to the PID instruction. My logic is detailed below in 4.
4) If the PID instruction is processed several times between PV samples then any change in PV is presented to the instruction as several samples with no change followed by a possibly large step change in the PV. This will obviously have a significant impact on the operation of the derivative term.
Andybr.
 

Similar Topics

Can some one give me some kind of fig. for the max number of PID loops that can be executed, each at 100ms for Various PLCs. ONLY PLCs NO DCS...
Replies
20
Views
616
There are many applications that are non-linear where one set of PID gains don't do a good job of a wide range of operation. There are...
Replies
19
Views
7,125
Good Evening , We have a number of Powerflex 525 Drives . I took notice for years elsewhere and our plant , that our Powerflex 525 drive...
Replies
0
Views
636
Good Afternoon, Just wondering , are many of you using SAP in your plants ? If so , is it difficult to learn ? Are there many training...
Replies
10
Views
1,418
It better to have too many instead of not enough right?
Replies
26
Views
2,876
Back
Top Bottom