コード例 #1
0
def run_custom_protocol(
        left_pipette: StringSelection('p10-single', 'P50-single',
                                      'p300-single', 'p1000-single',
                                      'none') = 'p50-single',
        right_pipette: StringSelection('p10-single', 'P50-single',
                                       'p300-single', 'p1000-single',
                                       'none') = 'p300-single',
        master_mix_csv: FileInput = mastermix_csv_example):

    if left_pipette == right_pipette and left_pipette == 'none':
        raise Exception('You have to select at least 1 pipette.')

    def mount_pipette(pipette_type, mount, tiprack_slot):
        if pipette_type == 'p10-single':
            tip_rack = labware.load('tiprack-10ul', tiprack_slot)
            pipette = instruments.P10_Single(mount=mount, tip_racks=[tip_rack])
        elif pipette_type == 'p50-single':
            tip_rack = labware.load('opentrons-tiprack-300ul', tiprack_slot)
            pipette = instruments.P50_Single(mount=mount, tip_racks=[tip_rack])
        elif pipette_type == 'p300-single':
            tip_rack = labware.load('opentrons-tiprack-300ul', tiprack_slot)
            pipette = instruments.P300_Single(mount=mount,
                                              tip_racks=[tip_rack])
        else:
            tip_rack = labware.load('tiprack-1000ul', tiprack_slot)
            pipette = instruments.P1000_Single(mount=mount,
                                               tip_racks=[tip_rack])
        return pipette

    # labware setup
    labware.load('opentrons-tuberack-2ml-eppendorf', '1')
    labware.load('opentrons-tuberack-2ml-screwcap', '2')
    trough = labware.load('trough-12row', '3')

    # instrument setup
    pipette_l = mount_pipette(left_pipette, 'left',
                              '5') if 'none' not in left_pipette else None
    pipette_r = mount_pipette(right_pipette, 'right',
                              '6') if 'none' not in right_pipette else None

    # determine which pipette has the smaller volume range
    if pipette_l and pipette_r:
        if left_pipette == right_pipette:
            pip_s = pipette_l
            pip_l = pipette_r
        else:
            if pipette_l.max_volume < pipette_r.max_volume:
                pip_s, pip_l = pipette_l, pipette_r
            else:
                pip_s, pip_l = pipette_r, pipette_l
    else:
        pipette = pipette_l if pipette_l else pipette_r

    # destination
    mastermix_dest = trough.wells('A1')

    info_list = [
        cell for line in master_mix_csv.splitlines() if line
        for cell in [line.split(',')]
    ]

    for line in info_list[1:]:
        source = robot.deck.children_by_name[line[1]][0].wells(line[2])
        vol = float(line[3])
        if pipette_l and pipette_r:
            if vol <= pip_s.max_volume:
                pipette = pip_s
            else:
                pipette = pip_l
        pipette.transfer(vol, source, mastermix_dest)
コード例 #2
0
from opentrons import labware, instruments, modules, robot
"""
Clean Up Libraries
"""
# labware setup
mag_deck = modules.load('magdeck', '4')
# mag_plate = labware.load('96-PCR-flat', '4', share=True)
mag_plate = labware.load('biorad-hardshell-96-PCR', '4', share=True)
in_plate = labware.load('96-PCR-flat', '5')
out_plate = labware.load('96-PCR-flat', '1')
# out_plate = labware.load('biorad-hardshell-96-PCR', '2')
trough = labware.load('trough-12row', '2')
liquid_trash = trough.wells('A12')

# reagent setup
rsb = trough.wells('A1')  # resuspension buffer
beads = trough.wells('A2')  # AMPure XP beads
ethanol = trough.wells('A3')  # 80% ethanol

tipracks50 = [labware.load('tiprack-200ul', slot) for slot in ['6', '7', '8']]

# pipette setup
p50 = instruments.P50_Single(mount='left', tip_racks=tipracks50)


def run_custom_protocol(number_of_samples: int = 24,
                        PCR_product_volume: float = 50,
                        bead_ratio: float = 1.8,
                        dry_time: int = 15):

    if number_of_samples <= 24:
コード例 #3
0
ファイル: smart_transfer.py プロジェクト: JBwdn/M5-Team-4
                labware_plate.wells(to_wells[i]),
                air_gap=20,
                new_tip='never',
                blow_out=True,
            )
            # mix_after=(5))
        else:
            p10.transfer(
                vols[i],
                labware_plate.wells(from_wells[i]),
                labware_plate.wells(to_wells[i]),
                air_gap=20,
                new_tip='never',
                blow_out=True,
            )
            # mix_after=(5))


# Labware:
plate = labware.load('96-flat', '1')

