qcodes_contrib_drivers.drivers.RohdeSchwarz package¶
Subpackages¶
Submodules¶
qcodes_contrib_drivers.drivers.RohdeSchwarz.HMC8041 module¶
qcodes_contrib_drivers.drivers.RohdeSchwarz.HMC8042 module¶
qcodes_contrib_drivers.drivers.RohdeSchwarz.HMC8043 module¶
qcodes_contrib_drivers.drivers.RohdeSchwarz.HMP2020 module¶
qcodes_contrib_drivers.drivers.RohdeSchwarz.HMP2030 module¶
qcodes_contrib_drivers.drivers.RohdeSchwarz.HMP4030 module¶
qcodes_contrib_drivers.drivers.RohdeSchwarz.HMP4040 module¶
qcodes_contrib_drivers.drivers.RohdeSchwarz.SMB100A module¶
QCoDeS-Driver for Rohde & Schwartz SMB100A microwave signal generator: https://www.rohde-schwarz.com/us/products/test-and-measurement/analog-signal-generators/rs-smb100a-microwave-signal-generator_63493-9379.html
- Authors:
Julien Barrier <julien@julienbarrier.eu>, 2023
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.SMB100A.RohdeSchwarz_SMB100A(*args: Any, **kwargs: Any)[source]¶
Bases:
VisaInstrument
Class to represent a Rohde & Schwartz SMB100A microwave signal generator
status: beta-version
- Parameters:
name – name for the instrument
address – Visa resource name to connect
qcodes_contrib_drivers.drivers.RohdeSchwarz.SMR40 module¶
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.SMR40.RohdeSchwarz_SMR40(*args: Any, **kwargs: Any)[source]¶
Bases:
VisaInstrument
This is the qcodes driver for the Rohde & Schwarz SMR40 signal generator Status: beta-version.
- Work still pending:
Add all parameters that are in the manual
Add test suite
See if there can be a common driver for RS mw sources from which different models inherit
This driver does not contain all commands available for the SMR40 but only the ones most commonly used.
- do_get_frequency()[source]¶
Get frequency from device.
- Parameters:
None
- Output:
frequency (float) : frequency in Hz
- do_get_power()[source]¶
Get output power from device.
- Parameters:
None
- Output:
power (float) : output power in dBm
- do_get_pulse_delay()[source]¶
Get output power from device.
- Parameters:
None
- Output:
power (float) : output power in dBm
- do_get_status()[source]¶
Get status from instrument.
- Parameters:
None
- Output:
status (str) : ‘on or ‘off’
- do_get_status_of_ALC()[source]¶
Get status from instrument.
- Parameters:
None
- Output:
status (str) : ‘on or ‘off’
- do_get_status_of_modulation()[source]¶
Get status from instrument.
- Parameters:
None
- Output:
status (str) : ‘on’ or ‘off’
- do_set_frequency(frequency)[source]¶
Set frequency of device.
- Parameters:
frequency (float) – frequency in Hz
- Output:
None
- do_set_power(power)[source]¶
Set output power of device.
- Parameters:
power (float) – output power in dBm
- Output:
None
- do_set_pulse_delay(delay)[source]¶
Set output power of device.
- Parameters:
power (float) – output power in dBm
- Output:
None
- do_set_status(status)[source]¶
Set status of instrument.
- Parameters:
status (str) – ‘on or ‘off’
- Output:
None
- do_set_status_of_ALC(status)[source]¶
Set status of instrument.
- Parameters:
status (str) – ‘on or ‘off’
- Output:
None
- do_set_status_of_modulation(status)[source]¶
Set status of modulation.
- Parameters:
status (str) – ‘on’ or ‘off’
- Output:
None
qcodes_contrib_drivers.drivers.RohdeSchwarz.SMW200A module¶
QCoDeS-Driver for Rohde&Schwarz Vector Signal Generator RS_SMW200A.
This driver can be used with a simulation class (SMW200Asim.py) to generate reasonable answers to all requests. The only thing is to change two times the comments as shown below (real mode/simulation mode).
Note
To use RohdeSchwarz_SMW200A with a dummy/simulator, replace its base class VisaInstrument with MockVisa from file SMW200Asim.py.
- Authors:
Michael Wagener, ZEA-2, m.wagener@fz-juelich.de Sarah Fleitmann, ZEA-2, s.fleitmann@fz-juelich.de Lukas Lankes, ZEA-2, l.lankes@fz-juelich.de
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.SMW200A.AmplitudeModulation(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int, chnum: int)[source]¶
Bases:
InstrumentChannel
- __init__(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int, chnum: int)[source]¶
Combines all the parameters concerning the amplitude modulation. Activation of amplitude modulation deactivates ARB, I/Q modulation, digital modulation and all digital standards.
- Parameters:
parent – the parent instrument of this channel
name – the internal QCoDeS name of this channel
hwchan – the internal number of the hardware channel used in the communication
chnum – the internal number of the channel used in the communication
- state¶
actives/deactivates the amplitude modulation. Values are ‘ON’ and ‘OFF’.
- source¶
Selects the modulation source. Values are: ‘INT’: internally generated LF signal = ‘LF1’ (channel 2 only with option SMW-K24) ‘EXT’: externally supplied LF signal = ‘EXT1’ (channel 2 only with option SMW-K24) ‘LF1’: first internally generated signal ‘LF2’: second internally gererated signal (only available with option SMW-K24) ‘NOIS’: internally generated noise signal (only available with option SMW-K24) ‘EXT1’: first externally supplied signal ‘EXT2’: second externally supplied signal
- depth¶
Sets the depth of the amplitude modulation in percent.
- total_depth¶
Sets the total depth of the LF signal when using combined signal sources in amplitude modulation.
- coupling_mode¶
Selects the coupling mode. The coupling mode parameter also determines the modefor fixing the total depth. Values are: ‘UNC’: Does not couple the LF signals. The deviation depth values of both paths are independent. ‘TOT’: Couples the deviation depth of both paths. ‘RAT’: Couples the deviation depth ratio of both paths.
- deviation_ratio¶
Sets the deviation ratio (path2 to path1) in percent.
- sensitivity¶
(ReadOnly) Queries the sensitivity of the externally applied signal. The sensitivity depends on the set modulation depth. The returned value reports the sensitivity in %/V. It is assigned to the voltage value for full modulation of the input.
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.SMW200A.FrequencyModulation(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int, chnum: int)[source]¶
Bases:
InstrumentChannel
- __init__(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int, chnum: int)[source]¶
Combines all the parameters concerning the frequency modulation.
- Parameters:
parent – the parent instrument of this channel
name – the internal QCoDeS name of this channel
hwchan – the internal number of the hardware channel used in the communication
chnum – the internal number of the channel used for the communication
- state¶
actives/deactivates the frequency modulation. Values are ‘ON’ and ‘OFF’.
- deviation¶
Sets the modulation deviation of the frequency modulation in Hz.
- source¶
Selects the modulation source. Values are: ‘INT’: internally generated LF signal = ‘LF1’ (channel 2 only with option SMW-K24) ‘EXT’: externally supplied LF signal = ‘EXT1’ (channel 2 only with option SMW-K24) ‘LF1’: first internally generated signal ‘LF2’: second internally gererated signal (only available with option SMW-K24) ‘NOIS’: internally generated noise signal (only available with option SMW-K24) ‘EXT1’: first externally supplied signal ‘EXT2’: second externally supplied signal ‘INTB’: internal baseband signal (only available with option SMW-B9)
- coupling_mode¶
Selects the coupling mode. The coupling mode parameter also determines the mode for fixing the total deviation. Values are: ‘UNC’: Does not couple the LF signals. The deviation values of both paths are independent. ‘TOT’: Couples the deviation of both paths. ‘RAT’: Couples the deviation ratio of both paths
- total_deviation¶
Sets the total deviation of the LF signal when using combined signal sources in frequency modulation.
- deviation_ratio¶
Sets the deviation ratio (path2 to path1) in percent.
- mode¶
Selects the mode for the frequency modulation. Values are: ‘NOR’: normal mode ‘LNO’: low noise mode
- sensitivity¶
(ReadOnly) Queries the sensitivity of the externally supplied signal for frequency modulation. The sensitivity depends on the set modulation deviation.
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.SMW200A.IQChannel(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int)[source]¶
Bases:
InstrumentChannel
- __init__(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int)[source]¶
The I/Q channels are the analog output channels of the device.
- Parameters:
parent – the parent instrument of this channel
name – the internal QCoDeS name of this channel
hwchan – the internal number of the hardware channel used in the communication
- state¶
Actives/deactives the I/Q output. Values are ‘ON’ and ‘OFF’.
- type¶
Sets the type of the analog signal. Values are ‘SING’ (single) and ‘DIFF’ (differential, only available with option SMW-K16)
- mode¶
Determines the mode for setting the output parameters. Values are ‘FIX’: Locks the I/Q output settings ‘VAR’: Unlocks the settings (only available with option SMW-K16)
- level¶
Sets the off-load voltage Vp of the analog I/Q signal output. Values are in range 0.04V to 4V for option SMW-B10 and in range 0.04V to 2V for option SMW-B9. The value range is adjusted so that the maximum overall output voltage does not exceed 4V. Only settable when mode has the value ‘VAR’.
- coupling¶
Couples the bias setting of the I and Q signal components. Values are ‘ON and ‘OFF’.
- i_bias¶
Specifies the amplifier bias of the I component. The value range is adjusted so that the maximum overall output voltage does not exceed 4V. Is only settable, if the mode parameter has the value ‘VAR’.
- q_bias¶
Specifies the amplifier bias of the Q component. The value range is adjusted so that the maximum overall output voltage does not exceed 4V. Is only settable, if the mode parameter has the value ‘VAR’.
- i_offset¶
Sets an offset between the inverting and non-inverting input of the differential analog I/Q output signal for the I component. The value range is adjusted so that the maximum overall output voltage does not exceed 4V. Is only settable, if parameter mode has the value ‘VAR’.
- q_offset¶
Sets an offset between the inverting and non-inverting input of the differential analog I/Q output signal for the Q component. The value range is adjusted so that the maximum overall output voltage does not exceed 4V. Is only settable, if parameter mode has the value ‘VAR’.
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.SMW200A.IQModulation(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int)[source]¶
Bases:
InstrumentChannel
- __init__(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int)[source]¶
Combines all the parameters concerning the IQ modulation.
- Parameters:
parent – the parent instrument of this channel
name – the internal QCoDeS name of this channel
hwchan – the internal number of the hardware channel used in the communication
- state¶
Activates/deactivates the I/Q modulation. Values are ‘ON’, and ‘OFF’.
- source¶
Selects/reads the input signal source for the I/Q modulator. ‘BAS’: internal baseband signal ‘ANAL’: external analog signal ‘DIFF’: differential analog signal (only with option SMW-K739)
- gain¶
Optimizes the modulation of the I/Q modulator for a subset of measurement requirements. ‘DB0’: Activates the gain of 0 dB ‘DB2’: Activates the gain of +2 dB ‘DB3’: same as ‘DB2’, for backward compatibility ‘DB4’: Activates the gain of +4 dB ‘DB6’: Activates the gain of +6 dB ‘DB8’: Activates the gain of +8 dB ‘DBM2’: Activates the gain of -2 dB ‘DBM3’: same as ‘DBM2’, for backward compatibility ‘DBM4’: Activates the gain of -4 dB ‘AUTO’: The gain value is retrieved form the connected R&S SZU. The I/Q modulator is configured automatically.
- swap¶
Activates/Deactives the swapping of the I and Q channel. Values are ‘ON’ / ‘OFF’.
- crest_factor¶
If source set to ‘ANAL’ (Analog Wideband I/Q Input), sets the crest factor of the externally supplied analog signal. The crest factor gives the difference in level between the peak envelope power (PEP) and the average power value (RMS) in dB. The R&S SMW uses this value for the calculation of the RF output power. The allowed range is from 0 dB to 35 dB.
- wideband¶
Activates/deactivates optimization for wideband modulation signals (higher I/Q modulation bandwidth). Values are ‘ON’ and ‘OFF’.
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.SMW200A.LFOutputChannel(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int, lfchan: int)[source]¶
Bases:
InstrumentChannel
- __init__(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int, lfchan: int)[source]¶
Combines all the parameters concerning one LF output. The LF output is used as modulation signal for the analog modulation.
- Parameters:
parent – the parent instrument of this channel
name – the internal QCoDeS name of this channel
hwchan – the internal number of the hardware channel used in the communication
lfchan – the internal number of the LF output channel used
- bandwidth¶
(ReadOnly) Requests the current bandwidth.
- state¶
(hwchan=1) The state of the output. Values are ‘ON’ or ‘OFF’.
- offset¶
(hwchan=1) DC offset voltage in the range from -3.6V to +3.6V.
- source¶
(hwchan=1) Determines the LF signal to be synchronized if monitoring is enabled.
‘LF1’, ‘LF2’, ‘LF1A’, ‘LF2A’, ‘LF1B’, ‘LF2B’: Selects an internally generated LF signal.
‘NOISE’, ‘NOISA’, ‘NOISB’: Selects an internally generated noise signal.
‘EXT1’, ‘EXT2’: Selects an externally supplied LF signal.
‘AM’, ‘AMA’, ‘AMB’: Selects the AM signal.
‘FMPM’, ‘FMPMA’, ‘FMPMB’: Selects the signal also used by the frequency or phase modulations.
- source_path¶
(hwchan=1) Path of the LF output source. Values are ‘A’ or ‘B’.
- voltage¶
(hwchan=1) Output voltage of the LF output. The valid range will be dynamic
- as shown in the datasheet.
- period¶
(lfchan=1, ReadOnly). Queries the repetition frequency of the sine signal.
- frequency¶
(lfchan=1) The Frequency of the LF signal when the mode() is ‘FIX’. Valid range is from 0.1Hz and ends
- depending on the installed options.
- freq_manual¶
(lfchan=1) Manual frequency set only valid in the range given by the parameters freq_min and freq_max.
- freq_min¶
(lfchan=1) Set minimum for manual frequency from 0.1Hz to 1MHz.
- freq_max¶
(lfchan=1) Set maximum for manual frequency from 0.1Hz to 1MHz.
- mode¶
(lfchan=1) Set the used mode:
‘FIX’: fixed frequency mode (CW is a synonym)
‘SWE’: set sweep mode (use LFOutputSweep class)
- shape¶
(SMW-K24) Define the shape of the signal.
- Valid values
‘SINE’,’SQUARE’,’TRIANGLE’,’TRAPEZE’.
- shape_duty_cycle¶
(SMW-K24) Duty cycle for shape pulse (range 1e-6 to 100)
- shape_period¶
(SMW-K24) Period for shape pulse (range 1e-6 to 100)
- shape_width¶
(SMW-K24) Width for shape pulse (range 1e-6 to 100)
- trapez_fall¶
(SMW-K24) Fall time for the trapezoid shape (range 1e-6 to 100)
- trapez_height¶
(SMW-K24) High time for the trapezoid signal (range 1e-6 to 100)
- trapez_period¶
(SMW-K24) Period of the generated trapezoid shape (range 1e-6 to 100)
- trapez_rise¶
(SMW-K24) Rise time for the trapezoid shape (range 1e-6 to 100)
- triangle_period¶
(SMW-K24) Period of the generated pulse (range 1e-6 to 100)
- triangle_rise¶
(SMW-K24) Rise time for the triangle shape (range 1e-6 to 100)
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.SMW200A.LFOutputSweep(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int)[source]¶
Bases:
InstrumentChannel
- __init__(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int)[source]¶
Combines all the parameters concerning one LF output Sweeping. The LF output is used as modulation signal for the analog modulation.
- Parameters:
parent – the parent instrument of this channel
name – the internal QCoDeS name of this channel
hwchan – the internal number of the hardware channel used in the communication
- dwell¶
Dwell time in seconds from 0.5 ms to 100 s.
- mode¶
Cycle mode for level sweep. ‘AUTO’: Each trigger triggers exactly one complete sweep. ‘MAN’: You can trigger every step individually with a command. ‘STEP’: Each trigger triggers one sweep step only.
- points¶
Steps within level sweep range
- shape¶
Waveform shape for sweep. Allowed values are ‘SAWTOOTH’ and ‘TRIANGLE’
- execute¶
Executes one RF level sweep. Use this without any ( )
- retrace¶
Activates that the signal changes to the start frequency value while it is waiting for the next trigger event. Values are ‘ON’ and ‘OFF’. You can enable this feature, when you are working with sawtooth shapes in sweep mode ‘MAN’ or ‘STEP’.
- running¶
(ReadOnly) Reports the current sweep state. Returnvalues are ‘ON’ or ‘OFF’.
- spacing¶
calculationmode of frequency intervals. Values are ‘LIN’ or ‘LOG’
- log_step¶
Sets the step width factor for logarithmic sweeps to calculate the frequencies of the steps. The value can be from 0.01% upto 100%.
- lin_step¶
Set the step size for linear sweep. The value can be from 0.01 up to the value of <OutputChannel::sweep_span>
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.SMW200A.OutputChannel(parent: RohdeSchwarz_SMW200A, name: str, chnum: int)[source]¶
Bases:
InstrumentChannel
- __init__(parent: RohdeSchwarz_SMW200A, name: str, chnum: int)[source]¶
Combines all the parameters concerning one RF output.
- Parameters:
parent – the parent instrument of this channel
name – the internal QCoDeS name of this channel
chnum – the internal number of the channel used in the communication
- state¶
actives/deactivates the RF output. Values are ‘ON’ and ‘OFF’.
- frequency¶
set/read the main frequency of the oscillator.
- level¶
set/read the output power level.
- mode¶
selects the mode of the oscillator. Valid values are: ‘FIX’: fixed frequency mode (CW is a synonym) ‘SWE’: set sweep mode (use sweep_start/sweep_stop/sweep_center/sweep_span) ‘LIST’: use a special loadable list of frequencies - the list functions are not yet implemented here.
- sweep_center¶
set/read the center frequency of the sweep.
- sweep_span¶
set/read the span of frequency sweep range.
- sweep_start¶
set/read the start frequency of the sweep.
- sweep_stop¶
set/read the stop frequency of the sweep.
- losc_input¶
read the LOscillator input frequency (ReadOnly).
- losc_mode¶
set/read the LOscillator mode. Valid values are:
‘INT’: A&B Internal / Internal (one path instrument). Uses the internal oscillator signal in both paths.
‘EXT’: A External & B Internal (one path instrument). Uses an external signal in path A. B uses its internal signal.
‘COUP’: A Internal & A->B Coupled. Assigns the internal oscillator signal of path A also to path B.
‘ECO’: A External & A->B Coupled. Assigns an externally supplied signal to both paths.
‘BOFF’: A Internal & B RF Off. Uses the internal local oscillator signal of path A, if the selected frequency exceeds the maximum frequency of path B.
‘EBOF’: A External & B RF Off. Uses the LO IN signal for path A, if the selected RF frequency exceeds the maximum frequency of path B.
‘AOFF’: A RF Off & B External. Uses the LO IN signal for path B, if the selected RF frequency exceeds the maximum frequency of path A.
- losc_output¶
read the LOscillator output frequency (ReadOnly).
- losc_state¶
set/read the LOscillator state. Valid values are ‘ON’ and ‘OFF’.
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.SMW200A.OutputFrequencySweep(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int)[source]¶
Bases:
InstrumentChannel
- __init__(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int)[source]¶
Combines all the parameters concerning one RF output frequency sweeping.
- Parameters:
parent – the parent instrument of this channel
name – the internal QCoDeS name of this channel
hwchan – the internal number of the hardware channel used in the communication
- dwell¶
Dwell time for frequency sweep. Valid range from 0.001s to 100s.
- mode¶
Cycle mode for frequency sweep. Values are: ‘AUTO’: Each trigger triggers exactly one complete sweep. ‘MAN’: You can trigger every step individually with a command. ‘STEP’: Each trigger triggers one sweep step only.
- points¶
Steps within frequency sweep range, minimum is 2.
- spacing¶
Calculationmode of frequency intervals. Values are ‘LIN’ or ‘LOG’.
- shape¶
Waveform shape for sweep. Valid values are ‘SAWTOOTH’ or ‘TRIANGLE’.
- execute¶
Executes one RF frequency sweep. Use no braces () here!
- retrace¶
Activates that the signal changes to the start frequency value while it is waiting for the next trigger event. Values are ‘ON’ and ‘OFF’. You can enable this feature, when you are working with sawtooth shapes in sweep mode ‘MAN’ or ‘STEP’.
- running¶
(ReadOnly) Get the current sweep state. Return values are ‘ON’ or ‘OFF’.
- log_step¶
Logarithmically determined step size for the RF frequency sweep. Valid range is 0.01 to 100.
- lin_step¶
Step size for linear RF frequency sweep. The minimum is 0.01 and the maximum is the sweep_span of the output channel and will be read during the set lin_step command.
- reset¶
Resets all active sweeps to the starting point. Use no braces () here!
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.SMW200A.OutputLevelSweep(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int)[source]¶
Bases:
InstrumentChannel
- __init__(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int)[source]¶
Combines all the parameters concerning one RF output level (power) sweeping.
- Parameters:
parent – the parent instrument of this channel
name – the internal QCoDeS name of this channel
hwchan – the internal number of the hardware channel used in the communication
- attenuator¶
Power attenuator mode for level sweep. Values are: ‘NORM’: Performs the level settings in the range of the built-in attenuator. ‘HPOW’: Performs the level settings in the high level range.
- dwell¶
Dwell time for level sweep, valid range is from 0.001s to 100s.
- mode¶
Cycle mode for level sweep. Values are: ‘AUTO’: Each trigger triggers exactly one complete sweep. ‘MAN’: You can trigger every step individually with a command. ‘STEP’: Each trigger triggers one sweep step only.
- points¶
Steps within level sweep range, minimum is 2.
- log_step¶
Logarithmically determined step size for the RF level sweep, valid range is 0.01dB to 139dB.
- shape¶
Waveform shape for sweep. Valid are ‘SAWTOOTH’ and ‘TRIANGLE’.
- execute¶
Executes one RF level sweep. Use no braces () here!
- retrace¶
Activates that the signal changes to the start frequency value while it is waiting for the next trigger event. Values are ‘ON’ and ‘OFF’. You can enable this feature, when you are working with sawtooth shapes in sweep mode ‘MAN’ or ‘STEP’.
- running¶
(ReadOnly) Get the current sweep state. Return values are ‘ON’ or ‘OFF’.
- reset¶
Resets all active sweeps to the starting point. Use no braces () here!
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.SMW200A.PhaseModulation(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int, chnum: int)[source]¶
Bases:
InstrumentChannel
- __init__(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int, chnum: int)[source]¶
Combines all the parameters concerning the phase modulation.
- Parameters:
parent – the parent instrument of this channel
name – the internal QCoDeS name of this channel
hwchan – the internal number of the hardware channel used in the communication
chnum – the internal number of the channel used in the communication
- state¶
Activates or deactivates phase modulation. Activation of phase modulation deactivates frequency modulation. Possible values are ‘ON’ and ‘OFF’.
- deviation¶
Sets the modulation deviation of the phase modulation in RAD.
- source¶
Selects the modulation source. Values are: ‘INT’: internally generated LF signal = ‘LF1’ (channel 2 only with option SMW-K24) ‘EXT’: externally supplied LF signal = ‘EXT1’ (channel 2 only with option SMW-K24) ‘LF1’: first internally generated signal ‘LF2’: second internally gererated signal (only available with option SMW-K24) ‘NOIS’: internally generated noise signal (only available with option SMW-K24) ‘EXT1’: first externally supplied signal ‘EXT2’: second externally supplied signal ‘INTB’: internal baseband signal (only available with option SMW-B9)
- mode¶
Selects the mode for the phase modulation. Possible values are: ‘HBAN’: sets the maximum available bandwidth (High BANdwidth) ‘HDEV’: sets the maximum range for deviation (High DEViation) ‘LNO’: selects a phase modulation mode with phase noise and spurious characteristics close to CW mode. (Low NOise)
- coupling_mode¶
Selects the coupling mode. Possible values are: ‘UNC’: Does not couple the LF signals. The deviation of both paths are independent. ‘TOT’: Couples the deviation of both paths. ‘RAT’: Couples the deviation ratio of both paths.
- total_deviation¶
Sets the total deviation of the LF signal when using combined signal sources. Possible values range from 0 to 20.
- ratio¶
Sets the deviation ratio (path2 to path1) in percent.
- sensitivity¶
Queries the sensitivity of the externally applied signal for phase modulation. The returned value reports the sensitivity in RAD/V. It is assigned to the voltage value for full modulation of the input.
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.SMW200A.PulseGenerator(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int)[source]¶
Bases:
InstrumentChannel
- Configurations for the Pulse Generator set with another subclasses:
Pulse Mode -> PulseModulation.mode() Trigger Mode -> PulseModulation.trigger_mode() Pulse Period -> PulseModulation.period() Pulse Width -> PulseModulation.width() Double Pulse Width -> PulseModulation.double_width() Pulse Delay -> PulseModulation.delay() Double Pulse Delay -> PulseModulation.double_delay()
- __init__(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int)[source]¶
Combines all the parameters concerning the pulse generator for setting output of the pulse modulation signal. Available only with option SMW-K23 installed.
- Parameters:
parent – the parent instrument of this channel
name – the internal QCoDeS name of this channel
hwchan – the internal number of the hardware channel used in the communication
- polarity¶
Sets the polarity of the pulse output signal. Values are: ‘NORM’: Outputs the pulse signal during the pulse width, that means during the high state. ‘INV’: Inverts the pulse output signal polarity. The pulse output signal is suppressed during the pulse width, but provided during the low state.
- output¶
Activates the output of the pulse modulation signal. Values are: ‘OFF’ or ‘ON’.
- state¶
Enables the output of the video/sync signal. If the pulse generator is the current modulation source, activating the pulse modulation automatically activates the signal output and the pulse generator.
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.SMW200A.PulseModulation(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int)[source]¶
Bases:
InstrumentChannel
- __init__(parent: RohdeSchwarz_SMW200A, name: str, hwchan: int)[source]¶
Combines all the parameters concerning the pulse modulation.
- Parameters:
parent – the parent instrument of this channel
name – the internal QCoDeS name of this channel
hwchan – the internal number of the hardware channel used in the communication
- state¶
Activates/deactivates the pulse modulation. Values are ‘ON’ and ‘OFF’.
- source¶
Selects the modulation source. Values are:
‘INT’: internally generated signal is used (only available with option SMW-K23)
‘EXT’: externally supplied signal is used
- transition_type¶
sets the transition mode for the pulse signal. Values are:
‘SMO’: flattens the slew , resulting in longer rise/fall times (SMOothed)
‘FAST’: enables fast transition with shortest rise and fall times
- video_polarity¶
Sets the polarity of the pulse video (modulating) signal, related to the RF (modulated) signal. Values are:
‘NORM’: the video signal follows the RF signal, that means it is high when RF signal is high and vice versa
‘INV’: the video signal follows in inverted mode
- polarity¶
sets the polarity of the externally applied modulation signal
‘NORM’: Suppresses the RF signal during the pulse pause
‘INV’: Suppresses the RF signal during the pulse
- impedance¶
Sets the impedance for the external pulse modulation input. Values are ‘G50’ and ‘G1K’
- trigger_impedance¶
Sets the impedance for the external pulse trigger. Values are ‘G50’ and ‘G10K’
- mode¶
(Only SMW-K23) Selects the mode for the pulse modulation. Values can be:
‘SING’: generates a single pulse
‘DOUB’: generates two pulses within one pulse period
- double_delay¶
(Only SMW-K23) Sets the delay from the start of the first pulse to the start of the second pulse.
- double_width¶
(Only SMW-K23) Sets the width of the second pulse.
- trigger_mode¶
(Only SMW-K23) Selects a trigger mode for generating the modulation signal. Values are ‘AUTO’ (AUTOmatic), ‘EXT’ (EXTernal), ‘EGAT’ (External GATed), ‘ESIN’ (External single).
- period¶
(Only SMW-K23) Sets the period of the generated pulse, that means the repetition frequency of the internally generated modulation signal.
- width¶
(Only SMW-K23) Sets the width of the generated pulse, that means the pulse length. It must be at least 20ns less than the set pulse period.
- delay¶
(Only SMW-K23) Sets the pulse delay.
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.SMW200A.RohdeSchwarz_SMW200A(*args: Any, **kwargs: Any)[source]¶
Bases:
VisaInstrument
This is the qcodes driver for the Rohde & Schwarz SMW200A vector signal generator.
Do not forget to change the class for real / simulation mode.
- Status:
coding: almost finished communication tests: done usage in experiment: outstanding
- gen_trigger_pulse(val)[source]¶
Function to generate a trigger pulse. The port for this is always defined by the user. And the Options SMW-K22 and SMW-K23 must be installed.
- Parameters:
val – the time value in seconds (tested with 0.0001)
- get_error()[source]¶
Reads the errors from the device.
- Parameters:
None
- Returns:
List of strings containing error number and string representation
- get_id()[source]¶
Get the device identification.
- Parameters:
None
- Returns:
Strings from the IDN command from the startup.
- get_options()[source]¶
Get the device option flags.
- Parameters:
None
- Returns:
Stringarray with the options installed in the device
- getall(submod='*')[source]¶
Read all parameters and retun them to the caller. This will scan all submodules with all parameters, so in this function no changes are necessary for new modules or parameters.
- Parameters:
submod – (optional) returns only the parameters for this submodule.
- Returns:
dict with all parameters, the key is the modulename and the parametername
qcodes_contrib_drivers.drivers.RohdeSchwarz.SMW200Asim module¶
Simulation for the QCoDeS-Driver SMW200A.
This simulation is used to generate meanfull answers to the comunication from the driver if the hardware is not available.
- Authors:
Michael Wagener, ZEA-2, m.wagener@fz-juelich.de
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.SMW200Asim.MockVisa(*args: Any, **kwargs: Any)[source]¶
Bases:
VisaInstrument
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.SMW200Asim.MockVisaHandle[source]¶
Bases:
object
Simulate the API needed for a visa handle.
- cmddef = {'*IDN?': 'Rohde&Schwarz,SMW200A,1412.0000K02/105578,04.30.005.29 SP2', '*OPT?': 'SMW-B13T,SMW-B22,SMW-B120,SMW-K22,SMW-K23', 'OUTP1:STAT?': '0', 'SOUR1:AM1:DEPT?': '50.0', 'SOUR1:AM1:SOUR?': 'LF1', 'SOUR1:AM1:STAT?': '0', 'SOUR1:AM2:DEPT?': '50.0', 'SOUR1:AM2:SOUR?': 'LF1', 'SOUR1:AM2:STAT?': '0', 'SOUR1:AM:RAT?': '50.0', 'SOUR1:AM:SENS?': '50.0', 'SOUR1:FM1:DEV?': '1000.0', 'SOUR1:FM1:SOUR?': 'LF1', 'SOUR1:FM1:STAT?': '0', 'SOUR1:FM2:DEV?': '1000.0', 'SOUR1:FM2:SOUR?': 'EXT1', 'SOUR1:FM2:STAT?': '0', 'SOUR1:FM:MODE?': 'NORM', 'SOUR1:FM:RAT?': '100.0', 'SOUR1:FM:SENS?': '1000.0', 'SOUR1:FREQ:CENT?': '300000000.0', 'SOUR1:FREQ:LOSC:INP:FREQ?': '0', 'SOUR1:FREQ:LOSC:MODE?': 'INT', 'SOUR1:FREQ:LOSC:OUTP:FREQ?': '0', 'SOUR1:FREQ:LOSC:OUTP:STAT?': '0', 'SOUR1:FREQ:MODE?': 'CW', 'SOUR1:FREQ:SPAN?': '400000000.0', 'SOUR1:FREQ:STAR?': '100000000.0', 'SOUR1:FREQ:STOP?': '500000000.0', 'SOUR1:FREQ?': '20000000000.0', 'SOUR1:IQ:CRES?': '0.0', 'SOUR1:IQ:GAIN?': 'DB4', 'SOUR1:IQ:OUTP:ANAL:BIAS:COUP:STAT?': '0', 'SOUR1:IQ:OUTP:ANAL:BIAS:I?': '0', 'SOUR1:IQ:OUTP:ANAL:BIAS:Q?': '0', 'SOUR1:IQ:OUTP:ANAL:MODE?': 'FIX', 'SOUR1:IQ:OUTP:ANAL:OFFS:I?': '0', 'SOUR1:IQ:OUTP:ANAL:OFFS:Q?': '0', 'SOUR1:IQ:OUTP:ANAL:STAT?': '0', 'SOUR1:IQ:OUTP:ANAL:TYPE?': 'SING', 'SOUR1:IQ:OUTP:LEV?': '1.0', 'SOUR1:IQ:SOUR?': 'BAS', 'SOUR1:IQ:STAT?': '0', 'SOUR1:IQ:SWAP:STAT?': '0', 'SOUR1:IQ:WBST?': '0', 'SOUR1:LFO1:FREQ?': '1000.0', 'SOUR1:LFO:FREQ:MAN?': '1000.0', 'SOUR1:LFO:FREQ:MODE?': 'CW', 'SOUR1:LFO:FREQ:STAR?': '1000.0', 'SOUR1:LFO:FREQ:STOP?': '50000.0', 'SOUR1:LFO:SWE:DWEL?': '0.01', 'SOUR1:LFO:SWE:MODE?': 'AUTO', 'SOUR1:LFO:SWE:POIN?': '50', 'SOUR1:LFO:SWE:RETR?': '0', 'SOUR1:LFO:SWE:RUNN?': '0', 'SOUR1:LFO:SWE:SHAP?': 'SAWT', 'SOUR1:LFO:SWE:SPAC?': 'LIN', 'SOUR1:LFO:SWE:STEP:LOG?': '1.0', 'SOUR1:LFO:SWE:STEP?': '1000.0', 'SOUR1:PGEN:OUTP:POL?': 'NORM', 'SOUR1:PGEN:OUTP:STAT': 'OFF', 'SOUR1:PGEN:STAT': 'OFF', 'SOUR1:PM1:SOUR?': 'LF1', 'SOUR1:PM1:STAT?': '0', 'SOUR1:PM2:SOUR?': 'EXT1', 'SOUR1:PM2:STAT?': '0', 'SOUR1:PM:MODE?': 'HBAN', 'SOUR1:PM:RAT?': '100', 'SOUR1:PM:SENS?': '1', 'SOUR1:POW:POW?': '-145.0', 'SOUR1:PULM:DEL?': '0', 'SOUR1:PULM:DOUB:DEL?': '0', 'SOUR1:PULM:DOUB:WID?': '0', 'SOUR1:PULM:IMP?': 'G1K', 'SOUR1:PULM:MODE?': '0', 'SOUR1:PULM:OUTP:VID:POL?': 'NORM', 'SOUR1:PULM:PER?': '2.0', 'SOUR1:PULM:POL?': 'NORM', 'SOUR1:PULM:SOUR?': 'EXT', 'SOUR1:PULM:STAT?': '0', 'SOUR1:PULM:TRIG:EXT:IMP?': 'G50', 'SOUR1:PULM:TRIG:MODE?': '0', 'SOUR1:PULM:TTYP?': 'FAST', 'SOUR1:PULM:WIDT?': '0', 'SOUR1:SWE:DWEL?': '0.01', 'SOUR1:SWE:MODE?': 'AUTO', 'SOUR1:SWE:POIN?': '401', 'SOUR1:SWE:POW:AMOD?': 'AUTO', 'SOUR1:SWE:POW:DWEL?': '0.01', 'SOUR1:SWE:POW:MODE?': 'AUTO', 'SOUR1:SWE:POW:POIN?': '21', 'SOUR1:SWE:POW:RETR?': '0', 'SOUR1:SWE:POW:RUNN?': '0', 'SOUR1:SWE:POW:SHAP?': 'SAWT', 'SOUR1:SWE:POW:STEP?': '1.0', 'SOUR1:SWE:RETR?': '0', 'SOUR1:SWE:RUNN?': '0', 'SOUR1:SWE:SHAP?': 'SAWT', 'SOUR1:SWE:SPAC?': 'LIN', 'SOUR1:SWE:STEP:LOG?': '1.0', 'SOUR1:SWE:STEP?': '1000000.0', 'SOUR2:IQ:OUTP:ANAL:BIAS:COUP:STAT?': '0', 'SOUR2:IQ:OUTP:ANAL:BIAS:I?': '0', 'SOUR2:IQ:OUTP:ANAL:BIAS:Q?': '0', 'SOUR2:IQ:OUTP:ANAL:MODE?': 'FIX', 'SOUR2:IQ:OUTP:ANAL:OFFS:I?': '0', 'SOUR2:IQ:OUTP:ANAL:OFFS:Q?': '0', 'SOUR2:IQ:OUTP:ANAL:STAT?': '0', 'SOUR2:IQ:OUTP:ANAL:TYPE?': 'SING', 'SOUR2:IQ:OUTP:LEV?': '1.0', 'SOUR:LFO1:BAND?': 'BW10', 'SOUR:LFO1:OFFS?': '0', 'SOUR:LFO1:PER?': '0.001', 'SOUR:LFO1:SOUR?': 'LF1', 'SOUR:LFO1:STAT?': '0', 'SOUR:LFO1:VOLT?': '1.0', 'SOUR:LFO2:BAND?': 'BW10', 'SOUR:LFO2:OFFS?': '0', 'SOUR:LFO2:SOUR?': 'EXT1', 'SOUR:LFO2:STAT?': '0', 'SOUR:LFO2:VOLT?': '1.0', 'SOUR:PM1:DEV?': '1', 'SOUR:PM2:DEV?': '1', 'STAT?': '0'}¶
qcodes_contrib_drivers.drivers.RohdeSchwarz.ZVL13 module¶
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.ZVL13.ComplexSweep(name: str, instrument: Instrument, start: float, stop: float, npts: int, channel: int, **kwargs)[source]¶
Bases:
ArrayParameter
- get_raw()[source]¶
get_raw
is called to perform the actual data acquisition from the instrument. This method should either be overwritten to perform the desired operation or alternatively forParameter
a suitable method is automatically generated ifget_cmd
is supplied to the parameter constructor. The method is automatically wrapped to provide aget
method on the parameter instance.
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.ZVL13.FrequencySweep(name: str, instrument: Instrument, start: float, stop: float, npts: int, channel: int, **kwargs)[source]¶
Bases:
ArrayParameter
- get_raw()[source]¶
get_raw
is called to perform the actual data acquisition from the instrument. This method should either be overwritten to perform the desired operation or alternatively forParameter
a suitable method is automatically generated ifget_cmd
is supplied to the parameter constructor. The method is automatically wrapped to provide aget
method on the parameter instance.
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.ZVL13.FrequencySweepMagPhase(name: str, instrument: Instrument, start: float, stop: float, npts: int, channel: int, **kwargs)[source]¶
Bases:
MultiParameter
- get_raw()[source]¶
get_raw
is called to perform the actual data acquisition from the instrument. This method should either be overwritten to perform the desired operation or alternatively forParameter
a suitable method is automatically generated ifget_cmd
is supplied to the parameter constructor. The method is automatically wrapped to provide aget
method on the parameter instance.
- class qcodes_contrib_drivers.drivers.RohdeSchwarz.ZVL13.SAFrequencySweep(name: str, instrument: Instrument, start: float, stop: float, npts: int, channel: int, **kwargs)[source]¶
Bases:
ArrayParameter
- get_raw()[source]¶
get_raw
is called to perform the actual data acquisition from the instrument. This method should either be overwritten to perform the desired operation or alternatively forParameter
a suitable method is automatically generated ifget_cmd
is supplied to the parameter constructor. The method is automatically wrapped to provide aget
method on the parameter instance.