Agilent Drivers

Classes:

Agilent344xxA(name, address, **kwargs)

This is the base class for QCoDeS driver for the Agilent 34400A DMM Series.

Agilent34401A(name, address, **kwargs)

This is the QCoDeS driver for the Agilent 34401A DMM.

Agilent34410A(name, address, **kwargs)

This is the QCoDeS driver for the Agilent 34410A DMM.

Agilent34411A(name, address, **kwargs)

This is the QCoDeS driver for the Agilent 34411A DMM.

AgilentE8257D(name, address[, step_attenuator])

This is the QCoDeS driver for the Agilent E8257D signal generator.

AgilentE8267C(name, address, **kwargs)

This is the QCoDeS driver for the Agilent E8267C signal generator.

class qcodes.instrument_drivers.agilent.Agilent344xxA(name: str, address: str, **kwargs: Unpack[VisaInstrumentKWArgs])[source]

Bases: VisaInstrument

This is the base class for QCoDeS driver for the Agilent 34400A DMM Series. This class should not be instantiated directly but a specific sub model should be used.

Note that most models are better supported by the Keysight 33xxA drivers.

Attributes:

default_terminator

The default terminator to use if the terminator is not specified when creating the instrument.

resolution

Resolution

volt

Parameter volt

fetch

Parameter fetch

NPLC

Parameter NPLC

terminals

Parameter terminals

range_auto

Parameter range_auto

range

Parameter range

Methods:

default_terminator: str | None = '\n'

The default terminator to use if the terminator is not specified when creating the instrument. None means use the default terminator from PyVisa.

resolution = Parameter( "resolution", instrument=self, get_cmd="VOLT:DC:RES?", get_parser=float, set_cmd=self._set_resolution, label="Resolution", unit="V", )

Resolution

volt: Parameter = self.add_parameter( "volt", get_cmd="READ?", label="Voltage", get_parser=float, unit="V" )

Parameter volt

fetch: Parameter = self.add_parameter( "fetch", get_cmd="FETCH?", label="Voltage", get_parser=float, unit="V", snapshot_get=False, docstring=( "Reads the data you asked for, i.e. " "after an `init_measurement()` you can " "read the data with fetch.\n" "Do not call this when you did not ask " "for data in the first place!" ), )

Parameter fetch

NPLC: Parameter = self.add_parameter( "NPLC", get_cmd="VOLT:NPLC?", get_parser=float, set_cmd=self._set_nplc, vals=Enum(*NPLC_list), label="Integration time", unit="NPLC", )

Parameter NPLC

terminals: Parameter = self.add_parameter( "terminals", get_cmd="ROUT:TERM?" )

Parameter terminals

range_auto: Parameter = self.add_parameter( "range_auto", get_cmd="VOLT:RANG:AUTO?", set_cmd="VOLT:RANG:AUTO {:d}", val_mapping={"on": 1, "off": 0}, )

Parameter range_auto

range: Parameter = self.add_parameter( "range", get_cmd="SENS:VOLT:DC:RANG?", get_parser=float, set_cmd="SENS:VOLT:DC:RANG {:f}", vals=Enum(0.1, 1.0, 10.0, 100.0, 1000.0), )

Parameter range

visabackend: str = visabackend
visa_handle: pyvisa.resources.MessageBasedResource = visa_handle

The VISA resource used by this instrument.

visalib: str | None = visalib
parameters: dict[str, ParameterBase] = {}

All the parameters supported by this instrument. Usually populated via add_parameter().

functions: dict[str, Function] = {}

All the functions supported by this instrument. Usually populated via add_function().

submodules: dict[str, InstrumentModule | ChannelTuple] = {}

All the submodules of this instrument such as channel lists or logical groupings of parameters. Usually populated via add_submodule().

instrument_modules: dict[str, InstrumentModule] = {}

All the InstrumentModule of this instrument Usually populated via add_submodule().