p300_tip_rack = labware.load('opentrons_96_tiprack_300ul', '4')
p10_tip_rack = labware.load('opentrons_96_tiprack_10ul', '3')
p300 = instruments.P300_Single(mount='left', tip_racks=[p300_tip_rack])
p10 = instruments.P10_Single(mount='right', tip_racks=[p10_tip_rack])

smart_transfer([2, 7, 15, 200], plate, ['A1', 'A1', 'A1', 'A1'],
               ['B1', 'C1', 'D1', 'E1'])

for c in robot.commands():
    print(c)
コード例 #4
0
    return (pipette)


# =============================== Load labware ===============================

tip_name = 'Biozym-tiprack-200ul'  # Add Biozym 200 ul tiprack to labware library
if tip_name not in labware.list():
    custom_tip = labware.create(
        tip_name,  # name of you labware
        grid=(12, 8),  # specify amount of (columns, rows)
        spacing=(9, 9),  # distances (mm) between each (column, row)
        diameter=5.23,  # diameter (mm) of each well on the plate
        depth=50,  # depth (mm) of each well on the plate
        volume=200)

tiprack = labware.load(tip_name, '9')  # Load tiprack

trough = labware.load('opentrons_6_tuberack_falcon_50ml_conical',
                      '1')  # Load reservoir

pipette = instruments.P300_Single(mount='right',
                                  tip_racks=[tiprack],
                                  max_volume=200)  # Load pipette

# =========================== Set source locations ============================

EmptyFalcon = trough.wells(
    'B1')  #50 ml falcon left EMPTY for dispension of water

WaterFalcon = trough.wells(
    'B2'
コード例 #5
0
# -*- coding: utf-8 -*-
"""

@author: Allan Li, Sunnie Ma
"""
import opentrons
from opentrons import labware, instruments, robot

#This is the radius of the dish in centermeters
radius = 4.5

tiprack = labware.load('tiprack-10ul', '1')
bacteria = labware.load('96-flat', '4')
dish = labware.load('96-PCR-flat', '5')

p = instruments.P300_Single(mount='right', tip_racks=[tiprack])

dishInfo = dish.wells('A1').top()[0]

n = radius / 5

center_x = dish.wells('A1').top()[1][0]
center_y = dish.wells('A1').top()[1][1] - 40
z = dish.wells('A1').top()[1][2] - 3

#adjust the coordinates of the dish


#function that moves to a specific point of the dish
def move(x, y):
    x = n * x
コード例 #6
0
    'H10',
    'A11',
    'B11',
    'C11',
    'D11',
    'E11',
    'F11',
    'G11',
    'H11',
    'A12',
    'B12',
    'C12',
    'D12',
]

water_rack = labware.load('tube-rack-2ml', '5')
gDNA_plate = labware.load('96-flat', '2')
dest_plate = labware.load('96-flat', '1')
water = water_rack.wells('A1')

tiprack_10 = [labware.load('tiprack-10ul', slot) for slot in ['6', '7']]

p10 = instruments.P10_Single(mount='right', tip_racks=tiprack_10)

p10.pick_up_tip()
p10.transfer(Vol,
             water,
             dest_plate.wells(dest_well),
             blow_out=True,
             new_tip='never')
p10.drop_tip()
コード例 #7
0
ファイル: cera.py プロジェクト: anamatesanz/SELEX
        stamp_tiprack,
        grid = (4,1),
        spacing = (10,10),
        diameter = 5,
        depth = 5)

paper_sheet = "paper-sheet"
if paper_sheet not in labware.list():
    labware.create(
        paper_sheet,
        grid = (4,1),
        spacing = (12,30),
        diameter = 5,
        depth = 2)

stamps = labware.load(stamp_tiprack, slot=6)
wax = labware.load('agilent_1_reservoir_290ml', slot=10)
paper = labware.load(paper_sheet, slot=1)

pipette = instruments.P300_Single(mount='left')

pipette.pick_up_tip(location=stamps.wells('A1'))

for i in range(1,5):

    pipette.move_to(wax.wells('A1').top(20))
    pipette.aspirate(30)
    pipette.move_to(wax.wells('A1').top(-2))
    pipette.dispense(30)
    pipette.move_to(wax.wells('A1').top(20))
コード例 #8
0
from opentrons import labware, instruments, robot
robot.reset()
robot.home()

# DEFAULT PIPETTE FOR THIS IS THE P1000 - IF YOU NEED TO USE A DIFFERENT
#TIP YOU WILL NEED TO USE THE SWAPS IN "Walkthrough_Rate Calibration.ipynb"

#load labware
tiprack_1000 = labware.load("tiprack-1000ul", '1')
Stock1 = labware.load("vial-20ml", '2')  #scintillation vials
vials = labware.load("vial-20ml", '3')  #scintillation vials
trash = robot.fixed_trash

