8 posts in this topic

Hello everyone,

Not sure if I have the right forum, so please forgive me; but...

I have a control loop to tune, and it's the first one that I've ever been in charge of.  My question is about tuning PID.  The loop I have to tune is controlling a pressure reactor to setpoints ~3000psi with a safety valve that blows around 4500 psi.  My question is what procedure you might go through to tune it safely.  I'm quite honestly a bit afraid of the high pressures and I really don't want to make anything "pop".  What also makes it tricky is that the reactor has to heat up to get to full pressure.  Without heat, the reactor will reach ~1000 psi, then it sits there for a long time and eventually the heat kicks in and the pressure can rises up very quickly.

I currently have a very small gain value, something like 0.009 and an integral time of ~7sec.  I'm getting pretty good results in that the PID controller will bring the reactor up to pressure without major overshoot, but it oscillates at ~ +-100psi, which seems excessive to me.

[The situation is further complicated by the material in the reactor, a slurry, which has variable density often causing pressure spikes and drops as thicker sediments blob through.  Then, valves that we are using to control appear to be only opening ~10% to maintain setpoint, meaning I only get 1/10th the resolution I would be hoping for.  Also, the valve responds quite slowly to command signal changes.  The controller will be attempting to open the valve in 0.1% increments, but it only responds at minimum to 0.4% changes in the control signal, and when it reverses directions it seems to only respond after a ~5% change in control signal.  This alone appears to cause oscillations that I don't know if a PID loop could ever get ahold of.]

Anyways, aside from the obvious valve issues, is there any tips for tuning a system with this high pressure?  I need fast response, but slow buildup...

(Oh yeah, I'm also having to use connected components workbench for control software.  At least the newest version of CCW seems to have a nice iPID control block; but man, I have never had to ctrl-alt-delete a program more times due to freezing while building or downloading...so frustrating...).

Share this post


Link to post
Share on other sites

Does the valve/actuator assembly have a positioner?

Share this post


Link to post
Share on other sites

Not sure what you mean by positioner...the actuator is what changes the position of the valve isn't it?

The valve assembly is a valve by Mascott with an actuator by Heli.  The valve seems to be good for the application, except that it is controlling in the bottom 10 percent of it's movement which drastically reduces resolution, but that does let the slowly moving actuator have more of an effect on the system as a small change in position has a noticeable effect on the output.

Another issue I've found; an electrician I'm working with was running tests with a manual PID controller that the customer brought in to see if it could do better than the CCW PID block.  In manual you can get a steady state pressure, for example say  2500psi, when the valve is at 10.0%.  Then if we manually open the valve to 15% the pressure will drop to 2000psi.  Then, when we put the valve back to 10% (and 10% shows on both the PID controller and the Actuator signal display [the one nice thing about this actuator is it comes with an LCD display that shows the control signal value and the position feedback]), the pressure will only build to ~2250 psi.  So I'll keep closing the actuator to 5% and then we achieve 2500psi again.  It's like the actuator will not move until you get a change of ~5%, but then it only moves a little bit, not the whole 5% because we end up at the same steady state, but with different actuator positions depending on if we approach it from above or below.

Share this post


Link to post
Share on other sites

A "positioner" typically refers to an actuator that has its own internal position sensor, power, and feedback loop (possibly purely mechanical) such that the command signal can be low-power and is expected to be nearly linear with valve % open.  In my ancient (25 years ago), a positioner with 5% hysteresis error would be immediately replaced.  The paper mill I worked at back then expected positioner error to be <1%.  Considering the potentially dangerous conditions you are trying to control, you should consider have the valve/positioner manufacturer examine it.

That said, there's no magic to a high-pressure control loop versus any other.  The performance of the components will dictate the overall performance of the system.

If you cannot get the gross components to behave sufficiently well, consider adding a parallel, smaller pipe with a smaller control valve.  Configure the small valve as primary control, and program the large valve as a cascade loop with large deadband.  (That is, it would use the smaller valve's control % as its process value, with a permanent setpoint of 50%).

Share this post


Link to post
Share on other sites

Thank you very much for this insight.  If we continue to have problems this gives me some options to work with!

The actuator does have a positioner, and this is where our deadband ~0.3% and an added mechanical backlash when reversing directions of ~5% comes from.  We have been back and forth quite a bit with the valve manufacturer and this is how we found out the Valve is made by the company we're dealing with, and the positioner is made by a separate company.

We have a plan to overcome the shortcomings with coding...I'm a little skeptical as "just fix it in the code" never works very well; but who knows until you try right?

Thanks again!

Share this post


Link to post
Share on other sites

I'm not super experienced with valve actuators, but 5% mechanical backlash seems like a lot to me. Can that be tightened up at all?

Share this post


Link to post
Share on other sites

I agree, it's pretty nonsense.  Especially because the backlash only happens when it changes directions.  We've been back and forth with the manufacturer MANY times about this. 

Eventually, by reading through the manual for the positioner we found out that the "Local Mode" where the actuator responds to "open" or "close" button presses, which also has contacts for PLC open/close control; and it can apparently also ignore any deadband (meaning I'll have to program some in so the actuator doesn't chatter).  In fact, the manual mentions "This function is effective in remote automatic control mode", i.e. external PLC control.  Lol, the nuggets of wisdom that get lost in the casual comments in the manuals...

Right now our solution is to watch the setpoint and if its increasing, let it do so, if it changes directions and begins to decrease we're adding in an additional -5% to the sp to get it to move right away.  Then if it begins increasing, we just use the setpoint as posted and hopefully this will help us "zoom" the setpoint past the mechanical backlash so the actuator will actually move when we want it to.

Share this post


Link to post
Share on other sites
3 hours ago, CynertiaDoug said:

overcome the shortcomings with coding

Prepare to be disappointed.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now