Skip to main content

A hardware agnostic platform for liquid handling

Project description

PyLabRobot

Docs | Forum | Installation | Getting started

What is PyLabRobot?

PyLabRobot is a hardware agnostic, pure Python library for liquid handling robots.

PyLabRobot provides a layer of general-purpose abstractions over robot functions, with various device drivers for communicating with different kinds of robots. Right now we only have drivers for Hamilton and Opentrons robots, but we will soon have drivers for many more. The two Hamilton drivers are Venus, which is derived from the PyHamilton library, and STAR, which is a low-level firmware interface. The Opentrons driver is based on [Opentrons Python API](https://github.com/rickwierenga/opentrons python-api). We also provide a simulator which plays the role of a device driver but renders commands in a browser-based deck visualization.

Here's a quick example showing how to move 100uL of liquid from well A1 to A2 using firmware on Hamilton STAR (this will work with any operating system!):

from pylabrobot import LiquidHandler
from pylabrobot.liquid_handling.backends import STAR
from pylabrobot.liquid_handling.resources import STARLetDeck

lh = LiquidHandler(backend=STAR(), deck=STARLetDeck())
lh.setup()
lh.load_layout("hamilton-layout.json")

lh.pickup_tips(lh.get_resource("tips")["A1:H8"])
lh.aspirate(lh.get_resource("plate")["A1"], volume=100)
lh.dispense(lh.get_resource("plate")["A2"], volume=100)
lh.return_tips()

To run the same procedure on an Opentrons, switch out the following lines:

- from pylabrobot.liquid_handling.backends import STAR
- from pylabrobot.liquid_handling.resources import STARLetDeck
+ from pylabrobot.liquid_handling.backends import OpentronsBackend
+ from pylabrobot.liquid_handling.resource import OTDeck

- lh = LiquidHandler(backend=STAR(), deck=STARLetDeck())
+ lh = LiquidHandler(backend=OpentronsBackend(), deck=OTDeck())

- lh.load_layout("hamilton-layout.json")
+ lh.load_layout("opentrons-layout.json")

Resources

Documentation

docs.pylabrobot.org

Support

Developed for the Sculpting Evolution Group at the MIT Media Lab

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

PyLabRobot-0.1.1.tar.gz (102.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

PyLabRobot-0.1.1-py3-none-any.whl (128.9 kB view details)

Uploaded Python 3

File details

Details for the file PyLabRobot-0.1.1.tar.gz.

File metadata

  • Download URL: PyLabRobot-0.1.1.tar.gz
  • Upload date:
  • Size: 102.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for PyLabRobot-0.1.1.tar.gz
Algorithm Hash digest
SHA256 c3090e2b338cdcca81a6f5221d8fbbc2193cbf8d00412a59b24590c9a9a447cc
MD5 73708468d223d7940c972bc213c8e4bc
BLAKE2b-256 4e0485827cfb7271097503baeb03f73564af974d7544e319ff6378652cb7611d

See more details on using hashes here.

File details

Details for the file PyLabRobot-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: PyLabRobot-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 128.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for PyLabRobot-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5357845b2a3b3e707287b1647e532544a9d578ea793f179db36354197ab8bcfc
MD5 6fffdc328dfa5c0a61129149512f06d2
BLAKE2b-256 4a15cf00a4bbdbaf9fff8f5321596d8c05d16258520ca9acabb4ba9cfbc7aa97

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page