-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathopentrons_spec.py
78 lines (62 loc) · 1.87 KB
/
opentrons_spec.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
from opentrons import containers, instruments, robot
#Set working environment.
trough = containers.load('trough-12row','A1')
p1000rack = containers.load('tiprack-1000ul','A2')
p200rack = containers.load('tiprack-200ul','A3')
plate1 = containers.load('96-flat','B1')
plate2 = containers.load('96-flat','B2')
trash = containers.load('point','B3')
p300_multi = instruments.Pipette(
axis = 'b',
max_volume=300,
trash_container=trash,
tip_racks=[p1000rack], #1000 uL tiprack for the 300uL pipette, as this is the equipment available.
channels=8
)
p200 = instruments.Pipette(
axis = 'b',
max_volume=200,
trash_container=trash,
tip_racks=[p200rack]
)
#Use multi-channel pipette to transfer 200 uL of Solution A from Trough A into wells A1-H1, A2-H2 of Plate 1.
p300_multi.transfer(
200,
trough.wells('A1'),
plate1.wells('A1', to='H2'),
new_tip='never'
)
#Dispose of tips in trash.
p300_multi.drop_tip()
#Update these transfer volumes as necessary.
transfer_volumes = [20,25,30,35,40,45,50,55]
#Use single channel pipette to add 20 - 55 uL (in 5 uL increments) of Trough A1 to Plate 1 wells A1-H1.
p200.transfer(
transfer_volumes,
trough.wells('A1'),
plate1.wells('A1', to='H1'),
new_tip='always' #May not be necessary, but not specified in spec.
)
#Use single channel pipette to add 20 - 55 uL (in 5 uL increments) of Trough A5 to Plate 1 wells A2-H2.
p200.transfer(
transfer_volumes,
trough.wells('A5'),
plate1.wells('A2', to='H2'),
new_tip='always'
)
#Delay 30 minutes.
p300_multi.delay(minutes=30)
#Move all solutions from Plate 1 wells A1-H2 to Plate 2 wells A1-H2.
p300_multi.transfer(
300,
plate1.wells('A1', to='H1'),
plate2.wells('A1', to='H1')
)
p300_multi.transfer(
300,
plate1.wells('A2', to='H2'),
plate2.wells('A2', to='H2')
)
#View robot commands.
for c in robot.commands():
print(c)