qcodes_contrib_drivers.drivers.DaylightSolutions package

Submodules

qcodes_contrib_drivers.drivers.DaylightSolutions.MIRcat module

QCoDeS-Driver for DRS Daylight Solutions Ultra-broadly tunable mid-IR external cavity CW/Pulsed MIRcat laser system: https://daylightsolutions.com/product/mircat/

This driver relies on the MIRcatSDK. It requires a Windows system.

Authors:

Julien Barrier, <julien@julienbarrier.eu>

class qcodes_contrib_drivers.drivers.DaylightSolutions.MIRcat.DRSDaylightSolutions_MIRcat(*args: Any, **kwargs: Any)[source]

Bases: Instrument

Class to represent a DaylightSolutions MIRcat tunable mid-IR laser QCL system.

status: beta-version

Parameters:
  • name – name for the instrument

  • dll_path – path to the MIRcatSDK driver dll library file. Defaults to None.

  • wavelength – sequence of 2-tuple for the wavelength boundaries of all chips.

arm() None[source]

Arm the MIRcat QCL system.

check_tune() float[source]

Check the QCL tune.

disarm() None[source]

Disarm the MIRcat QCL system.

get_idn() dict[source]

Parse a standard VISA *IDN? response into an ID dict.

Even though this is the VISA standard, it applies to various other types as well, such as IPInstruments, so it is included here in the Instrument base class.

Override this if your instrument does not support *IDN? or returns a nonstandard IDN string. This string is supposed to be a comma-separated list of vendor, model, serial, and firmware, but semicolon and colon are also common separators so we accept them here as well.

Returns:

A dict containing vendor, model, serial, and firmware.

get_limits(chip: int = 0) tuple[float, ...][source]

Get the limits for a given QCL chip.

Parameters:

chip (int, optional). Defaults to =0 (active chip)

Returns:

(pulse_rate_max (Hz), pulse_width_max (s), duty_cycle_max, current_max(A))

Return type:

tuple

get_pulse_parameters(chip: int = 0) tuple[source]

Get all pulse parameters for a given QCL chip.

Parameters:

chip (int, optional). Defaults to =0 (active chip)

Returns:

(pulse_rate (Hz), pulse_width (s), current (A))

Return type:

tuple

get_ranges(chip: int = 0) tuple[float, float][source]

Get the acceptable range for a given QCL chip.

Parameters:

chip (int, optional)

Returns:

(pf_min_range (m), pf_max_range (m))

Return type:

tuple

set_pulse_parameters(pulse_rate: float, pulse_width: float, current: float, chip: int) None[source]

Set pulse parameters for the QCL.

Parameters:
  • pulse_rate (float) – pulse rate in Hz

  • pulse_width (float) – pulse width in s

  • current (float) – current in A

  • chip (int) – QCL chip

dll_path = 'C:\\MIRcat_laser\\libs\\x64\\MIRcatSDK.dll'

Module contents