fix: исправлено взаимодействие модулей
This commit is contained in:
parent
d99fafd2ae
commit
625f3d7e01
@ -51,7 +51,7 @@
|
|||||||
0.075
|
0.075
|
||||||
],
|
],
|
||||||
"time_capture": [
|
"time_capture": [
|
||||||
100.0
|
1000.0
|
||||||
],
|
],
|
||||||
"UML_time_scaler": [
|
"UML_time_scaler": [
|
||||||
1000.0
|
1000.0
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -10,14 +10,14 @@ class DataConverter(BaseDataConverter):
|
|||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def _replace_bool(dataframe: pd.DataFrame) -> pd.DataFrame:
|
def _replace_bool(dataframe: pd.DataFrame) -> pd.DataFrame:
|
||||||
bool_columns = dataframe.columns[dataframe.isin([True, False]).any()]
|
try:
|
||||||
dataframe[bool_columns] = dataframe[bool_columns].replace({True: 1, False: 0})
|
bool_columns = dataframe.columns[dataframe.isin([True, False]).any()]
|
||||||
return dataframe
|
dataframe[bool_columns] = dataframe[bool_columns].replace({True: 1, False: 0})
|
||||||
|
return dataframe
|
||||||
|
except:
|
||||||
|
return None
|
||||||
|
|
||||||
def convert_data(self, files: list[str]) -> None:
|
def convert_data(self, files: list[str]) -> None:
|
||||||
try:
|
dataframes = [pd.read_csv(file) if file != '' else None for file in files]
|
||||||
dataframes = [pd.read_csv(file) for file in files]
|
converted_dataframes = list(map(self._replace_bool, dataframes))
|
||||||
converted_dataframes = list(map(self._replace_bool, dataframes))
|
self._mediator.notify(self, converted_dataframes)
|
||||||
self._mediator.notify(self, converted_dataframes)
|
|
||||||
except:
|
|
||||||
self._mediator.notify(self, [None])
|
|
||||||
|
|||||||
@ -55,7 +55,7 @@ class DirectoryMonitor(BaseDirectoryMonitor):
|
|||||||
|
|
||||||
def custom_csv_extract_only(self, path: str):
|
def custom_csv_extract_only(self, path: str):
|
||||||
self.stop()
|
self.stop()
|
||||||
self._files = [path]
|
self._files.append(path)
|
||||||
if path is not None:
|
if path is not None:
|
||||||
self._mediator.notify(self, [path])
|
self._mediator.notify(self, [path])
|
||||||
else:
|
else:
|
||||||
|
|||||||
@ -18,7 +18,8 @@ class idealDataBuilder(BaseIdealDataBuilder):
|
|||||||
|
|
||||||
def get_weldingDF(self) -> pd.DataFrame:
|
def get_weldingDF(self) -> pd.DataFrame:
|
||||||
data = []
|
data = []
|
||||||
X1, X2, V1, V2, F = self.calcPhaseGrow(self.Ts['tgrow'])
|
X1, X2, V1, V2, F = self.calcPhaseGrow(self.Ts['tgrow']-0.0001)
|
||||||
|
X1, X2, V1, V2 = X1*1000, X2*1000, V1*1000, V2*1000
|
||||||
data.append({"time":0, "Position FE":X1,"Position ME":X2, "Rotor Speed FE":V1, "Rotor Speed ME":V2, "Force":F})
|
data.append({"time":0, "Position FE":X1,"Position ME":X2, "Rotor Speed FE":V1, "Rotor Speed ME":V2, "Force":F})
|
||||||
data.append({"time":self.welding_time, "Position FE":X1,"Position ME":X2, "Rotor Speed FE":V1, "Rotor Speed ME":V2, "Force":F})
|
data.append({"time":self.welding_time, "Position FE":X1,"Position ME":X2, "Rotor Speed FE":V1, "Rotor Speed ME":V2, "Force":F})
|
||||||
return pd.DataFrame(data)
|
return pd.DataFrame(data)
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@ -92,14 +92,10 @@ class MainWindow(BaseMainWindow):
|
|||||||
def _init_raportUI(self) -> None:
|
def _init_raportUI(self) -> None:
|
||||||
self._clear()
|
self._clear()
|
||||||
self._transfer_settings()
|
self._transfer_settings()
|
||||||
path = self._select_csv()
|
|
||||||
self.tabWidget = QtWidgets.QTabWidget()
|
self.tabWidget = QtWidgets.QTabWidget()
|
||||||
self.tabWidget.setTabsClosable(True)
|
self.tabWidget.setTabsClosable(True)
|
||||||
self.tabWidget.tabCloseRequested.connect(self._close_tab)
|
self.tabWidget.tabCloseRequested.connect(self._close_tab)
|
||||||
if path is None:
|
|
||||||
self.layout().addWidget(QtWidgets.QLabel("Error. Please select correct path to csv"))
|
|
||||||
self._init_startUI()
|
|
||||||
self._controller.raport_mode(None)
|
|
||||||
sys_settings_btn = QtWidgets.QPushButton("System settings")
|
sys_settings_btn = QtWidgets.QPushButton("System settings")
|
||||||
sys_settings_btn.setFixedWidth(185)
|
sys_settings_btn.setFixedWidth(185)
|
||||||
sys_settings_btn.clicked.connect(lambda: self.sysSettings.show())
|
sys_settings_btn.clicked.connect(lambda: self.sysSettings.show())
|
||||||
@ -112,6 +108,9 @@ class MainWindow(BaseMainWindow):
|
|||||||
save_screen_btn = QtWidgets.QPushButton("Save state")
|
save_screen_btn = QtWidgets.QPushButton("Save state")
|
||||||
save_screen_btn.setFixedWidth(185)
|
save_screen_btn.setFixedWidth(185)
|
||||||
save_screen_btn.clicked.connect(self._save_plots)
|
save_screen_btn.clicked.connect(self._save_plots)
|
||||||
|
open_file_btn = QtWidgets.QPushButton("Open file")
|
||||||
|
open_file_btn.setFixedWidth(185)
|
||||||
|
open_file_btn.clicked.connect(self._open_file)
|
||||||
|
|
||||||
button_layout = QtWidgets.QHBoxLayout()
|
button_layout = QtWidgets.QHBoxLayout()
|
||||||
button_layout.setSpacing(2)
|
button_layout.setSpacing(2)
|
||||||
@ -119,6 +118,7 @@ class MainWindow(BaseMainWindow):
|
|||||||
button_layout.addWidget(oper_settings_btn)
|
button_layout.addWidget(oper_settings_btn)
|
||||||
button_layout.addWidget(view_settings_btn)
|
button_layout.addWidget(view_settings_btn)
|
||||||
button_layout.addWidget(save_screen_btn)
|
button_layout.addWidget(save_screen_btn)
|
||||||
|
button_layout.addWidget(open_file_btn)
|
||||||
button_widget = QtWidgets.QWidget()
|
button_widget = QtWidgets.QWidget()
|
||||||
button_widget.setLayout(button_layout)
|
button_widget.setLayout(button_layout)
|
||||||
|
|
||||||
@ -128,7 +128,6 @@ class MainWindow(BaseMainWindow):
|
|||||||
mainLayout.addWidget(button_widget)
|
mainLayout.addWidget(button_widget)
|
||||||
mainLayout.addWidget(title, alignment=Qt.AlignRight)
|
mainLayout.addWidget(title, alignment=Qt.AlignRight)
|
||||||
self.resize(800,800)
|
self.resize(800,800)
|
||||||
self._controller.raport_mode(path)
|
|
||||||
self._controller.raport_mode(None)
|
self._controller.raport_mode(None)
|
||||||
|
|
||||||
#self._controller.raport_mode(path)
|
#self._controller.raport_mode(path)
|
||||||
@ -171,6 +170,10 @@ class MainWindow(BaseMainWindow):
|
|||||||
|
|
||||||
def _close_tab(self, index:int) -> None:
|
def _close_tab(self, index:int) -> None:
|
||||||
self.tabWidget.removeTab(index)
|
self.tabWidget.removeTab(index)
|
||||||
|
|
||||||
|
def _open_file(self) -> None:
|
||||||
|
path = self._select_csv()
|
||||||
|
self._controller.raport_mode(path)
|
||||||
|
|
||||||
def _select_csv(self) -> Optional[str]:
|
def _select_csv(self) -> Optional[str]:
|
||||||
CSV_path, _ = QtWidgets.QFileDialog.getOpenFileName(self,"Select csv file", "", "CSV Files (*.csv)")
|
CSV_path, _ = QtWidgets.QFileDialog.getOpenFileName(self,"Select csv file", "", "CSV Files (*.csv)")
|
||||||
|
|||||||
Binary file not shown.
@ -48,7 +48,7 @@ class BaseDirectoryMonitor:
|
|||||||
self._directory_path = None
|
self._directory_path = None
|
||||||
self._update_time = None
|
self._update_time = None
|
||||||
self.isActive = False
|
self.isActive = False
|
||||||
self._files = None
|
self._files = []
|
||||||
self._mediator = mediator
|
self._mediator = mediator
|
||||||
|
|
||||||
|
|
||||||
@ -360,7 +360,7 @@ class BaseIdealDataBuilder(OptAlgorithm):
|
|||||||
|
|
||||||
def _get_data(self, end_timestamp:float, func:function) -> pd.DataFrame:
|
def _get_data(self, end_timestamp:float, func:function) -> pd.DataFrame:
|
||||||
data = []
|
data = []
|
||||||
for i in range (0, int(end_timestamp*self.mul)):
|
for i in range (0, int(end_timestamp*self.mul)+1):
|
||||||
time = i/self.mul
|
time = i/self.mul
|
||||||
X1, X2, V1, V2, F = func(time)
|
X1, X2, V1, V2, F = func(time)
|
||||||
data.append({"time":time, "Position FE":X1*1000,"Position ME":X2*1000, "Rotor Speed FE":V1*1000, "Rotor Speed ME":V2*1000, "Force":F})
|
data.append({"time":time, "Position FE":X1*1000,"Position ME":X2*1000, "Rotor Speed FE":V1*1000, "Rotor Speed ME":V2*1000, "Force":F})
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user