Skip to main content

Control of data acquisition with remote instruments using (IVI-)dotnet, (IVI-)COM, Visa, and serial protocols. python dotnet and/or comtypes should be installed

Project description

=============================================
pyinstruments: data acquisition toolkit
=============================================

*program less and do more science... better*


What is it
==========

**pyinstruments** is a Python package to control/get data from measurement and
automation devices. Control of the remote instruments can be done via one of
the following protocols:

- ivi drivers (using the lower level package pyivi)
- visa
- serial

Using IVI-drivers greatly simplifies your life because :

1/. The lower level layer is fully transparent for the user (pyivi provides a common interface for each instrument type).

2/. **zero** extra work is needed to interface an instrument for which an IVI driver is provided.

pyinstruments is composed of two **independant** packages (can be run on 2 remote computers!).

- **pyhardwaredb** for the hardware communication (This package itself is a thin wrapper around pyhardware)
because it heavily relies on ivi-drivers and com-interoperability, this package is intended to run on a windows machine.
- **curvefinder** to display in quasi real-time the curves acquired (This module could be run on any platform).

The strict separation between plotting and data-acquistion processes ensures that scripted data-acquisitions won't be affected by user interactions or plotting dead-times.


Main Features
=============

The curves are stored in a (django-abstracted) database with all necessary metadata
(bandwidth, averaging...) together with a list of user-defined tags and comments.
The curvefinder module allows monitoring new incoming curves, as well as querying
the database for old curve by date, tags...

The hardware module has a Graphical User Interface to quickly get a curve from an instrument and configure the way instruments are interfaced.

Dependencies
============

Direct dependancies for pyinstruments are:
- django > 1.5
- PyQt4
- guidata
- guiqwt
- pyhardware <-- pyivi <-- (ctypes + comtypes)

The windows installer takes care of installing all the dependencies.


Try it out!
===========

The installation is single click (since v 0.1.15), desktop icons are created
to launch both graphical user interfaces.

The project is hosted on GitHub, and still in a starting phase, contributions and feedback
are warmly welcome!

<https://github.com/SamuelDeleglise/pyinstruments>

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

pyinstruments-0.2.0.zip (33.0 kB view hashes)

Uploaded Source

Built Distribution

pyinstruments-0.2.0.win32.exe (276.2 kB view hashes)

Uploaded Source

Supported by

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