QuickSyn FSW-0010 Synthesizer

A labscript device that controlls the NI Quicksyn FSW-0010 Microwave Synthesizer (formerly PhaseMatrix).

Detailed Documentation

class labscript_devices.PhaseMatrixQuickSyn.QuickSynDDS(name, parent_device, connection, freq_limits=None, freq_conv_class=None, freq_conv_params={})[source]

Bases: StaticDDS

A StaticDDS that supports only frequency control, with no phase or amplitude control.

Instantiates a Static DDS quantity.

Parameters:
  • name (str) – python variable for the object created.

  • parent_device (IntermediateDevice) – Device this output is connected to.

  • connection (str) – Output of parent device this DDS is connected to.

  • digital_gate (dict, optional) – Configures a digital output to use as an enable/disable gate for the output. Should contain keys 'device' and 'connection' with arguments for the parent_device and connection for instantiating the DigitalOut. All other (optional) keys are passed as kwargs.

  • freq_limits (tuple, optional) – (lower, upper) limits for the frequency of the output

  • freq_conv_class (labscript_utils:labscript_utils.unitconversions, optional) – Unit conversion class for the frequency of the output.

  • freq_conv_params (dict, optional) – Keyword arguments passed to the unit conversion class for the frequency of the output.

  • amp_limits (tuple, optional) – (lower, upper) limits for the amplitude of the output

  • amp_conv_class (labscript_utils:labscript_utils.unitconversions, optional) – Unit conversion class for the amplitude of the output.

  • amp_conv_params (dict, optional) – Keyword arguments passed to the unit conversion class for the amplitude of the output.

  • phase_limits (tuple, optional) – (lower, upper) limits for the phase of the output

  • phase_conv_class (labscript_utils:labscript_utils.unitconversions, optional) – Unit conversion class for the phase of the output.

  • phase_conv_params (dict, optional) – Keyword arguments passed to the unit conversion class for the phase of the output.

  • call_parents_add_device (bool, optional) – Have the parent device run its add_device method.

  • **kwargs – Keyword arguments passed to Device.__init__().

description = 'PhaseMatrix QuickSyn DDS'

Brief description of the device.

allowed_children = [<class 'labscript.labscript.StaticAnalogQuantity'>, <class 'labscript.labscript.StaticDigitalOut'>]

Defines types of devices that are allowed to be children of this device.

Type:

list

generation = 2
setamp(value, units=None)[source]

Set the static amplitude of the output.

Parameters:
  • value (float) – Amplitude to set to.

  • units – Units that the value is defined in.

setphase(value, units=None)[source]

Set the static phase of the output.

Parameters:
  • value (float) – Phase to set to.

  • units – Units that the value is defined in.

enable()[source]

overridden from StaticDDS so as not to provide time resolution - output can be enabled or disabled only at the start of the shot

disable()[source]

overridden from StaticDDS so as not to provide time resolution - output can be enabled or disabled only at the start of the shot

class labscript_devices.PhaseMatrixQuickSyn.PhaseMatrixQuickSyn(name, com_port)[source]

Bases: Device

Creates a Device.

Parameters:
  • name (str) – python variable name to assign this device to.

  • parent_device (Device) – Parent of this device.

  • connection (str) – Connection on this device that links to parent.

  • call_parents_add_device (bool, optional) – Flag to command device to call its parent device’s add_device when adding a device.

  • added_properties (dict, optional) –

  • gui

  • worker

  • start_order (int, optional) – Priority when starting, sorted with all devices.

  • stop_order (int, optional) – Priority when stopping, sorted with all devices.

  • **kwargs – Other options to pass to parent.

description = 'QuickSyn Frequency Synthesiser'

Brief description of the device.

allowed_children = [<class 'labscript_devices.PhaseMatrixQuickSyn.QuickSynDDS'>]

Defines types of devices that are allowed to be children of this device.

Type:

list

generation = 0
quantise_freq(data, device)[source]
generate_code(hdf5_file)[source]

Generate hardware instructions for device and children, then save to h5 file.

Will recursively call generate_code for all children devices.

Parameters:

hdf5_file (h5py.File) – Handle to shot file.

class labscript_devices.PhaseMatrixQuickSyn.PhaseMatrixQuickSynTab(notebook, settings, restart=False)[source]

Bases: DeviceTab

initialise_GUI()[source]
status_monitor(*args, **kwargs)
update_reference_out(*args, **kwargs)
update_blanking(*args, **kwargs)
update_lock_recovery(*args, **kwargs)
labscript_device_class_name = 'PhaseMatrixQuickSyn'
class labscript_devices.PhaseMatrixQuickSyn.QuickSynWorker(*args, **kwargs)[source]

Bases: Worker

init()[source]
check_remote_values()[source]
check_status()[source]
program_manual(front_panel_values)[source]
update_reference_out(value)[source]
update_blanking(value)[source]
update_lock_recovery(value)[source]
transition_to_buffered(device_name, h5file, initial_values, fresh)[source]
abort_transition_to_buffered()[source]
abort_buffered()[source]
transition_to_manual(abort=False)[source]
shutdown()[source]