log: InstrumentLoggerAdapter = get_instrument_logger(self, __name__)
metadata: dict[str, Any] = {}
clear_errors() None[source]
init_measurement() None[source]
display_clear() None[source]
reset() None[source]
class qcodes.instrument_drivers.agilent.Agilent34401A(name: str, address: str, **kwargs: Unpack[VisaInstrumentKWArgs])[source]

Bases: Agilent344xxA

This is the QCoDeS driver for the Agilent 34401A DMM.

Attributes:

display_text

Parameter display_text

volt: Parameter = self.add_parameter( "volt", get_cmd="READ?", label="Voltage", get_parser=float, unit="V" )

Parameter volt

fetch: Parameter = self.add_parameter( "fetch", get_cmd="FETCH?", label="Voltage", get_parser=float, unit="V", snapshot_get=False, docstring=( "Reads the data you asked for, i.e. " "after an `init_measurement()` you can " "read the data with fetch.\n" "Do not call this when you did not ask " "for data in the first place!" ), )

Parameter fetch

NPLC: Parameter = self.add_parameter( "NPLC", get_cmd="VOLT:NPLC?", get_parser=float, set_cmd=self._set_nplc, vals=Enum(*NPLC_list), label="Integration time", unit="NPLC", )

Parameter NPLC

terminals: Parameter = self.add_parameter( "terminals", get_cmd="ROUT:TERM?" )

Parameter terminals

range_auto: Parameter = self.add_parameter( "range_auto", get_cmd="VOLT:RANG:AUTO?", set_cmd="VOLT:RANG:AUTO {:d}", val_mapping={"on": 1, "off": 0}, )

Parameter range_auto

range: Parameter = self.add_parameter( "range", get_cmd="SENS:VOLT:DC:RANG?", get_parser=float, set_cmd="SENS:VOLT:DC:RANG {:f}", vals=Enum(0.1, 1.0, 10.0, 100.0, 1000.0), )

Parameter range

visabackend: str = visabackend
visa_handle: pyvisa.resources.MessageBasedResource = visa_handle

The VISA resource used by this instrument.

visalib: str | None = visalib
parameters: dict[str, ParameterBase] = {}

All the parameters supported by this instrument. Usually populated via add_parameter().

functions: dict[str, Function] = {}

All the functions supported by this instrument. Usually populated via add_function().

submodules: dict[str, InstrumentModule | ChannelTuple] = {}

All the submodules of this instrument such as channel lists or logical groupings of parameters. Usually populated via add_submodule().

instrument_modules: dict[str, InstrumentModule] = {}

All the InstrumentModule of this instrument Usually populated via add_submodule().

log: InstrumentLoggerAdapter = get_instrument_logger(self, __name__)
metadata: dict[str, Any] = {}
display_text: Parameter = self.add_parameter( "display_text", get_cmd="DISP:TEXT?", set_cmd='DISP:TEXT "{}"', vals=Strings(), )

Parameter display_text

class qcodes.instrument_drivers.agilent.Agilent34410A(name: str, address: str, **kwargs: Unpack[VisaInstrumentKWArgs])[source]

Bases: Agilent344xxA

This is the QCoDeS driver for the Agilent 34410A DMM.

Attributes:

display_text

Parameter display_text

display_text_2

Parameter display_text_2

display_text: Parameter = self.add_parameter( "display_text", get_cmd="DISP:WIND1:TEXT?", set_cmd='DISP:WIND1:TEXT "{}"', vals=Strings(), )

Parameter display_text

volt: Parameter = self.add_parameter( "volt", get_cmd="READ?", label="Voltage", get_parser=float, unit="V" )

Parameter volt

fetch: Parameter = self.add_parameter( "fetch", get_cmd="FETCH?", label="Voltage", get_parser=float, unit="V", snapshot_get=False, docstring=( "Reads the data you asked for, i.e. " "after an `init_measurement()` you can " "read the data with fetch.\n" "Do not call this when you did not ask " "for data in the first place!" ), )

Parameter fetch

NPLC: Parameter = self.add_parameter( "NPLC", get_cmd="VOLT:NPLC?", get_parser=float, set_cmd=self._set_nplc, vals=Enum(*NPLC_list), label="Integration time", unit="NPLC", )

