auspex.instruments package

Submodules

auspex.instruments.agilent module

class auspex.instruments.agilent.Agilent33220A(resource_name=None, *args, **kwargs)

Agilent 33220A Function Generator

FUNCTION_MAP = {'DC': 'DC', 'Noise': 'NOIS', 'Pulse': 'PULS', 'Ramp': 'RAMP', 'Sine': 'SIN', 'Square': 'SQU', 'User': 'USER'}
amplitude
auto_range
burst_cycles
burst_mode
burst_state
connect(resource_name=None, interface_type=None)

Either connect to the resource name specified during initialization, or specify a new resource name here.

dc_offset
frequency
function
get_amplitude(**kwargs)
get_auto_range(**kwargs)
get_burst_cycles(**kwargs)
get_burst_mode(**kwargs)
get_burst_state(**kwargs)
get_dc_offset(**kwargs)
get_frequency(**kwargs)
get_function(**kwargs)
get_high_voltage(**kwargs)
get_load_resistance(**kwargs)
get_low_voltage(**kwargs)
get_output(**kwargs)
get_output_sync(**kwargs)
get_output_units(**kwargs)
get_polarity(**kwargs)
get_pulse_dcyc(**kwargs)
get_pulse_edge(**kwargs)
get_pulse_period(**kwargs)
get_pulse_width(**kwargs)
get_ramp_symmetry(**kwargs)
get_trigger_slope(**kwargs)
get_trigger_source(**kwargs)
high_voltage
load_resistance
low_voltage
output
output_sync
output_units
polarity
pulse_dcyc
pulse_edge
pulse_period
pulse_width
ramp_symmetry
set_amplitude(val, **kwargs)
set_auto_range(val, **kwargs)
set_burst_cycles(val, **kwargs)
set_burst_mode(val, **kwargs)
set_burst_state(val, **kwargs)
set_dc_offset(val, **kwargs)
set_frequency(val, **kwargs)
set_function(val, **kwargs)
set_high_voltage(val, **kwargs)
set_load_resistance(val, **kwargs)
set_low_voltage(val, **kwargs)
set_output(val, **kwargs)
set_output_sync(val, **kwargs)
set_output_units(val, **kwargs)
set_polarity(val, **kwargs)
set_pulse_dcyc(val, **kwargs)
set_pulse_edge(val, **kwargs)
set_pulse_period(val, **kwargs)
set_pulse_width(val, **kwargs)
set_ramp_symmetry(val, **kwargs)
set_trigger_slope(val, **kwargs)
set_trigger_source(val, **kwargs)
trigger()
trigger_slope
trigger_source
class auspex.instruments.agilent.Agilent33500B(resource_name=None, *args, **kwargs)

Agilent/Keysight 33500 series 2-channel Arbitrary Waveform Generator

Replacement model for 33220 series with some changes and additional sequencing functionality

FUNCTION_MAP = {'DC': 'DC', 'Noise': 'NOIS', 'PRBS': 'PRBS', 'Pulse': 'PULS', 'Ramp': 'RAMP', 'Sine': 'SIN', 'Square': 'SQU', 'Triangle': 'TRI', 'User': 'ARB'}
class Segment(name, data=[], dac=True, control='once', repeat=0, mkr_mode='maintain', mkr_pts=4)
self_check()
update(**kwargs)
class Sequence(name)
add_segment(segment, **kwargs)

Create a copy of the segment, update its values, then add to the sequence. The copy and update are to allow reuse of the same segment with different configurations. For safety, avoid reuse, but add different segment objects to the sequence.

get_descriptor()

Return block descriptor to upload to the instrument

abort()
amplitude = <auspex.instruments.instrument.FloatCommand object>
arb_advance = <auspex.instruments.instrument.StringCommand object>
arb_amplitude = <auspex.instruments.instrument.FloatCommand object>
arb_frequency = <auspex.instruments.instrument.FloatCommand object>
arb_sample = <auspex.instruments.instrument.FloatCommand object>
arb_sync()

Restart the sequences and synchronize them

arb_waveform = <auspex.instruments.instrument.StringCommand object>
auto_range = <auspex.instruments.instrument.Command object>
burst_cycles = <auspex.instruments.instrument.FloatCommand object>
burst_mode = <auspex.instruments.instrument.StringCommand object>
burst_state = <auspex.instruments.instrument.Command object>
clear_waveform(channel=1)

