08-23-2024 01:58 AM
Hi,
I want to control the condensing temperature by the opening of a valve as shown in the diagram below:
The valve is burkert 3280 controlled by tension 0 to 10 (V) as shown in the table below:
Let say, for example, the outlet fluid temperature (T_f_out) in range of 80 to 30 (°C) when the valve is totally close to full open, respectively, and I want to set the open of the valve to have T_f_out = 40 (°C), for instance. How can I do that using PID controller or any other way in LabView? Please, if someone knows, give me the code rather than send me somewhere.
Thanks
08-23-2024 02:59 AM
@alhabeeb wrote:
Let say, for example, the outlet fluid temperature (T_f_out) in range of 80 to 30 (°C) when the valve is totally close to full open, respectively, and I want to set the open of the valve to have T_f_out = 40 (°C), for instance. How can I do that using PID controller or any other way in LabView?
Setup a loop with these items:
To determine the PID gains you can do some step-response tests and apply the common rules on the step response measurements.
@alhabeeb wrote:
Please, if someone knows, give me the code rather than send me somewhere.
All you provide is some information about that valve, all other information is simply missing.
You really should hire someone to write your code and place your request in a different forum when you aren't able/willing to create some LabVIEW code on your own…
08-23-2024 03:02 AM
Hi,
For me, you'll need a support to allow the 0-10V to your valve such as an AO of a PLC.
You can use this kind of VI:
To use it you'll need to: fix the setpoint (40°C), fix the the process variable (the actual temperature returned by a temperature sensor), fix the output range (0-10 for exemple) and you'll need to send the output to you PLC which will change his 0-10V value to control the valve. Modify the PID gains function of the comportment.
Respectfully,
08-23-2024 03:29 AM
Thanks for the info
Setup a loop with these items:
- read the T_f_out value using your DAQ device.
- place a PID function with pv (T_f_out), sp, output range as [0..10], suitable PID gains and let it calculate the needed output value.
- use this output value to set the voltage of an AO channel.
To determine the PID gains you can do some step-response tests and apply the common rules on the step response measurements.
I did what you said but always the voltage is 0:
and all info about the valve is attached.
08-23-2024 03:33 AM
@Ayous a écrit :
Hi,
For me, you'll need a support to allow the 0-10V to your valve such as an AO of a PLC.
You can use this kind of VI:
To use it you'll need to: fix the setpoint (40°C), fix the the process variable (the actual temperature returned by a temperature sensor), fix the output range (0-10 for exemple) and you'll need to send the output to you PLC which will change his 0-10V value to control the valve. Modify the PID gains function of the comportment.
Respectfully,
Hi,
I did that, but always the output is 0?
Thanks
08-23-2024 03:57 AM - edited 08-23-2024 03:57 AM
Can you show us your code ?
Respectfully,
08-23-2024 04:10 AM - edited 08-23-2024 04:11 AM
@alhabeeb a écrit :
Thanks for the info
Setup a loop with these items:
- read the T_f_out value using your DAQ device.
- place a PID function with pv (T_f_out), sp, output range as [0..10], suitable PID gains and let it calculate the needed output value.
- use this output value to set the voltage of an AO channel.
To determine the PID gains you can do some step-response tests and apply the common rules on the step response measurements.
I did what you said but always the voltage is 0:
and all info about the valve is attached.
Oops i didn't see this answer,
You need to do 1 loop and at each iteration of the loop:
- Read the temperature
- Compute the PID
- Write the output value
Respectfully,
08-23-2024 04:11 AM
Hi alhabeeb,
@alhabeeb wrote:
I did what you said but always the voltage is 0:
No, you did not what I wrote!
I wrote "create a loop", but I see two loops in your image!
(Did you even try to debug your VI to learn why "the voltage is always 0"?)
Put the 3 items from my previous message into a (aka one aka 1) loop: reading pv, calc PID, output valve value…
08-23-2024 04:38 AM
Thanks all. This is my current code:
but there is something wrong with it. T_f_out is 0 and voltage increases?!
I set the gains
Any suggestion?
Thanks
08-23-2024 04:51 AM - edited 08-23-2024 04:52 AM
Hi alhabeeb,
@alhabeeb wrote:
This is my current code:
but there is something wrong with it. T_f_out is 0 and voltage increases?!