Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0bc358 2 #4835

Open
wants to merge 15 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 62 additions & 0 deletions protocols/0bc358-2/0bc358-2.ot2.apiv2.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
from opentrons import protocol_api

metadata = {
'apiLevel': '2.13',
'protocolName': '#2 Making Calibrator levels in 20 ml Scintillation vials',
'description': '''This protocol creates calibrators from Working Stocks by performing a dilutional series in methanol.''',
'author': 'Parrish Payne <[email protected]>'
}

# Calibrator 10 (C10)=WS1 in A1
# C9=2000ul from C10+2000ul MeOH, mix in A2
# C8=2000ul from C9+2000ul MeOH, mix in A3
# C7=2000ul from C8+3000ul MeOH, mix in A4 (email Aug 10)
# C6=2000ul from C7+2000ul MeOH, mix in B1
# C5=2000ul from C6+2000ul MeOH, mix in B2
# C4=2000ul from C5+3000ul MeOH, mix in B3 (email Aug 10)
# C3=2000ul from C4+2000ul MeOH, mix in C1
# C2=2000ul from C3+2000ul MeOH, mix in C2
# C0=2000ul pure MeOH in C3
# pure MeOH used as source vial in C4
# Repeat for WS2, WS3 and WS4


def run(protocol: protocol_api.ProtocolContext):

tips = [protocol.load_labware('opentrons_96_filtertiprack_1000ul', 1)]
scint_vial = protocol.load_labware('chemglass_11x20mL', 2)

p1000 = protocol.load_instrument(
'p1000_single_gen2', 'right', tip_racks=tips)

def slow_withdraw(pip, well, z=0, delay_seconds=0):
pip.default_speed /= 10
if delay_seconds > 0:
protocol.delay(seconds=delay_seconds)
pip.move_to(well.top(z))
pip.default_speed *= 10

def transfer(pip, vol, source, destination):
pip.aspirate(vol, source)
slow_withdraw(pip, source)
pip.dispense(vol, destination)
slow_withdraw(pip, destination)

meoh = scint_vial.wells_by_name()['C4']
dilution_sources = [well for row in scint_vial.rows() for well in row][:8]
dilution_destinations = [well for row in scint_vial.rows() for well in row][1:9]
meoh_destinations = [well for row in scint_vial.rows() for well in row][1:10]
vols_meoh = [2000, 2000, 3000, 2000, 2000, 3000, 2000, 2000, 2000]

# pre-addition of meoh
p1000.pick_up_tip()
for d in meoh_destinations:
p1000.transfer(vols_meoh, meoh, d, new_tip='never', air_gap=20)
p1000.drop_tip()

