PyVISA-proxy

PyVISA remote proxy server and client in order to address "remote" hardware as local


Keywords
Remote, VISA, GPIB, USB, serial, RS232, measurement, acquisition, zmq, python, remote-control
License
MIT
Install
pip install PyVISA-proxy==0.1.1

Documentation

PyVISA-proxy

This plugin should extend PyVISA's funtionality mainly in order to address local hardware which is attached to a remote node, e.g. USB or GPIB. In the end, you can decouple your VISA instrument hosting where you need bare metal nodes and the test script runner.

Getting started

Installation

Using pip:

pip install pyvisa-proxy

Server

In order to make devices remotely available, just run the PyVISA-remote server on your node. The server will open new VISA resources per request. Just run

python -m pyivsa_proxy --port 5000

in order to host your "local" connections. Use any available port for network sharing.

Client

Use a client like a normal PyVISA class. The calls will be forwarded by reflection to the server. In order to get started, use the following snippet in your code.

import pyvisa

rm = pyvisa.ResourceManager("YourProxyServerIp:YourProxyServerPort@proxy")
instr = rm.open_resource(resource="GPIB0::1::INSTR")
print(instr.query("*IDN?"))

Contributing

I welcome any contributions, enhancements, and bug-fixes. Open an issue on GitHub and submit a pull request.

License

pyvisa-remote is 100% free and open-source, under the MIT license. Use it however you want.

This package is Treeware. If you use it in production, then we ask that you buy the world a tree to thank us for our work. By contributing to the Treeware forest you’ll be creating employment for local families and restoring wildlife habitats.