From 25e0327a2b6a923a8581000c5d9f17c6100211a8 Mon Sep 17 00:00:00 2001 From: su530201 <olivier.kaufmann@umons.ac.be> Date: Thu, 15 Jun 2023 18:16:09 +0200 Subject: [PATCH] Fixes misinterpretation of sampling_rate as sample duration --- configs/config_mb_2023_2_mux_2024.py | 2 +- configs/config_mb_2023_mux_2024.py | 2 +- configs/config_tmp.py | 2 +- ohmpi/hardware_components/abstract_hardware_components.py | 2 +- ohmpi/hardware_components/ohmpi_card_3_15.py | 2 +- ohmpi/hardware_system.py | 6 +++--- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/configs/config_mb_2023_2_mux_2024.py b/configs/config_mb_2023_2_mux_2024.py index 2812634d..db10a580 100644 --- a/configs/config_mb_2023_2_mux_2024.py +++ b/configs/config_mb_2023_2_mux_2024.py @@ -28,7 +28,7 @@ HARDWARE_CONFIG = { }, 'rx': {'model': 'ohmpi_card_3_15', 'coef_p2': 2.50, # slope for current conversion for ADS.P2, measurement in V/V - 'sampling_rate': 40., # ms + 'sampling_rate': 100., # Hz 'nb_samples': 20, # Max value 10 # was named integer before... }, 'mux': # default properties are system properties that will be diff --git a/configs/config_mb_2023_mux_2024.py b/configs/config_mb_2023_mux_2024.py index d5625ed2..e514c59f 100644 --- a/configs/config_mb_2023_mux_2024.py +++ b/configs/config_mb_2023_mux_2024.py @@ -29,7 +29,7 @@ HARDWARE_CONFIG = { }, 'rx' : {'model': 'ohmpi_card_3_15', 'coef_p2': 2.50, # slope for current conversion for ADS.P2, measurement in V/V - 'sampling_rate': 10., # ms + 'sampling_rate': 100., # Hz 'nb_samples': 20, # Max value 10 # was named integer before... }, 'mux': # default properties are system properties that will be diff --git a/configs/config_tmp.py b/configs/config_tmp.py index 7edc2cb7..cde239e5 100644 --- a/configs/config_tmp.py +++ b/configs/config_tmp.py @@ -27,7 +27,7 @@ HARDWARE_CONFIG = { }, 'rx' : {'model': 'ohmpi_card_3_15', 'coef_p2': 2.50, # slope for current conversion for ADS.P2, measurement in V/V - 'sampling_rate': 10., # ms + 'sampling_rate': 100., # Hz 'nb_samples': 20, # Max value 10 # was named integer before... }, 'mux': {'model' : 'dummy_mux', # 'ohmpi_i2c_mux64_v1.01', diff --git a/ohmpi/hardware_components/abstract_hardware_components.py b/ohmpi/hardware_components/abstract_hardware_components.py index 9e3a40ad..db89f032 100644 --- a/ohmpi/hardware_components/abstract_hardware_components.py +++ b/ohmpi/hardware_components/abstract_hardware_components.py @@ -326,7 +326,7 @@ class RxAbstract(ABC): self.soh_logger = create_stdout_logger('soh_rx') self.ctl = kwargs.pop('ctl', None) self.board_name = kwargs.pop('board_name', 'unknown RX hardware') - self._sampling_rate = kwargs.pop('sampling_rate', 1) + self._sampling_rate = kwargs.pop('sampling_rate', 1) # ms self.exec_logger.debug(f'{self.board_name} RX initialization') self._adc_gain = 1. self._max_sampling_rate = np.inf diff --git a/ohmpi/hardware_components/ohmpi_card_3_15.py b/ohmpi/hardware_components/ohmpi_card_3_15.py index 3bf6e42a..9a743f3c 100644 --- a/ohmpi/hardware_components/ohmpi_card_3_15.py +++ b/ohmpi/hardware_components/ohmpi_card_3_15.py @@ -21,7 +21,7 @@ RX_CONFIG = HARDWARE_CONFIG['rx'] # ADC for voltage voltage_adc_voltage_min = 10. # mV voltage_adc_voltage_max = 4500. # mV -sampling_rate = 10. # ms +sampling_rate = 100. # Hz data_rate = 860. # S/s? RX_CONFIG['voltage_min'] = np.min([voltage_adc_voltage_min, RX_CONFIG.pop('voltage_min', np.inf)]) # mV RX_CONFIG['voltage_max'] = np.min([voltage_adc_voltage_max, RX_CONFIG.pop('voltage_max', np.inf)]) # mV diff --git a/ohmpi/hardware_system.py b/ohmpi/hardware_system.py index 69c1577a..d932cc99 100644 --- a/ohmpi/hardware_system.py +++ b/ohmpi/hardware_system.py @@ -172,7 +172,7 @@ class OhmPiHardware: _readings.append([elapsed_seconds(self._start_time), self._pulse, self.tx.polarity, self.tx.current, self.rx.voltage]) sample += 1 - sleep_time = self._start_time + datetime.timedelta(seconds=sample * sampling_rate / 1000) - lap + sleep_time = self._start_time + datetime.timedelta(seconds=sample / sampling_rate * 1000) - lap if sleep_time.total_seconds() < 0.: _readings.append([elapsed_seconds(self._start_time), self._pulse, self.tx.polarity, np.nan, np.nan]) sample += 1 @@ -249,8 +249,8 @@ class OhmPiHardware: vmn_min = np.abs(vmn_min) vab = np.min([np.abs(tx_volt), vab_max]) self.tx.turn_on() - if self.rx.sampling_rate*1000 > best_tx_injtime: - sampling_rate = best_tx_injtime # TODO: check this... + if 1000 / self.rx.sampling_rate > best_tx_injtime: + sampling_rate = 1000.0 / best_tx_injtime # TODO: check this... else: sampling_rate = self.tx.sampling_rate self._vab_pulse(vab=vab, length=best_tx_injtime, sampling_rate=sampling_rate) # TODO: use a square wave pulse? -- GitLab