RSlogix PLC5 PID help!

DeweyfromOhio

Member
Join Date
Jul 2012
Location
MayberryRFD aka Bremen, Oh
Posts
7
I have a PID loop that seems to accept a new different "temperature setting" each time it toggles in and out software manual-"SWM" I don't use the term "Setpoint" because the Setpoint is written in and does not change. the temperature of this loop is allowed to float above Setpoint due to varying heat gain of the system occasionally it may float 10 degrees above setpoint
This is a discription of my problem, what happens when the circulating pump is told to stop the PID loop for the steam valve is put into -"SWM" with a Set output "SO" of zero. The valve output goes to zero. The temperature will fall in the system. When the pump restarts the SWM and SO are removed and the PID returns to the temperature that it was floating at and MAINTAINS that temperature. up to 10 degrees above actual setpoint. I mean maintain by modulating the CV control valve to that temp. There is Gain and Integral in the PID. There is nothing in Bias or Tieback. Nothing being written to SO Set-Output. Have any of you ever seen this? or is there a way someone programmed some indirect addressing to accomplish this? Thanks for your help.
 
I have a PID loop that seems to accept a new different "temperature setting" each time it toggles in and out software manual-"SWM" I don't use the term "Setpoint" because the Setpoint is written in and does not change. the temperature of this loop is allowed to float above Setpoint due to varying heat gain of the system occasionally it may float 10 degrees above setpoint
This is a discription of my problem, what happens when the circulating pump is told to stop the PID loop for the steam valve is put into -"SWM" with a Set output "SO" of zero. The valve output goes to zero. The temperature will fall in the system. When the pump restarts the SWM and SO are removed and the PID returns to the temperature that it was floating at and MAINTAINS that temperature. up to 10 degrees above actual setpoint. I mean maintain by modulating the CV control valve to that temp. There is Gain and Integral in the PID. There is nothing in Bias or Tieback. Nothing being written to SO Set-Output. Have any of you ever seen this? or is there a way someone programmed some indirect addressing to accomplish this? Thanks for your help.


Post your .RSP file, zip it first. Maybe someone can spot something.

Tell us which PID if there is more then one that is giving you the problem.

the temperature of this loop is allowed to float above Setpoint

How is does that happen, doesn't the output of the PID go to zero?
 
Last edited:
Post your .RSP file, zip it first. Maybe someone can spot something.

Tell us which PID if there is more then one that is giving you the problem.



How is does that happen, doesn't the output of the PID go to zero?
This is on a regenerative tunnel pastuerizer in that there is a cooling zone on the opposite end that recirculates back and forth using the heat being removed from the product at that end to add heat to the water at this end. Now the cold incoming product cools down the water that we have used to heat up the incoming product. There are a total of 11 zones in this pastuerizer. 8 of these zones are self heating and cooling when the pastuerizer is full. when the pastuerizer is partially empty is when you will need to add or remove heat depending on which end is empty. so when the incoming side is empty and there is no cooling being provided by the incoming product we will add cooling to the discharge end and allow the temp to float on the infeed side. The PID issue arises when on a rare occasion that the SWM is turned on when the temperature is 10 degrees over and on restart it "Sticks" there.
 
I think we need to see a snap shot of the program when it is in the condition you described above.

There are a few things writing to the SP within your program though, do a cross reference to find them.

There is a value in the PID's "Bias" PD22:1.BIAS. I don't see any thing in the program writing to it, maybe HMI or SCADA system?

bias.png
 
DISCLAIMER: I've got another project that I'm working on so no time to dig deeper - this is just off the top of my head ...

your "Output Bias %" location is set for 175.7578 % (pedal to the metal and then some) ... try setting that to 0 and see if that helps ...

going further ...

usually the change to the Output Bias setting will occur "behind your back" when you go to a manual operation mode AND if you have your Integral Gain set for 0 (which you do) ...

why are you not using Integral action? ...