Clear all waveforms loaded in the memory

connect(resource_name=None, interface_type=None)

Either connect to the resource name specified during initialization, or specify a new resource name here.

dc_offset = <auspex.instruments.instrument.FloatCommand object>
frequency = <auspex.instruments.instrument.FloatCommand object>
function = <auspex.instruments.instrument.StringCommand object>
get_amplitude(**kwargs)
get_arb_advance(**kwargs)

Advance mode to the next point: ‘Trigger’ or ‘Srate’ (Sample Rate)

get_arb_amplitude(**kwargs)
get_arb_frequency(**kwargs)
get_arb_sample(**kwargs)

Sample Rate

get_arb_waveform(**kwargs)
get_auto_range(**kwargs)
get_burst_cycles(**kwargs)
get_burst_mode(**kwargs)
get_burst_state(**kwargs)
get_dc_offset(**kwargs)
get_frequency(**kwargs)
get_function(**kwargs)
get_high_voltage(**kwargs)
get_load(**kwargs)

Expected load resistance, 1-10k

get_low_voltage(**kwargs)
get_output(**kwargs)
get_output_gated(**kwargs)
get_output_sync(**kwargs)
get_output_trigger(**kwargs)
get_output_trigger_slope(**kwargs)
get_output_trigger_source(**kwargs)
get_output_units(**kwargs)
get_polarity(**kwargs)
get_pulse_dcyc(**kwargs)
get_pulse_edge(**kwargs)
get_pulse_period(**kwargs)
get_pulse_width(**kwargs)
get_ramp_symmetry(**kwargs)
get_sequence(**kwargs)
get_sync_mode(**kwargs)
get_sync_polarity(**kwargs)
get_sync_source(**kwargs)
get_trigger_slope(**kwargs)
get_trigger_source(**kwargs)
high_voltage = <auspex.instruments.instrument.FloatCommand object>
load = <auspex.instruments.instrument.FloatCommand object>
low_voltage = <auspex.instruments.instrument.FloatCommand object>
output = <auspex.instruments.instrument.Command object>
output_gated = <auspex.instruments.instrument.Command object>
output_sync = <auspex.instruments.instrument.Command object>
output_trigger
output_trigger_slope
output_trigger_source
output_units = <auspex.instruments.instrument.Command object>
polarity = <auspex.instruments.instrument.Command object>
pulse_dcyc = <auspex.instruments.instrument.IntCommand object>
pulse_edge = <auspex.instruments.instrument.FloatCommand object>
pulse_period = <auspex.instruments.instrument.FloatCommand object>
pulse_width = <auspex.instruments.instrument.FloatCommand object>
ramp_symmetry
sequence = <auspex.instruments.instrument.StringCommand object>
set_amplitude(val, **kwargs)
set_arb_advance(val, **kwargs)

Advance mode to the next point: ‘Trigger’ or ‘Srate’ (Sample Rate)

set_arb_amplitude(val, **kwargs)
set_arb_frequency(val, **kwargs)
set_arb_sample(val, **kwargs)

Sample Rate

set_arb_waveform(val, **kwargs)
set_auto_range(val, **kwargs)
set_burst_cycles(val, **kwargs)
set_burst_mode(val, **kwargs)
set_burst_state(val, **kwargs)
set_dc_offset(val, **kwargs)
set_frequency(val, **kwargs)
set_function(val, **kwargs)
set_high_voltage(val, **kwargs)
set_infinite_load(channel=1)
set_load(val, **kwargs)

Expected load resistance, 1-10k

set_low_voltage(val, **kwargs)
set_output(val, **kwargs)
set_output_gated(val, **kwargs)
set_output_sync(val, **kwargs)
set_output_trigger(val, **kwargs)
set_output_trigger_slope(val, **kwargs)
set_output_trigger_source(val, **kwargs)
set_output_units(val, **kwargs)
set_polarity(val, **kwargs)
set_pulse_dcyc(val, **kwargs)
set_pulse_edge(val, **kwargs)
set_pulse_period(val, **kwargs)
set_pulse_width(val, **kwargs)
set_ramp_symmetry(val, **kwargs)
set_sequence(val, **kwargs)
set_sync_mode(val, **kwargs)
set_sync_polarity(val, **kwargs)
set_sync_source(val, **kwargs)
set_trigger_slope(val, **kwargs)
set_trigger_source(val, **kwargs)
sync_mode = <auspex.instruments.instrument.StringCommand object>
sync_polarity = <auspex.instruments.instrument.Command object>
sync_source
trigger(channel=1)
trigger_slope
trigger_source
upload_sequence(sequence, channel=1, binary=False)