P1000 = instruments.P1000_Single(mount='right',
                                 tip_racks=[tiprack_1000],
                                 trash_container=trash)

robot.home()

P1000.pick_up_tip()

speeds = [.2, .4, .6, .8, 1]
pipette_amount = [600]
P1000.aspirate(Stock1('A1'))
P1000.dispense(Stock1('A1'))
P1000.aspirate(Stock1('A1'))
P1000.dispense(Stock1('A1'))

for counter, speed in enumerate(speeds, 0):
    # distribution of the same amount at various speeds
    P1000.distribute(pipette_amount,
コード例 #9
0
        diameter=5.50,             # diameter (mm) of each well on the plate (here width at top!!)
        depth=15.00,               # depth (mm) of each well on the plate
        volume=200)                # as per manufacturer's website

    print('Wells in 96WP PCR Thermo Fisher:')
    for well in custom_plate.wells():
        print(well)

############################ define labware
# i.e. translate user-friendly parameters into opentrons language

# pipette and tiprack

# multi channel
if multi_pipette_type == 'p10-Multi':
    tiprackdrugs = [labware.load(tiprackdrugs_type, slot) \
                      for slot in tiprackdrugs_slots]
    pipette_multi = instruments.P10_Multi(
        mount=multi_pipette_mount,
        tip_racks=tiprackdrugs)
pipette_multi.start_at_tip(tiprackdrugs[0].well(tiprackdrugs_startfrom))
pipette_multi.plunger_positions['drop_tip'] = -6
# faster dispense
pipette_multi.set_speed(dispense=pipette_multi.speeds['dispense']*4)

# translate the drugs mapping dict in robot language
# load source plate first
src_plate = labware.load(drugs_source_type, drugs_source_slot)
src_wells = [well.bottom(frombottom_off) for well in src_plate.rows('A')]
wells_mapping = {}
for key, value in drugs_mapping.items():
コード例 #10
0
elif speed_conf ==1:
    speed_set = medium_speed
elif speed_conf ==2:
    speed_set = slow_speed
robot.head_speed(combined_speed=max(speed_set.values()),**speed_set)

#Number of chips to coat
#num_chips = int(input('Number of chips to coat (1,2 or 3)'))
num_chips = int(args.integers[1])
#this variable when change to something other that None allows the while loop to be broken.
rotate_st = None;

# Import labware
#ax-6 definition
if 'ax_6' not in locals():
    ax_6 = labware.load('ax6_5','6')
#tiprack
if 'tiprack' not in locals():
    tiprack = labware.load('opentrons-tiprack-300ul', '1')
#eppendorf rack
if 'ep_rack' not in locals():
    ep_rack = labware.load('opentrons_24_tuberack_eppendorf_2ml_safelock_snapcap','4')


# Import pipette definitions
if 'pipette_300' not in locals():
    pipette_300 = instruments.P300_Single(mount='left', tip_racks=[tiprack])
if 'pipette_50' not in locals():
    pipette_50 = instruments.P50_Single(mount='right', tip_racks=[tiprack])
    
#This function stores the current tip that the robot will use and can reset the pipette wells or display the current tip.
コード例 #11
0
from opentrons import labware, instruments

metadata = {
    'protocolName':
    'Dilute extracted DNA',
    'author':
    'James Kitson',
    'description':
    'A series of commands to dilute the extracted DNA obtained through the spin column extraction proceedure'
}

# get the plates loaded
DNA_plate1 = labware.load('starlab-E2896-0600', '4', 'input DNA plate')
#DNA_plate2 = labware.load('starlab-E2896-0600', '5', 'input DNA plate')

diluted_DNA_plate1 = labware.load('starlab-E1403-0100', '7',
                                  'diluted_DNA plate')
#diluted_DNA_plate2 = labware.load('starlab-E1403-0100', '8', 'diluted_DNA plate')

Tris_plate = labware.load('starlab-E2896-0220', '9', 'Tris plate')

# load the tips
tips_10 = labware.load('tiprack-starlab-S1120-3810', '1')
tips_300 = labware.load('tiprack-starlab-S1120-9810', '3')

# set pipettes
pipette300 = instruments.P300_Multi(mount='left', tip_racks=[tips_300])
pipette10 = instruments.P10_Multi(mount='right', tip_racks=[tips_10])

# set the dilution parameters
final_volume: float = 200
コード例 #12
0
from opentrons import labware, instruments, modules, robot
from opentrons.data_storage import database
from time import sleep

sample = labware.load('96-flat', slot=3)
tiprack = labware.load('opentrons-tiprack-300ul', slot=9)
tiprack_l = labware.load('opentrons-tiprack-300ul', slot=5)

# [2] Pipettes

pipette_r = instruments.P50_Multi(mount='right', tip_racks=[tiprack])
pipette_l = instruments.P300_Single(mount='left', tip_racks=[tiprack_l])

