From f89169fa43e7a35d35b8856ec262e7a2d5594ab5 Mon Sep 17 00:00:00 2001 From: ST-TEN-1 Date: Tue, 30 Aug 2022 16:58:59 +0200 Subject: [PATCH] wip --- config/machine_settings/stten2.ini | 2 +- src/components/multicomp_730424.py | 19 +++++++++++++------ src/test/multicomp.py | 22 ++++++++++++++++------ src/ui/test_resistance/test_resistance.py | 4 ++++ src/ui/test_vision/test_vision.py | 2 +- 5 files changed, 35 insertions(+), 14 deletions(-) diff --git a/config/machine_settings/stten2.ini b/config/machine_settings/stten2.ini index f950293..40e0560 100644 --- a/config/machine_settings/stten2.ini +++ b/config/machine_settings/stten2.ini @@ -9,4 +9,4 @@ tecna_t3: present port: COM5 [multicomp] -port: COM4 +port: COM8 diff --git a/src/components/multicomp_730424.py b/src/components/multicomp_730424.py index 5ff4bfb..eabc7f9 100644 --- a/src/components/multicomp_730424.py +++ b/src/components/multicomp_730424.py @@ -10,7 +10,7 @@ from .component import Component class Multicomp730424(Component): - def __init__(self, config=None, name=None, period=1, lazy=True, paused=False, threaded=True): + def __init__(self, config=None, name=None, period=1/4, lazy=True, paused=False, threaded=True): self.conn = None super().__init__(config=config, name=name, period=period, lazy=lazy, paused=paused, threaded=threaded) @@ -29,9 +29,15 @@ class Multicomp730424(Component): parity=self.parity, bytesize=self.bytesize, ) + self.write("FUNC1 \"RES\"") + self.write("RATE L") + self.write("AUTO 1") - def set_resistance_scale(self, resistance): - self.write(f"CONF:RES {resistance}") + def set_resistance_scale(self, resistance=None): + if resistance is None: + self.write("AUTO 1") + else: + self.write(f"CONF:RES {resistance}") def read(self): try: @@ -40,7 +46,7 @@ class Multicomp730424(Component): self.log.exception(traceback.format_exc()) return None try: - decoded = response.decode("ascii") + decoded = response.decode("ascii", errors="ignore").strip() except UnicodeDecodeError: return response try: @@ -59,8 +65,9 @@ class Multicomp730424(Component): info = {} try: for value_name, command in { - "scale": "CONF:RES?", - "measure": "MEAS?", + "function": "FUNC1?", + "scale": "RANGE?", + "measure": "MEAS1?", }.items(): self.write(command) info[value_name] = self.read() diff --git a/src/test/multicomp.py b/src/test/multicomp.py index 8716737..ce58383 100644 --- a/src/test/multicomp.py +++ b/src/test/multicomp.py @@ -3,7 +3,7 @@ import time import serial # tester_port="/dev/ttyUSB0" -tester_port = "COM1" +tester_port = "COM8" conn = serial.Serial( tester_port, @@ -16,18 +16,28 @@ conn = serial.Serial( cmd_list = [ ["*IDN?\n", True], # QUERY ID - ["CONF:RES 500\n", False], # SET RESISTANCE MEASURE, 500 Ohm range - ["MEAS?\n", True], # GET MEASURE - ["MEAS?\n", True], # GET MEASURE + ["FUNC1 \"RES\"\n", False], # QUERY ID + ["FUNC1?\n", True], # QUERY ID + ["FUNC2 \"FRES\"\n", False], # QUERY ID + ["FUNC2?\n", True], # QUERY ID + ["RATE L\n", True], # QUERY ID + ["RATE?\n", True], # QUERY ID + ["AUTO 1\n", False], # SET RESISTANCE MEASURE, 500 Ohm range + ["AUTO?\n", True], # SET RESISTANCE MEASURE, 500 Ohm range + # ["CONF:RES 500\n", False], # SET RESISTANCE MEASURE, 500 Ohm range + # ["AUTO?\n", True], # SET RESISTANCE MEASURE, 500 Ohm range + ["RANGE:RES?\n", True], # SET RESISTANCE MEASURE, 500 Ohm range ["MEAS?\n", True], # GET MEASURE + ["MEAS1?\n", True], # GET MEASURE + ["MEAS2?\n", True], # GET MEASURE ] for [cmd, expect_response] in cmd_list: conn.write(bytes(cmd, encoding="ascii")) if expect_response: response = conn.readline() - print(f"{cmd} RESPONSE: " + response.decode("ascii")) + print(f"{cmd} RESPONSE: " + response.decode("ascii", errors="backslashreplace")) else: print(f"{cmd}") - time.sleep(1) + # time.sleep(1) conn.close() diff --git a/src/ui/test_resistance/test_resistance.py b/src/ui/test_resistance/test_resistance.py index ecab0d5..512cb97 100644 --- a/src/ui/test_resistance/test_resistance.py +++ b/src/ui/test_resistance/test_resistance.py @@ -2,6 +2,10 @@ from ui.test_test import Test_Test class Test_Resistance(Test_Test): + def __init__(self, components=None, recipe=None, step=None, run_once=False): + super().__init__(components=components, recipe=recipe, step=step, run_once=run_once) + self.ok_counter_limit = 4 + def start(self, recipe=None, step=None): super().start(recipe=recipe, step=step) if self.run_once is True and self.done is True and self.done_ok is True: diff --git a/src/ui/test_vision/test_vision.py b/src/ui/test_vision/test_vision.py index 0384b8a..1c46682 100644 --- a/src/ui/test_vision/test_vision.py +++ b/src/ui/test_vision/test_vision.py @@ -11,6 +11,7 @@ class Test_Vision(Test_Test): request_frame = pyqtSignal() def __init__(self, components=None, recipe=None, step=None, run_once=False): + super().__init__(components=components, recipe=recipe, step=step, run_once=run_once) if "--sim-camera" not in sys.argv: self.ok_counter_limit = 2 else: @@ -21,7 +22,6 @@ class Test_Vision(Test_Test): "expected": "ATTESO", "score": "PUNTEGGIO", } - super().__init__(components=components, recipe=recipe, step=step, run_once=run_once) self.results_tw.setColumnCount(len(self.results_table_headers)) self.results_tw.setHorizontalHeaderLabels(self.results_table_headers.values()) self.results_tw.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)