Upload a sequence to the instrument

upload_waveform(data, channel=1, name='mywaveform', dac=True)

Load string-converted data into a waveform memory

dac: True if values are converted to integer already

upload_waveform_binary(data, channel=1, name='mywaveform', dac=True)

NOT YET WORKING - DO NOT USE Load binary data into a waveform memory

dac: True if values are converted to integer already

class auspex.instruments.agilent.Agilent34970A(resource_name=None, *args, **kwargs)

Agilent 34970A MUX

ADVSOUR_VALUES = ['EXT', 'BUS', 'IMM']
CONFIG_LIST = []
ONOFF_VALUES = ['ON', 'OFF']
PLC_VALUES = [0.02, 0.2, 1, 10, 20, 100, 200]
RES_VALUES = ['AUTO', 100.0, 1000.0, 10000.0, 100000.0, 1000000.0, 10000000.0, 100000000.0]
TRIGSOUR_VALUES = ['BUS', 'IMM', 'EXT', 'TIM']
advance_source
ch_to_str(ch_list)
channel_delay
configlist
connect(resource_name=None, interface_type=None)

Either connect to the resource name specified during initialization, or specify a new resource name here.

dmm
get_advance_source(**kwargs)
get_dmm(**kwargs)
get_trigger_count(**kwargs)
get_trigger_source(**kwargs)
get_trigger_timer(**kwargs)
r_lists()
read()
resistance_range
resistance_resolution
resistance_wire
resistance_zcomp
scan()
scanlist
set_advance_source(val, **kwargs)
set_dmm(val, **kwargs)
set_trigger_count(val, **kwargs)
set_trigger_source(val, **kwargs)
set_trigger_timer(val, **kwargs)
trigger_count
trigger_source
trigger_timer
class auspex.instruments.agilent.AgilentE8363C(resource_name=None, *args, **kwargs)

Agilent E8363C 2-port 40GHz VNA.

data_query_raw = False
ports = (1, 2)
class auspex.instruments.agilent.AgilentN5183A(resource_name=None, *args, **kwargs)

AgilentN5183A microwave source

alc
connect(resource_name=None, interface_type='VISA')

Either connect to the resource name specified during initialization, or specify a new resource name here.

frequency
get_alc(**kwargs)
get_frequency(**kwargs)
get_mod(**kwargs)
get_output(**kwargs)
get_phase(**kwargs)
get_power(**kwargs)
instrument_type = 'Microwave Source'
mod
output
phase
power
reference
set_alc(val, **kwargs)
set_all(settings)
set_frequency(val, **kwargs)
set_mod(val, **kwargs)
set_output(val, **kwargs)
set_phase(val, **kwargs)
set_power(val, **kwargs)
class auspex.instruments.agilent.AgilentN9010A(resource_name=None, *args, **kwargs)

Agilent N9010A SA

averaging_count
clear_averaging()
connect(resource_name=None, interface_type=None)

Either connect to the resource name specified during initialization, or specify a new resource name here.

frequency_center
frequency_span
frequency_start
frequency_stop
get_averaging_count(**kwargs)
get_axis()
get_frequency_center(**kwargs)
get_frequency_span(**kwargs)
get_frequency_start(**kwargs)
get_frequency_stop(**kwargs)
get_marker1_amplitude(**kwargs)
get_marker1_position(**kwargs)
get_mode(**kwargs)
get_num_sweep_points(**kwargs)
get_pn_carrier_freq(**kwargs)
get_pn_offset_start(**kwargs)
get_pn_offset_stop(**kwargs)
get_pn_trace(num=3)
get_resolution_bandwidth(**kwargs)
get_sweep_time(**kwargs)
get_trace(num=1)
get_video_auto(**kwargs)
get_video_bandwidth(**kwargs)
instrument_type = 'Spectrum Analyzer'
marker1_amplitude
marker1_position
marker_X

Queries marker X-value.

Parameters:marker (int) – Marker index (1-12).
Returns:X axis value of selected marker.
marker_Y

Queries marker Y-value.

