Giter Club home page Giter Club logo

chemios's Introduction

Chemios Framework ReadMe Banner

CircleCI Documentation Status

Contents

πŸ‘¨πŸΎβ€πŸ”¬ Why chemios?

The Problem

Laboratories have a lot of equipmentβ€”pumps, spectrometers, incubators, etc. One laboratory's equipment is usually worth millions of dollars.

Despite their price tag, these devices rarely have simple software interfaces. So, monitoring them remotely or integrating them into automated experiments is difficult.

We looked at the existing solutions, and we were not satisfied. Tetrascience is a paid monitoring platform that is unaffordable for most labs. Labview has been used to automate lab equipment (see Epps et al., Reizman et al., or Dragone et al.). However, LabView licenses cost $5000 annually. ThermoFisher Cloud is the most promising solution, but it only works with a limited number of Thermofisher products.

The Solution

The Chemios Framework is a simple, open-source (i.e. FREE) software package for laboratory automation and monitoring. It is easy-to-use and extensible. It currently works with pumps, spectrometers and temperature controllers. And, the list of equipment will continue to grow (see Compatible Equipment) through an open source community.

The framework is written in python (the unoffical language of science) and actively maintained. We are looking for which equipment to auomtate next; please vote for what equipment you'd like to see with what you would like to see!

πŸ› οΈ Installation

Follow the steps below to design and run your first experiment in minutes.

  1. Install python (version 3 or above) if you haven't already. If you are using Windows, it is recommended to install python in the cygwin terminal.
  2. Download this repository (via the green button above) or clone it:
    $ git clone https://github.com/Chemios/chemios.git
  3. Enter into the root of the repository directory and run:
    pip install -e .;pip install -r requirements.txt

πŸ‘ Examples

Here is a how you'd use chemios to run a pump in an automated fashion.

from chemios.pumps import Chemyx
from time import sleep
import serial

#Set up serial port for communciation with pump over USB
ser = serial.Serial(port='ttyUSB0', timeout=1, baudrate=9600)

#Connect to a Harvard Apparatus PhD Ultra
C = Chemyx(model='Phd-Ultra', ser=ser, 
           syringe_manufacturer='Hamilton', syringe_volume=10)

#Set the flowrate to infuse at 100 microliters per minute
rate = {'value': 100, 'units': 'UM'}                   
C.set_rate(rate=rate, direction = 'INF')

#Run the pump for 5 seconds
C.run()
sleep(5)

#Stop the pump
C.stop()

πŸ“‹ Documentation

You can find documentation for the chemios framework here. More examples will be added soon.

βš™οΈ Compatible Equipment

  • Chemios currently works with the following types of devices:

    • Syringe Pumps: Harvard Apparatus, Chemyx, and New-Era
    • Spectrometers: Ocean Optics
    • Temperature Controllers: Omega CN 9300 Series
  • Please vote for what equipment you'd like to see with what you would like to see!

  • Roadmap:

    • Finish unit testing syringe pumps (May 2018)
    • Add create-device script for easily creating a device (May 2018)
    • Publish package on PyPI (June 2018)
    • Create experiments module for automating (June 2018)
    • More to come based on your input.

🎁 Contributing

We ❀️ contributors! The Chemios Framework came out of a senior design project at NC State and is now maintained by Kobi Felton @marcosfelt.

We are looking in particular for people to extend the framework to work with more types of laboratory equipment. Feel free to email Kobi if you're interested. If you already have some changes, please submit a pull request.

chemios's People

Contributors

marcosfelt avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.