herosdevices.hardware.aimtti.pl_series¶
Device driver for AimTTI PL series power supplies.
Module Contents¶
- class herosdevices.hardware.aimtti.pl_series.GenericPSU(address: str, port: int = 9221, timeout: float = 1.0)[source]¶
Bases:
herosdevices.core.templates.SerialDeviceTemplateDevice driver for a generic network capable AimTTI Power Supplies.
- Parameters:
address – IP address of the device. Example: “192.168.1.20”
port – Socket port of the device. Default (9221) should be correct for all PSUs.
timeout – timeout for read operations.
- enable_all_outputs(enable: bool = True) None[source]¶
Enable or disable all outputs simultaneously.
- Parameters:
enable – True to enable all outputs, False to disable all outputs.
- read(*args, **kwargs) str | None[source]¶
Read data from the device connection.
Used for access from the channel classes like
PLSeriesChannel. Should not be used directly.
- write(*args, **kwargs) str | None[source]¶
Write data to the device connection.
Used for access from the channel classes like
PLSeriesChannel. Should not be used directly.
- address¶
- connection¶
- class herosdevices.hardware.aimtti.pl_series.PLSeriesChannel(host_device: GenericPSU, voltage_limits: tuple[float, float], current_limits: tuple[float, float], channel: int = 1, **_kwargs)[source]¶
Bases:
herosdevices.interfaces.atomiq.VoltageSource,herosdevices.interfaces.atomiq.CurrentSource,herosdevices.interfaces.atomiq.SwitchA single channel of a PL Series power supply.
This class provides an
herosdevices.interfaces.atomiq.VoltageSourcecompatible interface to control a single channel of a PL Series power supply.Note
This class does not directly connect to the hardware but to another object given by the host_device argument which can also be a HERO running on another machine. It can be used to provide a universal interface which does not require setting a channel for every operation.
- Parameters:
host_device – The host
GenericPSUdevice.voltage_limits – Voltage limits of the channel. Can be used to set artificial guard rails.
current_limits – Current limits of the channel. Can be used to set artificial guard rails.
channel – The channel to control (1, 2, or 3)
- connection¶
- channel: int = 1¶
- min_voltage: float¶
- max_voltage: float¶
- default_ramp_steps: int = 30¶
- blind: bool = False¶
- min_current: float¶
- max_current: float¶