lab2lab is controlled by the Director application. There is only ever one instance of this per system. Director decides, based on status and associated data, when a vial is to be transport from one location to another. Only one vial is transported at a time. The Router and peripheral devices have sensors to detect when a vial is present. During vial transportation, when it has been detected that the vial has departed its original location but has not yet arrived at its destination, its location is set to be the Pipe between them.
As well as controlling the peripheral devices, the Director application keeps track of all vials in the system. Vial data is held in an Oracle database, so when the Director application is shut down and restarted, it retains knowledge of the location and state of all the vials. When a scientist has a vial they wish to submit, they enter the required information for it using the lab2lab Client software application. This is communicated to the Director, to control the transport of the vial.
Communication between the various software applications is through defined interfaces. lab2lab Clients communicate with the lab2lab Director through a lab2lab specific interface. Similarly, the are specific interfaces enabling the various types of analytical instruments to communicate with lab2lab Director. These may be lab2lab specific interfaces e.g. for Waters Acquity, or may use proprietary software interfaces e.g. for Brucker NMR.