pipette_l.transfer(100, sample.wells('A1'), sample.wells('A3'))
pipette_l.transfer(100, sample.wells('B1'), sample.wells('B3'))
pipette_l.transfer(100, sample.wells('C1'), sample.wells('C3'))

pipette_r.transfer(50, sample.wells('A3'), sample.wells('A4'))
pipette_r.transfer(50, sample.wells('A3'), sample.wells('A5'))
pipette_r.transfer(50, sample.wells('A1'), sample.wells('A6'))
コード例 #13
0
        spacing=(9, 9),  # distances (mm) between each (column, row)
        diameter=5.23,  # diameter (mm) of each well on the plate
        depth=50,  # depth (mm) of each well on the plate
        volume=200)

plate_name = 'biolector-flower-plate-48-well'
if plate_name not in labware.list():
    custom_plate = labware.create(
        plate_name,  # name of labware
        grid=(8, 6),  # amount of (columns, rows)
        spacing=(13, 13),  # distances (mm) between each (column, row)
        diameter=10.85,  # diameter (mm) of each well on the plate
        depth=33,  # depth (mm) of each well on the plate
        volume=3200)

tiprack = labware.load(tip_name, '9')  # Load tiprack

trough = labware.load('opentrons_6_tuberack_falcon_50ml_conical',
                      '6')  # Load reservoir

troughCell = labware.load('opentrons_10_tuberack_falcon_4x50ml_6x15ml_conical',
                          '5')

pipette = instruments.P300_Single(mount='right',
                                  tip_racks=[tiprack],
                                  max_volume=200)  # Load pipette

plate = labware.load(plate_name, '3')  # Load wellplate

# =========================== Set source locations ============================
コード例 #14
0
from opentrons import robot, labware, instruments

metadata = {
    'protocolName': 'Tube Distribution Test: Fill 384 and transfer to 4*96',
    'author': 'Amhed Vargas <*****@*****.**>',
    'source': 'KAUST - OT-2 Protocols'
}

###Robot speed

robot.head_speed(x=100, y=100, z=100, a=125, b=50, c=50)

##Labware
#Tips
#p300rack = labware.load('opentrons_96_tiprack_300ul', '9')
p10rack1 = labware.load('tiprack-10ul', '1')
p10rack2 = labware.load('tiprack-10ul', '2')

#p10rack3 = labware.load('opentrons_96_tiprack_10ul', '4')
#p10rack4 = labware.load('opentrons_96_tiprack_10ul', '5')

#Plates
p384plate = labware.load('384-plate', '3')
p96plateA = labware.load('96-PCR-tall', '10')
p96plateB = labware.load('96-PCR-tall', '7')

#p96plateC = labware.load('biorad_96_wellplate_200ul_pcr', '11')
#p96plateD = labware.load('biorad_96_wellplate_200ul_pcr', '8')

#Samples
sample_tubes = labware.load('opentrons-tuberack-2ml-eppendorf', '6')
コード例 #15
0
metadata = {
    'protocolName':
    'D-Rex Inital Extraction',
    'author':
    'Jacob Agerbo Rasmussen <*****@*****.**>',
    'version':
    '1.0',
    'date':
    '2019/03/28',
    'description':
    'Automation of D-Rex RNA and DNA seperation for extraction protocol of stool samples in SHIELD',
}

#### LABWARE SETUP ####
trough = labware.load('trough-12row', '2')
RNA_plate = labware.load('96-deep-well', '1')
mag_deck = modules.load('magdeck', '7')
sample_plate = labware.load('96-deep-well', '7', share=True)

tipracks_200 = [
    labware.load('tiprack-200ul', slot) for slot in ['4', '5', '6', '11']
]

#### PIPETTE SETUP ####
p50 = instruments.P50_Single(mount='right', tip_racks=tipracks_200)

m300 = instruments.P300_Multi(mount='left', tip_racks=tipracks_200)

#### REAGENT SETUP
コード例 #16
0
            transfer_list_of_volumes(Q, starting_well_plate,
                                     starting_well_number, reagent_volume[0])
            moves = transfer_list_of_volumes(H, starting_well_plate,
                                             starting_well_number,
                                             reagent_volume[1])
            i += moves
    return


#Import Dependencies
from opentrons import labware, instruments, robot
import numpy as np
################################################################################
#Importing labware
tiprack_300 = labware.load(
    "opentrons-tiprack-300ul",
    '10')  # 300ul tips can be used for P300 and P50 pipettes
