Ossila
Ossila X200
Implements the Ossila X200 Source Measure Unit.
Requires the xtralien package: https://pypi.org/project/xtralien/
- class OssilaX200Channel(identifier: str | None = None, settings: DatabaseDict | None = None)[source]
-
Abstract class which implements the properties and methods which all Ossila X200 channels have in common.
- set_property(name: str, value: Any) None[source]
Sets a property/device-setting to the provided value.
- Parameters:
name – The name of the property/device-setting to be set.
value – The value to which the property/device-setting should be set.
- class VoltageSMUChannel(identifier: str = 'smu1', auto_range: bool = False, delay: float = 0.001, s_filter: int = 1, s_osr: int = 5, s_range: int = 1)[source]
Bases:
OssilaX200Channel,Voltmeter,Amperemeter,VoltageSource,VoltageSMUA source measure unit (SMU) channel of the Ossila X200 device which can source a voltage and measure the voltage and current. For more details and specifications see the user manual of the Ossila X200.
- Parameters:
identifier – String identifier of the SMU channel: ‘smu1’ or ‘smu2’.
auto_range – Flags if the current measurement range should be determined automatically by the
source_and_measure()method.delay – Setting for the voltage settling time in s.
s_filter – Setting for the number of repeated measurements which get averaged.
s_osr – Setting for the sampling rate which is 64*2**n samples/datapoint with n in [0,9] or [10,19] for 1x or 2x mode of the analog-to-digital converter. E.g., the default setting of 5 corresponds to a sampling rate of 2048 samples/datapoint with an RMS noise of 750 nV and a measurement rate of 36 datapoints/s.
s_range – Setting for the current measurement range which takes a value in [1,5] and allows maximum absolute currents of 200 mA, 20 mA, 2 mA, 200 µA, and 20 µA, respectively.
- Raises:
TypeError – If the type of setting values is incorrect.
ValueError – If the identifier is not available or setting values are out of bounds.
- property auto_range: bool
Flags if the current measurement range should be determined automatically.
- property settings: DatabaseDict
Dictionary of channel settings.
- source_voltage(voltage: float) None[source]
Sets the DC output voltage to the defined value.
- Parameters:
voltage – Output voltage of the DC power source in V. Must be in [-10, 10].
- Raises:
ValueError – If voltage is out of bounds.
- source_voltage_and_measure(voltage: float) Tuple[float, float][source]
Sets the output voltage to the defined value, then measures the actual voltage and current.
- Parameters:
voltage – Output voltage of the power source in V. Must be in [-10, 10].
- Returns:
Measurement result as a tuple: (voltage (V), current (A)).
- Raises:
ValueError – If voltage is out of bounds.
- class VoltmeterChannel(identifier: str = 'vsense1', s_osr: int = 5)[source]
Bases:
OssilaX200Channel,VoltmeterA voltmeter channel (Vsense) of the Ossila X200 device which can measure the voltage with high precision. For more details and specifications see the user manual of the Ossila X200.
- Parameters:
identifier – String identifier of the SMU channel: ‘vsense1’ or ‘vsense2’.
s_osr – Setting for the sampling rate which is 64*2**n samples/datapoint with n in [0,9] or [10,19] for 1x or 2x mode of the analog-to-digital converter. E.g., the default setting of 5 corresponds to a sampling rate of 2048 samples/datapoint with an RMS noise of 750 nV and a measurement rate of 55 datapoints/s.
- Raises:
ValueError – If the identifier or the setting value is not available.
- class OssilaX200(channels: List[TChannel] | None = None, address: str = '', port: int = 0, serial_timeout: float = 0.1)[source]
Bases:
DeviceImplements the Ossila X200 Source Measure Unit as a Device class which is a container for the channels and the device connection. For more details and specifications see the user manual of the Ossila X200.
- Parameters:
channels – List of channels which are subclasses of the
OssilaX200Channel. A maximum of 4 channels, i.e., 2xSMU and 2xVsense, are available. Duplicates are not allowed.address – COM (USB) or IP (Ethernet) address of the Ossila X200.
port – Must be defined for connections over ethernet.
serial_timeout – Timeout for the serial connection over USB in s.
- Raises:
TypeError – If a channel is not an
OssilaX200Channel. If connection arguments port and serial_timeout cannot be cast to their required type.ValueError – If duplicate channels are provided.