Parameters:marker (int) – Marker index (1-12).
Returns:Trace value at selected marker.
marker_to_center(marker=1)
mode
noise_marker(marker=1, enable=True)

Set/unset marker as a noise marker for noise figure measurements.

Parameters:
  • marker (int) – Index of marker, [1,12].
  • enable (bool) – Toggles between noise marker (True) and regular marker (False).
Returns:

None.

num_sweep_points
pn_carrier_freq
pn_offset_start
pn_offset_stop
resolution_bandwidth
restart_sweep()

Aborts current sweep and restarts.

set_averaging_count(val, **kwargs)
set_frequency_center(val, **kwargs)
set_frequency_span(val, **kwargs)
set_frequency_start(val, **kwargs)
set_frequency_stop(val, **kwargs)
set_marker1_amplitude(val, **kwargs)
set_marker1_position(val, **kwargs)
set_mode(val, **kwargs)
set_num_sweep_points(val, **kwargs)
set_pn_carrier_freq(val, **kwargs)
set_pn_offset_start(val, **kwargs)
set_pn_offset_stop(val, **kwargs)
set_resolution_bandwidth(val, **kwargs)
set_sweep_time(val, **kwargs)
set_video_auto(val, **kwargs)
set_video_bandwidth(val, **kwargs)
sweep_time
video_auto
video_bandwidth
class auspex.instruments.agilent.HP33120A(resource_name=None, *args, **kwargs)

HP33120A Arb Waveform Generator

amplitude
arb_function(name)
burst_cycles
burst_source
burst_state
connect(resource_name=None, interface_type=None)

Either connect to the resource name specified during initialization, or specify a new resource name here.

delete_waveform(name='all')
duty_cycle
frequency
function
get_amplitude(**kwargs)
get_burst_cycles(**kwargs)
get_burst_source(**kwargs)
get_burst_state(**kwargs)
get_duty_cycle(**kwargs)
get_frequency(**kwargs)
get_function(**kwargs)
get_load(**kwargs)
get_offset(**kwargs)
get_voltage_unit(**kwargs)
load
offset
set_amplitude(val, **kwargs)
set_burst_cycles(val, **kwargs)
set_burst_source(val, **kwargs)
set_burst_state(val, **kwargs)
set_duty_cycle(val, **kwargs)
set_frequency(val, **kwargs)
set_function(val, **kwargs)
set_load(val, **kwargs)
set_offset(val, **kwargs)
set_voltage_unit(val, **kwargs)
upload_waveform(data, name='volatile')
voltage_unit
class auspex.instruments.agilent.AgilentN5230A(resource_name=None, *args, **kwargs)

Agilent N5230A 4-port 20GHz VNA.

data_query_raw = False
ports = (1, 2, 3, 4)

auspex.instruments.alazar module

class auspex.instruments.alazar.AlazarATS9870(resource_name=None, name='Unlabeled Alazar', gen_fake_data=False)

Alazar ATS9870 digitizer

acquire()
add_channel(channel)
configure_with_dict(settings_dict)

Accept a sdettings dictionary and attempt to set all of the instrument parameters using the key/value pairs.

connect(resource_name=None)
data_available()
disconnect()
done()
get_buffer_for_channel(channel)
get_socket(channel)
instrument_type = 'Digitizer'
receive_data(channel, oc, exit, ready, run)
spew_fake_data(counter, ideal_data, random_mag=0.1, random_seed=12345)

Generate fake data on the stream. For unittest usage. ideal_data: array or list giving means of the expected signal for each segment

Returns the total number of fake data points, so that we can keep track of how many we expect to receive, when we’re doing the test with fake data

stop()
wait_for_acquisition(dig_run, timeout=5, ocs=None, progressbars=None)
class auspex.instruments.alazar.AlazarChannel(receiver_channel=None)
phys_channel = None
set_all(settings_dict)
set_by_receiver(receiver)

auspex.instruments.ami module

class auspex.instruments.ami.AMI430(resource_name, *args, **kwargs)

AMI430 Power Supply Programmer