tiprack_300_2 = labware.load("opentrons-tiprack-300ul", '11')  # Second tiprack
stock = labware.load("trough-12row", '2')  # 12 well resovoir for stocks
A_96_well = labware.load("96-flat", '8')  # Using 4, 96 wellplates labeled A-D
B_96_well = labware.load("96-flat", '9')
C_96_well = labware.load("96-flat", '5')
D_96_well = labware.load("96-flat", '6')
trash = robot.fixed_trash
################################################################################
#Importing pipettes
P300 = instruments.P300_Single(
    mount='left', tip_racks=[tiprack_300],
    trash_container=trash)  # Volume range = 30-300uL

P50 = instruments.P50_Single(mount='right',
コード例 #17
0
        depth=35,  # depth (mm) of each well on the plate
        volume=350000)

#### LABWARE SETUP ####
temp_deck_1 = tempdeck.TempDeck()
temp_deck_2 = tempdeck.TempDeck()

temp_deck_1._port = '/dev/ttyACM0'
temp_deck_2._port = '/dev/ttyACM1'

if not robot.is_simulating():
    temp_deck_1.connect()
    temp_deck_2.connect()

temp_deck1 = modules.load('tempdeck', '7')
Cold_plate = labware.load('biorad-hardshell-96-PCR', '7', share=True)
# trough = labware.load('trough-12row', '2')
# Trash = labware.load('One-Column-reservoir','3')
temp_deck2 = modules.load('tempdeck', '10')
temp_plate = labware.load('biorad-hardshell-96-PCR', '10', share=True)
#mag_deck = modules.load('magdeck', '7')
#mag_plate = labware.load('biorad-hardshell-96-PCR', '7', share=True)

tipracks_10 = [
    labware.load('tiprack-10ul', slot, share=True) for slot in ['8', '5', '4']
]

tipracks_200 = [
    labware.load('tiprack-200ul', slot, share=True) for slot in ['9', '11']
]
コード例 #18
0
#Python 3.6.4
#Please keep the author(s) attached to the code segment for traceability, if changes are made please append the authour list and modify the timestamp #

#####################################################################################################################################
#The input from the code must be in list within a list, the sublist must contain the appropriate float type value and no whitespaces
#####################################################################################################################################

from opentrons import labware, instruments, robot, modules  # Import all opentrons API
from sqlite3 import IntegrityError  # Import sqlite3 for custom container support

#####################################################################################################################################
#####################################################################################################################################
# LOADED LABWARE

TempDeck = modules.load('tempdeck', '6')  # Loads TempDeck
tiprack200_1 = labware.load('opentrons-tiprack-300ul', '9')
Compcells1 = labware.load('96-flat', '6', "compcells1", share=True)
trash = robot.fixed_trash  # Specify trash
Culture = labware.load(
    'duran_100', '4')  # Chilledflask_100 and duran_250 are custom containers
Buffers = labware.load('96-deep-well', '3')

#####################################################################################################################################
#####################################################################################################################################
# LOADED PIPETTES
# CAN CHANGE IF NEEDED

