PID Tuning Temperature

sharris111

Member
Join Date
Nov 2016
Location
Unandrrra
Posts
4
Hi,

I am about to start tuning a PID loop for a refrigerant system using PIDE function in Allen Bradley Studio 5000 Logix Designer.

The system works by cooling the oil within a compressor using refrigerant. Basically the system will start up, oil will heat up and temperature will be controlled to a SP of 66 DegC. It is controlled via a valve which releases refrigerant into the system to cool the oil and try and regulate the temperature to 66 DegC.

PGain = 1.02
IGain = 7.74
DGain = 0

Attached is a screenshot of the PV, CV and SV.

PV is orange.
CV is blue.
SV is brown.

Any help with tuning would be greatly appreciated.

Regards,
Scott

PID_LOOP.jpg
 
I can't see the scaling for the trend, so it's hard for to know if the PV has a 5% swing across the SP or a 50% swing. Same with the CV. Just looking at it, I would take the I down to zero, and try to get to a steady state with P only and work from there. I know there are ways to model the process and make better educated guesses, but I'm not smart enough yet to be able to do that. I'm working on it, but it will be awhile yet.

Bubba.
 
The pv has a 5% sweep across the setpoint.

Yes the trend shows the process (pv) and the valve (cv) both oscillating. There is load but it is at minimum.
 
One or both gains are too high. I'd have to know more about your process to tell you anything more detailed.
 
The PIDE instruction lets you select different forms of the PID equation. These use different units for the I gain so it is important to know this before anyone on here can comment, for example me saying that it looks you should decrease your integral action may lead to making the I term smaller - which is the wrong way if the instruction is set for dependent

Could you post a screenshot of the "General Configuration" Tab of the PIDE FB.
 
Last edited:
The PIDE instruction lets you select different forms of the PID equation. These use different units for the I gain so it is important to know this before anyone on here can comment, for example me saying that it looks you should decrease your integral action may lead to making the I term smaller - which is the wrong way if the instruction is set for dependent

Could you post a screenshot of the "General Configuration" Tab of the PIDE FB.
I agree. I don't bother to respond to these threads until it certain things are made clear like the units for the gains and form of the PID.

However, if the "I gain" is at 7.74 that wouldn't be a time constant of 7.74. The PV is changing too fast for that.

I like to look at the phase lag. It looks like the phase lag is greater than 180 degrees. This makes be wonder if there is a dead time problem. If the temperature sensor is too far down stream the temperate change at the heat exchanger will not be detect for some time later depending on the transport time.

It would be helpful to a a response to a step change in the control output.
http://controlguru.com/pi-control-of-the-heat-exchanger/
 
Going to be a bad idea doing this but assuming this is using the independent (parallel) equation then the I = Integral Gain[1/minute]. I always prefer to work in a time constant so 1.02/7.74 = 0.1317 minutes (or 7.91 seconds) [per repeat]

Like I said - it initially looks like a lot of I for me - If this was the PID instruction - if the CV was 5% below SP the output would only be 5.1, the rest being I term which is winding down at that point. The PIDE is a velocity algorithm working on change in error not error directly. They still get wound up - it just gets stored in the last CV value instead of the I term

A model of the process would help a lot. Although looking at the numbers I was wondering if they came from the autotuner - I would bet they would be 1.0 and 7.75 if tuned manually.

Deadtime relating to sensor location is a valid point as well

Sharris - is the PIDE instruction in a periodic task?
 
The phase lag between the PV and CV is about 90 Deg. When the CV is at Max the PV is at Setpoint and dropping. When the CV is at Min the PV is at Setpoint and increasing.
 
Like I said, you have way too much gain- almost certainly too much P in particular.

Edit: scratch that- almost certainly too much I gain
 
Last edited:
have you tried the Autotune function? ... "sometimes" it works OK ... here's a quick demo ...

http://www.plctalk.net/qanda/showthread.php?p=492660&postcount=1

also - if you're going to be using Derivative - then turning the "Derivative Smoothing" selection ON is usually a good idea ... yours is shown as OFF in Post #10 ...

if nothing else works, I strongly suggest that you post your ENTIRE project file (ACD extension) ... the PIDE is only one piece of the puzzle ... we can tell a lot more about your system with the ENTIRE file in front of us ...

and here's a quick question for you ... has this system ever been running (and tuned) "CORRECTLY" using a "plain old simple" PID instruction? ... if so, I *STRONGLY* recommend that you post the "old" file ... here's the catch ... many people believe that the "E" (for "enhanced") means that they'll get better control with the PIDE instruction - when compared to the old-fashioned PID ... in almost every situation, that is a false conception ...

anyway - if you already have the "correct" tuning values from a PID - then we can easily do a math conversion to calculate the matching values for the PIDE instruction ...

good luck with your project ...
 
Last edited:
Do you have the option to perform a step test on this? If you can as Peter noted above you will end up with a model of the process - then there are many different formulas out there to calculate some tuning constants based on different requirements.

A step test would be comparable to doing a manual auto tune if that makes sense.

If you don't want to (or can't due to operational limitations) then you are into the realm of making adjustments and verifying the changes. Honestly I've been in so many plants that won't allow to stop a process to model it (lost revenue etc) but are quite happy for people to make changes to tuning on the fly and hope they never push a loop into instability... sorry rant over.

Ron has made a good point regarding the entire programming. Is the CV being manipulated after the PID instruction before it gets to the valve? Rate of change limiting is a common one for example.

The gains are being wrote to the PIDE instruction externally, what is setting them? They are now different to the first post?

I would start by setting D gain to 0 and monitor for several cycles. It's not doing a lot right now anyway.

Then I would reduce I gain by 10% increments and monitor. I am looking for the max CV and max PV peaks to be in phase to start with, then start reducing the P gain.

The problem with me saying this though is I have now idea how the process responds under different loads? It is cycling now but what about a heavier load? You could easily end up with an overdamped loop that does not respond to load or set points changes well.

I guess I should have asked this first - what constitutes a well tuned loop for this process for you?
 

Similar Topics

Hello have posted some on this earlier. have done some testing to determine best PID values but results from open loop testing were poor. any...
Replies
41
Views
11,065
http://www.controleng.com/article/CA6626810.html?nid=2361&rid=1263151521 You can see that not all auto tuning is created equal. What gets me is...
Replies
5
Views
5,145
Hello, I am attempting to tune a PID loop on a process. The process involves a valve with electronic actuator that has quite a high deadband...
Replies
10
Views
2,069
so i have 4 25gpm wells feeding a 1000gal tank (T-1), with an additional 15gpm from a decant tank for 3hrs every 12hrs. P1 and P2 both controlled...
Replies
154
Views
35,517
Hi everyone, yet another PID problem. I'm hoping I understand enough of the process I'm controlling that my request for help is reasonable. If a...
Replies
113
Views
27,596
Back
Top Bottom