Skip to main content

Python package for communication with SCPI-based instruments

Project description

#Setting up a new Repository Build docs codecov

Pronounced "skippy". Module for instrument communication via SCPI, implemented using pyvisa and pyserial (depending on the device)

Features

  • Communicate with devices over GPIB, RS232, or USB via SCPI protocol
  • Several common instruments (Agilent 33210A, Keithley 2400 sourcemeter) already have dedicated classes
  • Create new instruments with the SCPIDevice class

Getting Started

Installation

This package can be installed directly with pip from pypi:

pip install scippy

Agilent Example

The following example sets the frequency, amplitude, and output state of an Agilent 33210A instrument, and verifies that the parameters match the ones you set.

from scippy import Agilent

agilent = Agilent()
agilent.frequency = 2500
agilent.amplitude = 0.5
agilent.output_on = True
agilent.verify()

Keithley Example

The following sets up a Keithley 2400 source meter, sets the voltage compliance, and sets a current

from scippy import Keithley, ureg

keithley = Keithley()
keithley.current = 0.05 # Units assumed to be in Amps
keithley.voltage_compliance = 25 * ureg.mV # Set compliance to 25mV
voltage, current = keithley.measure() # Sets the output on, measures the current and voltage
print(voltage)
print(current)

Common Issues (Keithley)

Some instruments, unfortunately, have much less reliable communication interfaces than others. In particular, the Keithley is extremely sensitive to not being closed.

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

scippy-0.1.31.tar.gz (9.6 kB view hashes)

Uploaded Source

Built Distribution

scippy-0.1.31-py3-none-any.whl (22.5 kB view hashes)

Uploaded Python 3

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