P300 = instruments.P300_Single(  # Import Pipette, set aspiration/dispense rates and equip with rack 
    mount='right',
    aspirate_flow_rate=200,
    dispense_flow_rate=200,
コード例 #19
0
from opentrons import labware, instruments

p300rack = labware.load('tiprack-200ul', '11', 'p300rack')
trough = labware.load('trough-12row', '10', 'trough')
plate = labware.load('96-PCR-flat', '4', 'plate')
top_plate = labware.load('96-PCR-flat', '5', 'top_plate')
liquid_trash = labware.load('trash-box', '3')

p300_multi = instruments.P300_Multi(
    tip_racks=[p300rack],
    mount='right'
)

# Reagent locations in trough:

# trough row 1 = buffer
# trough row 2 = Ph-Ch-Iso-Amyl mix
# trough row 3 = isopropanol
# trough row 4 = ethanol


# Transfer 300uL of L buffer from trough to 96 well deep plate with same tips
p300_multi.transfer(300, trough('A1'), plate.cols('1', to='12'))

# Transfer 180uL of Ph-Ch-Iso-Amyl mixture to 96 well deep plate
p300_multi.transfer(180, trough('A2'), plate.cols('1', to='12'))

# Transfer top layer (200uL) from 96 well deep plate to new 96 deep well plate
top_source = [col[0].top(-2) for col in plate.cols('1', to='12')]
p300_multi.transfer(
    200, top_source, top_plate.cols())
コード例 #20
0
ファイル: Transformation.py プロジェクト: msburridge/OT-2
#Last modified: 19:43, 12/10/18
#Python 3.6.4
#Please keep the author(s) attached to the code segment for traceability, if changes are made please append the authour list and modify the timestamp

#####################################################################################################################################
#The input from the code must be in list within a list, the sublist must contain the appropriate float type value and no whitespaces

from opentrons import labware, robot, instruments, modules  # Import all opentrons API
from sqlite3 import IntegrityError  # Import sqlite3 for custom container support

#####################################################################################################################################
#####################################################################################################################################
# LOADED LABWARE

TempDeck = modules.load('tempdeck', '6')  # Loads TempDeck
Tiprack10uL = labware.load('tiprack-10ul', '11')
Tiprack300uL = labware.load('opentrons-tiprack-300ul', '9')
Compcells = labware.load('96-flat', '6', "compcells1",
                         share=True)  # Competent Cells
trash = robot.fixed_trash
DNA = labware.load('tube-rack-2ml', '10')  # Plasmid/DNA wanted to transform
SOB = labware.load(
    'duran_100',
    '7')  # Recovery media, SOB strongly recommended for E. coli DH5a

#####################################################################################################################################
#####################################################################################################################################
# LOADED PIPETTES
# CAN CHANGE IF NEEDED

P300 = instruments.P300_Single(mount='right',
コード例 #21
0
    return(pipette)


# =============================== Load labware ===============================

tip_name = 'Biozym-tiprack-200ul'       # Add Biozym 200 ul tiprack to labware library
if tip_name not in labware.list():
    custom_tip = labware.create(
        tip_name,                       # name of you labware
        grid=(12, 8),                   # specify amount of (columns, rows)
        spacing=(9, 9),                 # distances (mm) between each (column, row)
        diameter=5.23,                  # diameter (mm) of each well on the plate
        depth=50,                       # depth (mm) of each well on the plate
        volume=200)

tiprack = labware.load(tip_name, '9', label="tiprack")   # Load tiprack

trough = labware.load('opentrons_6_tuberack_falcon_50ml_conical', '6', label= "source")  # Load reservoir

plate = labware.load('corning_96_wellplate_360ul_flat', '3', label="wellplate")  # Load wellplate

pipette = instruments.P300_Single(mount='right', tip_racks=[tiprack], max_volume=200)  # Load pipette


# =========================== Set source locations ============================

DyeSource = trough.wells("A1")          #50 ml falcon with dye added as baseline and  gradient

pipette.start_at_tip(tiprack['A1'])

コード例 #22
0
from opentrons import robot, labware, instruments

# labware setup
block = labware.load('nest_96_wellplate_100ul_pcr_full_skirt', '2')
plates = [
    labware.load('nest_96_wellplate_100ul_pcr_full_skirt', slot)
    for slot in ['3', '4', '5', '6', '7', '8', '9', '10', '11']
]
tiprack = labware.load('opentrons-tiprack-10ul', '1')

# instrument setup
# p300 = instruments.P20_Single(
#     mount='left',
#     tip_racks=[tiprack])

# initialize pipettes
p20 = instruments.P20_Single_GEN2(mount='right', tip_racks=[tiprack])


def run_custom_protocol(transfer_volume: float = 100,
                        number_of_plates: int = 9,
                        discard_tip: 'StringSelection...' = 'False'):

    if discard_tip == 'False':
        discard_tip = False
    else:
        discard_tip = True

    for index, source in enumerate(block.wells()):
        dest = [plate.wells(index) for plate in plates[:number_of_plates]]
        p20.distribute(transfer_volume,
コード例 #23
0
TRANSFORMATION_PLATE_TYPE = 'Eppendorf_30133366_plate_96'
SOC_PLATE_TYPE = '4ti0136_96_deep-well'
SOC_PLATE_SLOT = '7'
TUBE_RACK_TYPE = 'tube-rack_E1415-1500'
TUBE_RACK_SLOT = '11'
SPOTTING_WASTE_WELL = 'A1'
AGAR_PLATE_TYPE = 'Nunc_Omnitray'
AGAR_PLATE_SLOT = '1'

# Tiprack slots
p10_p300_tiprack_slots = tiprack_slots(spotting_tuples)
p10_slots = CANDIDATE_P10_SLOTS[:p10_p300_tiprack_slots[0]]
p300_slots = CANDIDATE_P300_SLOTS[:p10_p300_tiprack_slots[1]]

# Define labware
p10_tipracks = [labware.load(P10_TIPRACK_TYPE, slot) for slot in p10_slots]
p300_tipracks = [labware.load(P300_TIPRACK_TYPE, slot) for slot in p300_slots]
p10_pipette = instruments.P10_Single(mount=P10_MOUNT, tip_racks=p10_tipracks)
p300_pipette = instruments.P300_Multi(mount=P300_MOUNT,
                                      tip_racks=p300_tipracks)

assembly_plate = labware.load(ASSEMBLY_PLATE_TYPE, ASSEMBLY_PLATE_SLOT)
tempdeck = modules.load('tempdeck', TEMPDECK_SLOT)
transformation_plate = labware.load(TRANSFORMATION_PLATE_TYPE,
                                    TEMPDECK_SLOT,
                                    share=True)
soc_plate = labware.load(SOC_PLATE_TYPE, SOC_PLATE_SLOT)
tube_rack = labware.load(TUBE_RACK_TYPE, TUBE_RACK_SLOT)
spotting_waste = tube_rack.wells(SPOTTING_WASTE_WELL)
agar_plate = labware.load(AGAR_PLATE_TYPE, AGAR_PLATE_SLOT)
コード例 #24
0
        spacing=(8.99, 8.99),      # distances (mm) between each (column, row)
        diameter=7.57,             # diameter (mm) of each well on the plate (here width at bottom)
        depth=10.35,               # depth (mm) of each well on the plate
        volume=650)                # this is the actual volume as per specs, not a "volume of work"

    print('Wells in 96WP Whatman:')
    for well in custom_plate.wells():
        print(well)

############################ define labware

# pipette and tiprack

# single channel
if single_pipette_type == 'p10-Single':
    tipracks_single = [labware.load(tiprack_type_single, tiprack_slot) \
                       for tiprack_slot in tiprack_slots_single]
    pipette_single = instruments.P10_Single(
        mount=single_pipette_mount,
        tip_racks=tipracks_single)
pipette_single.start_at_tip(tipracks_single[0].well(tip_start_from_single))
pipette_single.plunger_positions['drop_tip'] = -6

# multi channel
if multi_pipette_type == 'p10-Multi':
    tipracks_multi = [labware.load(tiprack_type_multi, tiprack_slot) \
                      for tiprack_slot in tiprack_slots_multi]
    pipette_multi = instruments.P10_Multi(
        mount=multi_pipette_mount,
        tip_racks=tipracks_multi)
pipette_multi.start_at_tip(tipracks_multi[0].well(tip_start_from_multi))
コード例 #25
0
if '96-well-plate-sqfb-whatman' not in labware.list():
    custom_plate = labware.create(
        '96-well-plate-sqfb-whatman',   # name of you labware
        grid=(12, 8),              # specify amount of (columns, rows)
        spacing=(8.99, 8.99),      # distances (mm) between each (column, row)
        diameter=7.57,             # diameter (mm) of each well on the plate (here width at bottom)
        depth=10.35,               # depth (mm) of each well on the plate
        volume=650)                # this is the actual volume as per specs, not a "volume of work"

    for well in custom_plate.wells():
        print(well)

############################ define labware
# pipette and tiprack
if pipette_type == 'p10-Single':
    tipracks = [labware.load(tiprack_type, tiprack_slot) for tiprack_slot in tiprack_slots]
    pipette = instruments.P10_Single(
        mount=pipette_mount,
        tip_racks=tipracks)
    pipette.start_at_tip(tipracks[0].well(tip_start_from))
elif pipette_type == 'p10-Multi':
    tipracks = [labware.load(tiprack_type, tiprack_slot) for tiprack_slot in tiprack_slots]
    pipette = instruments.P10_Multi(
        mount=pipette_mount,
        tip_racks=tipracks)
    pipette.start_at_tip(tipracks[0].cols(tip_start_from))
pipette.plunger_positions['drop_tip'] = -6

# container for the drugs
src_container = labware.load(source_type, source_slot)
# where water, op50, and dmso are in the source container
        depth=15.00,  # depth (mm) of each well on the plate
        volume=200)  # as per manufacturer's website

    print('Wells in 96WP PCR Thermo Fisher:')
    for well in custom_plate.wells():
        print(well)

############################ define labware
# i.e. translate user-friendly parameters into opentrons language

# pipette and tiprack

# multi channel
if drugs_pipette_type == 'p10-Single':  # this is mostly a check
    tiprackdrugs = [
        labware.load(tiprack_drugs_type, tiprack_slot)
        for tiprack_slot in tiprack_drugs_slots
    ]
    pipette_drugs = instruments.P10_Single(mount=drugs_pipette_mount,
                                           tip_racks=tiprackdrugs)
pipette_drugs.start_at_tip(tiprackdrugs[0].well(tiprack_drugs_startfrom))
pipette_drugs.plunger_positions['drop_tip'] = -6

# single channel
if solvent_pipette_type == 'p50-Single':  # this is mostly a type check
    tipracksolvent = [
        labware.load(tiprack_solvent_type, tiprack_slot)
        for tiprack_slot in tiprack_solvent_slots
    ]
    pipette_solvent = instruments.P50_Single(mount=solvent_pipette_mount,
                                             tip_racks=tipracksolvent)
        depth=15.00,  # depth (mm) of each well on the plate
        volume=200)  # as per manufacturer's website

    print('Wells in 96WP PCR Thermo Fisher:')
    for well in custom_plate.wells():
        print(well)

