AFL.automation.loading.ChemyxSyringePump#

This is largely duplicated from the reference code provided by Chemyx. Their package is a GUI and direct import of the module would be problematic.

Functions

getOpenPorts()

parsePortName(portinfo)

On macOS and Linux, selects only usbserial options and parses the 8 character serial number.

Classes

ChemyxConnection(port, baudrate[, x, mode, ...])

ChemyxSyringePump(port, syringe_id_mm, ...)

SyringePump()

class AFL.automation.loading.ChemyxSyringePump.ChemyxSyringePump(port, syringe_id_mm, syringe_volume, baud=9600, flow_delay=5)[source]#
__init__(port, syringe_id_mm, syringe_volume, baud=9600, flow_delay=5)[source]#

Initializes and verifies connection to a Chemyx syringe pump.

port = serial port reference

syringe_id_mm = syringe inner diameter in mm, used for absolute volume.

(will re-program the pump with this diameter on connection)

syringe_volume = syringe volume in mL

baud = baudrate for connection

wait_dosage_finished(timeout_seconds=60)[source]#

The function waits until the last dosage command has finished until the timeout occurs.

stop()[source]#

Abort the current dispense/withdraw action.

withdraw(volume, block=True, delay=True)[source]#
dispense(volume, block=True, delay=True)[source]#
setRate(rate)[source]#
getRate()[source]#
emptySyringe()[source]#
getLevel()[source]#
setLevel(level)[source]#
blockUntilStatusStopped(pollingdelay=0.2)[source]#

This is a deprecated function from old serial logic. It should work, but do not use.

getStatus()[source]#

query the pump status and return whether the pump is moving or not (true if moving, false if stopped)

getValueFromParams(search_key)[source]#
AFL.automation.loading.ChemyxSyringePump.getOpenPorts()[source]#
AFL.automation.loading.ChemyxSyringePump.parsePortName(portinfo)[source]#

On macOS and Linux, selects only usbserial options and parses the 8 character serial number.

class AFL.automation.loading.ChemyxSyringePump.ChemyxConnection(port, baudrate, x=0, mode=0, verbose=False)[source]#
__init__(port, baudrate, x=0, mode=0, verbose=False)[source]#
openConnection()[source]#
closeConnection()[source]#
sendCommand(command)[source]#
getResponse()[source]#
startPump()[source]#
stopPump()[source]#
pausePump()[source]#
restartPump()[source]#
setUnits(units)[source]#
setDiameter(diameter)[source]#
setRate(rate)[source]#
setVolume(volume)[source]#
setDelay(delay)[source]#
setTime(timer)[source]#
getParameterLimits()[source]#
getParameters()[source]#
getDisplacedVolume()[source]#
getElapsedTime()[source]#
getPumpStatus()[source]#
addMode(command)[source]#
addX(command)[source]#