🔬🧪 Science Jubilee ⚡⚙️
Controlling Jubilees for Science!
Use an open-source toolchanger to do science
This repository hosts files to build and control a Jubilee for scientific applications. The core of the software is a Python interface for Jubilee to navigate labware installed in the machine. We currently provide assembly instructions, control software, and examples for various tools including OT-2 pipettes, syringes, and cameras. While these tools might cater exactly to your planned use case, they most likely will not! We share these files as a starting point rather than an endpoint: we also provide instructions for developing new tools and associated software for controlling them. We hope you will build new tools for your application and contribute them back to the community for others to use and extend 🛠️
Check out the Documentation to get started!
Overview
Hardware
This repository is designed to be used with the Jubilee platform, outfitted with tools for laboratory automation. Jubilee an open-source & extensible multi-tool motion platform—if that doesn't mean much to you, you can think of it as a 3D printer that can change its tools. You can read about Jubilee more generally at the project page.
Software
The software here is intended to control Jubilee from Python scripts or Jupyter notebooks to design and run experiments. The folders are organized as follows:
calibration/ # notebooks to support machine & tool setup/calibration
tool_library/ # design files, assembly instructions, & configuration info for all tools & plates
src/
└── science_jubilee/
├── Machine.py # jubilee machine driver
├── tools/
│ ├── configs/ # all tool configs are here
│ ├── Tool.py # base tool class
│ └── ... # all tool modules are here
├── decks/
│ ├── configs/ # all deck configs are here
│ ├── Deck.py # base deck class
│ └── ... # all deck modules are here
└── labware/
├── labware_definitions/ # all labware definitions are here
└── Labware.py # base labware class
Labware and Wetware
The basic functionality supported by this software is intended to be used with a custom deck which accommodates up to 6 standard sized microplates.
Using science_jubilee
You can import and use science_jubilee modules by importing the modules you need at the top of your python file/notebook. For example, if we want to pipette using a lab automation deck, we might write:
from science_jubilee.Machine import Machine # import machine driver
from science_jubilee.decks.LabAutomationDeck import LabAutomationDeck # import lab automation deck module
from science_jubilee.tools.Pipette import Pipette # import pipette module
... # you can import other decks/tools here, or make your own!
We can then make use of these modules in our code:
m = Machine() # connect to your jubilee
deck = m.load_deck(deck_config_name) # setup your deck
tip_rack = deck.load_labware(opentrons_96_tiprack_300ul, 0) # install an opentrons tip rack in slot 0 of the deck
pipette = Pipette(<index>, <name>, <tip_rack>, <config_file>) # instantiate your pipette tool
m.load_tool(pipette) # configure the pipette for use on the machine
...
Note
This project has been set up using PyScaffold 4.5. For details and usage information on PyScaffold see https://pyscaffold.org/.
Metadata
Release files for science-jubilee 0.3.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| science_jubilee-0.3.2.tar.gz | 101.8 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| science_jubilee-0.3.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 205.0 kB
Release files / science_jubilee-0.3.2.tar.gz
| Download URL | science_jubilee-0.3.2.tar.gz |
|---|---|
| Size | 101.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
79f096eb683c921975c3a6b988c7a80a0cb2fce86a5c93aea0975912df802a41
|
|
BLAKE2b-256 checksum How to use checksums |
6cda3cedd9b38f8ff51f5e6488bd0167570d24bb92cda36b84e84092a05bb062
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.0 CPython/3.10.12
|
Release files / science_jubilee-0.3.2-py3-none-any.whl
| Download URL | science_jubilee-0.3.2-py3-none-any.whl |
|---|---|
| Size | 103.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
aa0d12cd2f7ed1b69b483bc613d9c7b0d36379783064e500ab9150a7468cb731
|
|
BLAKE2b-256 checksum How to use checksums |
3a9fc29c572bdc3afe3ae3b33d5dc116e52cf5b9c3c2f0ad3f9394d366a84bea
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.0 CPython/3.10.12
|
Security for science-jubilee 0.3.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.