• Stars
    star
    282
  • Rank 146,549 (Top 3 %)
  • Language
    Python
  • License
    MIT License
  • Created about 10 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A pure python PyVISA backend

PyVISA-py

Continuous integration Documentation building Keysight assisted testing Code Coverage Documentation Status PyPI - License PyPI

A PyVISA backend that implements a large part of the "Virtual Instrument Software Architecture" (VISA) in pure Python (with the help of some nice cross platform libraries python packages!).

Description

PyVISA started as wrapper for the IVI-VISA library and therefore you need to install a VISA library in your system (National Instruments, Keysight, etc). This works most of the time, for most people. But IVI-VISA implementations are proprietary libraries that only works on certain systems. That is when PyVISA-py jumps in.

Starting from version 1.6, PyVISA allows to use different backends. These backends can be dynamically loaded. PyVISA-py is one of such backends. It implements most of the methods for Message Based communication (Serial/USB/GPIB/Ethernet) using Python and some well developed, easy to deploy and cross platform libraries

VISA and Python

Python has a couple of features that make it very interesting for measurement controlling:

  • Python is an easy-to-learn scripting language with short development cycles.
  • It represents a high abstraction level, which perfectly blends with the abstraction level of measurement programs.
  • It has a very rich set of native libraries, including numerical and plotting modules for data analysis and visualisation.
  • A large set of books (in many languages) and on-line publications is available.

Requirements

  • Python (tested with 3.6+)
  • PyVISA 1.11+

Optionally:

  • PySerial (to interface with Serial instruments)
  • PyUSB (to interface with USB instruments)
  • linux-gpib (to interface with gpib instruments, only on linux)
  • gpib-ctypes (to interface with GPIB instruments on Windows and Linux)
  • psutil (to discover TCPIP devices across multiple interfaces)
  • zeroconf (for HiSLIP and VICP devices discovery)
  • pyvicp (to enable the Teledyne LeCroy proprietary VICP protocol)

Installation

Using pip:

$ pip install pyvisa-py

Documentation

The documentation can be read online at https://pyvisa-py.readthedocs.org