############################ define labware
# i.e. translate user-friendly parameters into opentrons language

# pipette and tiprack

# multi channel
if multi_pipette_type == 'p10-Multi':  # this is mostly a check as we don't own other multichannel pipettes (and to not have swapped single/multi)
    tiprackmulti = [
        labware.load(tiprack_multi_type, tiprack_slot)
        for tiprack_slot in tiprack_multi_slots
    ]
    pipette_multi = instruments.P10_Multi(mount=multi_pipette_mount,
                                          tip_racks=tiprackmulti)
pipette_multi.start_at_tip(tiprackmulti[0].well(tiprack_multi_startfrom))
pipette_multi.plunger_positions['drop_tip'] = -6

# single channel
if single_pipette_type == 'p50-Single':  # this is mostly a type check
    tipracksingle = [
        labware.load(tiprack_single_type, tiprack_slot)
        for tiprack_slot in tiprack_single_slots
    ]
    pipette_single = instruments.P50_Single(mount=single_pipette_mount,
                                            tip_racks=tipracksingle)
コード例 #28
0
                try:
                    self.rack[i][j + n - 1]
                except IndexError:
                    continue
                tips = self.rack[i][j:j + n]
                if any(x is None for x in tips):
                    continue
                else:
                    for t in range(n):
                        self.rack[i][j + t] = None
                    tip_name = tips[-1]
                    print("\nTaking {} tips".format(n))
                    return self.tiprack.wells(tip_name)


