How do you control an Electronic Butterfly Valve with PID

In summary, the butterfly valve being used to control pressure in a cylindrical chamber accepts 0-10V and maps a specific voltage to a specific position. It is not controlled by a servo motor and an attempt to implement a PID controller has resulted in the PID outputs always being either completely closed or completely open. The system is being modeled using the Ziegler-Nichols method, but the gains may be too high and a sensor for accurately measuring pressure is needed. A block diagram of the control system would be helpful in identifying potential issues.
  • #1
nlis12
32
3
The butterfly valve I have is controlled by sending voltages to it. It accepts 0-10V and maps a specific voltage to a specific position from completely closed (zero degrees) to completely closed (90 degrees).

To clarify/reiterate it is not controlled by a servo motor.

I am using this valve to control the pressure inside of a cylindrical chamber with a constant air flow from the inlet to the outlet (where the valve is).

So I tried to implement a PID controller on the valve in order to control the pressure.
The problem is that the PID outputs always rail to 0V (completely closed) or 10V (completely open) and no positions in between. (I have spent hours tuning the P,I,D constants and nothing seems to change the operation)

Is this system something you should control with a PID loop?
Are there other control schemes that would be applicable in this case?
 
Engineering news on Phys.org
  • #3
As a follow up to anorlunda's advice...

To what level do you have your control system modeled?
Is the mapping between voltage level and position linear?

and finally... how much experience do you have using PID controllers or control systems in general
 
  • Like
Likes nlis12
  • #4
I don't know know the answer to your first question as I am new to PID controllers.

And my valve is mapped linear from voltage to position.

donpacino said:
As a follow up to anorlunda's advice...

To what level do you have your control system modeled?
Is the mapping between voltage level and position linear?

and finally... how much experience do you have using PID controllers or control systems in general
 
  • #5
  • #6
Since you're not sure what modeling a control system is, I'm assuming simulating your system is out of the question. In order to use Ziegler Nichols you need to evaluate what happens when the system becomes marginally stable.

If you want to use that method, you'll need to solve for the gain values experimentally, and ideally you'll have a sensor that can properly measure pressure (or air flow and estimate pressure, but that requires a good idea of your model). Assuming you have an accurate system with a decent time response, you can follow the method and increase your Proportional gain until you get fluctuations in pressure.

If that isn't an option, either because your sensor doesn't have a fast enough response, or you might damage your system doing that, then you might need to use your best judgement in setting the PI values.

Can you do me a favor. can you draw out a block diagram of the control system? See below for an example. Are you measuring pressure? Are you properly scaling your inputs (voltage) to your measured outputs (pressure)? etc. You don't need to do this, its not homework after all, but it can help identify problems. If you don't have control system experience you might have made other mistakes that can cause that rail to rail bounce other than just a high P value.

https://www.pidtuning.net/css/images/temp/pidloop.jpg
 
  • Like
Likes nlis12, jim hardy and Asymptotic
  • #7
I have attached a block diagram of my system.
Also, I am certain that my outputs for the pressure have been scaled correctly just double checked.

Thank you!

donpacino said:
Since you're not sure what modeling a control system is, I'm assuming simulating your system is out of the question. In order to use Ziegler Nichols you need to evaluate what happens when the system becomes marginally stable.

If you want to use that method, you'll need to solve for the gain values experimentally, and ideally you'll have a sensor that can properly measure pressure (or air flow and estimate pressure, but that requires a good idea of your model). Assuming you have an accurate system with a decent time response, you can follow the method and increase your Proportional gain until you get fluctuations in pressure.

If that isn't an option, either because your sensor doesn't have a fast enough response, or you might damage your system doing that, then you might need to use your best judgement in setting the PI values.

Can you do me a favor. can you draw out a block diagram of the control system? See below for an example. Are you measuring pressure? Are you properly scaling your inputs (voltage) to your measured outputs (pressure)? etc. You don't need to do this, its not homework after all, but it can help identify problems. If you don't have control system experience you might have made other mistakes that can cause that rail to rail bounce other than just a high P value.

https://www.pidtuning.net/css/images/temp/pidloop.jpg
 

Attachments

  • PID Block Diagram.png
    PID Block Diagram.png
    4.6 KB · Views: 695
  • Like
Likes Asymptotic and donpacino
  • #8
Ok, what are you using for your set point? what is the range of allowable set points?

Just some notes. If you call for 10 PSI on the high end, and your system can only reach 9 PSI, then you'll saturate your integral and your system will not respond. Make sure you take your limits into account. Also double check that the units from the pressure gauge match the units of your set point (that kind of error caused NASA to crash a probe, so don't be ashamed if you do it).

