Allen Bradley PID Tuning Help

Don't go past go. Do not collect $200 until you get the P gain working.

Gentlemen,

Once again, thanks for all your input. I'm on site and working on a couple of other things so I haven't got a chance to get back to my PID tuning. I hope to resume tomorrow.

I have being unable to find out the pump capacity or channel volume yet however I have made one mistake. I mentioned the LT was located 500m from the pump. This in fact is only 88Metres from Pump.
This should make little difference if the water flows freely. You mentioned mud. That may not flow freely. The question is does the fluid flow freely?
If it doesn't then move the level sensor.

I have a couple more questions/observations you may be able to assist my understanding.

The PID instruction in RLL in Logix offers 2 Equations, Dependent or Independent. At present it is set at Independent. Is this correct?
Either one will do.

The control action is PV-SP. Is this correct?
Yes, if PV>SP the result is positive which will speed up the pump.

The PID is fired off a 500ms timer. The loop update time of the PID instrction is set to 500ms too. DO these have to match? Is every 500mS sufficent? Insufficient?
Should be more than fast enough.

The VSDs mimium speed and Fieldbus minimum speed is clamped at 25Hz. I'm told if the pump is running any lower than this the pump is doing no work. Surely this is going to have an effect on my PID?
Yes, the flow is not proportional to the control signal. You system is non-linear but don't worry about that until you get the P working.

Should I set my CV High Limit to 50%??
Why, not unless the pump has twice the capacity of the in flow. Ideally the pump should have just enough capacity to match the maximum inflow.

ydTech, you mentioned fixing the bias to 50%. Is this the output bias parameter in the PID instruction?
Why do that? If the bias is set to 50% the will be a 50% control output when there is no error. That isn't right.
 
First, stick with the Independent version. The dependent ties each variable (P, I & D) together so they interreact. Very difficult to tune.
Here's a writeup of a procedure that I used years ago. Used with AB PLC's, Mitsubishi and GE. Worked with all. Temperature loops, flow loops, level controls, etc.
 
When in purely P mode it needs a pre-bias. The control action then adds or subtracts to this value.

Integral action actually applies to the bias, so the pre-bias can be omitted when it is used. For level control integral action can be inconvenient in case of a rapid upset in inflow, since it takes time to wind it back and the level may go off-limits for a while.

That it starts out at 50% isn't a worry, since the control action will soon enough get the process to set-point plus off-set.

The bias can also be set by putting the controller in manual, adjusting the output and putting it back to auto.

Keep the parameters independent, much easier to use and understand. The difference is that in dependent mode I and D are multiplied by P, takes a bit more head-scratching to get them right.

Why do that? If the bias is set to 50% the will be a 50% control output when there is no error. That isn't right.

It will if there is no error at all, and the process is stable at that value. In purely P mode there will be an off-set (constant error) pulling the CV off from 50% by whatever amount it needs to keep the process stable. Where it ends up depends on inflow, pump capacity and whatever.
 
Last edited:
When in purely P mode it needs a pre-bias. The control action then adds or subtracts to this value.
Why? When there is no error and no flow you want the pump to no go.
Your bias would have the pump running at 50% that can't be right.

The bias should be set so pump will match the inflow as indicated by the flow meter it is is used at all.

A level control system is an integrating or type one system. This is much different than a temperature control or velocity control system where the SP goes to ambient or steady state when the control signal is turned off.
 
ydtech,

I know what you mean by bias value. What you propose is basically P - only controller with fixed working point. This approach works when operating point is known. For example, in steady state there is a balance between input and output flow that keeps level at desired value. Manipulated value (CO output) in that case should be used as bias (since SP = PV, error is zero). This controller form is: CO = Kp*error + Bias. In this case, Bias elimintes constant offset error (in this operating point only) and it is usually adjusted manually. This assumes that operating point is not going to be changed anymore.
Since tank is integrator in its nature, this Bias is not necessary. However, constant offset error is to be expected (tank is not an ideal integrator) but this shouldn't be a problem in this application.
 
The 50% is really the theoretically ideal value. Of course it can be set at any convenient value in a real life situation and usually is. It's a good starting point for buffer tanks with loose limits and low gains.
 
Guys,

Sorry for the delay in reply. Only got to commissioning the PID today. Good news anyway so thanks for all your help.

I was able to get the loop tuned really well which was a surprise as it was my first time.

I found the D component to be of no use in this application, is this because the VSD can not respond quick enough?

The loop was tuned with a Proportional gain of 9 and Integral of 0.1. It responds very well except when the setpoint is changed dramatically. In this case it takes the PV some time to get to the setpoint. In practise though the setpoint will never change much, possibly never.

Thats the first one. I have probably another 10 loops which need tuning as equipment comes online over the coming weeks, hopefully they all go nicely.

Thanks guys,
 
Morphius,

I'm glad you made it. In this particular application, you didn't find D part useful. That maybe because of your actual application. When you have time, I recommend you to read and understand the derivative component. Many people avoid using it because process values can be noisy which can spoil the loop response and also few of them really understand it.
In my experience, I have found D part very helpful with level control loops. Level application is an integrating process and using PI controller would lead to overshoot in many cases. I use D part to effectively cancel the pole (integrator) of the process itself. Not really sure if you're familiar with the control systems theory, but you can also read this.
It is always better to have as much simple controller as possible, but D part can be your friend in level application where overshoot and constant error offset cannot be tolerated.

Cheers
 
Tank controls are easy.

I found the D component to be of no use in this application, is this because the VSD can not respond quick enough?
No it is because the VFD responds quickly you don't need the D term.

The link to my FTP site is old.
Now that file can be found at:
http://www.deltamotion.com/peter/Mathcad/Mathcad - t1p1 IMC Pandiani.pdf
This example used a derivative gain BECAUSE the motor time constant tm was too big to ignore.

The loop was tuned with a Proportional gain of 9 and Integral of 0.1. It responds very well except when the setpoint is changed dramatically. In this case it takes the PV some time to get to the setpoint.
The level can't go up any faster than what water is being added to your tank and it can't go down faster than what the pump can pump it.
 
First, stick with the Independent version. The dependent ties each variable (P, I & D) together so they interreact. Very difficult to tune.
Here's a writeup of a procedure that I used years ago. Used with AB PLC's, Mitsubishi and GE. Worked with all. Temperature loops, flow loops, level controls, etc.
Longshanks,

I am a new member to this forum and cannot see the PID tuning procedure you wrote and referenced on February 10th. I would really like a copy of that if you can re-post it or send it to me.

Our company uses AB controllers, but one of our customers recently bought a different brand PID tuner and is trying to use it with our controls system. The parameters we use with Allen-Bradley do not work well with the new tuner, so they must be using a different algorithm. You mentioned that your procedure worked with multiple vendors' equipment -- and that's exactly what we need! Any help you can provide would be greatly appreciated. Thank you.
 

Similar Topics

I have a PIDE set up for controlling a tank level. I've run the autotune on it and it is working fairly well except for one thing. No matter...
Replies
4
Views
2,285
Dear all, Please help me out in configuring the PID instruction CCW.
Replies
5
Views
10,537
I am using PID first time in Allen Bradley.I have to Tune a PID on the basis of Pressure Transmitter.I have 3 pumps and pumps will run/stop...
Replies
2
Views
1,667
go to work on this again this morning. I have attached the file and have a question that i can not figure out. When monitoring the temperature i...
Replies
5
Views
3,529
Hi, I would like to ask about the allen bradley on how to use the pid block in the programming, the software i use is rslogix500 and model of plc...
Replies
4
Views
3,874
Back
Top Bottom