AB ControlLogix PID control (gas pressure and flow - 2 valves)

BGordon

Lifetime Supporting Member
Join Date
Jun 2008
Location
Houston
Posts
9
Hello all,

I'm looking for a bit of advice/help with the above problem.

I'm looking at a fuel gas line with two valves (different flow ratings) in parallel, upstream flow meter (0 to 40 MMSCFD), upstream pressure of 500 to 1000 psi, and downstream pressure feedback.

Instrumentation on flow meter and downstream pressure. Valve actuators 4-20 mA.

Gas fired devices downstream.

Desired control is:
Valve A controls downstream pressure to 375 psi.

Once fuel rate exceeds 12.3 MMSCFD, Valve B (higher rated flow characteristics) begins to open.

Pressure of 375 psi should be maintained.​

There are 12 gas fired generators downstream, of which approximately 5 units can be run on the primary valve (Valve A). When generator 6 through 12 are brought online, gas demand will increase and the second valve should begin to open, in order to meet the flow demand. As a generator is removed from service, the flow decreases, and Valve B should close off until pressure is back under control.

I assume that the primary valve will be fully open with 6 or more generators running, and the secondary valve will 'take up the slack'.

I've looked at one loop to control both valves based on pressure, two loops (one for each valve) controlling on pressure, two loops with an override on the secondary based on flow being above 12.3....

I just seem to be having a mental block at coming up with the right solution. Any and all thoughts and comments welcome here....
 
Well, you could do some form of valve position control. I’ll first describe the basics and then layer on some potentially practical add-ons.
First, valve position control (googleable). The smaller valve fulfills the straightforward pressure control duties over the full operating range of the gas line. The larger valve is regulated via a by a separate PI (valve position) controller to maintain the position of the smaller valve’s output at some nominal value, say 50%. This is made effective when the valve position controller’s speed of response is tuned to be quite a bit slower in comparison to the pressure controller. Most likely, the pressure controller is direct acting (ie. raise its setpoint and the valve opens) and the other controller is reverse acting. (Envision the following. With one generator in service, only the small valve is needed and its output will be well below 50% and the large valve stays closed. As more generators are brought into service, the smaller valve continues to open; as it passes 50%, the larger valve is brought into service automatically).
Some potentially practical add-ons.
1) As the larger valve’s controller is slow acting, it may need to be speeded up considerably if, say, multiple generators are shut down simultaneously. In this case, one could use a high-pressure override control on the larger valve (another PI controller with a setpoint a few psi higher than the smaller valve’s setpoint). AB’s PIDE function block controller supports this functionality.
2) You may have a nominal operating point where the number of generators in service happens to coincide with the smaller valve’s position setpoint output (50% open in above example). This could lead to limit cycling of the larger valve and the actual pressure as the larger valve cycles between seated and unseated. To avoid this, you could vary the valve position setpoint based on the number generators in service, say 40% when more generators are in service, and 60% when fewer are. The idea here is to keep the larger valve from cycling between open/close.
 
James,

Thanks for the response. I have neglected something in the initial post. The two valves are the same size (4") but have different internal bit which has the 'A' valve able to only flow a maximum of 12.3 MMSCFD, while the 'B' valve will effectively control from around 12 to 40 MMSCFD. The other bit I neglected is that I don't have access to the number of generators running. These are stand-alone, with their own controls provided by the vendor.

I have been testing your concept of the 'B' valve being brought into service, but at a much higher output of the 'A' valve (95%), and the response didn't look to favorable. Perhaps the lower output may work better.

As it is now, we have 3 generators running and both valves are controlled off the same PIDE Output. This seems to work, but I'm somewhat concerned as we bring on more generators, what the controls will actually do, especially when we have hit the max flow rate for the 'A' valve.

This may be a non issue as I think (which is dangerous) when the flow increases above the limit of the 'A' valve, and as long as the 'B' valve is open, the controls may continue to open both valves, but 'B' will allow the higher flow rate, and ultimately control to the downstream pressure.

Again, comments, thoughts, recommendations extremely welcome.
 
Similar to jamesau's

Its called "inching control"

The first valve is controlled by a PID. When it's output gets to 80 to 85% you start the second valve and slowly ramp it open. This will cause the first valve’s PID output to go down. At about 55 to 60% stop ramping the second valve and leave it open at whatever position its at. If the first valve’s PID increases again to 80 to 85% ramp open the second valve again. Continue this cycle as needed. If the PID reduces back down to 20 to 25 % then ramp closed the second valve ,stop ramping down when the PID increases to 55 to 60%. Continue this cycle as needed. You decide at what % to shut off the second valve.
 
You can use a single CV to index into 2 tables or formulas to provide two outputs, one for each valve. A very graphical way to do this is to use the cam tables or splines. Use the control output to index into the cam tables. You need to have two cam tables for this. The tables can also help linearize the total flow to CV.
 

Similar Topics

Hello all, I have a pump that has operational limits 15-100% Speed (9-60Hz). 1. On the PID instruction would you limit (.MINO=15% and...
Replies
21
Views
5,078
Good afternoon all, I'm having trouble converting PID functions from PLC-5 Enhanced to ControlLogix. The error says: Error: Rung 29, PID...
Replies
1
Views
2,400
Morning all, Could anyone shed some light on whats happening with my PID Loop? On our plant we have a 'fast ramp' on the PID Instruction done...
Replies
14
Views
7,511
Hello, I have a PID that I am using for an oxygen valve that regulates the pressure. Often when the header pressure is too low, the output will...
Replies
4
Views
1,233
Why is my PID .PV (Process Variable) getting continually overwritten with some strange value every time the rung my PID Instruction is on goes...
Replies
4
Views
2,118
Back
Top Bottom