Skip to content

Commit

Permalink
Updated
Browse files Browse the repository at this point in the history
  • Loading branch information
Tom Phillips committed Oct 26, 2014
1 parent d452cff commit 976e8eb
Showing 1 changed file with 20 additions and 16 deletions.
36 changes: 20 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,30 +1,34 @@
# pumpy
Python RS–232 interface for Harvard Pump 11, Pump 11 Plus, PHD2000 syringe pumps and Mighty Mini piston pump. Written by [Thomas W. Phillips](https://github.com/tomwphillips) and support for Mighty Mini pump by [Sam Macbeth](https://github.com/sammacbeth), Imperial College London. Uses Python [`logging`](https://docs.python.org/2/library/logging.html) to record all operations.
Python RS–232 interface for Harvard Pump 11, Pump 11 Plus, PHD2000 syringe pumps and Mighty Mini piston pump. Written and maintained by [Thomas W. Phillips](https://github.com/tomwphillips). Support for Mighty Mini pump by [Sam Macbeth](https://github.com/sammacbeth).

## Features
* For Harvard Pump 11, Pump 11 Plus, and PHD2000:
* infuse
* withdraw
* set diameter
* set flow rate
* set target volume
* wait until target volume
* For Mighty Mini:
* set flow rate
* start
* top
* Supports [`logging`](https://ocs.python.org/2/library/logging.html) to record all operations.

## Licence

[Creative Commons Attribution 4.0 International License (CC-BY 4.0)][CC].
[Creative Commons Attribution 4.0 International License (CC-BY 4.0)](http://creativecommons.org/licenses/by/4.0/deed.en_US)

## Requirements

Requires [PySerial][]. Developed/tested on Mac OS 10.9.1 and Windows 7 with Python 2.7.3 ([Enthought Canopy][] 7.3.1 64-bit) and PySerial 2.6.
* Python 2.7.3 or higher
* [PySerial](http://pyserial.sourceforge.net) 2.6 or higher

## Usage

Three possibilites:

1. Command line interface. Run `python pumpy.py -h` for options.
2. Copy pumpy into your working directory and then use `import pumpy.pumpy` in your script to call the functions. See `example.py`. I suggest you use `git submodule` if working in a git repository.
2. Clone pumpy into your working directory and then use `import pumpy.pumpy` in your script to call the functions. See `example.py`. I suggest you use `git submodule` if working in a git repository.
3. Use the included LabVIEW VI, which calls ``pumpy.py``.

## Issues

1. Harvard PHD2000 supports higher precision when setting flow rates/diameters than the Pump 11. At present everything is truncated for compatibility with the Pump 11.
2. PHD2000 requires "withdraw, stop, infuse" rather than "withdraw, infuse" otherwise it doesn't respond.
3. PHD2000 will only take notice of target volumes when it has been put into volume mode using the keypad.
4. No unit testing, so changes to code could break everything. I do plan to implement this.


[PySerial]: http://pyserial.sourceforge.net
[Enthought Canopy]: https://www.enthought.com/products/canopy/
[CC]: http://creativecommons.org/licenses/by/4.0/deed.en_US
4. No proper unit tests. In theory, big changes could break everything. However, I'm not exactly sure how I would go about implementing unit tests for pumpy. In general, I run ``example.py`` and the command line interface to check I don't break stuff. Suggestions for tests are welcome.

0 comments on commit 976e8eb

Please sign in to comment.