• Setting up the components for liquid handling

    • This is a microfluidic system that involves a number of different components that are work together to provide sub nanoliter piezoelectric dispensing, microliter level syringe pump operation and milliliter range pumping by the diaphragm and peristaltic pumps. The syringe pump is used for washing and loading the piezoelectric dispensers. Diaphragm pumps are used in the wash station where there is a wash pump for flushing the tips with water and there is a diaphragm pump for drawing the waste water into the waste container. The peristaltic pump is used for drawing water into the pressure compensation vessel which happens when the liquid level sensor detects that more water is needed.

      The fluidic paths go as followed:

      • The peristaltic pump draws fluid from the water reservoir to the pressure compensation vessel.
      • The syringe pump draws water from the pressure compensation vessel to the tip.
      • The wash bottle draws water from the water reservoir
      • The waste draws the waste water from the wash basin to a waste container



      Wash, Waste, Pressure compensation pumps

      Pressure compensation vessel, syringe pump


      There are a number of functions that are available that are important for operating these pumps. The GUI for controlling the wash and waste pumps are accessible in the Washing window: iot_washdrywastewindow.png. At the top of this page there is a setting for adjusting the wash and dry conditions. These variables are saved in the imgdataset json file ('washing':{'washtime':20,'touchdrytime':1}). So when calling in the CLI command or via robot command list these settings are used for washing. The dry pad counter is also displayed on this page. The system tracks the dry pad positions so that the user can assess when to replace the dry fleece if there is a concern about cross contamination.


      Wash Dry GUI



      Wash basin

      Dry pad counter



      The relevant commands that can be used for callling a CLI process or when running a robot command list are as follows:

      • wash on - turns on the wash pump (CLI commands)
      • wash off - turns off the wash pump (CLI commands)
      • dry on - turns on the dry (waste) pump (CLI commands)
      • dry off - turns off the dry (waste) pump (CLI commands)
      • gearmangotowaste - goes to waste position, calls a gearman function (CLI commands)
      • gearmangotodry - goes to dry position, calls a gearman function (CLI commands)
      • gearmangotowash - goes to washing position, calls a gearman function (CLI commands)
      • gearmanwash - washes tip, calls a gearman function (CLI commands)
      • gearmanwashdry - washes and dries tip, calls a gearman function (CLI commands)
      • gearmandry - dries tip, calls a gearman function (CLI commands)
      • gotowash - goes to wash position z bed moves but not linear actuator (used in robot command list)
      • wash (time) - wash the tips (moves linear actuator to position, turns on pumps then goes to default z position), it must be run with gotowash (used in robot command list)
      • dry (time) - dries the tips (moves the linear actuator to position then goes to default z position), must be used with gotodry (used in robot command list)
      • gotodry - goes to dry position z bed moves but not linear actuator (used in robot command list)
      • gotowaste - goes to waste position z bed moves but not linear actuator (used in robot command list)

      In addition to the wash, waste and dry pad variables another important parameter is the syringe pump. When washing the syringe is running along with the wash and waste pumps so that the inside of the tip is getting washed as well as the outside of the tip. If there is fluid in the syringe then the tip goes to the waste do dispense this before going to wash. These controls can be accessed at the syringe pump page: iot_syringepumpwindow.png. There are 4 important modes of operation with respect to the syringe pump:

      • Filling cycles, this is for priming the pump to remove trapped air bubbles (use when the tubing is disconnected from tip)
      • Aspiration loading samples into the tip, this is where the 3 way valve is directed it output
      • Dispensing dispensing liquid out of the tip, this is where the 3 way valve is directed to output
      • Filling the syringe with liquid but not through the tip, here the 3 way valve is directed to input

      Syringe pump GUI features


      The commands relevant to the syringe pump are as followed:

      • SYsocket start - starts the syringe pump socket
      • SYsocket stop - stops the syringe pump socket
      • flushsyringe (cycles) - fills and dispenses syringe volume (250ul) (CLI commands)
      • dispense (volume) (flowrate) - dispenses set volume (ul) and flow rate (ul/s) (CLI commands)
      • aspirate (volume) (flowrate) - aspirates set volume (ul) and flow rate (ul/s) (CLI commands)
      • fillsyringe (volume) (flowrate) - fills syringe of system fluid for priming tip, set volume (ul) and flow rate (ul/s) (CLI commands)
      • syringewash (wash time) - this flushes the line during the wash cycle (CLI commands)
      • syringepump stop - terminates syringe pump (CLI commands)
      • syringe valve bypass - set valve bypass position (CLI commands)
      • syringe valve output - set valve output position (CLI commands)
      • syringe valve input - set valve input position (CLI commands)
      • syringe initialize - initializes syringe pump (CLI commands)
      • wash - wash to the tips (goes to wash position, turns on pumps then goes to default z position, syringe pump is on too) (used in robot command list)
      • aspirate [volume_flowrate] - aspirates using syringe pump, the volume and flowrate are _ delimited (used in robot command list)
      • dispense [volume_flowrate] - dispenses using syringe pump, the volume and flowrate are _ delimited (used in robot command list)
      • fillsyringe [volume_flowrate] - fills the syringe pump, the volume and flowrate are _ delimited, useful for priming tip (used in robot command list)


      The piezoelectric tips operate using amplified waveforms. This is controlled by a microcontroller that is run by an ARM via a serial connection. There is also a 5 volt trigger that can be sent for turning on the piezo. Or, in the case when the droplet is being seen by using the stroboscope to turn it off a 5 volt signal is sent. The LED connection is for connecting an LED bulb for strobing and this is synchronized with the piezoelectric dispenser. There is also of course a port for connecting a piezoelectric dispenser.


      Piezoelectric Ampilifier

      Gantry head


      The gantry head displays the piezoelectric dispenser connection and shows how the piezo controller connects to this device. The dispenser is connected to the gantry head using a lego connection. Also showing is fluidic connection to the syringe pump, the linear actuator and the video microscope for imaging targets and fiducials.

      Details on how the piezo dispenser is controlled are discussed on the controllingpiezodispenser.php page.

      So after an overview of the washing process this video shows the items working together to realize the washing and drying process.




   © HTS Resources