PID Tuning question

angi

Member
Join Date
Jan 2010
Location
us
Posts
361
We are working on a PID control loop, using a level to control valve open or close, and want the system works in following way:
1. PV is greater than SP:
when PV is far away to SP, the Valve will be 100% close, as quick as possible, when the PV is closing to SP, the valve will be slightly open, for example, at least 1% open.
2. PV is less than SP:
When PV is far away from SP, the valve will be 100% open, as quick as possible, when the PV is closing to SP, the valve will be slightly open, for example, at least 1% open.
That means there is a dead band around the SP, when the PV fell into dead band, the valve will be slightly open.
How to tune the PID loop?
Thanks
 
We are working on a PID control loop, using a level to control valve open or close, and want the system works in following way:
Who are we?

1. PV is greater than SP:
when PV is far away to SP, the Valve will be 100% close, as quick as possible, when the PV is closing to SP, the valve will be slightly open, for example, at least 1% open.
OK so the valve controls the inflow. Why must the valve only be open 1% when the error is close to 0? if the error is close to 0 then you want to maintain level and to do that the inflow must match the outflow. What if the outflow 10% of the valves capacity? Then the valve needs to be open 10%.
A tank is an integrating system. Level is the integration of flow divided by the area.

2. PV is less than SP:
When PV is far away from SP, the valve will be 100% open, as quick as possible, when the PV is closing to SP, the valve will be slightly open, for example, at least 1% open.
Since the level can't change instantly there should be no as quickly as possible. The valve should open up if the outflow is less than the inflow and start to close if the outflow is less than the inflow.

That means there is a dead band around the SP, when the PV fell into dead band, the valve will be slightly open.
Why do you need a dead band?

How to tune the PID loop?
You don't tune a PID loop. You tune a system. First you must understand the system. In this case you must understand that it is an integrating system and to maintain flow the inflow must equal the outflow.

Since you provided little information lets say your tank level is calibrated in % so when the fluid is at the top the fluid level is at 100% and when empty the fluid level is at 0%.

Now lets say the set point is at 50%. Now I would ask how much error can your control tolerate? Lets suppose that you can tolerate a 10% error in the fluid level so that at 60% the valve must be shut or open 0% and when the fluid level is at 40% the valve must be open 100%. I think it is easy to see that the controller or P gain must be 5 because the flow must increase 100% for a error change of -10% to +10% in the level.

If maintaining an error within 10% is OK then we are done. If you want to reduce the steady state error to 0 then we must use the integrator time constant.

I will write more when we get more information.

BTW, if you work for someone then tell your boss he is fired. You better be a student because I would expect your boss to know the answer to this.
 
Hi Peter

at beginning, we use PID to control the tank level, it works fine. now the client want to keep at least 1% valve open to make sure there is flow in the pipe, so is it possible to make it happen by re-tuning the system?

thanks
 
What pipe?

Hi Peter

at beginning, we use PID to control the tank level, it works fine. now the client want to keep at least 1% valve open to make sure there is flow in the pipe, so is it possible to make it happen by re-tuning the system?

thanks
I don't like to play 20 questions so provide details or I will go away.
BTW, your boss is fired.
 
Most PLC PID instructions will have the ability to clamp the output high or low at some predetermined value. Look for that. Or you could do this in your logic before writing the value to its analog output.

It would help someone help if you told the forum what PLC you are using.

The above is one of Peter's questions.
 
PID-control is not ly speciality but does he not need the use only the P-part of the PID?

There will always be a difference between the set- and the process-value, thus it should give him something like his 1% flow? Only how fast will the system react?
 
The week end quiz

PID-control is not ly speciality but does he not need the use only the P-part of the PID?
Yes only the P gain is needed if a steady state error can be tolerated. If not the integrator time constant needs to be used.

There will always be a difference between the set- and the process-value,
Not always. What if the outflow stops?
One can always use the bias to change the proportional range to. The gain changes how wide the range is and the bias changes where the proportional band is.

thus it should give him something like his 1% flow?
This 1% flow thing is where Angie or her boss or her customer is so wrong. I said above that to maintain level the inflow must match the outflow. If the outflow is high then the inflow must be high to match. We weren't told what the outflow is.

Only how fast will the system react?
The P gain will respond within a scan and the valve will respond in a few milliseconds but lets say that this time is short compared to the time the fluid level will respond and so the scan and valve time can be ignored.

Can anybody write a differential equation that describes how the system reacts symbolically? If so then you can answer your question yourself once you have values for the symbols. I know this is more of an engineering/math question than a PLC forum question.

If I were teaching a college level controls class I would not give a passing grade to anybody that couldn't write a transfer function of this either as a differential equation or a Laplace transform.
 
yes this can be done with a PID controller, however you can also program it just the way you are telling us.
and as last line if (valveopening <1% AND valveactive) then valveopening := 1%
 
I'd have to agree with Peter in that it would be best to set the inlet valve position based on the outflow of the tank + level error * P gain. i don't think I'd even bother using the packacked PID loop as it would be overkill. Matching the inflow to the outflow is the key.

Nick
 

Similar Topics

I haven't had to tune a PID loop in a very long time. It's actually a PI loop for a pulse width modulation s.v. What was the name of that tuning...
Replies
16
Views
4,101
Hello, I am attempting to tune a PID loop on a process. The process involves a valve with electronic actuator that has quite a high deadband...
Replies
10
Views
2,166
so i have 4 25gpm wells feeding a 1000gal tank (T-1), with an additional 15gpm from a decant tank for 3hrs every 12hrs. P1 and P2 both controlled...
Replies
154
Views
35,875
Hi everyone, yet another PID problem. I'm hoping I understand enough of the process I'm controlling that my request for help is reasonable. If a...
Replies
113
Views
27,913
A few months ago, I started to look into PID controllers and the tuning of first order processes. This has, partly thanks to you, resulted in a...
Replies
162
Views
62,105
Back
Top Bottom