RAMPING_STATES = ['RAMPING to target field/current', 'HOLDING at the target field/current', 'PAUSED', 'Ramping in MANUAL UP mode', 'Ramping in MANUAL DOWN mode', 'ZEROING CURRENT (in progress)', 'Quench detected', 'At ZERO current', 'Heating persistent switch', 'Cooling persistent switch']
SUPPLY_TYPES = ['AMI 12100PS', 'AMI 12200PS', 'AMI 4Q05100PS', 'AMI 4Q06125PS', 'AMI 4Q06250PS', 'AMI 4Q12125PS', 'AMI 10100PS', 'AMI 10200PS', 'HP 6260B', 'Kepco BOP 20-5M', 'Kepco BOP 20-10M', 'Xantrex XFR 7.5-140', 'Custom', 'AMI Model 05100PS-430-601', 'AMI Model 05200PS-430-601', 'AMI Model 05300PS-430-601', 'AMI Model 05400PS-430-601', 'AMI Model 05500PS-430-601']
absorber
coil_const
connect(resource_name=None, interface_type=None)

Either connect to the resource name specified during initialization, or specify a new resource name here.

current_limit
current_magnet
current_max
current_min
current_rating
current_supply
current_target
field
field_target
field_units
get_absorber(**kwargs)
get_coil_const(**kwargs)
get_current_limit(**kwargs)
get_current_magnet(**kwargs)
get_current_max(**kwargs)
get_current_min(**kwargs)
get_current_rating(**kwargs)
get_current_supply(**kwargs)
get_current_target(**kwargs)
get_field(**kwargs)
get_field_target(**kwargs)
get_field_units(**kwargs)
get_inductance(**kwargs)
get_persistent_switch(**kwargs)
get_ramp_num_segments(**kwargs)
get_ramp_rate_units(**kwargs)
get_ramping_state(**kwargs)
get_stability(**kwargs)
get_supply_type(**kwargs)
get_voltage(**kwargs)
get_voltage_limit(**kwargs)
get_voltage_max(**kwargs)
get_voltage_min(**kwargs)
inductance
instrument_type = 'Magnet'
pause()

Pauses the Model 430 Programmer at the present operating field/current.

persistent_switch
ramp()

Places the Model 430 Programmer in automatic ramping mode. The Model 430 will continue to ramp at the configured ramp rate(s) until the target field/current is achieved.

ramp_down()

Places the Model 430 Programmer in the MANUAL DOWN ramping mode. Ramping continues at the ramp rate until the Current Limit is achieved (or zero current is achieved for unipolar power supplies).

ramp_num_segments
ramp_rate_units
ramp_up()

Places the Model 430 Programmer in the MANUAL UP ramping mode. Ramping continues at the ramp rate until the Current Limit is achieved.

ramping_state
set_absorber(val, **kwargs)
set_coil_const(val, **kwargs)
set_current_limit(val, **kwargs)
set_current_rating(val, **kwargs)
set_current_target(val, **kwargs)
set_field(val)

Blocking field setter

set_field_target(val, **kwargs)
set_field_units(val, **kwargs)
set_persistent_switch(val, **kwargs)
set_ramp_num_segments(val, **kwargs)
set_ramp_rate_units(val, **kwargs)
set_stability(val, **kwargs)
set_voltage_limit(val, **kwargs)
stability
supply_type
voltage
voltage_limit
voltage_max
voltage_min
zero()

Places the Model 430 Programmer in ZEROING CURRENT mode. Ramping automatically initiates and continues at the ramp rate until the power supply output current is less than 0.1% of Imax, at which point the AT ZERO status becomes active.

auspex.instruments.bbn module

class auspex.instruments.bbn.APS(resource_name=None, name='Unlabled APS')

BBN APSI or DACII

configure_with_proxy(proxy_obj)
connect(resource_name=None)
disconnect()
get_mixer_correction_matrix()
get_repeat_mode()
get_run_mode()
get_sampling_rate()
get_sequence_file()
get_trigger_interval()
get_trigger_source()
get_waveform_frequency()
instrument_type = 'AWG'
load_waveform(channel, data)
load_waveform_from_file(channel, filename)
mixer_correction_matrix
repeat_mode
run_mode
sampling_rate
sequence_file
set_amplitude(chs, value)
set_mixer_amplitude_imbalance(chs, amp)
set_mixer_correction_matrix = None
set_mixer_phase_skew(chs, phase, SSB=0.0)
set_offset(chs, value)
set_repeat_mode(mode)
set_run_mode(mode)
set_sampling_rate(freq)
set_sequence_file(filename)
set_trigger_interval(value)
set_trigger_source(source)
set_waveform_frequency = None
trigger()
trigger_interval
trigger_source
waveform_frequency
class auspex.instruments.bbn.APS2(resource_name=None, name='Unlabeled APS2')

