Feed Forward control - checking my solution

Doug_Adam

Member
Join Date
Sep 2002
Location
Perth
Posts
948
I had a bit of a problem implementing feed forward control on some flow control valves. During steady state, the control with feed forward was much better than the straight PID control. However, on startup and during setpoint changes, the time taken for the flow rate to change generally resulted in some reset windup with a small but unacceptable overshoot and a long settling time.

I overcame this on startup by disabling the integral control for the first 10 seconds, and so far the small adjustments to the setpoint by the operators haven't caused much of a problem. However, I was looking at another possible solution where for every setpoint change, I will set the integral hold function for 5 to 10 seconds.

Now the question I would like to ask is for those who use feed forward control, is this a common problem? And do you normally disable the PID control during setpoint changes? Is there another way of doing this?

Thanks in advance.

Doug
 
Doug_Adam said:
Now the question I would like to ask is for those who use feed forward control, is this a common problem?
No.

And do you normally disable the PID control during setpoint changes?
No.

Is there another way of doing this?
Probably but what are you really doing? Is the set point a flow or a level? If the SP is a flow, then is the flow linear with the control output?
 
You are asking your system to do something it can't do. You are making a change in setpoint faster than the system is capable of changing the actual value.

This really isn't so strange in process control system, where the setpoint is often changed in steps. However, in properly tuned first order systems without feed forward, the PI integral time is typically matched to the process time constant. Effectively what happens is the PI integral sum grows at a rate that matches the rate of change of the process. Ultimately you end up with an integral value that provides the stady state output required to keep the process where you want it.

Now you add feed forward. Lets assume you can calculate a perfect feed forward term. In steady state you have zero PI loop output. You make a step change in the setpoint. The new feed forward value immediately jumps to the correct value that will ultimately give you the desired steady state value. However, it takes time for your process to reach the new setpoint. So you have a certain amount of time where you have error. This error will cause the PI integrator to move in one direction or the other to correct for this error.

As I said above, ultimately the integrator would provide all the output needed to keep the process at the steady state value. And the PI integrator will continue integrating until the setpoint is reached and passed. However, you are already providing the required output as part of the feed forward calculation. So all that integrator value that was added to help your process get to setpoint is actually output you ultimately don't need. And there is your overshoot.

That is the why. I'm not sure how I would fix it exactly. I know the first thing I would do is ramp my setpoint changes at a rate that the process can keep up with. Your actuator takes some time to achieve the new flow rate setting. you absolutely can't change the setpoint faster than that.

Keith
 

Similar Topics

I have a conveyor full of product in an oven, I am trying to control the final temperature of the product using conveyor speed. I have 4 product...
Replies
0
Views
1,449
Hey All, I am working on the programming to maintain level and pressure in a 80 gallon surge tank. This tank feeds fillers that fill either 2.5...
Replies
2
Views
1,532
I have a startup issue in need of a solution, the problem involves 3 valves on a evaporation system. The three valves are a evaporator feed water...
Replies
3
Views
1,514
I do a lot of hot water set projects, which are simply a steam heat exchanger with a steam control valve that adjusts to a PID setpoint- the water...
Replies
3
Views
1,766
Hi guys! It seems to me that PID loops with feed forward are underutilized. Maybe it's just me but I think almost every loop would work better...
Replies
6
Views
2,689
Back
Top Bottom