devctrl.devices.temperature_controller.impl.dummy.DummyTemperatureController#
- class DummyTemperatureController[source]#
Bases:
TemperatureController,DummyDeviceMethods
Manually add a specific device.
allow_only_dummy_devicesThis function should be overridden by device implementations only, and is not intended to be used directly.
Connect an instance of the device's dummy implementation
Disable the temperature controller
Enable the temperature controller
Return a flat dictionary of all base classes below this class :param recurse: If True, recursively search for base classes :return: dict of {class name: class}
Query the status of the device and return a string describing errors.
get_temperature_CQuery whether the device is (still) connected
Check if the controller is enabled
Get a list of all devices for this type.
Set the target temperature in Celsius
Wait for temperature to reach target (dummy implementation)
- classmethod add_device(connect_info)#
Manually add a specific device. The device will show up when list_devices() is called for the device type. Call this from the device class implementation, e.g. use ModelXYZ9000.add_device(‘GPIB:1234:5678’) to add a specific device with a fixed GPIB address. This is useful when automatic discovery is undesired/impossible, either because it is not implemented or it disturbs other devices which can’t handle a identification request. :param cls: The device implementation class :param connect_info: A string argument that is passed to the connect() method of the device implementation, when the device is being connected.
- classmethod connect(device_type_name: str, device_name: str | None, **kwargs) Device#
- Parameters:
device_type_name – The name of the device class
device_name – The name of the device class
- classmethod connect_device(device_name)#
This function should be overridden by device implementations only, and is not intended to be used directly. Instead, use list_devices() to get a list of devices, and pass the selected device type and name to connect() :param device_name: The name of the device class
- classmethod connect_dummy(**kwargs) Device#
Connect an instance of the device’s dummy implementation
- classmethod get_base_classes(recurse=True) dict[str, type[Device]]#
Return a flat dictionary of all base classes below this class :param recurse: If True, recursively search for base classes :return: dict of {class name: class}
- classmethod get_device_name() str#
- Returns:
The specific type name of the device, e.g., SR830 or Keithly2600
- classmethod get_device_type_name() str#
- Returns:
The general type name of the device, e.g., Lock-In Amplifier or Voltmeter
- get_status() str#
Query the status of the device and return a string describing errors. If everything is ok, empty string must be returned :return: String of device status
- is_connected() bool#
Query whether the device is (still) connected
- is_enabled() bool[source]#
Check if the controller is enabled
- Returns:
True if controller is enabled, False otherwise
- classmethod list_devices() list[tuple[str, str]]#
Get a list of all devices for this type. The list made up of: - Manually added devices - Available devices (those returned by _enumerate_devices) - A dummy device (if a dummy implementation exists) - List of all devices of child classes
- Returns:
list of available devices
- set_temperature_C(temperature_C)[source]#
Set the target temperature in Celsius
- Parameters:
temperature_C – Target temperature in °C
- wait_for_temperature_C(target_temperature_C, timeout_s=None, sleep_interval=1, n_digits=0) float[source]#
Wait for temperature to reach target (dummy implementation)
Dummy implementation that returns immediately without blocking.
- Parameters:
target_temperature_C – Target temperature in °C
timeout_s – Timeout in seconds (unused in dummy)
sleep_interval – Sleep interval in seconds (unused in dummy)
n_digits – Number of digits for comparison (unused in dummy)
- Returns:
Dummy wait time of 1.23 seconds