Typical Effectors are:

Control Logic

To control a
transfer, there are devices at each end, such as a discharge valve and a fill
valve, pumps, pressurisation systems etc that should be controlled
simultaneously.

The control logic needs to sets the devices in the route, monitor them, and determine the start and end of the transfer.

Here is a very simple State Transition diagram for a transfer.

We may also need consider such things as

Need to prime pumps before transfer
Need to drain, or blow line empty after transfer
In the case where the transfer is for dosing a specific quantity there may be need to allow for the 'in flight' material that will flow after the transfer is told to stop.
And we should always consider Exception handling

Exception handling

There are many things that can go wrong during a transfer, such as instrumentation, pumps or valves failing, control systems failure such as IO card failure, and even communications errors between the source and destination controllers. The control logic should be designed to handle this. Typically this would involve some logic that detects the failure and then sets the equipment to some fail state, this may well be the same as the Ready State.

Source and destination coordination:

Now, it is very
likely and good practise to have a separate program module to control the
source tank and another to control the destination tank. (I will cover this more in future post.)

It is also
possible that the source is controlled by a different control (PLC or DCS) to the
destination. Either way it means that we need to have an interface between the
source and destination modules.And I don’t think it
right to have PC’s over a network having any real time involvement in this at
all, I consider that this should be the domain of purpose designed real time
controllers. PLC’s or DCS controllers for example. So this interface should flow on the control network controller to controller and not depend on communications with for example a batch manager.