LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Flow Regulation using a Pump and Flow Control Valve in LabVIEW

Solved!
Go to solution

Hello everyone,
I'm not sure on how to properly regulate my actuators with my Labview program
I'm regulating Volume flow using a Pump and a Flow control valve, all of this through a numeric control, I can control both actors by giving digital signals through DAQ,
my pump can't go too low with it's RPM, at a certain point it won't provide steady volume flow anymore. In order to get an even lower volume flow, the Flow Control Valve starts to "close" in order to create resistance for the pump, the pump will remain at the lowest possible RPM while the valve is active.

I thought of using PID control to regulate the parameters, but my professor was convinced that the system is "too slow and sluggish" and I should instead just us (tabular values, so basically if the volume flow is set too low for the pump to handle like: volume flow = 0,4m^3/s ->Valve closes 10%)

I must say my professor isn't a LabVIEW pro just like myself and I'm not sure what to really do in this case, what do you all think would work better for this application and has anyone has a similar system?
I hope i provided sufficient information (pls dont make of me this is my first post)

0 Kudos
Message 1 of 9
(554 Views)

Yes, a lookup table approach works as well. You mentioned that you drive the motor and flow control valve using digital signal, does that mean either they are on/off or do you have the ability to define fractional states or truly proportional control?

Santhosh
Soliton Technologies

New to the forum? Please read community guidelines and how to ask smart questions

Only two ways to appreciate someone who spent their free time to reply/answer your question - give them Kudos or mark their reply as the answer/solution.

Finding it hard to source NI hardware? Try NI Trading Post
Message 2 of 9
(549 Views)

I'm giving them int values and my buscoupler turns them into a analog signal, with that I can manually set the RPM of the Motor and also how far the valve should close. 

0 Kudos
Message 3 of 9
(543 Views)

Hi Crispy,

 


@Crispy1170 wrote:
I thought of using PID control to regulate the parameters, but my professor was convinced that the system is "too slow and sluggish" and I should instead just us (tabular values, so basically if the volume flow is set too low for the pump to handle like: volume flow = 0,4m^3/s ->Valve closes 10%)

Once I made a control for a very similar testbench…

 

  • I made a PID control loop for the pump speed. Using a good (aka "stable behaviour with pressure changes") pump this is very easy…
  • For the pressure/flow control valve I used a simple feed-forward approach by converting the flow setpoint into a valve setpoint using a LUT (lookup table). When the flow setpoint falls below a certain limit the valve starts to close. You can adjust the valve behaviour by changing the values in the LUT…
  • I added a pressure limit check to avoid "blocking" of the flow…

 

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 4 of 9
(469 Views)

Okay thanks for the help!

How exactly did you implement the lookup table inside Labview? Are there any specific VI's or blocks that you would recommend?

0 Kudos
Message 5 of 9
(453 Views)
Solution
Accepted by topic author Crispy1170

Hi Crispy,

 

you could use Interpolate1DArray with an array of points (aka cluster[x, y]) to create a simple LUT!

 

Like this:

(The LUT is defined as an array of clusters of [x, y]…)

X would be your flow setpoint, Y could be the valve setpoint.

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 6 of 9
(448 Views)

3q66g2z28m951.png

0 Kudos
Message 7 of 9
(441 Views)

Hello GerdW,
I just got one other question, does your pump stay at a constant RPM while the valve starts to close? or do you still adjust the RPM after the valve starts begins to close up?
My professor told me to let the pump regulate even lower once the valve becomes active, but I see no logical reason for that.

Thank you


0 Kudos
Message 8 of 9
(305 Views)

Hi Crispy,

 


@Crispy1170 wrote:

I just got one other question, does your pump stay at a constant RPM while the valve starts to close? or do you still adjust the RPM after the valve starts begins to close up?


This depends on your system setup…

With your previous question the pump will still be controlled by the PID controller, so the pump RPM will change even when the valve starts to close.

 

I also had a different setup where I needed to keep a certain minimum RPM for the pump. In that case I also used a PID to control the valve. You could implement this by manipulating setpoints and PID output limits depending on the actual pump RPM…

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 9 of 9
(294 Views)