Skip to content

Commit

Permalink
mostly for pt rtp
Browse files Browse the repository at this point in the history
  • Loading branch information
y3rsh committed Aug 29, 2024
1 parent 2716778 commit 4b1d5ff
Show file tree
Hide file tree
Showing 4 changed files with 613 additions and 11 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
from opentrons import protocol_api
from opentrons.protocol_api import COLUMN, ALL, SINGLE, ROW

requirements = {"robotType": "Flex", "apiLevel": "2.20"}


def run(protocol: protocol_api.ProtocolContext):
pipette = protocol.load_instrument(instrument_name="flex_96channel_1000")
trash = protocol.load_trash_bin("A1")
t1 = protocol.load_labware(
load_name="opentrons_flex_96_tiprack_1000ul",
label="Partial Tip Rack",
location="A2",
)
t2 = protocol.load_labware(
load_name="opentrons_flex_96_tiprack_1000ul",
label="Partial Tip Rack",
location="B2",
)
t3 = protocol.load_labware(
load_name="opentrons_flex_96_tiprack_1000ul",
label="Partial Tip Rack",
location="C2",
)
t4 = protocol.load_labware(
load_name="opentrons_flex_96_tiprack_1000ul",
label="Partial Tip Rack",
location="D2",
)

### Prep tipracks in B2 and D2 by removing 3 columns of tips
pipette.configure_nozzle_layout(
style=COLUMN,
start="A1",
tip_racks=[t2],
)
for i in range(3):
pipette.pick_up_tip()
pipette.drop_tip()

pipette.configure_nozzle_layout(
style=COLUMN,
start="A1",
tip_racks=[t4],
)
for i in range(3):
pipette.pick_up_tip()
pipette.drop_tip()

### Relocate tipracks to A3 and C3 for single tip extraction at furthest extant
protocol.move_labware(t2, "A3", True)
protocol.move_labware(t4, "C3", True)

pipette.configure_nozzle_layout(
style=SINGLE,
start="A1",
tip_racks=[t2, t4],
)

for i in range(72 * 2):
pipette.pick_up_tip()
pipette.drop_tip()

### Move tipracks out of the way to B1 and C1
protocol.move_labware(t2, "B1", True)
protocol.move_labware(t4, "C1", True)

### Prepare tiprack in A2 by removing 3 columns of tips
pipette.configure_nozzle_layout(
style=COLUMN,
start="A1",
tip_racks=[t1],
)
for i in range(3):
pipette.pick_up_tip()
pipette.drop_tip()

### Prepare tiprack in C2 by removing bottom 3 rows of tips, plus 15 tips (3 leftmost remaining columns)
### This results in a tiprack of the following layout (matching the requirements for our bottom right extents):
# X X X X X X X X X - - -
# X X X X X X X X X - - -
# X X X X X X X X X - - -
# X X X X X X X X X - - -
# X X X X X X X X X - - -
# - - - - - - - - - - - -
# - - - - - - - - - - - -
# - - - - - - - - - - - -
pipette.configure_nozzle_layout(
style=ROW,
start="A1",
tip_racks=[t3],
)
for i in range(3):
pipette.pick_up_tip()
pipette.drop_tip()

pipette.configure_nozzle_layout(
style=SINGLE,
start="A1",
tip_racks=[t3],
)
for i in range(15):
pipette.pick_up_tip()
pipette.drop_tip()

### Relocate tipracks to B3 and D3 on the deck
protocol.move_labware(t1, "B3", True)
protocol.move_labware(t3, "D3", True)

pipette.configure_nozzle_layout(
style=SINGLE,
start="A1",
tip_racks=[t1, t3],
)

for i in range(72 + 45):
pipette.pick_up_tip()
pipette.drop_tip()
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ class PartialTipConfig:

ninety_six_single_top_left = PartialTipConfig(
key="ninety_six_single_top_left",
description="96 single top left",
description="96 single picking up top left of tiprack",
startingTip="A1",
startingNozzle="H12",
apiTipConfig=SINGLE,
Expand All @@ -38,7 +38,7 @@ class PartialTipConfig:

ninety_six_single_top_right = PartialTipConfig(
key="ninety_six_single_top_right",
description="96 single top right",
description="96 single picking up top right of tiprack",
startingTip="A12",
startingNozzle="H1",
apiTipConfig=SINGLE,
Expand All @@ -48,7 +48,7 @@ class PartialTipConfig:

ninety_six_single_bottom_left = PartialTipConfig(
key="ninety_six_single_bottom_left",
description="96 single bottom left",
description="96 single picking up bottom left of tiprack",
startingTip="H1",
startingNozzle="A12",
apiTipConfig=SINGLE,
Expand All @@ -58,7 +58,7 @@ class PartialTipConfig:

ninety_six_single_bottom_right = PartialTipConfig(
key="ninety_six_single_bottom_right",
description="96 single bottom right",
description="96 single picking up bottom right of tiprack",
startingTip="H12",
startingNozzle="A1",
apiTipConfig=SINGLE,
Expand All @@ -70,7 +70,7 @@ class PartialTipConfig:

ninety_six_column_left = PartialTipConfig(
key="ninety_six_column_left",
description="96 column left",
description="96 column picking up left column of tiprack",
startingTip="Column 1",
startingNozzle="Column 12",
apiTipConfig=COLUMN,
Expand All @@ -81,7 +81,7 @@ class PartialTipConfig:

ninety_six_column_right = PartialTipConfig(
key="ninety_six_column_right",
description="96 column right",
description="96 column picking up right column of tiprack",
startingTip="Row 12",
startingNozzle="Row 1",
apiTipConfig=COLUMN,
Expand All @@ -93,7 +93,7 @@ class PartialTipConfig:

ninety_six_row_top = PartialTipConfig(
key="ninety_six_row_top",
description="96 row top",
description="96 row picking up top row of tiprack",
startingTip="Row A",
startingNozzle="Row H",
apiTipConfig=ROW,
Expand All @@ -103,7 +103,7 @@ class PartialTipConfig:

ninety_six_row_bottom = PartialTipConfig(
key="ninety_six_row_bottom",
description="96 row bottom",
description="96 row picking up bottom row of tiprack",
startingTip="Row H",
startingNozzle="Row A",
apiTipConfig=ROW,
Expand All @@ -112,10 +112,10 @@ class PartialTipConfig:
)

# pipette = protocol.load_instrument(instrument_name="flex_8channel_50", mount="right")

# works for all 8 channel pipettes
eight_single_top = PartialTipConfig(
key="eight_single_top",
description="8 single top",
description="8 channel single picking up from the top of the tiprack",
startingTip="A1",
startingNozzle="H1",
apiTipConfig=SINGLE,
Expand All @@ -125,7 +125,7 @@ class PartialTipConfig:

eight_single_bottom = PartialTipConfig(
key="eight_single_bottom",
description="8 single bottom",
description="8 channel single picking up from the bottom of the tiprack",
startingTip="H1",
startingNozzle="A1",
apiTipConfig=SINGLE,
Expand Down
Loading

0 comments on commit 4b1d5ff

Please sign in to comment.