Parameter NPLC

terminals: Parameter = self.add_parameter( "terminals", get_cmd="ROUT:TERM?" )

Parameter terminals

range_auto: Parameter = self.add_parameter( "range_auto", get_cmd="VOLT:RANG:AUTO?", set_cmd="VOLT:RANG:AUTO {:d}", val_mapping={"on": 1, "off": 0}, )

Parameter range_auto

range: Parameter = self.add_parameter( "range", get_cmd="SENS:VOLT:DC:RANG?", get_parser=float, set_cmd="SENS:VOLT:DC:RANG {:f}", vals=Enum(0.1, 1.0, 10.0, 100.0, 1000.0), )

Parameter range

visabackend: str = visabackend
visa_handle: pyvisa.resources.MessageBasedResource = visa_handle

The VISA resource used by this instrument.

visalib: str | None = visalib
parameters: dict[str, ParameterBase] = {}

All the parameters supported by this instrument. Usually populated via add_parameter().

functions: dict[str, Function] = {}

All the functions supported by this instrument. Usually populated via add_function().

submodules: dict[str, InstrumentModule | ChannelTuple] = {}

All the submodules of this instrument such as channel lists or logical groupings of parameters. Usually populated via add_submodule().

instrument_modules: dict[str, InstrumentModule] = {}

All the InstrumentModule of this instrument Usually populated via add_submodule().

log: InstrumentLoggerAdapter = get_instrument_logger(self, __name__)
metadata: dict[str, Any] = {}
display_text_2: Parameter = self.add_parameter( "display_text_2", get_cmd="DISP:WIND2:TEXT?", set_cmd='DISP:WIND2:TEXT "{}"', vals=Strings(), )

Parameter display_text_2

class qcodes.instrument_drivers.agilent.Agilent34411A(name: str, address: str, **kwargs: Unpack[VisaInstrumentKWArgs])[source]

Bases: Agilent344xxA

This is the QCoDeS driver for the Agilent 34411A DMM.

Attributes:

display_text

Parameter display_text

display_text_2

Parameter display_text_2

display_text: Parameter = self.add_parameter( "display_text", get_cmd="DISP:WIND1:TEXT?", set_cmd='DISP:WIND1:TEXT "{}"', vals=Strings(), )

Parameter display_text

volt: Parameter = self.add_parameter( "volt", get_cmd="READ?", label="Voltage", get_parser=float, unit="V" )

Parameter volt

fetch: Parameter = self.add_parameter( "fetch", get_cmd="FETCH?", label="Voltage", get_parser=float, unit="V", snapshot_get=False, docstring=( "Reads the data you asked for, i.e. " "after an `init_measurement()` you can " "read the data with fetch.\n" "Do not call this when you did not ask " "for data in the first place!" ), )

Parameter fetch

NPLC: Parameter = self.add_parameter( "NPLC", get_cmd="VOLT:NPLC?", get_parser=float, set_cmd=self._set_nplc, vals=Enum(*NPLC_list), label="Integration time", unit="NPLC", )

Parameter NPLC

terminals: Parameter = self.add_parameter( "terminals", get_cmd="ROUT:TERM?" )

Parameter terminals

range_auto: Parameter = self.add_parameter( "range_auto", get_cmd="VOLT:RANG:AUTO?", set_cmd="VOLT:RANG:AUTO {:d}", val_mapping={"on": 1, "off": 0}, )

Parameter range_auto

range: Parameter = self.add_parameter( "range", get_cmd="SENS:VOLT:DC:RANG?", get_parser=float, set_cmd="SENS:VOLT:DC:RANG {:f}", vals=Enum(0.1, 1.0, 10.0, 100.0, 1000.0), )

Parameter range

visabackend: str = visabackend
visa_handle: pyvisa.resources.MessageBasedResource = visa_handle

The VISA resource used by this instrument.

visalib: str | None = visalib
parameters: dict[str, ParameterBase] = {}

