ELoadDriverBase#
- class ELoadDriverBase[source]#
Bases:
ABCVendor E-Load driver contract. Concrete drivers own their transport and lifecycle.
Methods
Close the underlying transport.
Measure the current the load is sinking on
channel(amperes).Measure the voltage at
channel's terminals (volts).Open the underlying transport and put the load in remote mode.
Enable or disable load draw on
channel.Set the operating level on
channelin the units appropriate formode.Set the operating mode on
channel: CC, CV, CP, or CR.Set the operating range on
channelfrom the expected maximum.Set the per-edge current slew rate on
channel.Apply or release the load's short on
channel.- abstractmethod short_output(enable: bool, channel: int) None[source]#
Apply or release the load’s short on
channel. Takes effect immediately.
- abstractmethod set_mode( ) None[source]#
Set the operating mode on
channel: CC, CV, CP, or CR.Not every model supports every mode; drivers should raise
NotImplementedErrorfor unsupported combinations.
- abstractmethod set_level( ) None[source]#
Set the operating level on
channelin the units appropriate formode.- Parameters:
mode
Active load mode — caller passes it explicitly so the driver doesn’t need to track state. Units: CC → amperes, CV → volts, CP → watts, CR → ohms.
value
Operating level in
mode’s units.channel
Target channel (1-indexed).
curr_limit
Optional current limit; only meaningful in CV mode. Drivers may ignore it in other modes.
- abstractmethod set_range( ) None[source]#
Set the operating range on
channelfrom the expected maximum.valueis the maximum operating value inmode’s units (seeset_level()). Drivers typically snap to the closest hardware range that coversvalue.
- abstractmethod set_slewrate(
- direction: SlewRateDirection,
- rate: float,
- channel: int,
Set the per-edge current slew rate on
channel.- Parameters:
direction
RISE,FALL, orBOTH— which edge(s) the rate applies to.rate
Slew rate in amperes per microsecond (A/μs).
channel
Target channel (1-indexed).
- abstractmethod output_enable(enable: bool, channel: int) None[source]#
Enable or disable load draw on
channel.