PmpSequenceGen (FB)

FUNCTION_BLOCK PmpSequenceGen EXTENDS AbbLConC3

The function block PmpSequenceGen is used to generate the pump start and stop sequence. The function block executes the following start and stop sequence functions:

  • Decides the sequence of the pumps based on the process demand.

  • Decides the sequence in which a pump should start and stop next.

  • Indicates the pump that is least run in the network to start next.

  • Indicates the pump that has run maximum in the network to stop next.

  • Sends the start and stop sequence information to the distributor function blocks.
    ../../../../../../../_images/img_Sequence.png
InOut:

Scope

Name

Type

Initial

Comment

Input

ReadyForAutomation

ARRAY [1..8] OF BOOL

2: The input ReadyForAutomation receives an array of pumps ready for automatic operation. The input comes from the output ReadyForAutomation of the function block PmpInterfaceVFD or PmpInterfaceDol.

Note

The ReadyForAutomation[1] connects to the PumpID = 1. This pattern must be followed for all pump IDs.

  • When input is TRUE, pump is ready for operation in automatic mode.

  • When input is FALSE, pump is not ready for operation in automatic mode.

Operating

ARRAY [1..8] OF BOOL

3: The input Operating receives the operating status of all pumps (both variable frequency drives and direct online motors). The array is created from the output PumpOperating of the interface function blocks PmpInterfaceVFD and PmpInterfaceDol.

Runtime

ARRAY [1..8] OF REAL

4: The input Runtime receives the actual runtime of all pumps (both variable frequency drives and direct online motors) in hours. The array is created from the output ActRuntime of the interface function blocks PmpInterfaceVFD and PmpInterfaceDol.

AntijamStatus

ARRAY [1..8] OF INT

5: The input AntijamStatus receives the antijam operation status of the pump. The input comes from the output AntijamStatus of the function block PmpAntijam. Range-[0 to 2]
  • 0 = Not started (Antijam operation has not started)

  • 1 = Busy (Antijam operation has started)

  • 2 = Done (Antijam operation is completed)

AntijamMode

ARRAY [1..8] OF INT

6: The input AntijamMode indicates the selected antijam mode. Range-[0 to 3]
  • 0 = Disable antijam

  • 1 = Master enabled

  • 2 = At start

  • 3 = Manual mode

  • The input AntijamMode receives the antijam mode. The input comes from the output AntijamMode of the function block Pmpantijam.

SoftfillStatus

INT

0

7:The input SoftfillStatus indicates the status of softfilling function. Range-[0 to 4]
  • 0 = Disable the softfill (Softfill operation is disabled)

  • 1 = Ready to start (Softfill operation is ready to start)

  • 2 = Softfill in progress (Softfill operation has started)

  • 3 = Softfill completed (Softfill operation is completed)

  • 4 = Softfill with fault (Softfill operation stopped due to a fault)

PmpStationParameters

PmpStationType

8: Pump Station structure which stores pumping station data. All function blocks will receive some data, process it and write it back to the structure.

Output

ErrorID

ERROR_ID

3: Error code in case of error in the function block execution.

MasterPump

INT

1

4: The output MasterPump receives the identification number of the master pump in the sequence. The input comes from the output MasterPump of the function block PmpSequenceGen. Range-[1 to 8]

NextPumpToStart

INT

1

5: The output NextPumpToStart receives the identification number of the next pump to start in the sequence. The input comes from the output NextPumpToStart of the function block PmpSequenceGen. Range-[1 to 8]

NextPumpToStop

INT

1

6: The output NextPumpToStop receives the identification number of the next pump to stop in the sequence. The input comes from the output NextPumpToStop of the function block PmpSequenceGen. Range-[1 to 8]

NoOfPumpsRunning

INT

0

7: The output NoOfPumpsRunning receives the number of pumps running. The input comes from the output NoOfPumpsRunning of the function block PmpSequenceGen. Range-[1 to 8]

NumberOfPumpActive

INT

0

8: The output NumberOfPumpActive receives the number of pumps active for operation in automatic mode. The input comes from the output NumberOfPumpActive of the function block PmpSequenceGen. Range-[1 to 8]

TradMasterTrip

BOOL

FALSE

9: Indicates that the master pump in the Traditional pump combination has tripped. To attach this output to the TradMasterTrip input of Distributor FBs and PmpPid.

Methods:

A_StartAction

B_CyclicAction

C_CleaningAction

D_AbortAction

E_ResetAction

Structure: