Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

PID output staying High when SP = 0

Status
Not open for further replies.

gerffs

Computer
May 23, 2007
3
0
0
US
We have a Clean Steam Reducing Station for reducing steam pressure from 60lb to 45lb and 30lb. It is being controlled by an Allen Bradley SLC 5/05 and a Panelview 1000. The problem is that when the Setpoint (SP) is changed to 0 and the Process Variable (PV) is 0, the output for the control valves stays at a very high percent (usually above 90%). The PID is set up as reverse acting E=SP-PV with a Deadband of 30, Loop Update = 0.05. I can't for the life of me find any information on why this would be doing this. If you place the controller into manual then the output drops right down to 0 or what ever the manual SP is. Does anyone know why this would be happening? There are 3 PIDs set up and they all do the same thing. To me it seems that the output should drop to zero if the SP = 0, PV = 0 and thus the Error = 0. Any help would be greatly appreciated.
 
Replies continue below

Recommended for you

what mode is the pid in at this point in time auto/manual? Sounds like even though you say the the PV is zero it in reality is not and therefore pid outputs up to max to compensate.
 
" The problem is that when the Setpoint (SP) is changed to 0 and the Process Variable (PV) is 0, the output for the control valves stays at a very high percent (usually above 90%)."
What you are saying is that the output doesn't change when there is no error. That makes sense to me. Why should it? What is happening is that the integrator has wound up to provide 90% output. It will not unwind when there is no error.

"The PID is set up as reverse acting E=SP-PV"
This statement is inconsistent. So it it really E=PV-SP?
What happens when the SP is set to 1?

Why 0? Aren't we talking temperature where 70 degrees F or 20 degrees C is ambient?
 
Thanks everyone here is some more information...

The controller is in Auto mode when this happens and when if put it in manual the output goes right to zero and then if you put it back in auto it stays at zero. The process variable is definitely at zero unless it

The PID is set up as reverse acting E=SP-PV because we are controlling steam pressure and not temperature. If I put a 1 into the Setpoint it will gradually work its way to an output of 100% again.

“What you are saying is that the output doesn't change when there is no error. That makes sense to me. Why should it? What is happening is that the integrator has wound up to provide 90% output. It will not unwind when there is no error.”

This is what I am suspecting after looking at it for some time now. I do not know exactly what algorithm AB uses for their PIDs but I think that in these circumstances it just leaves whatever output, CO(t), it had at the time(t) that SP(t)=0, PV(t)=0 and e(t)=0. I haven’t had time to try to work out the math yet but I suspect that the controller just doesn’t care at that point and leaves the output at wherever it was at time (t).
 
With at deadband of 30 you tell the pid to take no action until the error > 30.

Simple fix is to compare the PV/SP for this condition and when it exists momentarily force the PID instruction to manual and over write the output register with zero. Make sure to position your logic so that it runs after the PID rung.
 
"With at deadband of 30 you tell the pid to take no action until the error > 30."

That makes things clear for sure, thanks. I did test this and it works great.
 
Hello;
Another point is that in a PID controller there are three channels that sum to supply the output. They are P Proportional, I integral, and D derivative. In particular the I channel will not change when E=0. Therefore if the I channel is at 50%, and PV=SP=> E=0, then the output stays at 50%.
It is in this manner that the PID achieves zero steady state error. No controller can do this without an Integral channel.
 
hi all
at the risk of sounding trite the simple fact is this is a PID controller.
It is bad practise to use an auto setting of 0 to force the output to drive closed.
You will have an indeterminate position occuring and the controller will ramp (yes reset windup) to some undefined position. AND it may vary from time to time and have to be checked before startup.
Reset wind up to below zero may hamper your restart and create an "out of spec" condition it could be BAD.
Then on a self tuning controller there could be more issues.


So I suggest :-
# Instruction to operations that shut down = manual 0% (or as suits process)
# automated sequences toggle the auto / manual selection and set o/p to 0% (or as suits the process)

Having a steam line come onstream at say 90% open must cause some hammering and other nasties as well

anyway enjoy the journey & grab great memories
Don
 
Status
Not open for further replies.
Back
Top