From d875376a6bc8f1fc36b1679e7c1600e36b155ca0 Mon Sep 17 00:00:00 2001 From: su530201 <olivier.kaufmann@umons.ac.be> Date: Sat, 22 Apr 2023 22:42:52 +0200 Subject: [PATCH] Changes readings append mode as multi-dim array --- measure.py | 8 +++----- test_measure_with_ohmpi_card_3_15.py | 2 +- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/measure.py b/measure.py index 64aa9a11..ea0b50f8 100644 --- a/measure.py +++ b/measure.py @@ -62,9 +62,7 @@ class OhmPiHardware: def _read_values(self, sampling_rate, append=False): # noqa if not append: self._clear_values() - _readings = [] - else: - _readings = self.readings.tolist() + _readings = [] sample = 0 self.tx_sync.wait() start_time = datetime.datetime.utcnow() @@ -74,7 +72,7 @@ class OhmPiHardware: sample+=1 sleep_time = start_time + datetime.timedelta(seconds = sample * sampling_rate / 1000) - lap time.sleep(np.min([0, np.abs(sleep_time.total_seconds())])) - self.readings = np.array(_readings) + self.readings = np.hstack([self.readings, np.array(_readings)]) def _compute_tx_volt(self, best_tx_injtime=0.1, strategy='vmax', tx_volt=5, vab_max=voltage_max, vmn_min=voltage_min): @@ -157,7 +155,7 @@ class OhmPiHardware: self.tx.polarity = polarity lengths = [cycle_length/2]*2*cycles # TODO: delete me print(f'vab_square_wave lengths: {lengths}') - self._vab_pulses(vab, lengths, sampling_rate, append) + self._vab_pulses(vab, lengths, sampling_rate, append=append) def _vab_pulse(self, vab, length, sampling_rate=None, polarity=None, append=False): """ Gets VMN and IAB from a single voltage pulse diff --git a/test_measure_with_ohmpi_card_3_15.py b/test_measure_with_ohmpi_card_3_15.py index 73fb9e51..966140bf 100644 --- a/test_measure_with_ohmpi_card_3_15.py +++ b/test_measure_with_ohmpi_card_3_15.py @@ -14,7 +14,7 @@ print(f'sampling rate: {k.rx.sampling_rate:.1f} ms, mean sample spacing: {np.mea # Test #2: print('\n\nTesting vab_square_wave') -k.vab_square_wave(vab=12, length=1., sampling_rate=k.rx.sampling_rate, cycles=3) +k.vab_square_wave(vab=12, cycle_length=2., sampling_rate=k.rx.sampling_rate, cycles=3) r = k.readings[:,2]/k.readings[:,1] print(f'Mean resistance: {np.mean(r):.3f} Ohms, Dev. {100*np.std(r)/np.mean(r):.1f} %') print(f'sampling rate: {k.rx.sampling_rate:.1f} ms, mean sample spacing: {np.mean(np.diff(k.readings[:,0]))*1000.:.1f} ms') -- GitLab