SR830 Lock-in Amplifier#

class QInstrument.instruments.StanfordResearch.SR830.instrument.QSR830(portName=None, **kwargs)[source]#

Bases: QSerialInstrument

SRS SR830 Lock-in Amplifier

Properties#

Reference and Phase#

amplitudefloat [V]

Amplitude of the reference sine output. Rounded to 0.002 V. Range: 0.004 <= amplitude <= 5.000

frequencyfloat [Hz]

Reference frequency for the internal oscillator. Rounded to 5 significant digits or 0.0001 Hz, whichever is greater. Range: 0.001 Hz <= frequency, frequency * harmonic <= 102 kHz

harmonicint

Detection harmonic. Range: 1 <= harmonic < 20000, frequency * harmonic <= 102 kHz

internal_referencebool

True: use internal reference source. False: use external reference source.

phasefloat [degrees]

Reference phase shift. Range: -360 <= phase <= 729.99

reference_triggerint

Reference trigger for external reference. 0: sine zero crossing, 1: TTL rising edge, 2: TTL falling edge. Must be 1 or 2 when frequency < 1 Hz.

Input and Filter#

dc_couplingbool

True: DC-coupled inputs. False: AC-coupled inputs.

input_configurationint

0: channel A, 1: A - B, 2: I (1 MOhm), 3: I (100 MOhm)

line_filterint

Input line notch filter configuration. 0: no filters, 1: line notch, 2: 2x line notch, 3: both notch filters

shield_groundingbool

True: input shielding is grounded. False: input shielding is floating.

Gain and Time Constant#

dynamic_reserveint

0: high dynamic reserve, 1: normal, 2: low noise

low_pass_slopeint

0: 6 dB/octave, 1: 12 dB/octave, 2: 18 dB/octave, 3: 24 dB/octave

sensitivityint

Voltage input sensitivities (V/V mode): 0: 2 nV/fA 10: 5 μV/pA 20: 10 mV/nA 1: 5 nV/fA 11: 10 μV/pA 21: 20 mV/nA 2: 10 nV/fA 12: 20 μV/pA 22: 50 mV/nA 3: 20 nV/fA 13: 50 μV/pA 23: 100 mV/nA 4: 50 nV/fA 14: 100 μV/pA 24: 200 mV/nA 5: 100 nV/fA 15: 200 μV/pA 25: 500 mV/nA 6: 200 nV/fA 16: 500 μV/pA 26: 1 V/μA 7: 500 nV/fA 17: 1 mV/nA 8: 1 μV/pA 18: 2 mV/nA 9: 2 μV/pA 19: 5 mV/nA

synchronous_filterbool

True: synchronous filtering below 200 Hz (only engaged when harmonic * frequency < 200 Hz). False: no synchronous filter.

time_constantint

Input filter time constant. 0: 20 μs 10: 1 s 1: 30 μs 11: 3 s 2: 100 μs 12: 10 s 3: 300 μs 13: 30 s 4: 1 ms 14: 100 s 5: 3 ms 15: 300 s 6: 10 ms 16: 1 ks 7: 30 ms 17: 3 ks 8: 100 ms 18: 10 ks 9: 300 ms 19: 30 ks

comm = {'baudRate': qtpy.QtSerialPort.QSerialPort.BaudRate.Baud9600, 'dataBits': qtpy.QtSerialPort.QSerialPort.DataBits.Data8, 'eol': '\n', 'flowControl': qtpy.QtSerialPort.QSerialPort.FlowControl.NoFlowControl, 'parity': qtpy.QtSerialPort.QSerialPort.Parity.NoParity, 'stopBits': qtpy.QtSerialPort.QSerialPort.StopBits.OneStop}#
identify()[source]#

Return True if the connected device identifies as an SR830.

Queries the instrument identification string (*IDN?) and checks for the 'SR830' model token in the response.

Return type:

bool

report()[source]#

Return the current frequency, magnitude, and phase.

Uses the SNAP command for simultaneous capture, avoiding the timing errors that would result from three sequential queries.

Return type:

list[float]

Returns:

list[float] – [frequency [Hz], R [V], theta [degrees]]

reset()[source]#

Reset the SR830 to its factory default settings.

Return type:

None

auto_gain()[source]#

Automatically adjust the sensitivity (autorange gain).

Return type:

None

auto_reserve()[source]#

Automatically adjust the dynamic reserve.

Return type:

None

auto_phase()[source]#

Automatically adjust the reference phase.

Return type:

None

auto_offset_x()[source]#

Automatically offset the X output channel to zero.

Return type:

None

auto_offset_y()[source]#

Automatically offset the Y output channel to zero.

Return type:

None

auto_offset_r()[source]#

Automatically offset the R output channel to zero.

Return type:

None

auto_offset(channel)[source]#

Automatically offset the specified output channel to zero.

Prefer the dedicated methods auto_offset_x(), auto_offset_y(), and auto_offset_r() for widget binding.

Parameters:

channel (int) – 1: X, 2: Y, 3: R

Return type:

None

class QInstrument.instruments.StanfordResearch.SR830.fake.QFakeSR830(*args, **kwargs)[source]#

Bases: QFakeInstrument, QSR830

Fake SR830 for UI development without hardware.

All read/write properties are backed by an in-memory store via the MRO auto-mock pattern.

identify()[source]#

Return True if the connected device identifies as an SR830.

Queries the instrument identification string (*IDN?) and checks for the 'SR830' model token in the response.

Return type:

bool

report()[source]#

Return simulated [frequency, R, theta].

Return type:

list[float]

class QInstrument.instruments.StanfordResearch.SR830.widget.QSR830Widget(*args, device=None, **kwargs)[source]#

Bases: QInstrumentWidget

Stanford Research Systems SR830 Lock-in Amplifier

UIFILE = 'SR830Widget.ui'#
INSTRUMENT#

alias of QSR830

class QInstrument.instruments.StanfordResearch.SR830.tree.QSR830Tree(*args, device=None, fields=None, **kwargs)[source]#

Bases: QInstrumentTree

Parameter tree for the Stanford Research Systems SR830 Lock-in Amplifier.

INSTRUMENT#

alias of QSR830