fco730 dev

This commit is contained in:
neo-dl 2023-10-11 15:15:42 +02:00
parent 656b56eb62
commit 62ce71cfc2
6 changed files with 43 additions and 39 deletions

View File

@ -11,6 +11,7 @@ from .tecna_marposs_provaset_t3 import TecnaMarpossProvasetT3
from .tecna_screwdriver import TecnaScrewdriver
from .usb_586x import USB_586x
from .rfid_pn532 import RFID_PN532
from furness_controls_leak_tester import FurnessControlsLeakTester
if "--vision" in sys.argv:
from .galaxy_camera import GalaxyCamera
from .neo_pixels import NeoPixels

View File

@ -1,15 +1,10 @@
import sys
from lib.db import Recipes, Steps, db
from PyQt5.QtCore import QSemaphore, pyqtSignal
from PyQt5.QtWidgets import QMessageBox
from .component import Component
from .modbus_component import ModbusComponent
from .furness_controls_fco730_registers import registers as fco730_registers
from .furness_controls_fco780_registers import registers as fco780_registers
from .furness_controls_fco730_registers import settings as fco730_settings
from .furness_controls_fco780_registers import settings as fco780_settings
from components.component import Component
from components.furness_controls_fco730_registers import registers as fco730_registers
from components.furness_controls_fco780_registers import registers as fco780_registers
from components.furness_controls_fco730_registers import settings as fco730_settings
from components.furness_controls_fco780_registers import settings as fco780_settings
if "--sim-furness-controls" in sys.argv:
from components.dummies.serial import serial
else:

View File

@ -62,10 +62,10 @@ logging.basicConfig(
)
try:
# IMPORT PROJECT ONLY AFTER SETTING UP SIGNAL, FAULTHANDLER AND LOGGHING
# IMPORT PROJECT ONLY AFTER SETTING UP SIGNAL, FAULTHANDLER AND LOGGING
from components import (ArchiveSynchronizer, Multicomp730424,
Os_Label_Printer, RemoteAPI,
TecnaMarpossProvasetT3, TecnaScrewdriver, USB_586x,RFID_PN532)
TecnaMarpossProvasetT3,FurnessControlsLeakTester, TecnaScrewdriver, USB_586x,RFID_PN532)
from lib.db import Users
from lib.helpers import ConfigReader
from PyQt5.QtCore import QObject, QThread, pyqtSignal

0
src/test/__init__.py Normal file
View File

View File

@ -1,8 +1,12 @@
import os
import platform
import sys
from datetime import datetime
from PyQt5.QtWidgets import QApplication
if platform.system().lower() == "windows":
sys.path.append(f"{os.getcwd()}\src\components")
else:
sys.path.append(f"{os.getcwd()}/src/components")
from components import Os_Label_Printer
from furness_controls_leak_tester import FurnessControlsLeakTester
from lib.helpers import ConfigReader
@ -13,16 +17,8 @@ app = QApplication(sys.argv)
tester_component = FurnessControlsLeakTester(name="furness_controls")
command=bytearray(['F',0,5,0])
response=tester_component.send_command(command)
if response is not None:
print(f"RESPONSE:{response}")
else:
print("COMMAND ERROR")
enquiry=bytearray(['F',0,5,0])
# GET STATUS
enquiry=bytearray(['M',0,0,0])
response=tester_component.send_enquiry(enquiry)
@ -30,3 +26,14 @@ if response is not None:
print(f"RESPONSE:{response}")
else:
print("INQUIRY ERROR")
# SET PRODUCT 50 (LAST RECIPE)
command=bytearray(['F',0,5,0])
response=tester_component.send_command(command)
if response is not None:
print(f"RESPONSE:{response}")
else:
print("COMMAND ERROR")

View File