tube_rack_2ml = labware.load('storeylab-2ml-coldrack1', '7')
tube_rack_15ml = labware.load('opentrons-tuberack-15_50ml', '10')
small_reagent_plate = labware.load('PCR-strip-tall', '8')
pcr_plate1 = labware.load('96-flat', '4')
pcr_plate2 = labware.load('96-flat', '5')
pcr_plate3 = labware.load('96-flat', '6')
tiprack1 = labware.load('opentrons-tiprack-300ul', '11')
tiprack2 = labware.load('opentrons-tiprack-300ul', '9')

tiprack2_tracker = TipTracker(tiprack=tiprack2)

TOTAL_VOL = 20.0
CDNA_VOL = 5.0

WATER_PER_WELL = 12.115 - CDNA_VOL
assert WATER_PER_WELL >= 0, "Water per well is less than 0"
        5.50,  # diameter (mm) of each well on the plate (here width at top!!)
        depth=15.00,  # depth (mm) of each well on the plate
        volume=200)  # as per manufacturer's website

    print('Wells in 96WP PCR Thermo Fisher:')
    for well in custom_plate.wells():
        print(well)

############################ define labware
# i.e. translate user-friendly parameters into opentrons language

# pipette and tiprack

# multi channel
if multi_pipette_type == 'p10-Multi':  # this is mostly a check as we don't own other multichannel pipettes (and to not have swapped single/multi)
    tiprackdrugs = [labware.load(tiprackdrugs_type, slot) \
                      for slot in tiprackdrugs_slots]
    pipette_multi = instruments.P10_Multi(mount=multi_pipette_mount,
                                          tip_racks=tiprackdrugs)
pipette_multi.start_at_tip(tiprackdrugs[0].well(tiprackdrugs_startfrom))
pipette_multi.plunger_positions['drop_tip'] = -6
# faster dispense
pipette_multi.set_speed(dispense=pipette_multi.speeds['dispense'] * 4)
# I only associated the "drugs" tiprack to the pipette as this is the one I want to handle authomatically
# I'll manually handle pipetting water

# container for water
water_src_container = labware.load(H2O_source_type, H2O_source_slot)
water_src_well = water_src_container.wells(H2O_source_well)
# tiprack for water
tiprackwater = labware.load(tiprackH2O_type, tiprackH2O_slot)
コード例 #30
0
custom_plate_name = 'tulio96'
if custom_plate_name not in labware.list():
    labware.create(custom_plate_name,
                   grid=(12, 8),
                   spacing=(8.3, 8.3),
                   diameter=8.3,
                   depth=42,
                   volume=2000)

# name of you labware
# number of (columns, rows)
# distances (mm) between each (column, row)
# diameter (mm) of each well
# depth (mm) of each well
# volume (μL) of each well

tiprack = labware.load('opentrons-tiprack-300ul', slot='1')
pool_source = labware.load('tulio96', '7')
pool_slice = labware.load('tulio96', '10')
trash = labware.load('trash-box', '12', share=True)
pipette = instruments.P50_Single(mount='right',
                                 tip_racks=[tiprack],
                                 trash_container=trash)

for pool in pool_dict.keys():
    for single_slice in slice_dict[pool]:
        pipette.pick_up_tip()
        pipette.transfer(200, pool_source.wells(single_slice),
                         pool_slice.wells(pool_dict[pool][0]))
        #pipette.drop_tip(trash)