LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

PID pressure control implementation

Hi.

 

I am trying control pressure drop on my hydraulic Rig.

 

Concept is to control  pressure drop across two port. To achieve that I am reading pressure from two pressure transducers P1 P2 callcultaing

delta P and send it to PID module.  Output signal is connected to proportional relief valve (demand signal 0-10V) to control rig pressure.

 

I have attached my VI. I haven't tried it yet as I want to make sure I won't damage the rig.

 

Thanks.

0 Kudos
Message 1 of 6
(2,737 Views)

Hi gregorian,

 

I have attached my VI. I haven't tried it yet as I want to make sure I won't damage the rig.

- you didn't set any PID gains so far: determine them before starting the PID control loop!

- you should read the AI channels in "n chan 1 sample" mode…

- why do you use ExpressVIs to create the chart? Use BuildCluster instead as is shown in the context help of the chart…

 

Did you try to control your test rig manually? Maybe in a safe steady state?

What happens when you change the voltage signal for your valve (in small steps)? This would also help to determine PID gains…

How fast do you need to control the rig?

Does the control system show a linear behaviour? Is the behaviour very non-linear? In case of (very) non-linear behaviour you might think about gain scheduling and an additional bias-forward control…

Best regards,
GerdW


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

Thank you for your quick reply.

 

- you didn't set any PID gains so far: determine them before starting the PID control loop!

- you should read the AI channels in "n chan 1 sample" mode…

- why do you use ExpressVIs to create the chart? Use BuildCluster instead as is shown in the context help of the chart…

I think I have sorted these.

 

I will come back to the rig tomorrow and will gather more information.

 

0 Kudos
Message 3 of 6
(2,706 Views)

Hi gregorian,

 

I think I have sorted these.

Nope…

 

- Now you use "1 chan N sample" mode, which clearly is wrong when you want to read 2 channels…

- Btw. you can select two channels with just one DAQmxChannel control…

- Why do you use "Build Cluster Array" when the context help shows you to use a Bundle node?

Best regards,
GerdW


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

Hi.

 

Thanks. 

 

I have tested the rig it is fairly proportional (pressure vs command signal) also attached data.

I have never tuned PID controller before could you.

 

What would be the next step to find right gains values?

 

I would be appreciated if you could help me.

 

It is very struggling at current setup and after 10-20 sec starts oscillating.

 

Thanks.

Download All
0 Kudos
Message 5 of 6
(2,685 Views)

Hi gregorian,

 

I have tested the rig it is fairly proportional (pressure vs command signal) also attached data.

- Above 3V/30bar the system is rather linear, below you should use a different set of PID gains. (Or don't use your test rig in this pressure range…)

- just for the upper pressure range: for a change of 1V the pressure changes ~35bar, so your P gain should be in the order of 1V/35bar ~= 0.03.

- from the measurement data I cannot tell about I gain: here you need to measure a step response.

 

Basic PID stuff:

- Have you ever heard of Ziegler and Nichols?

- Have you read the Wikipedia article on PID controls?

Best regards,
GerdW


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