BBN APS2

amp_factor
configure_with_proxy(proxy_obj)
connect(resource_name=None)
disconnect()
fpga_temperature
get_amp_factor()
get_fpga_temperature()
get_mixer_correction_matrix()
get_phase_skew()
get_run_mode()
get_sampling_rate()
get_sequence_file()
get_trigger_interval()
get_trigger_source()
get_waveform_frequency()
instrument_type = 'AWG'
load_waveform(channel, data)
mixer_correction_matrix
phase_skew
run_mode
sampling_rate
sequence_file
set_amp_factor(amp)
set_amplitude(chs, value)
set_fpga_temperature = None
set_mixer_correction_matrix(matrix)
set_offset(chs, value)
set_phase_skew(skew)
set_run_mode(mode)
set_sampling_rate(value)
set_sequence_file(filename)
set_trigger_interval(value)
set_trigger_source(source)
set_waveform_frequency(freq)
trigger()
trigger_interval
trigger_source
waveform_frequency
class auspex.instruments.bbn.TDM(resource_name=None, name='Unlabeled APS2')

BBN TDM

configure_with_proxy(proxy_obj)
instrument_type = 'AWG'
class auspex.instruments.bbn.DigitalAttenuator(resource_name=None, name='Unlabeled Digital Attenuator')

BBN 3 Channel Instrument

NUM_CHANNELS = 3
ch1_attenuation
ch2_attenuation
ch3_attenuation
classmethod channel_check(chan)

Assert the channel requested is feasbile

configure_with_proxy(proxy)
connect(resource_name=None, interface_type=None)

Either connect to the resource name specified during initialization, or specify a new resource name here.

get_attenuation(chan)
instrument_type = 'Attenuator'
set_attenuation(chan, val)
class auspex.instruments.bbn.SpectrumAnalyzer(resource_name=None, *args, **kwargs)

BBN USB Spectrum Analyzer

IF_FREQ = 10700000.0
connect(resource_name=None, interface_type=None)

Either connect to the resource name specified during initialization, or specify a new resource name here.

get_voltage()
instrument_type = 'Spectrum analyzer'
peak_amplitude()
voltage

auspex.instruments.binutils module

auspex.instruments.bnc module

auspex.instruments.hall_probe module

auspex.instruments.holzworth module

auspex.instruments.instrument module

class auspex.instruments.instrument.Instrument
configure_with_dict(settings_dict)

Accept a sdettings dictionary and attempt to set all of the instrument parameters using the key/value pairs.

configure_with_proxy(proxy)
connect(resource_name=None)
disconnect()

auspex.instruments.interface module

class auspex.instruments.interface.Interface

Currently just a dummy interface for testing.

close()
query(value)
values(query)
write(value)
class auspex.instruments.interface.PrologixInterface(resource_name)

Prologix-Ethernet interface for communicating with remote GPIB instruments.

class auspex.instruments.interface.VisaInterface(resource_name)

PyVISA interface for communicating with instruments.

CLS()
ESE()
ESR()
IDN()
OPC()
RST()
SRE()
STB()
TST()
WAI()
close()
query(query_string)
query_ascii_values(query_string, **kwargs)
query_binary_values(query_string, container=<built-in function array>, datatype='h', is_big_endian=False)
read()
read_bytes(count, chunk_size=None, break_on_termchar=False)
read_raw(size=None)
value(query_string)
values(query_string)
write(write_string)
write_binary_values(query_string, values, **kwargs)
write_raw(raw_string)

auspex.instruments.keithley module

auspex.instruments.kepco module

auspex.instruments.keysight module

auspex.instruments.lakeshore module

auspex.instruments.lecroy module

auspex.instruments.magnet module

auspex.instruments.picosecond module

auspex.instruments.prologix module

class auspex.instruments.prologix.PrologixSocketResource(ipaddr=None, gpib=None)

A resource representing a GPIB instrument controlled through a PrologixError GPIB-ETHERNET controller. Mimics the functionality of a pyVISA resource object.

See http://prologix.biz/gpib-ethernet-controller.html for more details and a utility that will discover all prologix instruments on the network.

timeout

Timeout duration for TCP comms. Default 5s.

write_termination

Character added to each outgoing message.

read_termination