So in future projects, if you choose to get deep into control systems, you can put the mathematical models into those blocks, which would allow you to sim your system.

Good luck tuning your controller. Like I said previously if you can't push your system hard enough to really do Ziegler Nichols, just increase P until you get a quick response with a little overshoot (pressure goes higher than setpoint then drops). then add some integral to make it incorporate the average.

note: look up integral windup. You should have some method to deal with it. There are a few ways. Zeroing the output of your integrator is the easiest way, but you can also use some other methods, such out output limiting and adding a time constant to the integral term.
 
  • Like
Likes Asymptotic and nlis12
  • #9
A wise engineer once told me concerning phase locked loop that a good way to troubleshoot it is to break the loop. I think that advice could apply here.
 
  • Like
Likes Asymptotic and donpacino
  • #10
Thanks for the insight!
Much appreciated!

donpacino said:
Ok, what are you using for your set point? what is the range of allowable set points?

Just some notes. If you call for 10 PSI on the high end, and your system can only reach 9 PSI, then you'll saturate your integral and your system will not respond. Make sure you take your limits into account. Also double check that the units from the pressure gauge match the units of your set point (that kind of error caused NASA to crash a probe, so don't be ashamed if you do it).

So in future projects, if you choose to get deep into control systems, you can put the mathematical models into those blocks, which would allow you to sim your system.

Good luck tuning your controller. Like I said previously if you can't push your system hard enough to really do Ziegler Nichols, just increase P until you get a quick response with a little overshoot (pressure goes higher than setpoint then drops). then add some integral to make it incorporate the average.

note: look up integral windup. You should have some method to deal with it. There are a few ways. Zeroing the output of your integrator is the easiest way, but you can also use some other methods, such out output limiting and adding a time constant to the integral term.
 
  • #11
nlis12 said:
I am using this valve to control the pressure inside of a cylindrical chamber with a constant air flow from the inlet to the outlet (where the valve is).
What are the approximate dimensions of the cylindrical chamber?
Where is the pressure sensor in relation to the valve?
Is there an appreciable time lag between changes in % output, and when sensed pressure changes?

Is it possible to control valve opening % manually?

For a tough to diagnose loop, it can be useful to place it in manual (with % output at approximately the mean of observed high and low % output oscillation), and trend what happens to the controlled variable. If CV drops increase % output, or visa versa, and attempt to home in on what the % output "needs" to be to maintain CV at set point.

You may find that pressure is essentially stable, but only a very small change in % output has a large affect on pressure feedback (suggesting prop gain must be set very low). You may instead find that pressure changes dramatically even with no change in % output, in which case it will be difficult to obtain stability with a simple PID loop.
 

1. How does PID control work?

PID control, or proportional-integral-derivative control, is a feedback control system commonly used in engineering to regulate a process. It calculates an error between a desired setpoint and the actual output of a system, and uses proportional, integral, and derivative terms to adjust the control input and minimize the error over time.

2. What are the advantages of using PID control for an Electronic Butterfly Valve?

PID control offers several benefits for controlling an Electronic Butterfly Valve. It can quickly respond to changes in the process and maintain a stable setpoint, resulting in improved accuracy and efficiency. Additionally, it can handle non-linearities and disturbances in the system, making it a robust control method for the valve.

3. How do you tune a PID controller for an Electronic Butterfly Valve?

Tuning a PID controller involves adjusting the proportional, integral, and derivative gains to achieve the desired control performance. This can be done through trial and error or by using mathematical models and tuning rules. The goal is to find a balance between responsiveness and stability to optimize the control of the valve.

4. Can PID control be used for both open and closed-loop systems?

Yes, PID control can be used for both open and closed-loop systems. In an open-loop system, the PID controller adjusts the control input based on the desired setpoint. In a closed-loop system, the controller continuously adjusts the control input based on feedback from the process, allowing for more precise control.

5. Are there any limitations to using PID control for an Electronic Butterfly Valve?

While PID control is a popular and effective control method, it does have some limitations. It may struggle to handle highly non-linear or time-varying systems, and it can be challenging to tune for complex processes. In some cases, other control techniques may be more suitable for controlling an Electronic Butterfly Valve.

Similar threads

Replies
1
Views
2K
Replies
6
Views
1K
  • Electromagnetism
Replies
28
Views
2K
  • High Energy, Nuclear, Particle Physics
Replies
19
Views
3K
  • General Discussion
Replies
4
Views
7K
Back
Top