Slc 500 Pid Anti-reset Windup

Yes, exactly. You set the output limits, and set the .OL bit to enable the limits. This enables "anti-reset windup".

One way to think about reset-windup is that the reset part of the PID continues to climb as long as the PV is less than the SP. This means that the reset part can exceed 100% (even though the output to the valve is capped at 100%). So once the PV is greater than the SP, the reset term has to lose everything over 100% before the valve will begin to close. That delay can cause the PV to really overshoot the SP.

So limiting the outputs prevents the windup (in the SLC) because the reset part doesn't go over 100% (or whatever your upper limit is).

One of these days, I'll do a detailed study of the PID instruction (similar to what Ron Beaufort and I did with TON .
 
Last edited:
Yo, Craig,

Well, Allen beat me at typing - as usual - but here's my $0.02 anyway -

The short answer to your question is "yes".

If you set "Limit Output CV" to YES, then the Integral term will "freeze" at its current value whenever the CV gets up to the value you have entered for "Output Max CV%". The Integral term will also "freeze" at its current value whenever the CV drops as low as the value you have entered for "Output Min CV%".

If you leave "Limit Output CV" set to NO, then the Integral term will "freeze" at its current value whenever the CV gets up to 100% - or if the CV drops to 0%. In other words, if the "Limit Output CV" is set to NO, then the values for "Output Max CV%" and "Output Min CV%" will have no effect on the Integral term - but the Integral will still be "automatically" limited when the CV gets to 0% or 100%.

When most programmers use this "Limit Output CV" feature they aren't really thinking about its effect on the Integral term. Usually they are just interested in limiting the CV to a specific range of values. Examples: Don't let the CV go too low - we need an idle setting. Or don't let the CV go too high - there's NO WAY we'll ever want THAT much gas.

I'm just curious but are you having an issue with Integral wind up - or just digging a little deeper than most people do? Keep in mind that if you DO use this feature (to prevent the Integral term from "winding up") then you are also (unintentionally?) limiting the CV to values between the "Output Max CV%" and "Output Min CV%" settings. Is that something that you really want to do?

Finally, if you want to experiment with these features, monitor words 17 and 18 in your PID control block area. That's where the Integral term is stored. You can actually watch it increase, decrease, and "freeze" as you manually manipulate the parameters of a "dummy" PID control. You'll learn a lot more this way than by trying to figure out what the book means. Been there - done that.
 
Anti-reset windup

Thank You all for You're response. No I'm not having a problem with it, I'm modifying programs and writing them and I didn't want to get into that problem.
 

Similar Topics

How can I test some PID code I have written for a SLC-500 in RSLogix500, without having an actual processor to test on. I have used Emulate500 to...
Replies
3
Views
1,826
Hello, I have a PID block in my program controlling pump speed in order to get a correct Differential pressure. The way I have it set up is the...
Replies
3
Views
1,251
I have a PID in a SLC 500 that does not function as it should. Have deleted it remade it and still have a problem also moved it up and down in the...
Replies
13
Views
2,738
I am new to the SLC 500 platform and am hoping that someone can give me some hints on how to do PID and ramp/soak with the SLC 500 and perhaps...
Replies
11
Views
6,624
Please Help me to make this PID working. I had done PID according to AB manual but it is not working. when I am manully changing the CV at setup...
Replies
6
Views
7,561
Back
Top Bottom