ControlLogix PID help needed

rta53

Lifetime Supporting Member
Join Date
Feb 2003
Location
North Carolina
Posts
619
One more question from a rookie ControlLogix programmer. As I mentioned in another topic I am troubleshooting an existing program for a customer. I have a subroutine that has 2 PID instructions for controlling 2 VFDs that are controlling 2 pumps. One of the PIDs gives me an output when it is called for in the program. I cannot get any output from the other PID. The PID that is working has a timer done bit in the rung that toggles on and off every 2 seconds. The timer for this done bit is in the rung that immediately precedes the PID rung. Several rungs down is the second PID which also has the same timer done bit. Someone told me that I needed to user another timer and done bit and put the timer in the rung before the PID instruction. They said the scan time was too fast for the same done bit to be used since the timer was several rungs before the PID. Does this sound right? Seems too easy.
 
rta53 said:
They said the scan time was too fast for the same done bit to be used since the timer was several rungs before the PID. Does this sound right? Seems too easy.

One timer can be used to trigger different PIDs - there is no such this as "scan too fast for a timer bit".

But I still would use a second timer:
preset for the timer MUST be exactly equal to the loop update time. If loop update is different for both PIDs, trigger timer preset should be different also.

In CLX there is better way to trigger PID by using periodic task with rate equal to the loop update time.
 
rta53 said:
Could you elaborate on this. Why is all this necessary?
If you asking why you need timer, then see RON's PID tutorials
If you asking why periodic is better, then my answer is:
why scan whole program every 10 mses and have FALSE condition for PID if you know you need it only every 2 seconds, so scan it every 2 seconds.
Periodic task is very efficient way available in ControlLogix, but this is a different subject...
 
http://www.plctalk.net/qanda/showthread.php?t=2473
http://www.plctalk.net/qanda/showthread.php?t=13459
http://www.plctalk.net/qanda/showthread.php?t=11242
http://www.plctalk.net/qanda/showthread.php?t=11969
http://www.plctalk.net/qanda/showthread.php?t=14374


Ron Beaurford said:
"And THAT - dear readers - is why I keep harping-harping-harping on maintaining that all important relationship between the PID’s internal “Loop Update Time” setting and the scheduling of the external “trigger” event. If those two settings are not kept in sync, then heaven help you - I can’t."
 
Last edited:
My experience with PIDs is in programming SLCs. I am familiar with update time as one of the settings in the PID setup screen. I have never used any kind of external timer as some kind of trigger. What my initial question was about is not how to get the PID working most efficiently but how to get it working at all.
 
Greetings rta53,

all of the information posted by Contr_Conn seems right on the money ... but if one PID is working - and the other PID is not - then let's ask ourselves "what is the difference between the two?" ... I agree with Contr_Conn in that you don't really NEED an extra timer ... specifically, (if I understand all that you've said) then the same done bit can be used for both PIDs ...

so why don't you give us some more information about how the PIDs are set up? ... I'd pay close attention to any obvious differences between the two ... plus, what is the PV? ... what is the SP? ... what tuning values are you using? ... what is your scaling set for? ...

I'm going to suggest that you post your code (or at least the PID section of it) but for one reason or another people hardly ever do that ... but the more you tell us about your system, then the more help we can offer ...

so far you've asked about needing an extra timer ... as Contr_Conn has said, you don't need one ... as for the setup in the SLC-500 platform, the PIDs there should always be placed on an unconditional rung ... the PIDs in the ControlLogix platform are a horse of a different color ...

good luck ...
 
Ron,

Here is the file. Hope you or someone can help. The PID is in pgm_MISC, rtn_PUMP_PID. I am at customers site.

Randy
 
Last edited:
if we're talking about the second PID in that file, it's currently in the "Software Manual" mode ... and the manual output is set for "0" ... do you want a phone call? ... if so, send me your number in a PM ... I'll be here for another hour or so ...
 
Ron Beaufort said:
if we're talking about the second PID in that file, it's currently in the "Software Manual" mode ... and the manual output is set for "0" ... do you want a phone call? ... if so, send me your number in a PM ... I'll be here for another hour or so ...

I realize that, but so is the first one. When other conditions in the logic are activated the PID changes to Auto. I don't see the difference from the first one. and yes it is the second PID that is not working.
 
Turns out there were multiple issues with this program.

But first I would like to thank Ron for kindly calling me on the phone to discuss my problem. Ron you were right about the scaling issue. Once I changed the unscaled max to match my transmitter max the PV started displaying properly. Maybe this was also the reason I was not getting an output from the PID although I'm still not sure about this. Also once I got an output from the PID I found other problems. Even when the PID output was showing 100% I was still only getting 5.5mA at my VFD. So I thought, something must be limiting the output somewhere. What I found was a setting in the Analog Output module properties that, guess what, limited the output. All the output channels were set to 10 max. But I didn't know if that was 10mA or 10%. Turns out it is 10%. After changing this to 100% I started getting 20mA at my VFD when the PID was showing 100%. I also had other issues with the setup for the VFD HIM but I won't bore you with the details.

As far as I know I believe I was able to fix all the problems the customer was having related to the PLC program and I also got a crash course in RSLogix 5000 and ControlLogix. Also I don't feel so intimated by having to learn this new platform now. Thanks again!

Randy
 
What I found was a setting in the Analog Output module properties that, guess what, limited the output. All the output channels were set to 10 max. But I didn't know if that was 10mA or 10%. Turns out it is 10%.
This is known "trick" of RSlogix 5000 software with analog output card.
Here is what happened:

- By default, after you insert card in I/O tree, all channels set to +/-10V.
All enginerring units set to +/-10 also.
Limits also set to +/-10

- If you change card settings to 0-20mA, engineering units and limits WILL STAY at +/-10

- Now you change you engineering units to 0-100% to accomodate you CV, limits will still stay at +/-10 !!!!
Not too many people will look at the limits tab and set them to 0-100 also.
You MUST do this!!!
 
- Now you change you engineering units to 0-100% to accomodate you CV, limits will still stay at +/-10 !!!!
Not too many people will look at the limits tab and set them to 0-100 also.
You MUST do this!!!
Well as I mentioned in another topic, this was a system I did not install. It would appear that the contractor who did the installation just didn't properly complete the job and it's been in service since 2003. The customer basically has had to live with the system as it was, ie not fully functional. Also I had limited time to fix the problems so I didn't have time to do much reading of documentation. Anyway, you guys and the good Lord helped me out.
 

Similar Topics

I am trying to understand how the PID block behaves, specifically how the settings in the Scaling Tab effect the output of the Controller. I...
Replies
4
Views
7,637
Having Trouble getting a constant pressure out. This is my first time using the instruction and need help quick.
Replies
1
Views
1,516
Morning all, Could anyone shed some light on whats happening with my PID Loop? On our plant we have a 'fast ramp' on the PID Instruction done...
Replies
14
Views
7,580
Hello, I have a PID that I am using for an oxygen valve that regulates the pressure. Often when the header pressure is too low, the output will...
Replies
4
Views
1,273
Hello all, I have a pump that has operational limits 15-100% Speed (9-60Hz). 1. On the PID instruction would you limit (.MINO=15% and...
Replies
21
Views
5,140
Back
Top Bottom