-
Notifications
You must be signed in to change notification settings - Fork 121
Add new resources to pylabrobot #574
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
Merged
rickwierenga
merged 15 commits into
PyLabRobot:main
from
ericguan04:vwr_96_channel_reservoir
Jun 19, 2025
Merged
Changes from all commits
Commits
Show all changes
15 commits
Select commit
Hold shift + click to select a range
c039b9d
Add new resources to pylabrobot
ericguan04 d9ce6dd
Merge branch 'main' into vwr_96_channel_reservoir
ericguan04 7bb5ef2
Add resource fixes
ericguan04 bd11165
Merge branch 'main' of https://github.com/PyLabRobot/pylabrobot into …
ericguan04 99d5dc4
Merge branch 'vwr_96_channel_reservoir' of https://github.com/ericgua…
ericguan04 fe1bc7d
Fix num_items args
ericguan04 050b58c
add sergi to resource library docs index
rickwierenga c2bb9af
format, type, plr plate naming convention
rickwierenga ff89dd5
Merge branch 'main' of https://github.com/PyLabRobot/pylabrobot into …
ericguan04 335104b
Add vwr deep well, fix plate adapter
ericguan04 e963f9a
correct name VWR_1_troughplate_195000uL_Ub
rickwierenga 1756d81
correct size for well of VWR_1_troughplate_195000uL_Ub
rickwierenga e4da5b1
correct name VWR_96_wellplate_2mL_Vb
rickwierenga dc6026a
docs for VWR_96_wellplate_2mL_Vb
rickwierenga 3ce703a
fix import
rickwierenga File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file added
BIN
+49.7 KB
docs/resources/library/img/sergi/SergiLabSupplies_96_MagneticRack_250ul_Vb.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,9 @@ | ||
| # Sergi Lab Supplies | ||
|
|
||
| Company page: [Sergi Lab Supplies](https://sergilabsupplies.com/?srsltid=AfmBOoqk2e3QkpWxvWEtSXS4ySJVoly7hvdiji_ehH5-s6tM3gi67SMu) | ||
|
|
||
| ## Plate Adaptors | ||
|
|
||
| | Description | Image | PLR definition | | ||
| |--------------------|--------------------|--------------------| | ||
| | 'SergiLabSupplies_96_MagneticRack_250ul_Vb'<br>Part no.: 1047<br>[manufacturer website](https://sergilabsupplies.com/collections/magnetic-racks/products/96-wells-magnetic-rack-for-dna-rna-and-other-molecules-purification)<br>A separator for purifying DNA, RNA or other biomolecules with magnetic beads |  | `SergiLabSupplies_96_MagneticRack_250ul_Vb` | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| from .plate_adapters import SergiLabSupplies_96_MagneticRack_250ul_Vb |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,29 @@ | ||
| """Sergi Lab Supplies plate adapters""" | ||
|
|
||
| from pylabrobot.resources.plate_adapter import PlateAdapter | ||
|
|
||
|
|
||
| def SergiLabSupplies_96_MagneticRack_250ul_Vb(name: str) -> PlateAdapter: | ||
| """ | ||
| Sergi Lab Supplies Magnetic Rack [cat. no. 1047] | ||
| - Holds a 96-well PCR plate for DNA/RNA purification | ||
| - SBS footprint: 127.76 x 85.48 mm | ||
| - Rack height: 22.0 mm | ||
| - Pulls magnetic beads ~1-2 mm above bottom | ||
| """ | ||
|
|
||
| # measurements from technical drawing: | ||
| # https://sergilabsupplies.com/collections/magnetic-racks/products/96-wells-magnetic-rack-for-dna-rna-and-other-molecules-purification | ||
| return PlateAdapter( | ||
| name=name, | ||
| size_x=127.76, # from spec | ||
| size_y=85.48, # from spec | ||
| size_z=22.0, # from spec | ||
| dx=9.88, # measured (127.76 - 108) / 2 = 9.88 | ||
| dy=4.74, # measured (85.48 - 76) / 2 = 4.74 | ||
| dz=7.0, # measured | ||
| adapter_hole_size_x=7.0, # measured | ||
| adapter_hole_size_y=7.0, # measured | ||
| adapter_hole_size_z=16.0, # measured (22.0 - 6) = 16.0 | ||
| model="SergiLabSupplies_96_MagneticRack_250ul_Vb", | ||
| ) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1 +1,2 @@ | ||
| from .plates import VWR_1_troughplate_195000uL_Ub, VWR_96_wellplate_2mL_Vb | ||
| from .troughs import VWRReagentReservoirs25mL |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,76 @@ | ||
| from pylabrobot.resources.plate import Plate | ||
| from pylabrobot.resources.utils import create_ordered_items_2d | ||
| from pylabrobot.resources.well import ( | ||
| CrossSectionType, | ||
| Well, | ||
| WellBottomType, | ||
| ) | ||
|
|
||
|
|
||
| def VWR_1_troughplate_195000uL_Ub(name: str) -> Plate: | ||
| """VWR NA Cat. No. 77575-302""" | ||
| # technical drawing: | ||
| # https://github.com/PyLabRobot/pylabrobot/pull/574#issuecomment-2967988150 | ||
|
|
||
| # product info | ||
| # https://us-prod2.vwr.com/store/product/47763965/vwr-multi-channel-polypropylene-reagent-reservoirs | ||
|
|
||
| return Plate( | ||
| name=name, | ||
| size_x=127.76, # from spec | ||
| size_y=85.48, # from spec | ||
| size_z=31.4, # from spec | ||
| lid=None, | ||
| model=VWR_1_troughplate_195000uL_Ub.__name__, | ||
| ordered_items=create_ordered_items_2d( | ||
| Well, | ||
| size_x=127.76 - (14.38 - 8.9 / 2) * 2, # from spec | ||
| size_y=85.48 - (11.24 - 8.9 / 2) * 2, # from spec | ||
| size_z=26.85, # from spec | ||
| dx=9.93, # 14.38 - (8.9/2) from spec | ||
| dy=6.79, # 11.24 - (8.9/2) from spec | ||
| dz=3.55, # from spec | ||
| material_z_thickness=1, # 31.4 - (26.85 + 3.55) from spec | ||
| item_dx=9.0, # from spec | ||
| item_dy=9.0, # from spec | ||
| num_items_x=1, # from spec | ||
| num_items_y=1, # from spec | ||
| cross_section_type=CrossSectionType.RECTANGLE, | ||
| bottom_type=WellBottomType.U, | ||
| max_volume=195000, # from spec 195 mL | ||
| ), | ||
| ) | ||
|
|
||
|
|
||
| def VWR_96_wellplate_2mL_Vb(name: str) -> Plate: | ||
| """VWR NA Cat. No. 76329-998""" | ||
| # product info | ||
| # https://us-prod2.vwr.com/store/product/26915641/vwr-96-well-deep-well-plates-with-automation-notches | ||
|
|
||
| # no technical drawing available | ||
|
|
||
| return Plate( | ||
| name=name, | ||
| size_x=127.76, # standard | ||
| size_y=85.48, # standard | ||
| size_z=44.0, # measured | ||
| lid=None, | ||
| model=VWR_96_wellplate_2mL_Vb.__name__, | ||
| ordered_items=create_ordered_items_2d( | ||
| Well, | ||
| size_x=10.0, # measured | ||
| size_y=10.0, # measured | ||
| size_z=43.5, # measured | ||
| dx=9.0, # measured | ||
| dy=5.5, # measured | ||
| dz=0.5, # 44.0 - 43.5 = 0.5 | ||
| material_z_thickness=1, # estimate | ||
| item_dx=10.0, # measured | ||
| item_dy=10.0, # measured | ||
| num_items_x=12, # from spec | ||
| num_items_y=8, # from spec | ||
| cross_section_type=CrossSectionType.RECTANGLE, | ||
| bottom_type=WellBottomType.V, | ||
| max_volume=2200, # from spec 2.2 ml | ||
| ), | ||
| ) | ||
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this should be 1, 1
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i thought
num_items_xandnum_items_yrefer to the number of wells in the x and y direction - 12 x 8 wells should get us the 96 wellsThere was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think what Rick was calling attention to is that since it is reservoir, it is essentially a single well plate.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yes
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
changed to
num_items_x=1num_items_y=1There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@rickwierenga just a quick question about num_items_x and num_items_y - the vwr plate does have 96 different wells, so setting num_items_x and num_items_y to 1 won't let me use aspirate96 - see picture below
could you explain a little bit about why it should be represented as a single well plate - im new the wet lab work so apologies if this is a naive question
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
for the plate in the image, it is num_items_x = 12, num_items_y = 8 because they are clearly 8x12 wells.
this seems to be a different plate from the technical drawing above, which has one big well (with 96 drain points)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
got it, i'll double check with @maraxen about this and confirm the plate specifications
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks. it's possible you're talking about two separate plates i think :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, they are two different plates. Eric will add both and hopefully we can merge