Character which denotes the end of a reponse message.

idn_string

GPIB identification command. Defaults to ‘*IDN?’

bufsize

Maximum amount of data to be received in one call, in bytes.

close()

Close the connection to the Prologix.

connect(ipaddr=None, gpib=None)

Connect to a GPIB device through a Prologix GPIB-ETHERNET controller. box.

Parameters:
  • ipaddr – The IP address of the Prologix GPIB-ETHERNET.
  • gpib – The GPIB address of the instrument to be controlled.
Returns:

None.

query(command)

Query instrument with ASCII command then read response.

Parameters:command – Message to be sent to instrument.
Returns:The instrument data with termination character stripped.
query_ascii_values(command, converter='f', separator=', ', container=<class 'list'>, bufsize=None)

Write a string message to device and return values as iterable.

Parameters:
  • command – Message to be sent to device.
  • values – Data to be written to device (as an interable)
  • converter – String format code to be used to convert values.
  • separator – Separator between values – data.split(separator).
  • container – Iterable type to use for output.
  • bufsize – Number of bytes to read from instrument. Defaults to resource
  • if None. (bufsize) –
Returns:

Iterable of values converted from instrument response.

query_binary_values(command, datatype='f', container=<built-in function array>, is_big_endian=False, bufsize=None)

Write a string message to device and read binary values, which are returned as iterable. Uses a pyvisa utility function.

Parameters:
  • command – String command sent to instrument.
  • values – Data to be sent to instrument.
  • datatype – Format string for single element.
  • container – Iterable to return number of as.
  • is_big_endian – Bool indicating endianness.
Returns:

Iterable of data values to be retuned

read()

Read an ASCII value from the instrument.

Parameters:None.
Returns:The instrument data with termination character stripped.
read_raw(bufsize=None)

Read bytes from instrument.

Parameters:
  • bufsize – Number of bytes to read from instrument. Defaults to resource
  • if None. (bufsize) –
Returns:

Instrument data. Nothing is stripped from response.

timeout
write(command)

Write a string message to device in ASCII format.

Parameters:command – The message to be sent.
Returns:The number of bytes in the message.
write_ascii_values(command, values, converter='f', separator=', ')

Write a string message to device followed by values in ASCII format.

Parameters:
  • command – Message to be sent to device.
  • values – Data to be written to device (as an iterable)
  • converter – String format code to be used to convert values.
  • separator – Separator between values – separator.join(data).
Returns:

Total number of bytes sent to instrument.

write_binary_values(command, values, datatype='f', is_big_endian=False)

Write a string message to device followed by values in binary IEEE format using a pyvisa utility function.)

Parameters:
  • command – String command sent to instrument.
  • values – Data to be sent to instrument.
  • datatype – Format string for single element.
  • is_big_endian – Bool indicating endianness.
Returns:

Number of bytes written to instrument.

write_raw(command)

Write a string message to device as raw bytes. No termination character is appended.

Parameters:command – The message to be sent.
Returns:The number of bytes in the message.

auspex.instruments.rfmd module

auspex.instruments.stanford module

auspex.instruments.tektronix module

auspex.instruments.vaunix module

auspex.instruments.X6 module

class auspex.instruments.X6.X6Channel(receiver_channel=None)

Channel for an X6

set_by_receiver_channel(receiver)
class auspex.instruments.X6.X6(resource_name=None, name='Unlabeled X6', gen_fake_data=False)

BBN QDSP running on the II-X6 digitizer

acquire_mode
add_channel(channel)
channel_setup(channel)
configure_with_dict(settings_dict)

Accept a sdettings dictionary and attempt to set all of the instrument parameters using the key/value pairs.

connect(resource_name=None)
data_available()
disconnect()
done()
get_buffer_for_channel(channel)
get_socket(channel)
instrument_type = 'Digitizer'
number_averages
number_segments
number_waveforms
receive_data(channel, oc, exit, ready, run)
record_length
reference
spew_fake_data(counter, ideal_data, random_mag=0.1, random_seed=12345)

Generate fake data on the stream. For unittest usage. ideal_data: array or list giving means of the expected signal for each segment

Returns the total number of fake data points, so that we can keep track of how many we expect to receive, when we’re doing the test with fake data

wait_for_acquisition(dig_run, timeout=15, ocs=None, progressbars=None)

auspex.instruments.yokogawa module

Module contents