Posts

Showing posts from 2015

The state of the PyVISA ecosystem (and more)

Yesterday we released several packages of the Python Instrumentation Ecosystem. You can upgrade to PyVISA 1.8,PyVISA-py 0.2 and PyVISA-sim 0.3  by:

pip install -U pyvisa pyvisa-py pyvisa-sim

For those of you who are new to instrumentation in Python, PyVISA is a Python frontend for the VISA specification that enables controlling all kinds of measurement equipment through GPIB, RS232, USB and Ethernet among others interfaces. If you are familiar with VISA instruments in LabVIEW, Matlab, C or .NET you already know how it works and you can make use of PyVISA as a nice Pythonic API to write your programs. If you have never done any instrumentation, Python and PyVISA is great combination to start.

Code: https://github.com/hgrecco/pyvisa Docs: http://pyvisa.readthedocs.org/ Tracker: https://github.com/hgrecco/pyvisa/issues
As I mentioned before PyVISA is a frontend for the VISA specification, but what does this means in terms of software? PyVISA can connect to multiple backends, which are the one…

PyVISA-sim. Test your PyVISA applications without connected instruments

I have just released PyVISA-sim 0.1. PyVISA-sim is a backend for PyVISA. It allows you to simulate devices and therefore test your applications without having real instruments connected.
While there still a lot of features to add, this early release already allows you to: - play around with a simulated device. - write your own simulated device in YAML files.  - simulated devices can include commands and properties which are automatically generated from the YAML file. - Properties can have some basic validation rules.
Install it using:
    pip install -U pyvisa-sim

Code: https://github.com/hgrecco/pyvisa-sim Docs: http://pyvisa-sim.readthedocs.org/ Tracker: https://github.com/hgrecco/pyvisa-sim/issues

Lantz 0.3 is out: better PyVISA support, leaner drivers, great GUI building blocks

Lantz is a Python automation and instrumentation toolkit that allows you to control scientific instruments in a clean and efficient manner writing pure Python code.

After waiting for a long time, Lantz 0.3 is out. It took a while, but it was for a good reason: we were toying, playing and testing with new ideas to make Lantz better. I am going to go quickly over some of them.

MessageBasedDriver: a class to rule them all

MessageBasedDriver  replaces all previous Driver classes for message based instruments. It leverages the power of PyVISA to talk over many different interfaces. But remember that this does not mean that you require NI-VISA installed. You can still talk via the pyvisa-py backend which uses PySerial / PyUSB / Python Standard library. You can also use the pyvisa-sim backend to simulate devices!


Great GUI applications

Lantz provides two classes to help you build applications: Backend and Frontend. The first contains the logic of your application and the second the GUI. This ke…