All the parameters supported by this instrument. Usually populated via add_parameter().

functions: dict[str, Function] = {}

All the functions supported by this instrument. Usually populated via add_function().

submodules: dict[str, InstrumentModule | ChannelTuple] = {}

All the submodules of this instrument such as channel lists or logical groupings of parameters. Usually populated via add_submodule().

instrument_modules: dict[str, InstrumentModule] = {}

All the InstrumentModule of this instrument Usually populated via add_submodule().

log: InstrumentLoggerAdapter = get_instrument_logger(self, __name__)
metadata: dict[str, Any] = {}
display_text_2: Parameter = self.add_parameter( "display_text_2", get_cmd="DISP:WIND2:TEXT?", set_cmd='DISP:WIND2:TEXT "{}"', vals=Strings(), )

Parameter display_text_2

class qcodes.instrument_drivers.agilent.AgilentE8257D(name: str, address: str, step_attenuator: bool | None = None, **kwargs: Unpack[VisaInstrumentKWArgs])[source]

Bases: VisaInstrument

This is the QCoDeS driver for the Agilent E8257D signal generator. This driver will most likely work for multiple Agilent sources. This driver does not contain all commands available for the E8257D but only the ones most commonly used.

Attributes:

default_terminator

The default terminator to use if the terminator is not specified when creating the instrument.

frequency

Parameter frequency

phase

Parameter phase

power

Parameter power

output_enabled

Parameter output_enabled

Methods:

on()

off()

deg_to_rad(angle_deg)

rad_to_deg(angle_rad)

default_terminator: str | None = '\n'

The default terminator to use if the terminator is not specified when creating the instrument. None means use the default terminator from PyVisa.

visabackend: str = visabackend
visa_handle: pyvisa.resources.MessageBasedResource = visa_handle

The VISA resource used by this instrument.

visalib: str | None = visalib
parameters: dict[str, ParameterBase] = {}

All the parameters supported by this instrument. Usually populated via add_parameter().

functions: dict[str, Function] = {}

All the functions supported by this instrument. Usually populated via add_function().

submodules: dict[str, InstrumentModule | ChannelTuple] = {}

All the submodules of this instrument such as channel lists or logical groupings of parameters. Usually populated via add_submodule().

instrument_modules: dict[str, InstrumentModule] = {}

All the InstrumentModule of this instrument Usually populated via add_submodule().

log: InstrumentLoggerAdapter = get_instrument_logger(self, __name__)
metadata: dict[str, Any] = {}
frequency: Parameter = self.add_parameter( name="frequency", label="Frequency", unit="Hz", get_cmd="FREQ:CW?", set_cmd="FREQ:CW" + " {:.4f}", get_parser=float, set_parser=float, vals=vals.Numbers(self._min_freq, self._max_freq), )

Parameter frequency

phase: Parameter = self.add_parameter( name="phase", label="Phase", unit="deg", get_cmd="PHASE?", set_cmd="PHASE" + " {:.8f}", get_parser=self.rad_to_deg, set_parser=self.deg_to_rad, vals=vals.Numbers(-180, 180), )

Parameter phase

power: Parameter = self.add_parameter( name="power", label="Power", unit="dBm", get_cmd="POW:AMPL?", set_cmd="POW:AMPL" + " {:.4f}", get_parser=float, set_parser=float, vals=vals.Numbers(self._min_power, self._max_power), )

Parameter power

output_enabled: Parameter = self.add_parameter( "output_enabled", get_cmd=":OUTP?", set_cmd="OUTP {}", val_mapping=create_on_off_val_mapping(on_val="1", off_val="0"), )

Parameter output_enabled

on() None[source]
off() None[source]
static deg_to_rad(angle_deg: float | str | floating | integer) floating[Any][source]
static rad_to_deg(angle_rad: float | str | floating | integer) floating[Any][source]
class qcodes.instrument_drivers.agilent.AgilentE8267C(name: str, address: str, **kwargs: Unpack[VisaInstrumentKWArgs])[source]

Bases: VisaInstrument

