Project: pyvisa-py

Pure Python implementation of a VISA library.

Project Details

Latest version
0.7.1
Home Page
PyPI Page
https://pypi.org/project/pyvisa-py/

Project Popularity

PageRank
0.0033443645414390293
Number of downloads
171040

PyVISA-py

.. image:: https://github.com/pyvisa/pyvisa-py/workflows/Continuous%20Integration/badge.svg :target: https://github.com/pyvisa/pyvisa-py/actions :alt: Continuous integration .. image:: https://github.com/pyvisa/pyvisa-py/workflows/Documentation%20building/badge.svg :target: https://github.com/pyvisa/pyvisa-py/actions :alt: Documentation building .. image:: https://dev.azure.com/pyvisa/pyvisa-py/_apis/build/status/pyvisa.pyvisa-py.keysight-assisted?branchName=main :target: https://dev.azure.com/pyvisa/pyvisa-py/_build :alt: Keysight assisted testing .. image:: https://codecov.io/gh/pyvisa/pyvisa-py/branch/main/graph/badge.svg :target: https://codecov.io/gh/pyvisa/pyvisa-py :alt: Code Coverage .. image:: https://readthedocs.org/projects/pyvisa-py/badge/?version=latest :target: https://pyvisa.readthedocs.io/en/latest/?badge=latest :alt: Documentation Status .. image:: https://img.shields.io/pypi/l/PyVISA-py :target: https://pypi.python.org/pypi/pyvisa-py :alt: PyPI - License .. image:: https://img.shields.io/pypi/v/PyVISA-py :target: https://pypi.python.org/pypi/pyvisa-py :alt: 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: http://www.ivifoundation.org/Downloads/Specifications.htm

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