dil_transfer_vol = 2000
for s, d in zip(dilution_sources, dilution_destinations):
p1000.pick_up_tip()
p1000.transfer(dil_transfer_vol, s, d.top(-5), new_tip='never', air_gap=20)
p1000.mix(5, 500, d.bottom(5))
p1000.drop_tip()
55 changes: 55 additions & 0 deletions protocols/0bc358-2/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Protocol Title (#2 Making Calibrator levels in 20 ml Scintillation vials)

### Author
[Opentrons](https://opentrons.com/)

## Categories
* Sample Prep
* Standard Curve

## Description
This section of the README (especially the first paragraph) should grip a prospective user with the overarching purpose/flow of the protocol, but should not include fine details of the protocol steps themselves.

### Labware
* [OT-2 Filter Tips, 1000µL (999-00082)](https://shop.opentrons.com/opentrons-1000ul-filter-tips-1000-racks/)
* [Chemglass 11-Position Block for 28 mm 20mL Scintillation Flat Bottom Vials](https://chemglass.com/blocks-for-centrifugal-vacuum-evaporators-optichem?sku=OP-6600-11)

### Pipettes
* [P1000 GEN2 Single Channel Pipette](https://shop.opentrons.com/single-channel-electronic-pipette-p20/)

### Reagents
* [Methanol](link to product not available)

---

### Deck Setup
* If the deck layout of a particular protocol is more or less static, it is often helpful to attach a preview of the deck layout, most descriptively generated with Labware Creator. Example:
![deck layout](https://opentrons-protocol-library-website.s3.amazonaws.com/custom-README-images/bc-rnadvance-viral/Screen+Shot+2021-02-23+at+2.47.23+PM.png)

### Reagent Setup
* This section can contain finer detail and images describing reagent volumes and positioning in their respective labware. Examples:
* Reservoir 1: slot 5
![reservoir 1](https://opentrons-protocol-library-website.s3.amazonaws.com/custom-README-images/1ccd23/res1_v2.png)


---

### Protocol Steps
1. Transfer diluent volume of MeOH into empty scintillation vials in A2 - C3.
2. Perform dilutional series starting with Working Stock in A1 through C2 creating specified calibrator levels.


### Process
1. Input your protocol parameters above.
2. Download your protocol and unzip if needed.
3. Upload your custom labware to the [OT App](https://opentrons.com/ot-app) by navigating to `More` > `Custom Labware` > `Add Labware`, and selecting your labware files (.json extensions) if needed.
4. Upload your protocol file (.py extension) to the [OT App](https://opentrons.com/ot-app) in the `Protocol` tab.
5. Set up your deck according to the deck map.
6. Calibrate your labware, tiprack and pipette using the OT App. For calibration tips, check out our [support articles](https://support.opentrons.com/en/collections/1559720-guide-for-getting-started-with-the-ot-2).
7. Hit 'Run'.

### Additional Notes
If you have any questions about this protocol, please contact the Protocol Development Team by filling out the [Troubleshooting Survey](https://protocol-troubleshooting.paperform.co/).

###### Internal
0bc358-2
Binary file added protocols/0bc358-2/deck.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
205 changes: 205 additions & 0 deletions protocols/0bc358-2/labware/Chemglass 11x20mL Vial.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,205 @@
{
"wells": {
"A1": {
"totalLiquidVolume": 20000,
"diameter": 26,
"shape": "circular",
"depth": 56.2,
"x": 17.6,
"y": 70.9,
"z": 4.2
},
"C1": {
"totalLiquidVolume": 20000,
"diameter": 26,
"shape": "circular",
"depth": 56.2,
"x": 17.6,
"y": 15.4,
"z": 4.2
},
"A2": {
"totalLiquidVolume": 20000,
"diameter": 26,
"shape": "circular",
"depth": 56.2,
"x": 48.1,
"y": 70.9,
"z": 4.2
},
"C2": {
"totalLiquidVolume": 20000,
"diameter": 26,
"shape": "circular",
"depth": 56.2,
"x": 48.1,
"y": 15.4,
"z": 4.2
},
"A3": {
"totalLiquidVolume": 20000,
"diameter": 26,
"shape": "circular",
"depth": 56.2,
"x": 78.6,
"y": 70.9,
"z": 4.2
},
"C3": {
"totalLiquidVolume": 20000,
"diameter": 26,
"shape": "circular",
"depth": 56.2,
"x": 78.6,
"y": 15.4,
"z": 4.2
},
"A4": {
"totalLiquidVolume": 20000,
"diameter": 26,
"shape": "circular",
"depth": 56.2,
"x": 109.1,
"y": 70.9,
"z": 4.2
},
"C4": {
"totalLiquidVolume": 20000,
"diameter": 26,
"shape": "circular",
"depth": 56.2,
"x": 109.1,
"y": 15.4,
"z": 4.2
},
"B1": {
"totalLiquidVolume": 20000,
"diameter": 26,
"shape": "circular",
"depth": 56.2,
"x": 33.3,
"y": 43,
"z": 4.2
},
"B2": {
"totalLiquidVolume": 20000,
"diameter": 26,
"shape": "circular",
"depth": 56.2,
"x": 63.8,
"y": 43,
"z": 4.2
},
"B3": {
"totalLiquidVolume": 20000,
"diameter": 26,
"shape": "circular",
"depth": 56.2,
"x": 94.3,
"y": 43,
"z": 4.2
}
},
"groups": [
{
"metadata": {
"displayName": "20 mL Scintillation Vial",
"displayCategory": "tubeRack",
"wellBottomShape": "flat"
},
"brand": {
"brand": " ",
"brandId": [
""
],
"links": [
""
]
},
"wells": [
"A1",
"C1",
"A2",
"C2",
"A3",
"C3",
"A4",
"C4"
]
},
{
"metadata": {
"displayName": "20 mL Scintillation Vial",
"displayCategory": "tubeRack",
"wellBottomShape": "flat"
},
"brand": {
"brand": "",
"brandId": [
""
],
"links": [
""
]
},
"wells": [
"B1",
"B2",
"B3"
]
}
],
"brand": {
"brand": "chemglass",
"brandId": [],
"links": [
"https://chemglass.com/blocks-for-centrifugal-vacuum-evaporators-optichem?sku=OP-6600-11"
]
},
"metadata": {
"displayName": "Chemglass 11x20mL Vial",
"displayCategory": "tubeRack",
"displayVolumeUnits": "mL",
"tags": []
},
"dimensions": {
"xDimension": 127.05,
"yDimension": 85.86,
"zDimension": 60.4
},
"parameters": {
"format": "irregular",
"isTiprack": false,
"isMagneticModuleCompatible": false,
"loadName": "chemglass_11x20ml"
},
"ordering": [
[
"A1",
"B1",
"C1"
],
[
"A2",
"B2",
"C2"
],
[
"A3",
"B3",
"C3"
],
[
"A4",
"C4"
]
],
"namespace": "custom",
"version": 1,
"schemaVersion": 2,
"cornerOffsetFromSlot": {
"x": 0,
"y": 0,
"z": 0
}
}
Binary file added protocols/0bc358-2/liquids.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
64 changes: 64 additions & 0 deletions protocols/0bc358-3/#3 Quality Control Levels.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
from opentrons import protocol_api

metadata = {
'apiLevel': '2.13',
'protocolName': '#3 Making Quality Control Levels in 20 ml Scintillation Vials',
'description': '''This protocol creates quality controls from Working Stocks by performing a dilutional series in methanol.''',
'author': '[email protected]'
}

# WS1 in A1
# Quality control 8 (QC8)= 3000ul WS1 + 1000 MeOH ul MeOH in A2
# QC7=1500 ul QC8 + 1500 MeOH in A3
# QC6=1200 ul QC8 + 3300 MeOH in A4
# QC5=1500 ul QC6 + 2500 MeOH in B1
# QC4=2000 ul QC5 + 2000 MeOH in B2
# QC3=2000 ul QC4 + 3000 MeOH in B3
# QC2=2000 ul QC3 + 3000 MeOH in C1
# QC1=2000 ul QC2 + 2000 MeOH in C2
# # pure MeOH in C4 used as source vial
# Repeat for WS2, WS3 and WS4


def run(protocol: protocol_api.ProtocolContext):

tips = [protocol.load_labware('opentrons_96_filtertiprack_1000ul', 1)]
scint_vial = protocol.load_labware('chemglass_11x20mL', 2)

p1000 = protocol.load_instrument(
'p1000_single_gen2', 'right', tip_racks=tips)

def slow_withdraw(pip, well, z=0, delay_seconds=2.0):
pip.default_speed /= 10
if delay_seconds > 0:
protocol.delay(seconds=delay_seconds)
pip.move_to(well.top(z))
pip.default_speed *= 10

def transfer(pip, vol, source, destination):
pip.aspirate(vol, source)
slow_withdraw(pip, source)
pip.dispense(vol, destination)
slow_withdraw(pip, destination)

meoh = scint_vial.wells_by_name()['C4']
dilution_sources = [
[well for row in scint_vial.rows() for well in row][0]] + [
[well for row in scint_vial.rows() for well in row][1]]*2 + [well for row in scint_vial.rows() for well in row][3:8]
dilution_destinations = [well for row in scint_vial.rows() for well in row][1:9]
meoh_destinations = [well for row in scint_vial.rows() for well in row][1:9]
vols_meoh = [1000, 1500, 3300, 2500, 2000, 3000, 3000, 2000]
vols_dilution = [3000, 1500, 1200, 1500, 2000, 2000, 2000, 2000]

# pre-addition of meoh
p1000.pick_up_tip()
for vol, d in zip(vols_meoh, meoh_destinations):
p1000.transfer(vol, meoh, d, new_tip='never', air_gap=20)
p1000.drop_tip()

for vol, s, d in zip(
vols_dilution, dilution_sources, dilution_destinations):
p1000.pick_up_tip()
p1000.transfer(vol, s, d.top(-5), new_tip='never', air_gap=20)
p1000.mix(5, 500, d.bottom(5))
p1000.drop_tip()
Loading
Loading