@ -13,6 +13,7 @@ VALVE_TIME=0.5
class Test_Leak(Test_Test):
def __init__(self, components=None, recipe=None, step=None, pieces=None, run_once=False, reset_on_start=True, enable_override=False,parent=None):
self.tester_component="tecna_t3" if "tecna_t3" in self.components.keys() else "furness_controls"
super().__init__(components=components, recipe=recipe, step=step, pieces=pieces, run_once=run_once, reset_on_start=reset_on_start, enable_override=enable_override)
self.get_connection = None
self.io_ok = True
@ -31,11 +32,11 @@ class Test_Leak(Test_Test):
dialog.show()
def reset(self):
self.components["tecna_t3"].stop_test()
self.components[self.tester_component].stop_test()
super().reset()
def stop_test(self):
self.components["tecna_t3"].stop_test()
self.components[self.tester_component].stop_test()
self.display_text(text="PROVA INTERROTTA", bg_color="yellow")
time.sleep(1)
self.start_b.setEnabled(True)
@ -75,7 +76,7 @@ class Test_Leak(Test_Test):
self.blow_on = False
if not self.simulate:
self.components["tecna_t3"].start_test()
self.components[self.tester_component].start_test()
def start(self, recipe=None, step=None, pieces=None):
@ -109,11 +110,11 @@ class Test_Leak(Test_Test):
self.recipe_written = False
if not self.recipe_written:
self.components["tecna_t3"].write_recipe(self.recipe, self.step)
self.components[self.tester_component].write_recipe(self.recipe, self.step)
self.recipe_written=True
self.get_connection = self.components["tecna_t3"].out.connect(self.get)
self.components["tecna_t3"].resume()
self.get_connection = self.components[self.tester_component].out.connect(self.get)
self.components[self.tester_component].resume()
if self.parent_assembly_widget is not None:
self.display_text(text="ATTENDERE")
self.start_b.setEnabled(False)
@ -146,8 +147,8 @@ class Test_Leak(Test_Test):
def stop(self):
# disable test loop
self.components["tecna_t3"].stop_test()
self.components["tecna_t3"].pause()
self.components[self.tester_component].stop_test()
self.components[self.tester_component].pause()
self.disconnect(self.get_connection)
super().stop()
self.start_b.setEnabled(False)
@ -164,7 +165,7 @@ class Test_Leak(Test_Test):
# TESTING
if self.simulate:
if "--fail-leak" in sys.argv:
data["tecna_t3"] = {
data[self.tester_component] = {
"Running test: active phase": "WAITING START",
"Running test: result": "-----TESTING----- fail",
"Running test: filling pressure":"5000",
@ -172,7 +173,7 @@ class Test_Leak(Test_Test):
"Running test: pressure at the end of settling":"4999",
}
else:
data["tecna_t3"] = {
data[self.tester_component] = {
"Running test: active phase": "WAITING START",
"Running test: result": "-----TESTING----- passed",
"Running test: filling pressure":"5000",
@ -180,9 +181,9 @@ class Test_Leak(Test_Test):
"Running test: pressure at the end of settling":"4999",
}
if "Running test: result" in data["tecna_t3"]:
if "Running test: result" in data[self.tester_component]:
# TEST ENDED
result = data["tecna_t3"]["Running test: result"]
result = data[self.tester_component]["Running test: result"]
step=self.step.spec.get("autotest", "")
if step == "ok_check":
ok = type(result) is str and "passed" in result.lower() # AUTOTEST - NO LEAK
@ -223,14 +224,14 @@ class Test_Leak(Test_Test):
#"results": {
#"ok": ok,
#"result": result,
#"data": data["tecna_t3"],
#"data": data[self.tester_component],
#},
}], override=override, fail=ok is False)
def visualize(self, data=None):
if data is None:
data = {}
d = data.get("results", {}).get("tecna_t3", {})
d = data.get("results", {}).get(self.tester_component, {})
for k, l in {
"Running test: active phase": self.test_phase_l,
"Real time test pressure output": self.circuit_pressure_l,