Scientific measurement library for instruments, experiments, and live-plotting
Project description
PyMeasure scientific package
PyMeasure makes scientific measurements easy to set up and run. The package contains a repository of instrument classes and a system for running experiment procedures, which provides graphical interfaces for graphing live data and managing queues of experiments. Both parts of the package are independent, and when combined provide all the necessary requirements for advanced measurements with only limited coding.
PyMeasure is currently under active development, so please report any issues you experience to our Issues page.
PyMeasure runs on Python 3.4, 3.5, and 3.6, and is tested with continous-integration on Linux, macOS, and Windows.
Quick start
Check out the documentation for the quick start guide, that covers the installation of Python and PyMeasure.
There are a number of examples in the examples directory that can help you get up and running.
Version 0.6 – released 1/14/19
New VXI11 Adapter for ethernet instruments (@chweiser)
PyQt updates to 5.6.0
Added SRS SG380, Ametek 7270, Agilent 4156, HP 34401A, Advantest R3767CG, and Oxford ITC503 instrustruments (@sylkar, @jmittelstaedt, @vik-s, @troylf, @CasperSchippers)
Updates to Keithley 2000, Agilent 8257D, ESP 300, and Keithley 2400 instruments (@watersjason, @jmittelstaedt, @nup002)
Various minor bug fixes (@thosou)
Version 0.5.1 – released 4/14/18
Minor versions of PyVISA are now properly handled
Documentation improvements (@Laogeodritt and @ederag)
Instruments now have set_process capability (@bilderbuchi)
Plotter now uses threads (@dvspirito)
Display inputs and PlotItem improvements (@Laogeodritt)
Version 0.5 – released 10/18/17
Threads are used by default, eliminating multiprocessing issues with spawn
Enhanced unit tests for threading
Sphinx Doctests are added to the documentation (@bilderbuchi)
Improvements to documentation (@JuMaD)
Version 0.4.6 – released 8/12/17
Reverted multiprocessing start method keyword arguments to fix Unix spawn issues (@ndr37)
Fixes to regressions in Results writing (@feinsteinben)
Fixes to TCP support using cloudpickle (@feinsteinben)
Restructing of unit test framework
Version 0.4.5 – released 7/4/17
Recorder and Scribe now leverage QueueListener (@feinsteinben)
PrologixAdapter and SerialAdapter now handle Serial objects as adapters (@feinsteinben)
Optional TCP support now uses cloudpickle for serialization (@feinsteinben)
Significant PEP8 review and bug fixes (@feinsteinben)
Includes docs in the code distribution (@ghisvail)
Continuous integration support for Python 3.6 (@feinsteinben)
Version 0.4.4 – released 6/4/17
Fix pip install for non-wheel builds
Update to Agilent E4980 (@dvspirito)
Minor fixes for docs, tests, and formatting (@ghisvail, @feinsteinben)
Version 0.4.3 – released 3/30/17
Added Agilent E4980, AMI 430, Agilent 34410A, Thorlabs PM100, and Anritsu MS9710C instruments (@TvBMcMaster, @dvspirito, and @mhdg)
Updates to PyVISA support (@minhhaiphys)
Initial work on resource manager (@dvspirito)
Fixes for Prologix adapter that allow read-write delays (@TvBMcMaster)
Fixes for conda environment on continuous integration
Version 0.4.2 – released 8/23/16
New instructions for installing with Anaconda and conda-forge package (thanks @melund!)
Bug-fixes to the Keithley 2000, SR830, and Agilent E4408B
Re-introduced the Newport ESP300 motion controller
Major update to the Keithely 2400, 2000 and Yokogawa 7651 to achieve a common interface
New command-string processing hooks for Instrument property functions
Updated LakeShore 331 temperature controller with new features
Updates to the Agilent 8257D signal generator for better feature exposure
Version 0.4.1 – released 7/31/16
Critical fix in setup.py for importing instruments (also added to documentation)
Version 0.4 – released 7/29/16
Replaced Instrument add_measurement and add_control with measurement and control functions
Added validators to allow Instrument.control to match restricted ranges
Added mapping to Instrument.control to allow more flexible inputs
Conda is now used to set up the Python environment
macOS testing in continuous integration
Major updates to the documentation
Version 0.3 – released 4/8/16
Added IPython (Jupyter) notebook support with significant features
Updated set of example scripts and notebooks
New PyMeasure logo released
Removed support for Python <3.4
Changed multiprocessing to use spawn for compatibility
Significant work on the documentation
Added initial tests for non-instrument code
Continuous integration setup for Linux and Windows
Version 0.2 – released 12/16/15
Python 3 compatibility, removed support for Python 2
Considerable renaming for better PEP8 compliance
Added MIT License
Major restructuring of the package to break it into smaller modules
Major rewrite of display functionality, introducing new Qt objects for easy extensions
Major rewrite of procedure execution, now using a Worker process which takes advantage of multi-core CPUs
Addition of a number of examples
New methods for listening to Procedures, introducing ZMQ for TCP connectivity
Updates to Keithley2400 and VISAAdapter
Version 0.1.6 – released 4/19/15
Renamed the package to PyMeasure from Automate to be more descriptive about its purpose
Addition of VectorParameter to allow vectors to be input for Procedures
Minor fixes for the Results and Danfysik8500
Version 0.1.5 – release 10/22/14
New Manager class for handling Procedures in a queue fashion
New Browser that works in tandem with the Manager to display the queue
Bug fixes for Results loading
Version 0.1.4 – released 8/2/14
Integrated Results class into display and file writing
Bug fixes for Listener classes
Bug fixes for SR830
Version 0.1.3 – released 7/20/14
Replaced logging system with Python logging package
Added data management (Results) and bug fixes for Procedures and Parameters
Added pandas v0.14 to requirements for data management
Added data listeners, Qt4 and PyQtGraph helpers
Version 0.1.2 – released 7/18/14
Bug fixes to LakeShore 425
Added new Procedure and Parameter classes for generic experiments
Added version number in package
Version 0.1.1 – released 7/16/14
Bug fixes to PrologixAdapter, VISAAdapter, Agilent 8722ES, Agilent 8257D, Stanford SR830, Danfysik8500
Added Tektronix TDS 2000 with basic functionality
Fixed Danfysik communication to handle errors properly
Version 0.1.0 – released 7/15/14
Initial release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file PyMeasure-0.6.0.tar.gz
.
File metadata
- Download URL: PyMeasure-0.6.0.tar.gz
- Upload date:
- Size: 483.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.6.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2e2c7b60d5af1967a89b16af944ee1f985912fa17b91ee79cf1f1b3af5644de1 |
|
MD5 | 73e525fa677f19e75d5dc215985039e5 |
|
BLAKE2b-256 | 90109a2876984edd76b9178b5d4bbcecd9ef4b6bff77346bec7a14396120c326 |
File details
Details for the file PyMeasure-0.6.0-py3-none-any.whl
.
File metadata
- Download URL: PyMeasure-0.6.0-py3-none-any.whl
- Upload date:
- Size: 193.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.6.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5d4078dab753347ba47ba7e62d4815839a287f05e29be1eff5d9b006b3950cd8 |
|
MD5 | 7984793f9f794cac5e03869b3bb4223c |
|
BLAKE2b-256 | afbc4d46cedcc02a834d0b0bacd23696f3085ad2ba84b0999d8c3e5d12c2a7a9 |