Source code for qcodes_contrib_drivers.drivers.Lakeshore.modules.cm10

from qcodes.instrument import Instrument
from qcodes.validators import Numbers, Enum
from qcodes_contrib_drivers.drivers.Lakeshore.modules.senseBase import senseBase

[docs] class cm10(senseBase): def __init__(self, parent: Instrument, name: str, Channel: str, **kwargs) -> None: super().__init__(parent, name, Channel, **kwargs) # add the CM-10 specific parameters here self.add_parameter(name='current_range', label='current range', unit='A', get_cmd=self._param_getter('CURRent:RANGe?'), set_cmd=self._param_setter('CURRent:RANGe', '{}'), vals=Enum(100e-3, 10e-3, 1e-3, 100e-6, 10e-6, 1e-6, 100e-9, 10e-9), get_parser=float ) self.add_parameter(name='current_autorange_enabled', label='current autorange enabled', get_cmd=self._param_getter('CURRent:RANGe:AUTO?'), set_cmd=self._param_setter('CURRent:RANGe:AUTO', '{}'), val_mapping={True: '1', False: '0'} ) self.add_parameter(name='bias_voltage_enabled', label='bias voltage state', get_cmd=self._param_getter('BIAS:STATe?'), set_cmd=self._param_setter('BIAS:STATe', '{}'), val_mapping={True: '1', False: '0'} ) self.add_parameter(name='bias_voltage', label='bias voltage', unit='V', get_cmd=self._param_getter('BIAS:VOLTage:DC?'), get_parser = float, set_cmd=self._param_setter('BIAS:VOLTage:DC', '{}'), vals=Numbers(min_value=-10, max_value=10) ) self.add_parameter(name='frequency_range_threshold', label='frequency range threshold', unit='% of -3 db', get_cmd=self._param_getter('FRTHreshold?'), get_parser = lambda value: 100*float(value), set_cmd=self._param_setter('FRTHreshold', '{}'), set_parser = lambda value: float(value)/100, vals=Numbers(min_value=0, max_value=100) )