LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Three point control valve.

Hello everyone!

I'm trying to use the PID VI to control a valve actuator. The actuator type isknown as the "3 points or three step", this type of actuator hasthree contacts for control, one is common and the other two are to rotate inone direction or another and no feedback position. In addition the manufacturerinforms us of the actuator travel time, the time required to go from fullyclosed to fully open and the minimum time applicable to the actuator, beingnecessary to know these times to properly control the valve.
We can say that to vary position of the actuator should vary time remainsactive as long as each of its output contacts depending on whether you want toopen or close the valve.
Do not know what would be the best way to move from the output gives the PID (0- 100%) to the two outputs necessary to open or close the valve. I wouldappreciate it if anyone has any experience with this type of control thecomment as it would be helpful.

 

thanks.

 

0 Kudos
Message 1 of 5
(8,595 Views)

Just had a similar task to control the wall heater at home, however that is a PLC , so i can't provide a LabVIEW solution.

 

If you don't have a direct feedback by a potentiometer you need to calculate the current position. 

Drawback is always an accumulated error, so you have to do an initialization at start and after x min motor runtime or y min uptime. In my case this is no problem for my slow uncritical heating system, I move is all way down (valve traveltime +10%, can be shorted if an endposition information is awailable) and back to setpoint. (The responsetime of the heating system is in hours, while the valve is in seconds:-) )

 

Set up a subvi with an internal shift-register for the calculated 'internal' valve position.

Input is 0-100% setpoint from your PID, output the open and close Boolean

If the calculated position doesn't  meet the setpoint (within a deadband) move up or down respecting the min_runtime. 

The calculated position is updated according the up and down signal time and the given traveltime. For this you need to have the 'real' traveltime (timed loop, or timestamp the interations (hopefully just like your PID)

 

Fine tuning can be done by including hysteresis (if any, another shift-register storing the last direction) , startup_delay and stop_delay. 

 

Message Edited by Henrik Volkers on 11-16-2009 01:05 PM
Greetings from Germany
Henrik

LV since v3.1

“ground” is a convenient fantasy

'˙˙˙˙uıɐƃɐ lɐıp puɐ °06 ǝuoɥd ɹnoʎ uɹnʇ ǝsɐǝld 'ʎɹɐuıƃɐɯı sı pǝlɐıp ǝʌɐɥ noʎ ɹǝqɯnu ǝɥʇ'


0 Kudos
Message 2 of 5
(8,560 Views)

I´m experimenting with temperature controlling whith a motor valve.

Can you please post a example for this subVI!

 

Regards Mats

0 Kudos
Message 3 of 5
(8,483 Views)

Hi Everyone,

I found out this thread after searching for my own LabVIEW problem which is similar to the first one . I really hope someone could help me out.

 

I am trying to use a PID controller to control a three-way valve in real time for achieving the set-temperature. Here the only control signals for the valve are ON/OFF for both directions. Thus the valve then turns in anyone direction at 70 mm/s or just stops in the last position after signal is stopped. The total stroke length is 4.5 mm.

 

I am also using Beckhoff in the PLC and the LabVIEW communication is through a OPC Shared Variable Engine in real-time with the valve. 

 

For my first approach I have tried to create a simple three-step controller by combining 2 two step-controllers (pic attached). Wherein the valve moves in the relevant direction if the dT is greater then 1K. So a total hysteris of 2K is considered.

 

Thanks very much in advance for any feedback or links which could help me solve my issue.

 

Regards



0 Kudos
Message 4 of 5
(6,086 Views)

Hello,

if it still might be helpful to someone we solved our issue of controlling the 3-way valve with a motor having no position feedback as follows:

 

For  achieving  a  set-point  temperature  a  3-way  mixing  valve  is  built  in  the  circuit  controlled  using  three-
position  control.  Since  the  valve  actuator  doesn’t  provide  a  feedback  on  its  position  a  conventional  PID
controller  couldn’t  be  implemented.  Instead  a  rule-based  controller  is  developed  in-house  using  LabVIEW®
which reacts when the error in the controlled variable is greater than 0.5 K. The controller makes changes to the
valve position in control steps directly proportional to the size of the error, thereby mixing the return line of the
load or taking more water from the tanks. The control step is defined in seconds for which the motor should
rotate in the necessary direction. A time delay of 120 s is planned before the next measurement is made and
control action is taken since considering the time taken for a change in the value of the temperature sensor. The
value of the time delay, error tolerance and step-size is based on values gathered during experiments.

0 Kudos
Message 5 of 5
(5,461 Views)