DeltaV Sequence Function Block Tutorial

26
DeltaV Sequence Function Block Tutorial

description

DeltaV Sequence Function Block Tutorial. Introduction For this tutorial, you will gain some skill at building a discrete control function. Our objective is to build a simple sequence function chart using DeltaV Custom block and programming attributes. - PowerPoint PPT Presentation

Transcript of DeltaV Sequence Function Block Tutorial

Page 1: DeltaV Sequence Function Block Tutorial

DeltaV Sequence

Function Block

Tutorial

Page 2: DeltaV Sequence Function Block Tutorial

IntroductionFor this tutorial, you will gain some skill at building a discrete control function.

Our objective is to build a simple sequence function chart using DeltaV Custom block and programming attributes.

For this tutorial, we want to build a simple tank fill drain sequence. We will use Experiment 4, so you should refer to that experiment to see which instrumented variables we will use.

• Control ObjectiveWhat actions do we want to do?

• We want to alternatively fill the tank and drain the tank. • Begin with a start block, then we want to check the tank level, LT4-1, and

make sure that it is below a predefined point.• Then close the drain valve, LV4-1A, and begin filling the tank with cold

water by setting the cold water flow controller, FC4-1, set point to 1.0 GPM.• Shut off the water when the level signal LT4-1 reaches another predefined

point and drain the tank by opening the outlet valve, LV4-1A. • When the tank level falls below yet another predefined point, we want to

close the outlet valve and return to the starting point.

Page 3: DeltaV Sequence Function Block Tutorial

DetailsOpen DeltaV explorer to LAB4_TEST control studio. Under Special Items, drag

Custom Block to the work sheet. Select Embedded Composite block.Select the number of inputs and outputs, in this case we will use 1 input and

two outputs, but you will soon see that we can use I/O by reference so we don't have to have all the I/O defined at this time.

Drill down into the block and we have a double box, S1, start block as well as the I/O we defined. We can rename them to something suitable for our case if we want. For each I/O used we need to make sure we have the correct parameter type, floating point, Boolean, etc.

Drill down into the block and we have a double box, S1, start block as well as the I/O we defined. We can rename them to something suitable for our case if we want. For each I/O used we need to make sure we have the correct parameter type, floating point, Boolean, etc.

Page 4: DeltaV Sequence Function Block Tutorial

Open DeltaV explorer to LAB4_TEST control studio. Under Special Items, drag Custom Block to the work sheet. Select Embedded Composite block.

Page 5: DeltaV Sequence Function Block Tutorial
Page 6: DeltaV Sequence Function Block Tutorial
Page 7: DeltaV Sequence Function Block Tutorial
Page 8: DeltaV Sequence Function Block Tutorial

I/O point definition

Page 9: DeltaV Sequence Function Block Tutorial

Remember: Transitions are where the logic is located that controls the movement from one step to another. Drag a transition block where we will check the level, make sure we have a low level. We can click on that element we can add the expression directly. We have an expression assistant that will help us locate internal or external references, that is the PV we want to look at for the transition.

We want the PV of LT4-1 to be less than 1.0% so we use the reference designation ^/LI4-1/PV.CV < 1.0 in the Transition Condition space.

You can wire this Transition to the start block.

Page 10: DeltaV Sequence Function Block Tutorial
Page 11: DeltaV Sequence Function Block Tutorial
Page 12: DeltaV Sequence Function Block Tutorial

Drag in a Step block and name it FILL. This is where the control action is executed. The control action is defined in the groups in the lower right window. You may have to expand that window. Add an action, this will open another window, A1 Properties.

The control studio has a parameter defined, OUTLET-VALVE, and wired to the discrete output block controlling the drain valve. Write the expression to close this valve by setting the Boolean to True. Note the := syntax. We also want the Pulse Qualifier. This means that the control action is sent to the output once. It will retain that value unless changed.

The time delay function should be set to 0, this will allow a delay between before an action occurs. The second transition condition is setting the flow controller set point to 1.0 GPM, with a time delay of 0.

Page 13: DeltaV Sequence Function Block Tutorial

Why do I want a delay? Lets suppose you have a pump and an automatic valve installed in the outlet pipe. Running a pump "dead head" or with no flow will cause damage to the seals. We want to open the valve before we start the pump, so we would have an action to open the valve followed by an action to start the pump. This starting action should be delayed to allow time for the valve to open. Alternatively, we may have limit switches on the valve and we might want another transition to check for the open valve before we start the pump.

Page 14: DeltaV Sequence Function Block Tutorial

The Step’s Control Action logic is entered here

Page 15: DeltaV Sequence Function Block Tutorial
Page 16: DeltaV Sequence Function Block Tutorial
Page 17: DeltaV Sequence Function Block Tutorial

The tank will be filling, so we want some logic to tell us when to stop filling and begin to drain. So we need another transition condition.

We can call that one FILLED. Lets use the floating point input we called LEVEL as the checked process variable. Naturally we will have to wire it to the level signal's analog input block. You can define that point anything you want as long as it is above the lower checkpoints.

This example shows 25%, but you might want it lower, say 7% just to speed up the cycle. You will have to do some wiring too.

Page 18: DeltaV Sequence Function Block Tutorial
Page 19: DeltaV Sequence Function Block Tutorial

Next add another step block, it is called STOPFILL, but it would be better named as DRAIN. Here you need to set the water flow set point to 0 GPM as well as open the drain valve.

A Preset Technique

When filling a tank to a predefined point, either to an integrated flow rate or a level, a control technique is frequently employed to insure that an accurate quantity is delivered. The technique lowers the delivery set point flow rate to a lower value just prior to reaching the predefined volume. This is frequently called "dribble" or preset. An everyday example of this is to prepay for gasoline. You prepay for a fixed volume. You will notice that as you get close to your paid amount, the flow rate begins to slow. This is done to insure you will receive the amount you paid for, no more.

Page 20: DeltaV Sequence Function Block Tutorial
Page 21: DeltaV Sequence Function Block Tutorial

The tank is draining, we want to check the level again so we have to add another transition block, call it CKDRAIN. We want this point to be below the CKLVL point.

We will wire the bottom of this transition block to the START block.

Page 22: DeltaV Sequence Function Block Tutorial

Save this case and download itto the controller!

Page 23: DeltaV Sequence Function Block Tutorial

• We need to command the control block to Start, Stop or Reset

• Go “online” and select the block, then change the Command attribute to Start

Page 24: DeltaV Sequence Function Block Tutorial
Page 25: DeltaV Sequence Function Block Tutorial

There you have it, turn on the water and check it out!

We can check the status of the block using “online” and view exactly where we are during the sequence

Page 26: DeltaV Sequence Function Block Tutorial