def FirstReadPreparation(): config.logger.info(u'Start FirstReadPreparation') PumpToFlowcell(actPos=8, volume=203) SetThermalCyclerTemp(temp=65) sleep(60) PumpToActuator(actPos=12) PumpToFlowcell(actPos=12, volume=203) SetThermalCyclerTemp(temp=40) sleep(60) PumpToFlowcell(actPos=3, volume=311) config.logger.info(u'End FirstReadPreparation') return
def Deblock(): config.logger.info(u'Start Deblock') PumpToFlowcell(actPos=3, volume=311) sleep(3.1) SetThermalCyclerTemp(temp=60) PumpToFlowcell(actPos=3, volume=311) PumpToFlowcell(actPos=4, volume=131) PumpToFlowcell(actPos=3, volume=48) sleep(10) config.logger.info(u'End Deblock') return
def FirstExtension(): config.logger.info(u'Start FirstExtension') SetThermalCyclerTemp(temp=50) sleep(30) PumpToFlowcell(actPos=5, volume=503, aspirationRate=9) sleep(3) for i in range(5): PumpToFlowcell(actPos=5, volume=24, aspirationRate=9) sleep(90) config.logger.info(u'End FirstExtension') return
def AmplificationWash(): config.logger.info(u'Start AmplificationWash') PumpToFlowcell(actPos=3, volume=311) SetThermalCyclerTemp(temp=20) config.logger.info(u'End AmplificationWash') return
def Resynthesis(): config.logger.info(u'Start Resynthesis') PumpToFlowcell(actPos=8, volume=90, aspirationRate=9) sleep(7.2) PumpToFlowcell(actPos=3, volume=90, aspirationRate=9) sleep(7.2) PumpToFlowcell(actPos=6, volume=196, # todo проверить объёмы в этом пункте aspirationRate=9) sleep(18.7) config.logger.info(u'End Resynthesis') return
def End(): config.logger.info(u'Start End') PumpToFlowcell(actPos=3, volume=311) sleep(3.3) SetThermalCyclerTemp(temp=60) PumpToFlowcell(actPos=3, volume=311) PumpToFlowcell(actPos=4, volume=167) PumpToFlowcell(actPos=3, volume=48) sleep(40) PumpToFlowcell(actPos=3, volume=12) sleep(35) config.logger.info(u'End End')
def IndexOnePreparation(): config.logger.info(u'Start IndexOnePreparation') SetThermalCyclerTemp(temp=20) sleep(25) PumpToFlowcell(actPos=8, volume=203) SetThermalCyclerTemp(temp=65) sleep(60) PumpToActuator(actPos=13) PumpToFlowcell(actPos=13, volume=203) SetThermalCyclerTemp(temp=40) sleep(60) PumpToFlowcell(actPos=3, volume=311) config.logger.info(u'End IndexOnePreparation') return
def PreresynthesisTempramp(): config.logger.info(u'Start PreresynthesisTempramp') PumpToActuator(actPos=6) PumpToFlowcell(actPos=3, volume=311) SetThermalCyclerTemp(temp=50) config.logger.info(u'End PreresynthesisTempramp') return
def PostResynthesisWash(): config.logger.info(u'Start PostResynthesisWash') PumpToFlowcell(actPos=3, volume=311) SetThermalCyclerTemp(temp=20) sleep(45) config.logger.info(u'End PostResynthesisWash') return
def SecondReadPreparation(): config.logger.info(u'Start SecondReadPreparation') PumpToFlowcell(actPos=8, volume=203, aspirationRate=9) SetThermalCyclerTemp(temp=65) sleep(60) PumpToActuator(actPos=14) PumpToFlowcell(actPos=14, volume=203, aspirationRate=9) SetThermalCyclerTemp(temp=40) sleep(60) PumpToFlowcell(actPos=3, volume=311) config.logger.info(u'End SecondReadPreparation') return
def IncorporationWithoutDeblockBefore(): config.logger.info(u'Start IncorporationWithoutDeblockBefore') SetThermalCyclerTemp(temp=60) PumpToFlowcell(actPos=3, volume=311) PumpToFlowcell(actPos=1, volume=131) PumpToFlowcell(actPos=3, volume=48) SetThermalCyclerTemp(temp=65) sleep(30) PumpToFlowcell(actPos=3, volume=12) sleep(30) SetThermalCyclerTemp(temp=22) sleep(60) PumpToFlowcell(actPos=3, volume=311) PumpToFlowcell(actPos=2, volume=131) PumpToFlowcell(actPos=3, volume=48) sleep(10) config.logger.info(u'End IncorporationWithoutDeblockBefore') return
def FirstBase(): config.logger.info(u'Start FirstBase') SetThermalCyclerTemp(temp=60) PumpToFlowcell(actPos=3, volume=203) PumpToFlowcell(actPos=1, volume=131) PumpToFlowcell(actPos=3, volume=48) SetThermalCyclerTemp(temp=65) sleep(30) PumpToFlowcell(actPos=3, volume=12) sleep(30) SetThermalCyclerTemp(temp=22) sleep(60) PumpToFlowcell(actPos=3, volume=311) PumpToFlowcell(actPos=2, volume=131) PumpToFlowcell(actPos=3, volume=48) sleep(10) config.logger.info(u'End FirstBase') return
def TMPBufferWash(): config.logger.info(u'Start TMPBufferWash') for i in range(15): PumpToFlowcell(actPos=3, volume=24, aspirationRate=9) sleep(18) config.logger.info(u'End TMPBufferWash') return
def Deprotection(): config.logger.info(u'Start Deprotection') SetThermalCyclerTemp(temp=20) sleep(120) PumpToActuator(actPos=11) PumpToFlowcell(actPos=11, volume=203, aspirationRate=9) SetThermalCyclerTemp(temp=38) sleep(300) PumpToFlowcell(actPos=11, volume=60, aspirationRate=9) sleep(300) PumpToFlowcell(actPos=3, volume=311) config.logger.info(u'End Deprotection') return
def BridgeAmplification(): config.logger.info(u'Start BridgeAmplification') for i in range(24): print("Итерация №" + str(i + 1)) print("Прокачка реагента №8") PumpToFlowcell(actPos=8, volume=90) sleep(8) print("Прокачка реагента №7") PumpToFlowcell(actPos=7, volume=90) sleep(8) print("Прокачка реагента №5") PumpToFlowcell(actPos=5, volume=196) sleep(19) config.logger.info(u'End BridgeAmplification') return
def Denaturation(): config.logger.info(u'Start Denaturation') SetThermalCyclerTemp(temp=20) sleep(25) PumpToFlowcell(actPos=8, volume=203, aspirationRate=9) SetThermalCyclerTemp(temp=65) sleep(60) PumpToFlowcell(actPos=3, volume=743) PumpToFlowcell(actPos=3, volume=203) SetThermalCyclerTemp(temp=40) sleep(60) PumpToFlowcell(actPos=3, volume=311) config.logger.info(u'End Denaturation') return
def SBSPrime(): config.logger.info(u'Start SBSPrime') SetThermalCyclerTemp(temp=20) PumpToActuator(actPos=1) PumpToActuator(actPos=2) PumpToActuator(actPos=4) PumpToFlowcell(actPos=3, volume=623) config.logger.info(u'End SBSPrime') return
def FirstLinearisation(): config.logger.info(u'Start FirstLinearisation') PumpToActuator(actPos=9) PumpToFlowcell(actPos=9, volume=203, aspirationRate=9) SetThermalCyclerTemp(temp=46) sleep(300) PumpToFlowcell(actPos=9, volume=60, aspirationRate=9) sleep(300) PumpToFlowcell(actPos=9, volume=60, aspirationRate=9) sleep(300) PumpToFlowcell(actPos=3, volume=311) config.logger.info(u'End FirstLinearisation') return
def InitialPrime(): config.logger.info(u'Start InitialPrime') PumpToActuator(actPos=8) SetThermalCyclerTemp(temp=40) sleep(30) PumpToActuator(actPos=5) PumpToActuator(actPos=7) PumpToFlowcell(actPos=3, volume=743) SetThermalCyclerTemp(temp=75) sleep(30) PumpToActuator(actPos=17) config.logger.info(u'End InitialPrime') return
sensor = serial.Serial(port=ports.sensors, baudrate=115200, bytesize=serial.EIGHTBITS, parity=serial.PARITY_NONE, stopbits=serial.STOPBITS_ONE) for i in range(10): msg = "FLOWRST\r\n".encode() sensor.write(msg) logging.info("Xmit Sensor : %s.", msg) answer = sensor.readline().decode() logging.info("Recv Sensor : %s.", answer) if answer.find("error") != -1: sensor.write(msg) logging.info("Xmit Sensor : %s.", msg) answer = sensor.readline().decode() logging.info("Recv Sensor : %s.", answer) elif answer.find("UNDEFINED"): sensor.write(msg) logging.info("Xmit Sensor : %s.", msg) answer = sensor.readline().decode() logging.info("Recv Sensor : %s.", answer) rate = 300 vol = 600 PumpToFlowcell(actPos=3, volume=vol, aspirationRate=rate, dispenseRate=5800) time.sleep(vol/rate + 0.1)
print("Заполнение канала номер 8") PumpToActuator(actPos=8) print("Заполнение канала номер 9") PumpToActuator(actPos=9) print("Заполнение канала номер 12") PumpToActuator(actPos=12) print("Заполнение канала номер 17") PumpToActuator(actPos=17) print("Выход на температуру 40°C") SetThermalCyclerTemp(temp=40) print("Температуры циклера вышла на полку в 40°C") print("Промывка буфером") for i in range(10): print("Итерация №" + str(i+1)) PumpToFlowcell(actPos=3, volume=180, aspirationRate=72, dispenseRate=2000) sleep(15) print("Введение и отжиг геномной библиотеки") print("Введение геномной библиотеки") PumpToFlowcell(actPos=17, volume=180, aspirationRate=72, dispenseRate=2000) sleep(15) SetThermalCyclerTemp(temp=95) print("Отжиг геномной библиотеки") SetThermalCyclerTempLowSpeed(startTemp=95, stopTemp=40, timeToGo=1100) print("Промывка буфером") for i in range(10): print("Итерация №" + str(i+1)) PumpToFlowcell(actPos=3, volume=180, aspirationRate=72, dispenseRate=2000) sleep(15)
def BufferWash(): config.logger.info(u'Start BufferWash') PumpToFlowcell(actPos=3, volume=623) config.logger.info(u'End BufferWash') return
def EndRead(): config.logger.info(u'Start EndRead') PumpToFlowcell(actPos=3, volume=311) config.logger.info(u'End EndRead')
from actuator_lib import TogglePos from upper_commands import Snap print("Старт") n = time.time() SetStandDown() time.sleep(7) print("Установите на рабочее место штатив с реагентами и чип") h = '' while h != "work": h = input(">>") print(h) SetStandUp() time.sleep(7) print("Начало отрабатывания алгоритма") PumpToFlowcell(actPos=15, volume=743) PumpToFlowcell(actPos=16, volume=743) PumpToFlowcell(actPos=3, volume=1823) for i in range(3): AspirateFromBypass(volume=623, aspirationRate=72, dispenseRate=2000) PumpToFlowcell(actPos=8, aspirationRate=9, volume=623) SetThermalCyclerTemp(temp=40) time.sleep(30) PumpToFlowcell(actPos=5, volume=743) PumpToFlowcell(actPos=6, volume=743) PumpToFlowcell(actPos=7, volume=743) PumpToFlowcell(actPos=3, volume=743) PumpToFlowcell(actPos=17, volume=743) SetThermalCyclerTemp(temp=75) time.sleep(30) time.sleep(300)
import config from system_commands import PumpToFlowcell from system_commands import AspirateFromBypass from system_commands import DispenseToFlowcell import time config.logger.info(u'======== Postrun wash is started ' u'========') n = time.time() for i in range(3): PumpToFlowcell(actPos=3, volume=2400, aspirationRate=500, dispenseRate=2000) PumpToFlowcell(actPos=17, volume=3000, aspirationRate=500, dispenseRate=2000) PumpToFlowcell(actPos=3, volume=2400, aspirationRate=500, dispenseRate=2000) for j in range(8): PumpToFlowcell(actPos=3, volume=600, aspirationRate=500, dispenseRate=2000) DispenseToFlowcell(actPos=17, volume=600, dispenseRate=500) for i in range(2): for j in range(14): if j < 12:
conn.set("bubble_need", 1) print("Заполнение канала номер 3") PumpToActuator(actPos=3) print("Заполнение канала номер 4") PumpToActuator(actPos=4) print("Заполнение канала номер 8") PumpToActuator(actPos=8) print("Заполнение канала номер 19") PumpToActuator(actPos=19) print("Заполнение канала номер 20") PumpToActuator(actPos=20) SetThermalCyclerTemp(temp=60) print("Денатурация") PumpToFlowcell(actPos=8, volume=180, aspirationRate=72, dispenseRate=2000) print("Промывка буфером") PumpToFlowcell(actPos=3, volume=180, aspirationRate=72, dispenseRate=2000) time.sleep(15) print("Детекция") h = '' while h != "work": h = input(">>") print(h) SetThermalCyclerTemp(temp=60) for i in range(5): print(str(i + 1) + "итерация для 19 ячейки")
PumpToActuator(2) PumpToActuator(4) PumpToActuator(3) # Imaging print("Imaging") h = '' while h != "work": h = input(">>") print(h) for i in range(19): print("Встраивание " + str(i + 2) + "-й буквы") a = time.time() SetThermalCyclerTemp(temp=60) PumpToFlowcell(actPos=3, volume=331) PumpToFlowcell(actPos=4, volume=167) PumpToFlowcell(actPos=3, volume=71) time.sleep(10) PumpToFlowcell(actPos=3, volume=623) PumpToFlowcell(actPos=1, volume=131) PumpToFlowcell(actPos=3, volume=64) SetThermalCyclerTemp(temp=65) time.sleep(20) PumpToFlowcell(actPos=3, volume=16) time.sleep(20) SetThermalCyclerTemp(temp=22) PumpToFlowcell(actPos=3, volume=311) PumpToFlowcell(actPos=2, volume=167) PumpToFlowcell(actPos=3, volume=64) time.sleep(15)