another thing that needs fixing: you have your PID's Update Time set for 0.1 second – but your "trigger" timer is causing the PID to execute every 0.33 second ... that skews your Integral and your Derivative actions ...

if I get more time I'll dig deeper – but maybe this will be a start ...

.




OUTPUT_BIAS.PNG
 
Ron the Bias is not being written in. I have watched this loop "do" this error about 10 times and twice a value was written into the bias. If we were writing to it it would be a round number unless calculated in the program. which its not. I can recreate the problem by upsetting the loops and then triggering the SWM rung.
The integral gain is normally .08 I was experimenting on whether or not the problem would occur without integral action. it did
Code:
another thing that needs fixing: you have your PID's Update Time set for 0.1 second – but your "trigger" timer is causing the PID to execute every 0.33 second ... that skews your Integral and your Derivative actions ...
You are correct about the trigger timers. I am relatively new here only ten years. The SENIOR TECHs programmed all of these programs. and I have to be careful.... I have seventy seven of these loops and removing the odd timing setup would mean retuning all seventy seven. and they function OK. The STs belive they need both timers to prevent the loop from freezing or getting stuck. The STs have had Twenty or Thirty years to get these to work. I think they migrated over from AI? Now don't get me wrong the STs are very good programmers and technicians. They are very territorial and don't like to share info. I will share with anyone what little I know :)
 
Last edited:
Ron the Bias is not being written in.

I'm afraid that you've missed my point ... there is a distinct possibility (actually a strong probability) that the PID itself is writing a value into that location ...

there are ONLY two rungs in the entire "demo" program shown below - and they couldn't account for the value present in the Output Bias location - unless the PID itself is writing the value there ... and that's exactly what has happened ...

see the note in the figure below – and then continue on to the next post ...

.

output_bias_2.jpg
 
Last edited:
you could turn the Bias Back Calculation off – as shown in the figure below ...

but ...

the larger question still remains:

why are you not using Integral action? ...

naturally I can't tell from here – but I'd bet slightly more than pocket change that cranking in some Integral action would help clear up that three and a half degrees offset that you mentioned ...

.

output_bias_3.PNG
 
and while we're looking at weirdness - see the notes below ... this has nothing to do with your PID problem - but it sure looks "unusual" ...

good luck with your project ... I've got to get back to work now ...

.

speed_monitor.PNG
 
Ron, Mickey I removed the second timer from the rung and set the update time to match the .dn timer = .33 sec. also removed the .ini unlatch under the control block. This did not change anything except require some tuning. KP was 400 now 50 And Ki is the same at .08. There has always been integral in the loop. I accidently sent you a copy of the backup with out integral while experimenting. :(
Over the weekend I wrote another PID Block: PD22:17 with test bits to toggle between PD22:1 and PD22:17 and ALL other values and bits coming in and out of the blocks. In essence exactly the same and it works properly. This would be easy to say I fixed it. But I havent. The Loop is working and the zone is in control but I have not fiqured out a block that should be working. And now I have one of seven of my Pastuerizer programs that is not standard.
Have you ever seen a PID block become corrupted and unusable? Some techs on the other side of the plant say they have. and you just have to write another one.
I also want to thank you guys for your assistance and insight.
 

Similar Topics

Well today I approached my Rockwell Sales rep for a quote on a Licence for RSLogix 5 software for Allen Bradley Legacy PLC5 thinking it may be a...
Replies
26
Views
12,055
Dear All, I am not an AB guru, and we dont use it a lot as the AB rep is not that great (IMO) in my country. Because of that I mainly use...
Replies
4
Views
4,026
Is it possible to save or export an RSlogix5 Plc5/80 program in a way that it can be opened using RSLogix5000..?
Replies
4
Views
4,160
Hello all, I have a question in regards to RSlogix 5000. I am having issues with the program force closing when I try to make online edits. We...
Replies
0
Views
95
I am having trouble with getting no control of my analog output signal. I am using the SCL function block to control my analog output. The logic...
Replies
11
Views
210
Back
Top Bottom