This is the QCoDeS driver for the Agilent E8267C signal generator.

Attributes:

default_terminator

The default terminator to use if the terminator is not specified when creating the instrument.

frequency

Parameter frequency

freq_offset

Parameter freq_offset

freq_mode

Parameter freq_mode

pulse_width

Parameter pulse_width

phase

Parameter phase

power

Parameter power

power_offset

Parameter power_offset

output_rf

Parameter output_rf

modulation_rf

Parameter modulation_rf

Methods:

deg_to_rad(angle_deg)

rad_to_deg(angle_rad)

default_terminator: str | None = '\n'

The default terminator to use if the terminator is not specified when creating the instrument. None means use the default terminator from PyVisa.

frequency: Parameter = self.add_parameter( name="frequency", label="Frequency", unit="Hz", get_cmd="FREQ?", set_cmd="FREQ {}", get_parser=float, vals=Numbers(min_value=100e3, max_value=40e9), )

Parameter frequency

freq_offset: Parameter = self.add_parameter( name="freq_offset", label="Frequency offset", unit="Hz", get_cmd="FREQ:OFFS?", set_cmd="FREQ:OFFS {}", get_parser=float, vals=Numbers(min_value=-200e9, max_value=200e9), )

Parameter freq_offset

freq_mode: Parameter = self.add_parameter( "freq_mode", label="Frequency mode", set_cmd="FREQ:MODE {}", get_cmd="FREQ:MODE?", vals=Enum("FIX", "CW", "SWE", "LIST"), )

Parameter freq_mode

pulse_width: Parameter = self.add_parameter( "pulse_width", label="Pulse width", unit="ns", set_cmd="PULM:INT:PWID {}", get_cmd="PULM:INT:PWID?", vals=Numbers(min_value=10e-9, max_value=20e-9), )

Parameter pulse_width

phase: Parameter = self.add_parameter( name="phase", label="Phase", unit="deg", get_cmd="PHAS?", set_cmd="PHAS {}", get_parser=self.rad_to_deg, set_parser=self.deg_to_rad, vals=Numbers(min_value=-180, max_value=179), )

Parameter phase

power: Parameter = self.add_parameter( name="power", label="Power", unit="dBm", get_cmd="POW?", set_cmd="POW {}", get_parser=float, vals=Numbers(min_value=-135, max_value=25), )

Parameter power

visabackend: str = visabackend
visa_handle: pyvisa.resources.MessageBasedResource = visa_handle

The VISA resource used by this instrument.

visalib: str | None = visalib
parameters: dict[str, ParameterBase] = {}

All the parameters supported by this instrument. Usually populated via add_parameter().

functions: dict[str, Function] = {}

All the functions supported by this instrument. Usually populated via add_function().

submodules: dict[str, InstrumentModule | ChannelTuple] = {}

All the submodules of this instrument such as channel lists or logical groupings of parameters. Usually populated via add_submodule().

instrument_modules: dict[str, InstrumentModule] = {}

All the InstrumentModule of this instrument Usually populated via add_submodule().

log: InstrumentLoggerAdapter = get_instrument_logger(self, __name__)
metadata: dict[str, Any] = {}
power_offset: Parameter = self.add_parameter( name="power_offset", label="Power offset", unit="dBm", get_cmd="POW:OFFS?", set_cmd="POW:OFFS {}", get_parser=float, vals=Numbers(min_value=-200, max_value=200), )

Parameter power_offset

output_rf: Parameter = self.add_parameter( name="output_rf", get_cmd="OUTP?", set_cmd="OUTP {}", val_mapping={"OFF": 0, "ON": 1}, )

Parameter output_rf

modulation_rf: Parameter = self.add_parameter( name="modulation_rf", get_cmd="OUTP:MOD?", set_cmd="OUTP:MOD {}", val_mapping={"OFF": 0, "ON": 1}, )

Parameter modulation_rf

static deg_to_rad(angle_deg: float | str | floating | integer) floating[Any][source]
static rad_to_deg(angle_rad: float | str | floating | integer) floating[Any][source]