diff --git a/hardware_system.py b/hardware_system.py index 009dd29b767463a8ed0a2dd8ef8690cf6027b581..33b2f78d6cb04ed9610270f80dbba72c5c323995 100644 --- a/hardware_system.py +++ b/hardware_system.py @@ -86,6 +86,11 @@ class OhmPiHardware: self._start_time = None self._pulse = 0 + def _gain_auto(self): + self.tx_sync.wait() + self.tx.adc_gain_auto() + self.rx.adc_gain_auto() + def _inject(self, polarity=1, inj_time=None): self.tx_sync.set() self.tx.voltage_pulse(length=inj_time, polarity=polarity) @@ -243,11 +248,14 @@ class OhmPiHardware: self.tx.pwr.voltage = vab else: vab = self.tx.pwr.voltage + # set gains automatically + gain_auto = Thread(target=self._gain_auto) + injection = Thread(target=self._inject, kwargs={'inj_time': 0.2, 'polarity': polarity}) + gain_auto.start() + injection.start() + # reads current and voltage during the pulse injection = Thread(target=self._inject, kwargs={'inj_time':length, 'polarity': polarity}) readings = Thread(target=self._read_values, kwargs={'sampling_rate': sampling_rate, 'append': append}) - # set gains automatically - self.tx.adc_gain_auto() - self.rx.adc_gain_auto() readings.start() injection.start() readings.join() @@ -347,6 +355,6 @@ class OhmPiHardware: """ self.exec_logger.debug('Resetting all mux boards ...') - for mux_id, mux in self.mux_boards.items(): + for mux_id, mux in self.mux_boards.items(): # noqa self.exec_logger.debug(f'Resetting {mux_id}.') mux.reset() \ No newline at end of file