diff --git a/ohmpi/hardware_components/mb_2024_0_2.py b/ohmpi/hardware_components/mb_2024_0_2.py index 2c756dfa048be11b37a0a522bf2ea8729cc953bb..9aa25e896b74a7576bb49fdfa169a4b7992c2739 100644 --- a/ohmpi/hardware_components/mb_2024_0_2.py +++ b/ohmpi/hardware_components/mb_2024_0_2.py @@ -129,6 +129,33 @@ class Tx(Tx_mb_2023): self.exec_logger.debug(f'Switching DPS off') self._pwr_state = 'off' + @property + def polarity(self): + return self._polarity + + @polarity.setter + def polarity(self, polarity): + assert polarity in [-1, 0, 1] + self._polarity = polarity + if polarity == 1: + if self.pwr.voltage_adjustable: + self.pwr_state = 'on' + self.pin0.value = True + self.pin1.value = False + time.sleep(self._activation_delay) + elif polarity == -1: + if self.pwr.voltage_adjustable: + self.pwr_state = 'on' + self.pin0.value = False + self.pin1.value = True + time.sleep(self._activation_delay) + else: + if self.pwr.voltage_adjustable: + self.pwr_state = 'off' + self.pin0.value = False + self.pin1.value = False + time.sleep(self._release_delay) + class Rx(Rx_mb_2023): def __init__(self, **kwargs): diff --git a/ohmpi/hardware_components/pwr_batt.py b/ohmpi/hardware_components/pwr_batt.py index e9d819eb9ee204b53279fe1b734fb6bc5d884c0e..c66ad8e3572896daa6bc3f7c4f60bb020febef15 100644 --- a/ohmpi/hardware_components/pwr_batt.py +++ b/ohmpi/hardware_components/pwr_batt.py @@ -26,7 +26,6 @@ class Pwr(PwrAbstract): self.exec_logger.event(f'{self.model}\tpwr_init\tbegin\t{datetime.datetime.utcnow()}') self._voltage = kwargs['voltage'] self._current = np.nan - self._switch_pwr_on_zero = True # self._state = 'on' if not subclass_init: self.exec_logger.event(f'{self.model}\tpwr_init\tend\t{datetime.datetime.utcnow()}') @@ -46,9 +45,3 @@ class Pwr(PwrAbstract): @voltage.setter def voltage(self, value): PwrAbstract.voltage.fset(self, value) - - def voltage_pulse(self, voltage=0., length=None, polarity=1): - self.voltage_pulse(voltage=voltage, length=length, polarity=polarity, switch_pwr=self._switch_pwr_on_zero) - - def inject(self, polarity=1, injection_duration=None): - self.inject(polarity=polarity, injection_duration=injection_duration, switch_pwr=self._switch_pwr_on_zero) diff --git a/ohmpi/hardware_components/pwr_dps5005_fixed.py b/ohmpi/hardware_components/pwr_dps5005_fixed.py index 1aba1ec7e4eea16d43ec258761640cf97c5657ec..0bdbe0724b4d9aae03c785742758ffee1c28220b 100644 --- a/ohmpi/hardware_components/pwr_dps5005_fixed.py +++ b/ohmpi/hardware_components/pwr_dps5005_fixed.py @@ -32,7 +32,6 @@ class Pwr(Pwr_batt): self.exec_logger.event(f'{self.model}\tpwr_init\tbegin\t{datetime.datetime.utcnow()}') self._voltage = kwargs['voltage'] self._current = np.nan - self._switch_pwr_on_zero = True # self._state = 'on' if not subclass_init: self.exec_logger.event(f'{self.model}\tpwr_init\tend\t{datetime.datetime.utcnow()}')