pump

Illumina HiSeq 2500 System :: Pump

Uses command set from Kloehn VersaPump3

Example:

#Create pump object
import pyseq
pumpA = pyseq.pump.Pump('COM10','pumpA')
#Initialize pump
pumpA.initialize()
#Pump 2000 uL at 4000 uL/min
pumpA.pump(2000,4000)

Max volume and max/min flowrate (Q) pumped to each lane on a flowcell depend on the HiSeq plumbing configuration ie how many pump barrels are tied to a flowcell lane. The minimum volume regardless of the plumbing configuration is 1 uL.

barrels/lane

Max Volume (uL)

Max Q (uL/min)

Min Q (uL/min)

8

2000

20000

100

4

1000

10000

50

2

500

5000

25

1

250

2500

13

Classes

Pump(com_port[, name, logger, baudrate])

HiSeq 2500 System :: Pump

class pyseq.pump.Pump(com_port, name=None, logger=None, baudrate=9600)

HiSeq 2500 System :: Pump

Attributes:
  • n_barrels (int): The number of barrels used per lane. The max is 8.

  • max_volume (float): The maximum volume pumped in one stroke in uL.

  • min_volume (float): The minimum volume that can be pumped in uL.

  • max_flow (int): The maximum flowrate of the pump in uL/min.

  • min_flow (int): The minimum flowrate of the pump in uL/min.

  • dispense_speed (int): The speed to dipense liquid to waste in steps per second.

  • delay (int): Seconds to wait before switching valve.

  • prefix (str): The prefix for commands to the pump. It depends on the pump address.

  • name (str): The name of the pump.

check_position()

Return the pump position.

Returns:
  • int: The step position of the pump (0-48000).

check_pump()

Wait until pump is ready and then return True.

Returns:
  • bool: True when the pump is ready. False, if the pump has an error.

command(text)

Send a serial command to the pump and return the response.

Parameters:
  • text (str): A command to send to the pump.

Returns:
  • str: The response from the pump.

initialize()

Initialize the pump.

pump(volume, flow=0)

Pump desired volume at desired flowrate then send liquid to waste.

Parameters:
  • volume (float): The volume to be pumped in uL.

  • flow (float): The flowrate to pump at in uL/min.

reverse_pump(volume, in_flow=0, out_flow=0)

Pump from outlet and then send liquid to inlet.

Parameters:
  • volume (float): The volume to be pumped in uL.

  • in_flow (float): The flowrate to aspirate from waste in uL/min.

  • out_flow (float): The flowrate to dispense to inlet in uL/min.

uLperMin_to_sps(flow)

Convert flowrate from uL per min. (float) to steps per second (int).

update_limits(n_barrels)

Change barrels/flowcell lane and update volume and flowrate limits.

vol_to_pos(volume)

Convert volume from uL (float) to pump position (int, 0-48000).

If the volume is too big or too small, returns the max or min volume.

write_log(text)

Write messages to the log.