11 from threading
import Thread, Event
12 from datetime
import datetime
13 from PyQt5
import QtCore, QtGui, QtWidgets
14 from PyQt5.QtCore
import QThread, pyqtSignal
15 from std_msgs.msg
import String
18 from phm_reliability_calculation.class_reliability_calculation
import ReliabilityCalculation
19 from phm_hazard_rate_calculation.class_failure_rate_calculation
import FailureRateCalculation
20 from phm_robot_task_completion.class_robot_task_completion
import RobotTaskCompletion, SimulationRobotTaskCompletion
21 from phm_robot_task_completion.class_potc_subscriber
import POTCSubscriber
52 self.
potc_main_dict = {
"Actual": {
"Nominal": {
"POTC": list([1]),
"Time": list([0])},
"Sensor Based": {
"POTC": list([1]),
"Time": list([0])}},
53 "Predict": {
"Nominal": {
"POTC": list([1]),
"Time": list([0])},
"Sensor Based": {
"POTC": list([1]),
"Time": list([0])}}}
59 self.potc_ros.main_func()
93 MainWindow.setObjectName(
"MainWindow")
94 MainWindow.resize(1100, 900)
95 sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
96 sizePolicy.setHorizontalStretch(0)
97 sizePolicy.setVerticalStretch(0)
98 sizePolicy.setHeightForWidth(MainWindow.sizePolicy().hasHeightForWidth())
99 MainWindow.setSizePolicy(sizePolicy)
100 MainWindow.setMinimumSize(QtCore.QSize(1100, 900))
101 MainWindow.setMaximumSize(QtCore.QSize(1100, 900))
103 self.centralwidget.setObjectName(
"centralwidget")
105 self.tabWidget_general.setGeometry(QtCore.QRect(0, 0, 1100, 900))
106 self.tabWidget_general.setFocusPolicy(QtCore.Qt.NoFocus)
107 self.tabWidget_general.setObjectName(
"tabWidget_general")
109 self.tab_configuration.setObjectName(
"tab_configuration")
111 self.tabWidget_configuration.setGeometry(QtCore.QRect(0, 0, 1100, 731))
112 self.tabWidget_configuration.setObjectName(
"tabWidget_configuration")
114 self.tab_add_object.setObjectName(
"tab_add_object")
116 self.tabWidget.setGeometry(QtCore.QRect(0, 0, 1100, 720))
117 self.tabWidget.setObjectName(
"tabWidget")
119 self.tab_3.setObjectName(
"tab_3")
121 self.groupBox_c_ao_am_add_module.setGeometry(QtCore.QRect(50, 20, 421, 70))
122 self.groupBox_c_ao_am_add_module.setAlignment(QtCore.Qt.AlignCenter)
123 self.groupBox_c_ao_am_add_module.setFlat(
False)
124 self.groupBox_c_ao_am_add_module.setCheckable(
False)
125 self.groupBox_c_ao_am_add_module.setObjectName(
"groupBox_c_ao_am_add_module")
127 self.lineEdit_c_ao_am_module_name.setGeometry(QtCore.QRect(140, 25, 210, 27))
128 self.lineEdit_c_ao_am_module_name.setObjectName(
"lineEdit_c_ao_am_module_name")
130 self.label_12.setGeometry(QtCore.QRect(0, 30, 131, 21))
131 self.label_12.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
132 self.label_12.setObjectName(
"label_12")
134 self.groupBox_c_ao_am_module_fr.setGeometry(QtCore.QRect(50, 110, 351, 191))
135 self.groupBox_c_ao_am_module_fr.setFlat(
False)
136 self.groupBox_c_ao_am_module_fr.setCheckable(
True)
137 self.groupBox_c_ao_am_module_fr.setChecked(
False)
138 self.groupBox_c_ao_am_module_fr.setObjectName(
"groupBox_c_ao_am_module_fr")
140 self.lineEdit_c_ao_am_module_fr.setGeometry(QtCore.QRect(160, 30, 160, 27))
141 self.lineEdit_c_ao_am_module_fr.setObjectName(
"lineEdit_c_ao_am_module_fr")
143 self.label_13.setGeometry(QtCore.QRect(10, 30, 141, 21))
144 self.label_13.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
145 self.label_13.setObjectName(
"label_13")
147 self.label_42.setGeometry(QtCore.QRect(0, 110, 150, 31))
148 self.label_42.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
149 self.label_42.setObjectName(
"label_42")
151 self.label_43.setGeometry(QtCore.QRect(0, 150, 150, 21))
152 self.label_43.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
153 self.label_43.setObjectName(
"label_43")
155 self.comboBox_c_ao_am_select_type.setGeometry(QtCore.QRect(160, 110, 160, 27))
156 self.comboBox_c_ao_am_select_type.setObjectName(
"comboBox_c_ao_am_select_type")
158 self.label_44.setGeometry(QtCore.QRect(20, 70, 131, 31))
159 self.label_44.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
160 self.label_44.setObjectName(
"label_44")
162 self.spinBox_c_ao_am_quantity.setGeometry(QtCore.QRect(160, 70, 160, 27))
163 self.spinBox_c_ao_am_quantity.setMinimum(1)
164 self.spinBox_c_ao_am_quantity.setMaximum(9999999)
165 self.spinBox_c_ao_am_quantity.setObjectName(
"spinBox_c_ao_am_quantity")
167 self.lineEdit_c_ao_am_total_module_fr.setGeometry(QtCore.QRect(160, 150, 160, 27))
168 self.lineEdit_c_ao_am_total_module_fr.setReadOnly(
True)
169 self.lineEdit_c_ao_am_total_module_fr.setObjectName(
"lineEdit_c_ao_am_total_module_fr")
171 self.pushButton_c_ao_am_add_module.setGeometry(QtCore.QRect(480, 200, 125, 50))
172 self.pushButton_c_ao_am_add_module.setObjectName(
"pushButton_c_ao_am_add_module")
174 self.groupBox_c_ao_am_list_of_modules.setGeometry(QtCore.QRect(670, 10, 411, 291))
175 self.groupBox_c_ao_am_list_of_modules.setObjectName(
"groupBox_c_ao_am_list_of_modules")
177 self.listWidget_c_ao_am_list_of_modules.setGeometry(QtCore.QRect(0, 30, 400, 200))
178 self.listWidget_c_ao_am_list_of_modules.setObjectName(
"listWidget_c_ao_am_list_of_modules")
180 self.pushButton_c_ao_am_delete_module.setGeometry(QtCore.QRect(300, 240, 99, 27))
181 self.pushButton_c_ao_am_delete_module.setObjectName(
"pushButton_c_ao_am_delete_module")
183 self.line_4.setGeometry(QtCore.QRect(630, 0, 16, 661))
184 self.line_4.setFrameShape(QtWidgets.QFrame.VLine)
185 self.line_4.setFrameShadow(QtWidgets.QFrame.Sunken)
186 self.line_4.setObjectName(
"line_4")
187 self.tabWidget.addTab(self.
tab_3,
"")
189 self.tab_5.setObjectName(
"tab_5")
191 self.groupBox_c_ao_asm_sub_module_fr.setGeometry(QtCore.QRect(50, 90, 351, 181))
192 self.groupBox_c_ao_asm_sub_module_fr.setFlat(
False)
193 self.groupBox_c_ao_asm_sub_module_fr.setCheckable(
True)
194 self.groupBox_c_ao_asm_sub_module_fr.setChecked(
False)
195 self.groupBox_c_ao_asm_sub_module_fr.setObjectName(
"groupBox_c_ao_asm_sub_module_fr")
197 self.label_18.setGeometry(QtCore.QRect(0, 30, 171, 21))
198 self.label_18.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
199 self.label_18.setObjectName(
"label_18")
201 self.lineEdit_c_ao_asm_sub_module_fr.setGeometry(QtCore.QRect(180, 30, 160, 27))
202 self.lineEdit_c_ao_asm_sub_module_fr.setObjectName(
"lineEdit_c_ao_asm_sub_module_fr")
204 self.label_36.setGeometry(QtCore.QRect(10, 70, 161, 31))
205 self.label_36.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
206 self.label_36.setObjectName(
"label_36")
208 self.comboBox_c_ao_asm_sfr_select_type.setGeometry(QtCore.QRect(180, 110, 160, 27))
209 self.comboBox_c_ao_asm_sfr_select_type.setObjectName(
"comboBox_c_ao_asm_sfr_select_type")
211 self.label_40.setGeometry(QtCore.QRect(-10, 150, 181, 21))
212 self.label_40.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
213 self.label_40.setObjectName(
"label_40")
215 self.spinBox_c_ao_asm_sfr_quantity.setGeometry(QtCore.QRect(180, 70, 160, 27))
216 self.spinBox_c_ao_asm_sfr_quantity.setMinimum(1)
217 self.spinBox_c_ao_asm_sfr_quantity.setMaximum(9999999)
218 self.spinBox_c_ao_asm_sfr_quantity.setObjectName(
"spinBox_c_ao_asm_sfr_quantity")
220 self.lineEdit_c_ao_asm_sfr_total_component_fr.setGeometry(QtCore.QRect(180, 150, 160, 27))
221 self.lineEdit_c_ao_asm_sfr_total_component_fr.setReadOnly(
True)
222 self.lineEdit_c_ao_asm_sfr_total_component_fr.setObjectName(
"lineEdit_c_ao_asm_sfr_total_component_fr")
224 self.label_41.setGeometry(QtCore.QRect(10, 110, 161, 31))
225 self.label_41.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
226 self.label_41.setObjectName(
"label_41")
228 self.groupBox_c_ao_asm_default_fr.setGeometry(QtCore.QRect(50, 310, 351, 301))
231 font.setItalic(
False)
232 font.setUnderline(
False)
234 font.setStrikeOut(
False)
235 font.setKerning(
True)
236 font.setStyleStrategy(QtGui.QFont.PreferAntialias)
237 self.groupBox_c_ao_asm_default_fr.setFont(font)
238 self.groupBox_c_ao_asm_default_fr.setFocusPolicy(QtCore.Qt.NoFocus)
239 self.groupBox_c_ao_asm_default_fr.setContextMenuPolicy(QtCore.Qt.NoContextMenu)
240 self.groupBox_c_ao_asm_default_fr.setAlignment(QtCore.Qt.AlignCenter)
241 self.groupBox_c_ao_asm_default_fr.setFlat(
False)
242 self.groupBox_c_ao_asm_default_fr.setCheckable(
True)
243 self.groupBox_c_ao_asm_default_fr.setChecked(
False)
244 self.groupBox_c_ao_asm_default_fr.setObjectName(
"groupBox_c_ao_asm_default_fr")
246 self.label_19.setGeometry(QtCore.QRect(10, 30, 161, 21))
247 self.label_19.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
248 self.label_19.setObjectName(
"label_19")
250 self.comboBox_c_ao_asm_select_equipment.setGeometry(QtCore.QRect(180, 30, 160, 27))
251 self.comboBox_c_ao_asm_select_equipment.setObjectName(
"comboBox_c_ao_asm_select_equipment")
253 self.label_20.setGeometry(QtCore.QRect(10, 150, 161, 31))
254 self.label_20.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
255 self.label_20.setObjectName(
"label_20")
257 self.comboBox_c_ao_asm_select_type.setGeometry(QtCore.QRect(180, 150, 160, 27))
258 self.comboBox_c_ao_asm_select_type.setObjectName(
"comboBox_c_ao_asm_select_type")
260 self.lineEdit_c_ao_asm_component_fr.setGeometry(QtCore.QRect(180, 70, 160, 27))
261 self.lineEdit_c_ao_asm_component_fr.setReadOnly(
True)
262 self.lineEdit_c_ao_asm_component_fr.setObjectName(
"lineEdit_c_ao_asm_component_fr")
264 self.label_21.setGeometry(QtCore.QRect(-10, 190, 181, 21))
265 self.label_21.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
266 self.label_21.setObjectName(
"label_21")
268 self.label_30.setGeometry(QtCore.QRect(10, 110, 161, 31))
269 self.label_30.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
270 self.label_30.setObjectName(
"label_30")
272 self.spinBox_c_ao_asm_quantity.setGeometry(QtCore.QRect(180, 110, 160, 27))
273 self.spinBox_c_ao_asm_quantity.setMinimum(1)
274 self.spinBox_c_ao_asm_quantity.setMaximum(9999999)
275 self.spinBox_c_ao_asm_quantity.setObjectName(
"spinBox_c_ao_asm_quantity")
277 self.pushButton_c_ao_asm_set_equipment.setGeometry(QtCore.QRect(80, 240, 200, 50))
278 self.pushButton_c_ao_asm_set_equipment.setObjectName(
"pushButton_c_ao_asm_set_equipment")
280 self.lineEdit_c_ao_asm_total_component_fr.setGeometry(QtCore.QRect(180, 190, 160, 27))
281 self.lineEdit_c_ao_asm_total_component_fr.setReadOnly(
True)
282 self.lineEdit_c_ao_asm_total_component_fr.setObjectName(
"lineEdit_c_ao_asm_total_component_fr")
284 self.label_33.setGeometry(QtCore.QRect(10, 70, 161, 31))
285 self.label_33.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
286 self.label_33.setWordWrap(
True)
287 self.label_33.setObjectName(
"label_33")
289 self.groupBox_c_ao_asm_select_module.setGeometry(QtCore.QRect(20, 20, 331, 51))
290 self.groupBox_c_ao_asm_select_module.setTitle(
"")
291 self.groupBox_c_ao_asm_select_module.setAlignment(QtCore.Qt.AlignCenter)
292 self.groupBox_c_ao_asm_select_module.setFlat(
False)
293 self.groupBox_c_ao_asm_select_module.setCheckable(
False)
294 self.groupBox_c_ao_asm_select_module.setObjectName(
"groupBox_c_ao_asm_select_module")
296 self.comboBox_c_ao_asm_select_module.setGeometry(QtCore.QRect(150, 10, 171, 27))
297 self.comboBox_c_ao_asm_select_module.setCurrentText(
"")
298 self.comboBox_c_ao_asm_select_module.setObjectName(
"comboBox_c_ao_asm_select_module")
300 self.label_28.setGeometry(QtCore.QRect(0, 10, 141, 22))
301 self.label_28.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
302 self.label_28.setObjectName(
"label_28")
304 self.pushButton_c_ao_asm_add_sub_module.setGeometry(QtCore.QRect(480, 590, 125, 50))
305 self.pushButton_c_ao_asm_add_sub_module.setObjectName(
"pushButton_c_ao_asm_add_sub_module")
307 self.groupBox_c_ao_asm_set_sub_module_name.setGeometry(QtCore.QRect(370, 10, 241, 60))
308 self.groupBox_c_ao_asm_set_sub_module_name.setTitle(
"")
309 self.groupBox_c_ao_asm_set_sub_module_name.setAlignment(QtCore.Qt.AlignCenter)
310 self.groupBox_c_ao_asm_set_sub_module_name.setFlat(
False)
311 self.groupBox_c_ao_asm_set_sub_module_name.setCheckable(
False)
312 self.groupBox_c_ao_asm_set_sub_module_name.setObjectName(
"groupBox_c_ao_asm_set_sub_module_name")
314 self.lineEdit_c_ao_asm_set_sub_module_name.setGeometry(QtCore.QRect(9, 20, 210, 27))
315 self.lineEdit_c_ao_asm_set_sub_module_name.setObjectName(
"lineEdit_c_ao_asm_set_sub_module_name")
317 self.label_29.setGeometry(QtCore.QRect(10, 0, 151, 22))
318 self.label_29.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
319 self.label_29.setObjectName(
"label_29")
321 self.groupBox_c_ao_asm_list_of_sub_modules.setGeometry(QtCore.QRect(670, 10, 401, 291))
322 self.groupBox_c_ao_asm_list_of_sub_modules.setObjectName(
"groupBox_c_ao_asm_list_of_sub_modules")
324 self.listWidget_c_ao_asm_list_of_sub_modules.setGeometry(QtCore.QRect(0, 30, 400, 200))
325 self.listWidget_c_ao_asm_list_of_sub_modules.setObjectName(
"listWidget_c_ao_asm_list_of_sub_modules")
327 self.pushButton_c_ao_asm_delete_sub_module.setGeometry(QtCore.QRect(300, 240, 99, 27))
328 self.pushButton_c_ao_asm_delete_sub_module.setObjectName(
"pushButton_c_ao_asm_delete_sub_module")
330 self.line_3.setGeometry(QtCore.QRect(630, 0, 16, 661))
331 self.line_3.setFrameShape(QtWidgets.QFrame.VLine)
332 self.line_3.setFrameShadow(QtWidgets.QFrame.Sunken)
333 self.line_3.setObjectName(
"line_3")
334 self.tabWidget.addTab(self.
tab_5,
"")
336 self.tab_4.setObjectName(
"tab_4")
338 self.tabWidget_5.setGeometry(QtCore.QRect(0, 0, 1100, 900))
339 self.tabWidget_5.setObjectName(
"tabWidget_5")
341 self.tab_10.setObjectName(
"tab_10")
343 self.pushButton_c_ao_ac_add_component.setGeometry(QtCore.QRect(480, 560, 125, 50))
344 self.pushButton_c_ao_ac_add_component.setObjectName(
"pushButton_c_ao_ac_add_component")
346 self.groupBox_c_ao_ac_select_sub_module.setGeometry(QtCore.QRect(20, 20, 331, 81))
347 self.groupBox_c_ao_ac_select_sub_module.setTitle(
"")
348 self.groupBox_c_ao_ac_select_sub_module.setAlignment(QtCore.Qt.AlignCenter)
349 self.groupBox_c_ao_ac_select_sub_module.setFlat(
False)
350 self.groupBox_c_ao_ac_select_sub_module.setCheckable(
False)
351 self.groupBox_c_ao_ac_select_sub_module.setObjectName(
"groupBox_c_ao_ac_select_sub_module")
353 self.comboBox_c_ao_ac_select_sub_module.setGeometry(QtCore.QRect(160, 40, 171, 27))
354 self.comboBox_c_ao_ac_select_sub_module.setCurrentText(
"")
355 self.comboBox_c_ao_ac_select_sub_module.setObjectName(
"comboBox_c_ao_ac_select_sub_module")
357 self.comboBox_c_ao_ac_select_module.setGeometry(QtCore.QRect(160, 10, 171, 27))
358 self.comboBox_c_ao_ac_select_module.setCurrentText(
"")
359 self.comboBox_c_ao_ac_select_module.setObjectName(
"comboBox_c_ao_ac_select_module")
361 self.label_9.setGeometry(QtCore.QRect(10, 10, 141, 22))
362 self.label_9.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
363 self.label_9.setObjectName(
"label_9")
365 self.label_14.setGeometry(QtCore.QRect(0, 40, 151, 22))
366 self.label_14.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
367 self.label_14.setObjectName(
"label_14")
369 self.groupBox_c_ao_ac_list_of_components.setGeometry(QtCore.QRect(670, 10, 401, 291))
370 self.groupBox_c_ao_ac_list_of_components.setObjectName(
"groupBox_c_ao_ac_list_of_components")
372 self.listWidget_c_ao_ac_list_of_components.setGeometry(QtCore.QRect(0, 30, 400, 200))
373 self.listWidget_c_ao_ac_list_of_components.setObjectName(
"listWidget_c_ao_ac_list_of_components")
375 self.pushButton_c_ao_ac_delete_component.setGeometry(QtCore.QRect(300, 240, 99, 27))
376 self.pushButton_c_ao_ac_delete_component.setObjectName(
"pushButton_c_ao_ac_delete_component")
378 self.groupBox_c_ao_ac_default_fr.setGeometry(QtCore.QRect(50, 310, 341, 251))
381 font.setItalic(
False)
382 font.setUnderline(
False)
384 font.setStrikeOut(
False)
385 font.setKerning(
True)
386 font.setStyleStrategy(QtGui.QFont.PreferAntialias)
387 self.groupBox_c_ao_ac_default_fr.setFont(font)
388 self.groupBox_c_ao_ac_default_fr.setFocusPolicy(QtCore.Qt.NoFocus)
389 self.groupBox_c_ao_ac_default_fr.setContextMenuPolicy(QtCore.Qt.NoContextMenu)
390 self.groupBox_c_ao_ac_default_fr.setAlignment(QtCore.Qt.AlignCenter)
391 self.groupBox_c_ao_ac_default_fr.setFlat(
False)
392 self.groupBox_c_ao_ac_default_fr.setCheckable(
True)
393 self.groupBox_c_ao_ac_default_fr.setChecked(
False)
394 self.groupBox_c_ao_ac_default_fr.setObjectName(
"groupBox_c_ao_ac_default_fr")
396 self.label_7.setGeometry(QtCore.QRect(10, 30, 161, 21))
397 self.label_7.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
398 self.label_7.setObjectName(
"label_7")
400 self.comboBox_c_ao_ac_select_equipment.setGeometry(QtCore.QRect(180, 30, 160, 27))
401 self.comboBox_c_ao_ac_select_equipment.setObjectName(
"comboBox_c_ao_ac_select_equipment")
403 self.label_8.setGeometry(QtCore.QRect(10, 110, 161, 31))
404 self.label_8.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
405 self.label_8.setObjectName(
"label_8")
407 self.lineEdit_c_ao_ac_component_fr_2.setGeometry(QtCore.QRect(180, 70, 160, 27))
408 self.lineEdit_c_ao_ac_component_fr_2.setReadOnly(
True)
409 self.lineEdit_c_ao_ac_component_fr_2.setObjectName(
"lineEdit_c_ao_ac_component_fr_2")
411 self.label_11.setGeometry(QtCore.QRect(-10, 70, 181, 21))
412 self.label_11.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
413 self.label_11.setObjectName(
"label_11")
415 self.spinBox_c_ao_ac_quantity.setGeometry(QtCore.QRect(180, 110, 160, 27))
416 self.spinBox_c_ao_ac_quantity.setMinimum(1)
417 self.spinBox_c_ao_ac_quantity.setMaximum(9999999)
418 self.spinBox_c_ao_ac_quantity.setObjectName(
"spinBox_c_ao_ac_quantity")
420 self.pushButton_c_ao_ac_set_equipment.setGeometry(QtCore.QRect(80, 190, 200, 50))
421 self.pushButton_c_ao_ac_set_equipment.setObjectName(
"pushButton_c_ao_ac_set_equipment")
423 self.lineEdit_c_ao_ac_total_component_fr.setGeometry(QtCore.QRect(180, 150, 160, 27))
424 self.lineEdit_c_ao_ac_total_component_fr.setReadOnly(
True)
425 self.lineEdit_c_ao_ac_total_component_fr.setObjectName(
"lineEdit_c_ao_ac_total_component_fr")
427 self.label_34.setGeometry(QtCore.QRect(-10, 150, 181, 21))
428 self.label_34.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
429 self.label_34.setObjectName(
"label_34")
431 self.groupBox_c_ao_ac_set_component_name.setGeometry(QtCore.QRect(400, 20, 221, 60))
432 self.groupBox_c_ao_ac_set_component_name.setTitle(
"")
433 self.groupBox_c_ao_ac_set_component_name.setAlignment(QtCore.Qt.AlignCenter)
434 self.groupBox_c_ao_ac_set_component_name.setFlat(
False)
435 self.groupBox_c_ao_ac_set_component_name.setCheckable(
False)
436 self.groupBox_c_ao_ac_set_component_name.setObjectName(
"groupBox_c_ao_ac_set_component_name")
438 self.lineEdit_c_ao_ac_set_component_name.setGeometry(QtCore.QRect(0, 20, 210, 27))
439 self.lineEdit_c_ao_ac_set_component_name.setObjectName(
"lineEdit_c_ao_ac_set_component_name")
441 self.label_17.setGeometry(QtCore.QRect(0, 0, 151, 22))
442 self.label_17.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
443 self.label_17.setObjectName(
"label_17")
445 self.groupBox_c_ao_ac_component_fr.setGeometry(QtCore.QRect(50, 120, 351, 141))
446 self.groupBox_c_ao_ac_component_fr.setAlignment(QtCore.Qt.AlignCenter)
447 self.groupBox_c_ao_ac_component_fr.setFlat(
False)
448 self.groupBox_c_ao_ac_component_fr.setCheckable(
True)
449 self.groupBox_c_ao_ac_component_fr.setChecked(
False)
450 self.groupBox_c_ao_ac_component_fr.setObjectName(
"groupBox_c_ao_ac_component_fr")
452 self.lineEdit_c_ao_ac_component_fr.setGeometry(QtCore.QRect(180, 30, 160, 27))
453 self.lineEdit_c_ao_ac_component_fr.setObjectName(
"lineEdit_c_ao_ac_component_fr")
455 self.label_10.setGeometry(QtCore.QRect(0, 35, 171, 21))
456 self.label_10.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
457 self.label_10.setObjectName(
"label_10")
459 self.label_31.setGeometry(QtCore.QRect(10, 70, 161, 31))
460 self.label_31.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
461 self.label_31.setObjectName(
"label_31")
463 self.spinBox_c_ao_ac_sfr_quantity.setGeometry(QtCore.QRect(180, 70, 160, 27))
464 self.spinBox_c_ao_ac_sfr_quantity.setMinimum(1)
465 self.spinBox_c_ao_ac_sfr_quantity.setMaximum(9999999)
466 self.spinBox_c_ao_ac_sfr_quantity.setObjectName(
"spinBox_c_ao_ac_sfr_quantity")
468 self.lineEdit_c_ao_ac_sfr_total_component_fr.setGeometry(QtCore.QRect(180, 110, 160, 27))
469 self.lineEdit_c_ao_ac_sfr_total_component_fr.setReadOnly(
True)
470 self.lineEdit_c_ao_ac_sfr_total_component_fr.setObjectName(
"lineEdit_c_ao_ac_sfr_total_component_fr")
472 self.label_35.setGeometry(QtCore.QRect(-10, 110, 181, 21))
473 self.label_35.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
474 self.label_35.setObjectName(
"label_35")
476 self.line.setGeometry(QtCore.QRect(630, 0, 16, 631))
477 self.line.setFrameShape(QtWidgets.QFrame.VLine)
478 self.line.setFrameShadow(QtWidgets.QFrame.Sunken)
479 self.line.setObjectName(
"line")
480 self.tabWidget_5.addTab(self.
tab_10,
"")
482 self.tab_11.setObjectName(
"tab_11")
484 self.groupBox_c_ao_ace_select_module.setGeometry(QtCore.QRect(10, 20, 341, 111))
485 self.groupBox_c_ao_ace_select_module.setTitle(
"")
486 self.groupBox_c_ao_ace_select_module.setAlignment(QtCore.Qt.AlignCenter)
487 self.groupBox_c_ao_ace_select_module.setFlat(
False)
488 self.groupBox_c_ao_ace_select_module.setCheckable(
False)
489 self.groupBox_c_ao_ace_select_module.setObjectName(
"groupBox_c_ao_ace_select_module")
491 self.comboBox_c_ao_ace_select_module.setGeometry(QtCore.QRect(170, 10, 171, 27))
492 self.comboBox_c_ao_ace_select_module.setCurrentText(
"")
493 self.comboBox_c_ao_ace_select_module.setObjectName(
"comboBox_c_ao_ace_select_module")
495 self.label.setGeometry(QtCore.QRect(20, 10, 141, 22))
496 self.label.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
497 self.label.setObjectName(
"label")
499 self.comboBox_c_ao_ace_select_sub_module.setGeometry(QtCore.QRect(170, 40, 171, 27))
500 self.comboBox_c_ao_ace_select_sub_module.setCurrentText(
"")
501 self.comboBox_c_ao_ace_select_sub_module.setObjectName(
"comboBox_c_ao_ace_select_sub_module")
503 self.label_2.setGeometry(QtCore.QRect(10, 40, 151, 22))
504 self.label_2.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
505 self.label_2.setObjectName(
"label_2")
507 self.groupBox_c_ao_ace_set_element_name.setGeometry(QtCore.QRect(390, 20, 241, 321))
511 self.groupBox_c_ao_ace_set_element_name.setFont(font)
512 self.groupBox_c_ao_ace_set_element_name.setTitle(
"")
513 self.groupBox_c_ao_ace_set_element_name.setAlignment(QtCore.Qt.AlignCenter)
514 self.groupBox_c_ao_ace_set_element_name.setFlat(
False)
515 self.groupBox_c_ao_ace_set_element_name.setCheckable(
False)
516 self.groupBox_c_ao_ace_set_element_name.setObjectName(
"groupBox_c_ao_ace_set_element_name")
518 self.lineEdit_c_ao_ace_set_element_name.setGeometry(QtCore.QRect(10, 80, 190, 27))
519 self.lineEdit_c_ao_ace_set_element_name.setObjectName(
"lineEdit_c_ao_ace_set_element_name")
521 self.label_4.setGeometry(QtCore.QRect(10, 60, 141, 22))
522 self.label_4.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
523 self.label_4.setObjectName(
"label_4")
525 self.lineEdit_c_ao_ace_set_element_variable_name.setGeometry(QtCore.QRect(10, 140, 190, 27))
526 self.lineEdit_c_ao_ace_set_element_variable_name.setObjectName(
"lineEdit_c_ao_ace_set_element_variable_name")
528 self.label_5.setGeometry(QtCore.QRect(10, 120, 231, 22))
529 self.label_5.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
530 self.label_5.setObjectName(
"label_5")
532 self.pushButton_c_ao_ace_add_component_element.setGeometry(QtCore.QRect(40, 250, 125, 50))
533 self.pushButton_c_ao_ace_add_component_element.setObjectName(
"pushButton_c_ao_ace_add_component_element")
535 self.groupBox_c_ao_ace_set_element_value.setGeometry(QtCore.QRect(0, 180, 211, 60))
536 self.groupBox_c_ao_ace_set_element_value.setAlignment(QtCore.Qt.AlignCenter)
537 self.groupBox_c_ao_ace_set_element_value.setFlat(
False)
538 self.groupBox_c_ao_ace_set_element_value.setCheckable(
False)
539 self.groupBox_c_ao_ace_set_element_value.setChecked(
False)
540 self.groupBox_c_ao_ace_set_element_value.setObjectName(
"groupBox_c_ao_ace_set_element_value")
542 self.lineEdit_c_ao_ace_set_element_value.setEnabled(
True)
543 self.lineEdit_c_ao_ace_set_element_value.setGeometry(QtCore.QRect(10, 30, 190, 27))
544 self.lineEdit_c_ao_ace_set_element_value.setObjectName(
"lineEdit_c_ao_ace_set_element_value")
546 self.label_32.setGeometry(QtCore.QRect(10, 0, 151, 22))
547 self.label_32.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
548 self.label_32.setObjectName(
"label_32")
550 self.lineEdit_c_ao_ace_set_component_name.setGeometry(QtCore.QRect(10, 20, 190, 27))
551 self.lineEdit_c_ao_ace_set_component_name.setObjectName(
"lineEdit_c_ao_ace_set_component_name")
553 self.groupBox_c_ao_ace_list_of_elements.setGeometry(QtCore.QRect(670, 70, 411, 291))
554 self.groupBox_c_ao_ace_list_of_elements.setObjectName(
"groupBox_c_ao_ace_list_of_elements")
556 self.listWidget_c_ao_ace_list_of_elements.setGeometry(QtCore.QRect(0, 30, 400, 200))
557 self.listWidget_c_ao_ace_list_of_elements.setObjectName(
"listWidget_c_ao_ace_list_of_elements")
559 self.pushButton_c_ao_ace_delete_element.setGeometry(QtCore.QRect(300, 240, 99, 27))
560 self.pushButton_c_ao_ace_delete_element.setObjectName(
"pushButton_c_ao_ace_delete_element")
562 self.line_2.setGeometry(QtCore.QRect(630, 0, 16, 631))
563 self.line_2.setFrameShape(QtWidgets.QFrame.VLine)
564 self.line_2.setFrameShadow(QtWidgets.QFrame.Sunken)
565 self.line_2.setObjectName(
"line_2")
567 self.comboBox_c_ao_ace_select_component.setGeometry(QtCore.QRect(810, 30, 171, 27))
568 self.comboBox_c_ao_ace_select_component.setCurrentText(
"")
569 self.comboBox_c_ao_ace_select_component.setObjectName(
"comboBox_c_ao_ace_select_component")
571 self.label_3.setGeometry(QtCore.QRect(660, 30, 141, 22))
572 self.label_3.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
573 self.label_3.setObjectName(
"label_3")
575 self.line_5.setGeometry(QtCore.QRect(10, 370, 621, 16))
576 self.line_5.setFrameShape(QtWidgets.QFrame.HLine)
577 self.line_5.setFrameShadow(QtWidgets.QFrame.Sunken)
578 self.line_5.setObjectName(
"line_5")
580 self.groupBox_c_ao_ac_set_formula.setGeometry(QtCore.QRect(20, 380, 611, 201))
581 self.groupBox_c_ao_ac_set_formula.setTitle(
"")
582 self.groupBox_c_ao_ac_set_formula.setObjectName(
"groupBox_c_ao_ac_set_formula")
584 self.pushButton_c_ao_ac_set_formula.setGeometry(QtCore.QRect(140, 130, 150, 50))
585 self.pushButton_c_ao_ac_set_formula.setObjectName(
"pushButton_c_ao_ac_set_formula")
587 self.plainTextEdit_c_ao_ac_set_formula.setGeometry(QtCore.QRect(10, 90, 421, 31))
588 self.plainTextEdit_c_ao_ac_set_formula.setPlainText(
"")
589 self.plainTextEdit_c_ao_ac_set_formula.setObjectName(
"plainTextEdit_c_ao_ac_set_formula")
591 self.label_15.setGeometry(QtCore.QRect(10, 60, 231, 22))
592 self.label_15.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
593 self.label_15.setObjectName(
"label_15")
595 self.lineEdit_c_ao_ace_component_fr.setGeometry(QtCore.QRect(450, 90, 150, 31))
596 self.lineEdit_c_ao_ace_component_fr.setReadOnly(
True)
597 self.lineEdit_c_ao_ace_component_fr.setObjectName(
"lineEdit_c_ao_ace_component_fr")
599 self.label_16.setGeometry(QtCore.QRect(450, 60, 141, 22))
600 self.label_16.setAlignment(QtCore.Qt.AlignLeading|QtCore.Qt.AlignLeft|QtCore.Qt.AlignVCenter)
601 self.label_16.setObjectName(
"label_16")
603 self.comboBox_c_ao_ace_select_component_2.setGeometry(QtCore.QRect(150, 30, 171, 27))
604 self.comboBox_c_ao_ace_select_component_2.setCurrentText(
"")
605 self.comboBox_c_ao_ace_select_component_2.setObjectName(
"comboBox_c_ao_ace_select_component_2")
607 self.label_6.setGeometry(QtCore.QRect(0, 30, 141, 22))
608 self.label_6.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
609 self.label_6.setObjectName(
"label_6")
610 self.tabWidget_5.addTab(self.
tab_11,
"")
611 self.tabWidget.addTab(self.
tab_4,
"")
614 self.tab_set_type.setObjectName(
"tab_set_type")
616 self.tabWidget_types.setGeometry(QtCore.QRect(0, 0, 1100, 700))
617 self.tabWidget_types.setFocusPolicy(QtCore.Qt.TabFocus)
618 self.tabWidget_types.setObjectName(
"tabWidget_types")
619 self.
tab = QtWidgets.QWidget()
620 self.tab.setObjectName(
"tab")
622 self.label_configurations_4.setGeometry(QtCore.QRect(500, 240, 111, 17))
623 self.label_configurations_4.setObjectName(
"label_configurations_4")
625 self.label_configuration_select_first_comp.setGeometry(QtCore.QRect(490, 20, 171, 17))
626 self.label_configuration_select_first_comp.setObjectName(
"label_configuration_select_first_comp")
628 self.groupBox_result.setGeometry(QtCore.QRect(210, 340, 450, 80))
629 self.groupBox_result.setTitle(
"")
630 self.groupBox_result.setObjectName(
"groupBox_result")
632 self.comboBox_configuration_select_second_comp.setGeometry(QtCore.QRect(780, 40, 161, 27))
633 self.comboBox_configuration_select_second_comp.setObjectName(
"comboBox_configuration_select_second_comp")
635 self.line_22.setGeometry(QtCore.QRect(360, 20, 20, 191))
636 self.line_22.setFrameShape(QtWidgets.QFrame.VLine)
637 self.line_22.setFrameShadow(QtWidgets.QFrame.Sunken)
638 self.line_22.setObjectName(
"line_22")
640 self.label_configuration_sub_module_list_3.setGeometry(QtCore.QRect(70, 30, 111, 20))
641 self.label_configuration_sub_module_list_3.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
642 self.label_configuration_sub_module_list_3.setObjectName(
"label_configuration_sub_module_list_3")
644 self.groupBox_set_types_4.setGeometry(QtCore.QRect(470, 110, 591, 41))
645 self.groupBox_set_types_4.setTitle(
"")
646 self.groupBox_set_types_4.setObjectName(
"groupBox_set_types_4")
648 self.pushButton_configuration_set_comp_type.setGeometry(QtCore.QRect(480, 10, 99, 27))
649 self.pushButton_configuration_set_comp_type.setObjectName(
"pushButton_configuration_set_comp_type")
651 self.label_24.setGeometry(QtCore.QRect(187, 10, 16, 31))
654 self.label_24.setFont(font)
655 self.label_24.setObjectName(
"label_24")
657 self.label_25.setGeometry(QtCore.QRect(290, 10, 16, 31))
660 self.label_25.setFont(font)
661 self.label_25.setObjectName(
"label_25")
663 self.lineEdit_configuration_second_component.setGeometry(QtCore.QRect(310, 10, 160, 27))
664 self.lineEdit_configuration_second_component.setReadOnly(
True)
665 self.lineEdit_configuration_second_component.setObjectName(
"lineEdit_configuration_second_component")
667 self.comboBox_configuration_type_of_component.setGeometry(QtCore.QRect(205, 10, 80, 27))
668 self.comboBox_configuration_type_of_component.setObjectName(
"comboBox_configuration_type_of_component")
670 self.lineEdit_configuration_first_component.setGeometry(QtCore.QRect(20, 10, 160, 27))
671 self.lineEdit_configuration_first_component.setReadOnly(
True)
672 self.lineEdit_configuration_first_component.setObjectName(
"lineEdit_configuration_first_component")
674 self.pushButton_delete_component_config.setGeometry(QtCore.QRect(800, 300, 101, 27))
675 self.pushButton_delete_component_config.setAutoDefault(
False)
676 self.pushButton_delete_component_config.setDefault(
False)
677 self.pushButton_delete_component_config.setFlat(
False)
678 self.pushButton_delete_component_config.setObjectName(
"pushButton_delete_component_config")
680 self.lineEdit_configuration_failure_rate_sub_module.setGeometry(QtCore.QRect(190, 119, 160, 27))
681 self.lineEdit_configuration_failure_rate_sub_module.setReadOnly(
True)
682 self.lineEdit_configuration_failure_rate_sub_module.setObjectName(
"lineEdit_configuration_failure_rate_sub_module")
684 self.listWidget_configurations_of_components.setGeometry(QtCore.QRect(340, 260, 440, 371))
685 self.listWidget_configurations_of_components.setDragDropMode(QtWidgets.QAbstractItemView.NoDragDrop)
686 self.listWidget_configurations_of_components.setObjectName(
"listWidget_configurations_of_components")
688 self.pushButton_add_component_config.setGeometry(QtCore.QRect(800, 260, 99, 27))
689 self.pushButton_add_component_config.setObjectName(
"pushButton_add_component_config")
691 self.label_configuration_select_second_comp.setGeometry(QtCore.QRect(780, 20, 191, 17))
692 self.label_configuration_select_second_comp.setObjectName(
"label_configuration_select_second_comp")
694 self.comboBox_configuration_select_first_comp.setGeometry(QtCore.QRect(490, 40, 161, 27))
695 self.comboBox_configuration_select_first_comp.setObjectName(
"comboBox_configuration_select_first_comp")
697 self.pushButton_select_final_configuration_of_sub_module.setGeometry(QtCore.QRect(800, 600, 201, 27))
698 self.pushButton_select_final_configuration_of_sub_module.setObjectName(
"pushButton_select_final_configuration_of_sub_module")
700 self.lineEdit_configuration_failure_rate_first_component.setGeometry(QtCore.QRect(490, 70, 160, 27))
701 self.lineEdit_configuration_failure_rate_first_component.setReadOnly(
True)
702 self.lineEdit_configuration_failure_rate_first_component.setObjectName(
"lineEdit_configuration_failure_rate_first_component")
704 self.label_configuration_failure_rate_7.setGeometry(QtCore.QRect(400, 70, 91, 20))
705 self.label_configuration_failure_rate_7.setObjectName(
"label_configuration_failure_rate_7")
707 self.label_configuration_sub_module_list_2.setGeometry(QtCore.QRect(70, 59, 111, 20))
708 self.label_configuration_sub_module_list_2.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
709 self.label_configuration_sub_module_list_2.setObjectName(
"label_configuration_sub_module_list_2")
711 self.listWidget_components.setGeometry(QtCore.QRect(50, 260, 256, 371))
712 self.listWidget_components.setObjectName(
"listWidget_components")
714 self.label_configuration_sub_module_list.setGeometry(QtCore.QRect(50, 89, 131, 20))
715 self.label_configuration_sub_module_list.setObjectName(
"label_configuration_sub_module_list")
717 self.comboBox_configuration_st_sc_select_system.setGeometry(QtCore.QRect(190, 30, 161, 27))
718 self.comboBox_configuration_st_sc_select_system.setObjectName(
"comboBox_configuration_st_sc_select_system")
720 self.label_components.setGeometry(QtCore.QRect(120, 240, 91, 17))
721 self.label_components.setObjectName(
"label_components")
723 self.comboBox_configuration_st_sc_select_sub_module.setGeometry(QtCore.QRect(190, 89, 161, 27))
724 self.comboBox_configuration_st_sc_select_sub_module.setObjectName(
"comboBox_configuration_st_sc_select_sub_module")
726 self.comboBox_configuration_st_sc_select_module.setGeometry(QtCore.QRect(190, 59, 161, 27))
727 self.comboBox_configuration_st_sc_select_module.setObjectName(
"comboBox_configuration_st_sc_select_module")
729 self.label_configuration_failure_rate_8.setGeometry(QtCore.QRect(20, 120, 171, 20))
730 self.label_configuration_failure_rate_8.setObjectName(
"label_configuration_failure_rate_8")
732 self.lineEdit_configuration_failure_rate_second_component.setGeometry(QtCore.QRect(780, 70, 160, 27))
733 self.lineEdit_configuration_failure_rate_second_component.setReadOnly(
True)
734 self.lineEdit_configuration_failure_rate_second_component.setObjectName(
"lineEdit_configuration_failure_rate_second_component")
735 self.tabWidget_types.addTab(self.
tab,
"")
737 self.tab_2.setObjectName(
"tab_2")
739 self.pushButton_delete_sub_module_config.setGeometry(QtCore.QRect(800, 300, 101, 27))
740 self.pushButton_delete_sub_module_config.setAutoDefault(
False)
741 self.pushButton_delete_sub_module_config.setDefault(
False)
742 self.pushButton_delete_sub_module_config.setFlat(
False)
743 self.pushButton_delete_sub_module_config.setObjectName(
"pushButton_delete_sub_module_config")
745 self.pushButton_add_sub_module_config.setGeometry(QtCore.QRect(800, 260, 99, 27))
746 self.pushButton_add_sub_module_config.setObjectName(
"pushButton_add_sub_module_config")
748 self.lineEdit_configuration_failure_rate_module.setGeometry(QtCore.QRect(190, 89, 160, 27))
749 self.lineEdit_configuration_failure_rate_module.setReadOnly(
True)
750 self.lineEdit_configuration_failure_rate_module.setObjectName(
"lineEdit_configuration_failure_rate_module")
752 self.lineEdit_configuration_failure_rate_second_sub_module.setGeometry(QtCore.QRect(780, 70, 160, 27))
753 self.lineEdit_configuration_failure_rate_second_sub_module.setReadOnly(
True)
754 self.lineEdit_configuration_failure_rate_second_sub_module.setObjectName(
"lineEdit_configuration_failure_rate_second_sub_module")
756 self.groupBox_set_types_5.setGeometry(QtCore.QRect(480, 110, 591, 41))
757 self.groupBox_set_types_5.setTitle(
"")
758 self.groupBox_set_types_5.setObjectName(
"groupBox_set_types_5")
760 self.pushButton_configuration_set_sub_module_type.setGeometry(QtCore.QRect(470, 10, 99, 27))
761 self.pushButton_configuration_set_sub_module_type.setObjectName(
"pushButton_configuration_set_sub_module_type")
763 self.label_26.setGeometry(QtCore.QRect(177, 10, 16, 31))
766 self.label_26.setFont(font)
767 self.label_26.setObjectName(
"label_26")
769 self.label_27.setGeometry(QtCore.QRect(280, 10, 16, 31))
772 self.label_27.setFont(font)
773 self.label_27.setObjectName(
"label_27")
775 self.lineEdit_configuration_second_sub_module.setGeometry(QtCore.QRect(300, 10, 160, 27))
776 self.lineEdit_configuration_second_sub_module.setReadOnly(
True)
777 self.lineEdit_configuration_second_sub_module.setObjectName(
"lineEdit_configuration_second_sub_module")
779 self.comboBox_configuration_type_of_sub_module.setGeometry(QtCore.QRect(195, 10, 80, 27))
780 self.comboBox_configuration_type_of_sub_module.setObjectName(
"comboBox_configuration_type_of_sub_module")
782 self.lineEdit_configuration_first_sub_module.setGeometry(QtCore.QRect(10, 10, 160, 27))
783 self.lineEdit_configuration_first_sub_module.setReadOnly(
True)
784 self.lineEdit_configuration_first_sub_module.setObjectName(
"lineEdit_configuration_first_sub_module")
786 self.comboBox_configuration_st_ssm_select_module.setGeometry(QtCore.QRect(190, 59, 161, 27))
787 self.comboBox_configuration_st_ssm_select_module.setObjectName(
"comboBox_configuration_st_ssm_select_module")
789 self.label_configuration_failure_rate_9.setGeometry(QtCore.QRect(50, 90, 141, 20))
790 self.label_configuration_failure_rate_9.setObjectName(
"label_configuration_failure_rate_9")
792 self.comboBox_configuration_select_first_sub_module.setGeometry(QtCore.QRect(490, 40, 161, 27))
793 self.comboBox_configuration_select_first_sub_module.setObjectName(
"comboBox_configuration_select_first_sub_module")
795 self.comboBox_configuration_st_ssm_select_system.setGeometry(QtCore.QRect(190, 30, 161, 27))
796 self.comboBox_configuration_st_ssm_select_system.setObjectName(
"comboBox_configuration_st_ssm_select_system")
798 self.lineEdit_configuration_failure_rate_first_sub_module.setGeometry(QtCore.QRect(490, 70, 160, 27))
799 self.lineEdit_configuration_failure_rate_first_sub_module.setReadOnly(
True)
800 self.lineEdit_configuration_failure_rate_first_sub_module.setObjectName(
"lineEdit_configuration_failure_rate_first_sub_module")
802 self.label_configuration_select_first_sub_module.setGeometry(QtCore.QRect(490, 20, 171, 17))
803 self.label_configuration_select_first_sub_module.setObjectName(
"label_configuration_select_first_sub_module")
805 self.label_configuration_select_second_sub_module.setGeometry(QtCore.QRect(780, 20, 191, 17))
806 self.label_configuration_select_second_sub_module.setObjectName(
"label_configuration_select_second_sub_module")
808 self.listWidget_configurations_of_sub_modules.setGeometry(QtCore.QRect(340, 260, 440, 371))
809 self.listWidget_configurations_of_sub_modules.setDragDropMode(QtWidgets.QAbstractItemView.NoDragDrop)
810 self.listWidget_configurations_of_sub_modules.setObjectName(
"listWidget_configurations_of_sub_modules")
812 self.listWidget_sub_modules.setGeometry(QtCore.QRect(50, 260, 256, 371))
813 self.listWidget_sub_modules.setObjectName(
"listWidget_sub_modules")
815 self.label_configuration_failure_rate_10.setGeometry(QtCore.QRect(400, 70, 91, 20))
816 self.label_configuration_failure_rate_10.setObjectName(
"label_configuration_failure_rate_10")
818 self.label_configuration_sub_module_list_4.setGeometry(QtCore.QRect(70, 30, 111, 20))
819 self.label_configuration_sub_module_list_4.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
820 self.label_configuration_sub_module_list_4.setObjectName(
"label_configuration_sub_module_list_4")
822 self.label_configuration_module_list.setGeometry(QtCore.QRect(80, 59, 101, 20))
823 self.label_configuration_module_list.setObjectName(
"label_configuration_module_list")
825 self.pushButton_select_final_configuration_of_module.setGeometry(QtCore.QRect(800, 600, 201, 27))
826 self.pushButton_select_final_configuration_of_module.setObjectName(
"pushButton_select_final_configuration_of_module")
828 self.label_configurations_5.setGeometry(QtCore.QRect(500, 240, 111, 17))
829 self.label_configurations_5.setObjectName(
"label_configurations_5")
831 self.comboBox_configuration_select_second_sub_module.setGeometry(QtCore.QRect(780, 40, 161, 27))
832 self.comboBox_configuration_select_second_sub_module.setObjectName(
"comboBox_configuration_select_second_sub_module")
834 self.label_sub_module.setGeometry(QtCore.QRect(120, 240, 91, 17))
835 self.label_sub_module.setObjectName(
"label_sub_module")
837 self.line_32.setGeometry(QtCore.QRect(360, 20, 20, 191))
838 self.line_32.setFrameShape(QtWidgets.QFrame.VLine)
839 self.line_32.setFrameShadow(QtWidgets.QFrame.Sunken)
840 self.line_32.setObjectName(
"line_32")
841 self.tabWidget_types.addTab(self.
tab_2,
"")
843 self.tab_set_module_types_2.setObjectName(
"tab_set_module_types_2")
845 self.label_configurations_3.setGeometry(QtCore.QRect(500, 240, 111, 17))
846 self.label_configurations_3.setObjectName(
"label_configurations_3")
848 self.listWidget_configurations_of_modules.setGeometry(QtCore.QRect(340, 260, 440, 371))
849 self.listWidget_configurations_of_modules.setDragDropMode(QtWidgets.QAbstractItemView.NoDragDrop)
850 self.listWidget_configurations_of_modules.setObjectName(
"listWidget_configurations_of_modules")
852 self.label_configuration_system_list.setGeometry(QtCore.QRect(80, 30, 101, 20))
853 self.label_configuration_system_list.setObjectName(
"label_configuration_system_list")
855 self.listWidget_modules.setGeometry(QtCore.QRect(50, 260, 256, 371))
856 self.listWidget_modules.setObjectName(
"listWidget_modules")
858 self.label_modules.setGeometry(QtCore.QRect(140, 240, 61, 17))
859 self.label_modules.setObjectName(
"label_modules")
861 self.lineEdit_configuration_failure_rate_second_module.setGeometry(QtCore.QRect(780, 70, 160, 27))
862 self.lineEdit_configuration_failure_rate_second_module.setReadOnly(
True)
863 self.lineEdit_configuration_failure_rate_second_module.setObjectName(
"lineEdit_configuration_failure_rate_second_module")
865 self.lineEdit_configuration_failure_rate_first_module.setGeometry(QtCore.QRect(490, 70, 160, 27))
866 self.lineEdit_configuration_failure_rate_first_module.setReadOnly(
True)
867 self.lineEdit_configuration_failure_rate_first_module.setObjectName(
"lineEdit_configuration_failure_rate_first_module")
869 self.pushButton_delete_module_config.setGeometry(QtCore.QRect(800, 300, 101, 27))
870 self.pushButton_delete_module_config.setAutoDefault(
False)
871 self.pushButton_delete_module_config.setDefault(
False)
872 self.pushButton_delete_module_config.setFlat(
False)
873 self.pushButton_delete_module_config.setObjectName(
"pushButton_delete_module_config")
875 self.pushButton_add_module_config.setGeometry(QtCore.QRect(800, 260, 99, 27))
876 self.pushButton_add_module_config.setObjectName(
"pushButton_add_module_config")
878 self.comboBox_configuration_st_sm_select_system.setGeometry(QtCore.QRect(190, 30, 161, 27))
879 self.comboBox_configuration_st_sm_select_system.setObjectName(
"comboBox_configuration_st_sm_select_system")
881 self.comboBox_configuration_select_second_module.setGeometry(QtCore.QRect(780, 40, 161, 27))
882 self.comboBox_configuration_select_second_module.setObjectName(
"comboBox_configuration_select_second_module")
884 self.groupBox_set_types_3.setGeometry(QtCore.QRect(480, 110, 591, 41))
885 self.groupBox_set_types_3.setTitle(
"")
886 self.groupBox_set_types_3.setObjectName(
"groupBox_set_types_3")
888 self.pushButton_configuration_set_module_type.setGeometry(QtCore.QRect(470, 10, 99, 27))
889 self.pushButton_configuration_set_module_type.setObjectName(
"pushButton_configuration_set_module_type")
891 self.label_22.setGeometry(QtCore.QRect(177, 10, 16, 31))
894 self.label_22.setFont(font)
895 self.label_22.setObjectName(
"label_22")
897 self.label_23.setGeometry(QtCore.QRect(280, 10, 16, 31))
900 self.label_23.setFont(font)
901 self.label_23.setObjectName(
"label_23")
903 self.lineEdit_configuration_second_module.setGeometry(QtCore.QRect(300, 10, 160, 27))
904 self.lineEdit_configuration_second_module.setReadOnly(
True)
905 self.lineEdit_configuration_second_module.setObjectName(
"lineEdit_configuration_second_module")
907 self.comboBox_configuration_type_of_module.setGeometry(QtCore.QRect(195, 10, 80, 27))
908 self.comboBox_configuration_type_of_module.setObjectName(
"comboBox_configuration_type_of_module")
910 self.lineEdit_configuration_first_module.setGeometry(QtCore.QRect(10, 10, 160, 27))
911 self.lineEdit_configuration_first_module.setReadOnly(
True)
912 self.lineEdit_configuration_first_module.setObjectName(
"lineEdit_configuration_first_module")
914 self.label_configuration_select_second_module.setGeometry(QtCore.QRect(780, 20, 191, 17))
915 self.label_configuration_select_second_module.setObjectName(
"label_configuration_select_second_module")
917 self.comboBox_configuration_select_first_module.setGeometry(QtCore.QRect(490, 40, 161, 27))
918 self.comboBox_configuration_select_first_module.setObjectName(
"comboBox_configuration_select_first_module")
920 self.label_configuration_select_first_module.setGeometry(QtCore.QRect(490, 20, 171, 17))
921 self.label_configuration_select_first_module.setObjectName(
"label_configuration_select_first_module")
923 self.label_configuration_failure_rate_5.setGeometry(QtCore.QRect(400, 70, 91, 21))
924 self.label_configuration_failure_rate_5.setObjectName(
"label_configuration_failure_rate_5")
926 self.line_21.setGeometry(QtCore.QRect(360, 20, 20, 191))
927 self.line_21.setFrameShape(QtWidgets.QFrame.VLine)
928 self.line_21.setFrameShadow(QtWidgets.QFrame.Sunken)
929 self.line_21.setObjectName(
"line_21")
931 self.lineEdit_configuration_failure_rate_system.setGeometry(QtCore.QRect(190, 60, 160, 27))
932 self.lineEdit_configuration_failure_rate_system.setReadOnly(
True)
933 self.lineEdit_configuration_failure_rate_system.setObjectName(
"lineEdit_configuration_failure_rate_system")
935 self.label_configuration_system_failure_rate.setGeometry(QtCore.QRect(50, 61, 141, 20))
936 self.label_configuration_system_failure_rate.setObjectName(
"label_configuration_system_failure_rate")
938 self.pushButton_select_final_configuration_of_system.setGeometry(QtCore.QRect(800, 600, 201, 27))
939 self.pushButton_select_final_configuration_of_system.setObjectName(
"pushButton_select_final_configuration_of_system")
941 self.comboBox_configuration_reliability_model.setGeometry(QtCore.QRect(190, 120, 160, 27))
942 self.comboBox_configuration_reliability_model.setObjectName(
"comboBox_configuration_reliability_model")
944 self.label_configuration_reliability_type.setGeometry(QtCore.QRect(0, 120, 181, 20))
945 self.label_configuration_reliability_type.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
946 self.label_configuration_reliability_type.setWordWrap(
False)
947 self.label_configuration_reliability_type.setObjectName(
"label_configuration_reliability_type")
949 self.comboBox_configuration_unit.setGeometry(QtCore.QRect(190, 180, 160, 27))
950 self.comboBox_configuration_unit.setObjectName(
"comboBox_configuration_unit")
952 self.label_configuration_unit.setGeometry(QtCore.QRect(80, 180, 100, 20))
953 self.label_configuration_unit.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
954 self.label_configuration_unit.setWordWrap(
True)
955 self.label_configuration_unit.setObjectName(
"label_configuration_unit")
957 self.lineEdit_configuration_reliability_shape_parameter.setGeometry(QtCore.QRect(190, 150, 75, 27))
958 self.lineEdit_configuration_reliability_shape_parameter.setReadOnly(
False)
959 self.lineEdit_configuration_reliability_shape_parameter.setObjectName(
"lineEdit_configuration_reliability_shape_parameter")
961 self.label_configuration_shape_parameter.setGeometry(QtCore.QRect(47, 150, 130, 20))
962 self.label_configuration_shape_parameter.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
963 self.label_configuration_shape_parameter.setWordWrap(
True)
964 self.label_configuration_shape_parameter.setObjectName(
"label_configuration_shape_parameter")
966 self.tabWidget_configuration.addTab(self.
tab_set_type,
"")
968 self.pushButton_c_ao_start_analysis.setGeometry(QtCore.QRect(160, 740, 161, 50))
969 self.pushButton_c_ao_start_analysis.setObjectName(
"pushButton_c_ao_start_analysis")
971 self.pushButton_c_ao_save.setGeometry(QtCore.QRect(880, 740, 100, 50))
972 self.pushButton_c_ao_save.setObjectName(
"pushButton_c_ao_save")
974 self.pushButton_c_ao_load.setGeometry(QtCore.QRect(710, 740, 100, 50))
975 self.pushButton_c_ao_load.setObjectName(
"pushButton_c_ao_load")
978 self.tab_monitoring.setObjectName(
"tab_monitoring")
980 self.tabWidget_monitoring.setGeometry(QtCore.QRect(0, 0, 1100, 900))
981 self.tabWidget_monitoring.setObjectName(
"tabWidget_monitoring")
983 self.tab_hazard_rate.setObjectName(
"tab_hazard_rate")
985 self.groupBox_sys_failure_rate.setGeometry(QtCore.QRect(560, 300, 200, 70))
986 self.groupBox_sys_failure_rate.setAlignment(QtCore.Qt.AlignCenter)
987 self.groupBox_sys_failure_rate.setObjectName(
"groupBox_sys_failure_rate")
989 self.lineEdit_m_sys_lambda.setGeometry(QtCore.QRect(0, 30, 200, 27))
990 self.lineEdit_m_sys_lambda.setReadOnly(
True)
991 self.lineEdit_m_sys_lambda.setObjectName(
"lineEdit_m_sys_lambda")
993 self.widget_monitoring_hazard_rate.setGeometry(QtCore.QRect(150, 360, 800, 425))
994 self.widget_monitoring_hazard_rate.setObjectName(
"widget_monitoring_hazard_rate")
996 self.groupBox_hazard_rate_sensor_list.setGeometry(QtCore.QRect(600, 20, 400, 290))
997 self.groupBox_hazard_rate_sensor_list.setObjectName(
"groupBox_hazard_rate_sensor_list")
999 self.pushButton_monitoring_deleted_sensor.setGeometry(QtCore.QRect(300, 30, 100, 30))
1000 self.pushButton_monitoring_deleted_sensor.setAutoDefault(
False)
1001 self.pushButton_monitoring_deleted_sensor.setDefault(
False)
1002 self.pushButton_monitoring_deleted_sensor.setFlat(
False)
1003 self.pushButton_monitoring_deleted_sensor.setObjectName(
"pushButton_monitoring_deleted_sensor")
1005 self.label_sensor_list.setGeometry(QtCore.QRect(110, 10, 111, 17))
1006 self.label_sensor_list.setObjectName(
"label_sensor_list")
1008 self.listWidget_monitoring_hazard_rate_sensor_list.setGeometry(QtCore.QRect(40, 30, 250, 250))
1009 self.listWidget_monitoring_hazard_rate_sensor_list.setDragDropMode(QtWidgets.QAbstractItemView.NoDragDrop)
1010 self.listWidget_monitoring_hazard_rate_sensor_list.setObjectName(
"listWidget_monitoring_hazard_rate_sensor_list")
1012 self.groupBox_hazard_rate_add_sensor.setGeometry(QtCore.QRect(100, 130, 440, 170))
1013 font = QtGui.QFont()
1015 font.setItalic(
False)
1016 font.setUnderline(
False)
1018 font.setStrikeOut(
False)
1019 font.setKerning(
True)
1020 font.setStyleStrategy(QtGui.QFont.PreferAntialias)
1021 self.groupBox_hazard_rate_add_sensor.setFont(font)
1022 self.groupBox_hazard_rate_add_sensor.setFocusPolicy(QtCore.Qt.NoFocus)
1023 self.groupBox_hazard_rate_add_sensor.setContextMenuPolicy(QtCore.Qt.NoContextMenu)
1024 self.groupBox_hazard_rate_add_sensor.setAlignment(QtCore.Qt.AlignCenter)
1025 self.groupBox_hazard_rate_add_sensor.setFlat(
False)
1026 self.groupBox_hazard_rate_add_sensor.setCheckable(
False)
1027 self.groupBox_hazard_rate_add_sensor.setChecked(
False)
1028 self.groupBox_hazard_rate_add_sensor.setObjectName(
"groupBox_hazard_rate_add_sensor")
1030 self.label_37.setGeometry(QtCore.QRect(20, 30, 121, 21))
1031 self.label_37.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
1032 self.label_37.setObjectName(
"label_37")
1034 self.comboBox_m_hazard_rate_select_sensor.setGeometry(QtCore.QRect(150, 30, 151, 27))
1035 self.comboBox_m_hazard_rate_select_sensor.setObjectName(
"comboBox_m_hazard_rate_select_sensor")
1037 self.lineEdit_m_hazard_rate_select_sensor_value.setGeometry(QtCore.QRect(150, 70, 151, 27))
1038 self.lineEdit_m_hazard_rate_select_sensor_value.setReadOnly(
True)
1039 self.lineEdit_m_hazard_rate_select_sensor_value.setObjectName(
"lineEdit_m_hazard_rate_select_sensor_value")
1041 self.label_38.setGeometry(QtCore.QRect(0, 70, 141, 21))
1042 self.label_38.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
1043 self.label_38.setObjectName(
"label_38")
1045 self.pushButton_m_hazard_rate_refresh_sensor.setGeometry(QtCore.QRect(310, 30, 125, 31))
1046 self.pushButton_m_hazard_rate_refresh_sensor.setObjectName(
"pushButton_m_hazard_rate_refresh_sensor")
1048 self.pushButton_m_hazard_rate_add_sensor.setGeometry(QtCore.QRect(170, 110, 100, 50))
1049 self.pushButton_m_hazard_rate_add_sensor.setObjectName(
"pushButton_m_hazard_rate_add_sensor")
1051 self.groupBox_sys_select_failure_rate_type.setGeometry(QtCore.QRect(340, 300, 200, 70))
1052 self.groupBox_sys_select_failure_rate_type.setAlignment(QtCore.Qt.AlignCenter)
1053 self.groupBox_sys_select_failure_rate_type.setObjectName(
"groupBox_sys_select_failure_rate_type")
1055 self.comboBox_m_sys_select_failure_rate_type.setGeometry(QtCore.QRect(0, 30, 200, 27))
1056 self.comboBox_m_sys_select_failure_rate_type.setObjectName(
"comboBox_m_sys_select_failure_rate_type")
1058 self.groupBox_sys_select_place_failure_rate.setGeometry(QtCore.QRect(100, 20, 440, 70))
1059 self.groupBox_sys_select_place_failure_rate.setAlignment(QtCore.Qt.AlignCenter)
1060 self.groupBox_sys_select_place_failure_rate.setObjectName(
"groupBox_sys_select_place_failure_rate")
1062 self.comboBox_m_select_place_failure_rate.setGeometry(QtCore.QRect(160, 30, 200, 27))
1063 self.comboBox_m_select_place_failure_rate.setObjectName(
"comboBox_m_select_place_failure_rate")
1065 self.label_39.setGeometry(QtCore.QRect(0, 30, 151, 21))
1066 self.label_39.setAlignment(QtCore.Qt.AlignRight|QtCore.Qt.AlignTrailing|QtCore.Qt.AlignVCenter)
1067 self.label_39.setObjectName(
"label_39")
1070 self.tab_reliability.setObjectName(
"tab_reliability")
1072 self.widget_monitoring_reliability.setGeometry(QtCore.QRect(150, 360, 800, 425))
1073 self.widget_monitoring_reliability.setObjectName(
"widget_monitoring_reliability")
1075 self.groupBox_sys_reliability.setGeometry(QtCore.QRect(560, 300, 200, 70))
1076 self.groupBox_sys_reliability.setAlignment(QtCore.Qt.AlignCenter)
1077 self.groupBox_sys_reliability.setObjectName(
"groupBox_sys_reliability")
1079 self.lineEdit_m_sys_reliability.setGeometry(QtCore.QRect(0, 30, 200, 27))
1080 self.lineEdit_m_sys_reliability.setReadOnly(
True)
1081 self.lineEdit_m_sys_reliability.setObjectName(
"lineEdit_m_sys_reliability")
1083 self.groupBox_sys_select_reliability_type.setGeometry(QtCore.QRect(340, 300, 200, 70))
1084 self.groupBox_sys_select_reliability_type.setAlignment(QtCore.Qt.AlignCenter)
1085 self.groupBox_sys_select_reliability_type.setObjectName(
"groupBox_sys_select_reliability_type")
1087 self.comboBox_m_sys_select_reliability_type.setGeometry(QtCore.QRect(0, 30, 200, 27))
1088 self.comboBox_m_sys_select_reliability_type.setObjectName(
"comboBox_m_sys_select_reliability_type")
1090 self.groupBox_6.setGeometry(QtCore.QRect(330, 30, 470, 200))
1091 self.groupBox_6.setObjectName(
"groupBox_6")
1093 self.groupBox_select_reliability_module.setGeometry(QtCore.QRect(0, 30, 200, 60))
1094 self.groupBox_select_reliability_module.setAlignment(QtCore.Qt.AlignCenter)
1095 self.groupBox_select_reliability_module.setFlat(
False)
1096 self.groupBox_select_reliability_module.setCheckable(
False)
1097 self.groupBox_select_reliability_module.setObjectName(
"groupBox_select_reliability_module")
1099 self.comboBox_m_reliability_module.setGeometry(QtCore.QRect(0, 30, 200, 27))
1100 self.comboBox_m_reliability_module.setCurrentText(
"")
1101 self.comboBox_m_reliability_module.setObjectName(
"comboBox_m_reliability_module")
1103 self.groupBox_module_reliability.setGeometry(QtCore.QRect(120, 120, 200, 70))
1104 self.groupBox_module_reliability.setAlignment(QtCore.Qt.AlignCenter)
1105 self.groupBox_module_reliability.setObjectName(
"groupBox_module_reliability")
1107 self.lineEdit_m_module_reliability.setGeometry(QtCore.QRect(0, 30, 200, 27))
1108 self.lineEdit_m_module_reliability.setReadOnly(
True)
1109 self.lineEdit_m_module_reliability.setObjectName(
"lineEdit_m_module_reliability")
1111 self.groupBox_sys_select_module_reliability_type.setGeometry(QtCore.QRect(220, 30, 230, 70))
1112 self.groupBox_sys_select_module_reliability_type.setAlignment(QtCore.Qt.AlignCenter)
1113 self.groupBox_sys_select_module_reliability_type.setObjectName(
"groupBox_sys_select_module_reliability_type")
1115 self.comboBox_m_sys_select_module_reliability_type.setGeometry(QtCore.QRect(0, 30, 200, 27))
1116 self.comboBox_m_sys_select_module_reliability_type.setObjectName(
"comboBox_m_sys_select_module_reliability_type")
1119 self.tab_potc.setObjectName(
"tab_potc")
1121 self.tabWidget_2.setGeometry(QtCore.QRect(0, 0, 1101, 900))
1122 self.tabWidget_2.setObjectName(
"tabWidget_2")
1124 self.tab_6.setObjectName(
"tab_6")
1126 self.widget_monitoring_potc.setGeometry(QtCore.QRect(160, 310, 800, 425))
1127 self.widget_monitoring_potc.setObjectName(
"widget_monitoring_potc")
1129 self.groupBox_m_potc_actual_group.setGeometry(QtCore.QRect(80, 30, 500, 275))
1130 self.groupBox_m_potc_actual_group.setAlignment(QtCore.Qt.AlignCenter)
1131 self.groupBox_m_potc_actual_group.setObjectName(
"groupBox_m_potc_actual_group")
1133 self.groupBox_sys_potc_reliability.setGeometry(QtCore.QRect(0, 190, 200, 70))
1134 self.groupBox_sys_potc_reliability.setAlignment(QtCore.Qt.AlignCenter)
1135 self.groupBox_sys_potc_reliability.setObjectName(
"groupBox_sys_potc_reliability")
1137 self.lineEdit_m_sys_potc_reliability.setGeometry(QtCore.QRect(0, 30, 200, 27))
1138 self.lineEdit_m_sys_potc_reliability.setReadOnly(
True)
1139 self.lineEdit_m_sys_potc_reliability.setObjectName(
"lineEdit_m_sys_potc_reliability")
1141 self.groupBox_sys_potc_sb_reliability.setGeometry(QtCore.QRect(250, 190, 200, 70))
1142 self.groupBox_sys_potc_sb_reliability.setAlignment(QtCore.Qt.AlignCenter)
1143 self.groupBox_sys_potc_sb_reliability.setObjectName(
"groupBox_sys_potc_sb_reliability")
1145 self.lineEdit_m_sys_potc_sb_reliability.setGeometry(QtCore.QRect(0, 30, 200, 27))
1146 self.lineEdit_m_sys_potc_sb_reliability.setReadOnly(
True)
1147 self.lineEdit_m_sys_potc_sb_reliability.setObjectName(
"lineEdit_m_sys_potc_sb_reliability")
1149 self.groupBox_m_potc_actual_time.setGeometry(QtCore.QRect(0, 50, 200, 70))
1150 self.groupBox_m_potc_actual_time.setAlignment(QtCore.Qt.AlignCenter)
1151 self.groupBox_m_potc_actual_time.setObjectName(
"groupBox_m_potc_actual_time")
1153 self.lineEdit_m_potc_actual_time.setGeometry(QtCore.QRect(0, 30, 200, 27))
1154 self.lineEdit_m_potc_actual_time.setReadOnly(
True)
1155 self.lineEdit_m_potc_actual_time.setObjectName(
"lineEdit_m_potc_actual_time")
1157 self.groupBox_m_potc_actual_distance.setGeometry(QtCore.QRect(250, 50, 200, 70))
1158 self.groupBox_m_potc_actual_distance.setAlignment(QtCore.Qt.AlignCenter)
1159 self.groupBox_m_potc_actual_distance.setObjectName(
"groupBox_m_potc_actual_distance")
1161 self.lineEdit_m_potc_actual_distance.setGeometry(QtCore.QRect(0, 30, 200, 27))
1162 self.lineEdit_m_potc_actual_distance.setReadOnly(
True)
1163 self.lineEdit_m_potc_actual_distance.setObjectName(
"lineEdit_m_potc_actual_distance")
1165 self.line_6.setGeometry(QtCore.QRect(0, 130, 500, 30))
1166 self.line_6.setFrameShadow(QtWidgets.QFrame.Plain)
1167 self.line_6.setLineWidth(3)
1168 self.line_6.setFrameShape(QtWidgets.QFrame.HLine)
1169 self.line_6.setObjectName(
"line_6")
1171 self.groupBox_m_potc_predict_group.setGeometry(QtCore.QRect(580, 30, 450, 275))
1172 self.groupBox_m_potc_predict_group.setAlignment(QtCore.Qt.AlignCenter)
1173 self.groupBox_m_potc_predict_group.setObjectName(
"groupBox_m_potc_predict_group")
1175 self.groupBox_sys_potc_predict_reliability.setGeometry(QtCore.QRect(0, 190, 200, 70))
1176 self.groupBox_sys_potc_predict_reliability.setAlignment(QtCore.Qt.AlignCenter)
1177 self.groupBox_sys_potc_predict_reliability.setObjectName(
"groupBox_sys_potc_predict_reliability")
1179 self.lineEdit_m_sys_potc_predict_reliability.setGeometry(QtCore.QRect(0, 30, 200, 27))
1180 self.lineEdit_m_sys_potc_predict_reliability.setReadOnly(
True)
1181 self.lineEdit_m_sys_potc_predict_reliability.setObjectName(
"lineEdit_m_sys_potc_predict_reliability")
1183 self.groupBox_sys_potc_predict_sb_reliability.setGeometry(QtCore.QRect(250, 190, 200, 70))
1184 self.groupBox_sys_potc_predict_sb_reliability.setAlignment(QtCore.Qt.AlignCenter)
1185 self.groupBox_sys_potc_predict_sb_reliability.setObjectName(
"groupBox_sys_potc_predict_sb_reliability")
1187 self.lineEdit_m_sys_potc_predict_sb_reliability.setGeometry(QtCore.QRect(0, 30, 200, 27))
1188 self.lineEdit_m_sys_potc_predict_sb_reliability.setReadOnly(
True)
1189 self.lineEdit_m_sys_potc_predict_sb_reliability.setObjectName(
"lineEdit_m_sys_potc_predict_sb_reliability")
1191 self.groupBox_m_potc_predict_time.setGeometry(QtCore.QRect(0, 50, 200, 70))
1192 self.groupBox_m_potc_predict_time.setAlignment(QtCore.Qt.AlignCenter)
1193 self.groupBox_m_potc_predict_time.setObjectName(
"groupBox_m_potc_predict_time")
1195 self.lineEdit_m_potc_predict_time.setGeometry(QtCore.QRect(0, 30, 200, 27))
1196 self.lineEdit_m_potc_predict_time.setReadOnly(
True)
1197 self.lineEdit_m_potc_predict_time.setObjectName(
"lineEdit_m_potc_predict_time")
1199 self.groupBox_m_potc_predict_distance.setGeometry(QtCore.QRect(250, 50, 200, 70))
1200 self.groupBox_m_potc_predict_distance.setAlignment(QtCore.Qt.AlignCenter)
1201 self.groupBox_m_potc_predict_distance.setObjectName(
"groupBox_m_potc_predict_distance")
1203 self.lineEdit_m_potc_predict_distance.setGeometry(QtCore.QRect(0, 30, 200, 27))
1204 self.lineEdit_m_potc_predict_distance.setReadOnly(
True)
1205 self.lineEdit_m_potc_predict_distance.setObjectName(
"lineEdit_m_potc_predict_distance")
1207 self.line_7.setGeometry(QtCore.QRect(0, 130, 450, 30))
1208 self.line_7.setFrameShadow(QtWidgets.QFrame.Plain)
1209 self.line_7.setLineWidth(3)
1210 self.line_7.setFrameShape(QtWidgets.QFrame.HLine)
1211 self.line_7.setObjectName(
"line_7")
1213 self.line_8.setGeometry(QtCore.QRect(540, 70, 30, 210))
1214 self.line_8.setFrameShadow(QtWidgets.QFrame.Plain)
1215 self.line_8.setLineWidth(3)
1216 self.line_8.setFrameShape(QtWidgets.QFrame.VLine)
1217 self.line_8.setObjectName(
"line_8")
1218 self.tabWidget_2.addTab(self.
tab_6,
"")
1220 self.tab_7.setObjectName(
"tab_7")
1222 self.groupBox_potc_predict.setGeometry(QtCore.QRect(60, 30, 800, 600))
1223 self.groupBox_potc_predict.setObjectName(
"groupBox_potc_predict")
1225 self.groupBox_m_prognostic_potc_failure_rate.setGeometry(QtCore.QRect(510, 260, 200, 70))
1226 self.groupBox_m_prognostic_potc_failure_rate.setAlignment(QtCore.Qt.AlignCenter)
1227 self.groupBox_m_prognostic_potc_failure_rate.setObjectName(
"groupBox_m_prognostic_potc_failure_rate")
1229 self.lineEdit_m_prognostic_potc.setGeometry(QtCore.QRect(0, 30, 200, 27))
1230 self.lineEdit_m_prognostic_potc.setReadOnly(
True)
1231 self.lineEdit_m_prognostic_potc.setObjectName(
"lineEdit_m_prognostic_potc")
1233 self.groupBox_m_prognostic_potc_simulation_time.setGeometry(QtCore.QRect(220, 260, 200, 70))
1234 self.groupBox_m_prognostic_potc_simulation_time.setAlignment(QtCore.Qt.AlignCenter)
1235 self.groupBox_m_prognostic_potc_simulation_time.setObjectName(
"groupBox_m_prognostic_potc_simulation_time")
1237 self.lineEdit_m_prognostic_potc_simulation_time.setGeometry(QtCore.QRect(0, 30, 200, 27))
1238 self.lineEdit_m_prognostic_potc_simulation_time.setReadOnly(
True)
1239 self.lineEdit_m_prognostic_potc_simulation_time.setObjectName(
"lineEdit_m_prognostic_potc_simulation_time")
1241 self.groupBox_general.setGeometry(QtCore.QRect(0, 0, 800, 231))
1242 self.groupBox_general.setTitle(
"")
1243 self.groupBox_general.setObjectName(
"groupBox_general")
1245 self.groupBox_m_prognostic_potc_select_task.setGeometry(QtCore.QRect(220, 60, 200, 60))
1246 self.groupBox_m_prognostic_potc_select_task.setAlignment(QtCore.Qt.AlignCenter)
1247 self.groupBox_m_prognostic_potc_select_task.setFlat(
False)
1248 self.groupBox_m_prognostic_potc_select_task.setCheckable(
False)
1249 self.groupBox_m_prognostic_potc_select_task.setObjectName(
"groupBox_m_prognostic_potc_select_task")
1251 self.comboBox_m_prognostic_potc_select_task.setGeometry(QtCore.QRect(5, 25, 190, 27))
1252 self.comboBox_m_prognostic_potc_select_task.setCurrentText(
"")
1253 self.comboBox_m_prognostic_potc_select_task.setObjectName(
"comboBox_m_prognostic_potc_select_task")
1255 self.pushButton_m_prognostic_potc_start_simulation.setGeometry(QtCore.QRect(380, 170, 150, 50))
1256 self.pushButton_m_prognostic_potc_start_simulation.setObjectName(
"pushButton_m_prognostic_potc_start_simulation")
1258 self.groupBox_m_prognostic_potc_simulation_count.setGeometry(QtCore.QRect(510, 60, 200, 60))
1259 self.groupBox_m_prognostic_potc_simulation_count.setAlignment(QtCore.Qt.AlignCenter)
1260 self.groupBox_m_prognostic_potc_simulation_count.setFlat(
False)
1261 self.groupBox_m_prognostic_potc_simulation_count.setCheckable(
False)
1262 self.groupBox_m_prognostic_potc_simulation_count.setObjectName(
"groupBox_m_prognostic_potc_simulation_count")
1264 self.lineEdit_m_prognostic_potc_simulation_count.setGeometry(QtCore.QRect(5, 25, 190, 27))
1265 self.lineEdit_m_prognostic_potc_simulation_count.setObjectName(
"lineEdit_m_prognostic_potc_simulation_count")
1266 self.tabWidget_2.addTab(self.
tab_7,
"")
1267 self.tabWidget_monitoring.addTab(self.
tab_potc,
"")
1271 self.menubar.setGeometry(QtCore.QRect(0, 0, 1100, 25))
1272 self.menubar.setObjectName(
"menubar")
1273 MainWindow.setMenuBar(self.
menubar)
1275 self.statusbar.setObjectName(
"statusbar")
1286 self.tabWidget_general.setCurrentIndex(0)
1287 self.tabWidget_configuration.setCurrentIndex(0)
1288 self.tabWidget.setCurrentIndex(0)
1289 self.tabWidget_5.setCurrentIndex(0)
1290 self.tabWidget_types.setCurrentIndex(0)
1291 self.tabWidget_monitoring.setCurrentIndex(0)
1292 self.tabWidget_2.setCurrentIndex(0)
1293 QtCore.QMetaObject.connectSlotsByName(MainWindow)
1298 PHM Gui Retranslate Ui 1300 _translate = QtCore.QCoreApplication.translate
1301 MainWindow.setWindowTitle(_translate(
"MainWindow",
"PHM GUI"))
1302 self.groupBox_c_ao_am_add_module.setTitle(_translate(
"MainWindow",
"Add Module"))
1303 self.label_12.setText(_translate(
"MainWindow",
"Set module name:"))
1304 self.groupBox_c_ao_am_module_fr.setTitle(_translate(
"MainWindow",
"Set failure rate"))
1305 self.label_13.setText(_translate(
"MainWindow",
"Module failure rate:"))
1306 self.label_42.setText(_translate(
"MainWindow",
"Type : "))
1307 self.label_43.setText(_translate(
"MainWindow",
"Total failure rate:"))
1308 self.label_44.setText(_translate(
"MainWindow",
"Quantity : "))
1309 self.pushButton_c_ao_am_add_module.setText(_translate(
"MainWindow",
"Add"))
1310 self.groupBox_c_ao_am_list_of_modules.setTitle(_translate(
"MainWindow",
"List of modules"))
1311 self.pushButton_c_ao_am_delete_module.setText(_translate(
"MainWindow",
"Delete"))
1312 self.tabWidget.setTabText(self.tabWidget.indexOf(self.
tab_3), _translate(
"MainWindow",
"Add Module"))
1313 self.groupBox_c_ao_asm_sub_module_fr.setTitle(_translate(
"MainWindow",
"Set failure rate"))
1314 self.label_18.setText(_translate(
"MainWindow",
"Sub-Module failure rate:"))
1315 self.label_36.setText(_translate(
"MainWindow",
"Quantity : "))
1316 self.label_40.setText(_translate(
"MainWindow",
"Total failure rate:"))
1317 self.label_41.setText(_translate(
"MainWindow",
"Type : "))
1318 self.groupBox_c_ao_asm_default_fr.setTitle(_translate(
"MainWindow",
"Set failure rate from default equipments"))
1319 self.label_19.setText(_translate(
"MainWindow",
"Select the equipment :"))
1320 self.label_20.setText(_translate(
"MainWindow",
"Type : "))
1321 self.label_21.setText(_translate(
"MainWindow",
"Total failure rate:"))
1322 self.label_30.setText(_translate(
"MainWindow",
"Quantity : "))
1323 self.pushButton_c_ao_asm_set_equipment.setText(_translate(
"MainWindow",
"Set Equipment"))
1324 self.label_33.setText(_translate(
"MainWindow",
"Equipment failure rate : "))
1325 self.label_28.setText(_translate(
"MainWindow",
"Select module : "))
1326 self.pushButton_c_ao_asm_add_sub_module.setText(_translate(
"MainWindow",
"Add"))
1327 self.label_29.setText(_translate(
"MainWindow",
"Set sub-module name"))
1328 self.groupBox_c_ao_asm_list_of_sub_modules.setTitle(_translate(
"MainWindow",
"List of sub-modules"))
1329 self.pushButton_c_ao_asm_delete_sub_module.setText(_translate(
"MainWindow",
"Delete"))
1330 self.tabWidget.setTabText(self.tabWidget.indexOf(self.
tab_5), _translate(
"MainWindow",
"Add Sub-Module"))
1331 self.pushButton_c_ao_ac_add_component.setText(_translate(
"MainWindow",
"Add"))
1332 self.label_9.setText(_translate(
"MainWindow",
"Select module : "))
1333 self.label_14.setText(_translate(
"MainWindow",
"Select sub - module : "))
1334 self.groupBox_c_ao_ac_list_of_components.setTitle(_translate(
"MainWindow",
"List of components"))
1335 self.pushButton_c_ao_ac_delete_component.setText(_translate(
"MainWindow",
"Delete"))
1336 self.groupBox_c_ao_ac_default_fr.setTitle(_translate(
"MainWindow",
"Set default component from equipments"))
1337 self.label_7.setText(_translate(
"MainWindow",
"Select the equipment :"))
1338 self.label_8.setText(_translate(
"MainWindow",
"Quantity : "))
1339 self.label_11.setText(_translate(
"MainWindow",
"Equipment failure rate : "))
1340 self.pushButton_c_ao_ac_set_equipment.setText(_translate(
"MainWindow",
"Set Equipment"))
1341 self.label_34.setText(_translate(
"MainWindow",
"Total failure rate : "))
1342 self.label_17.setText(_translate(
"MainWindow",
"Set component name"))
1343 self.groupBox_c_ao_ac_component_fr.setTitle(_translate(
"MainWindow",
"Set failure rate"))
1344 self.label_10.setText(_translate(
"MainWindow",
"Component failure rate:"))
1345 self.label_31.setText(_translate(
"MainWindow",
"Quantity : "))
1346 self.label_35.setText(_translate(
"MainWindow",
"Total failure rate : "))
1347 self.tabWidget_5.setTabText(self.tabWidget_5.indexOf(self.
tab_10), _translate(
"MainWindow",
"Default Components"))
1348 self.label.setText(_translate(
"MainWindow",
"Select module : "))
1349 self.label_2.setText(_translate(
"MainWindow",
"Select sub - module : "))
1350 self.label_4.setText(_translate(
"MainWindow",
"Set element name"))
1351 self.label_5.setText(_translate(
"MainWindow",
"Set variable name of the element"))
1352 self.pushButton_c_ao_ace_add_component_element.setText(_translate(
"MainWindow",
"Add"))
1353 self.groupBox_c_ao_ace_set_element_value.setTitle(_translate(
"MainWindow",
"Set element value:"))
1354 self.label_32.setText(_translate(
"MainWindow",
"Set component name"))
1355 self.groupBox_c_ao_ace_list_of_elements.setTitle(_translate(
"MainWindow",
"List of elements"))
1356 self.pushButton_c_ao_ace_delete_element.setText(_translate(
"MainWindow",
"Delete"))
1357 self.label_3.setText(_translate(
"MainWindow",
"Select component : "))
1358 self.pushButton_c_ao_ac_set_formula.setText(_translate(
"MainWindow",
"Set Formula"))
1359 self.label_15.setText(_translate(
"MainWindow",
"Set formula of component"))
1360 self.label_16.setText(_translate(
"MainWindow",
"Failure Rate: "))
1361 self.label_6.setText(_translate(
"MainWindow",
"Select component : "))
1362 self.tabWidget_5.setTabText(self.tabWidget_5.indexOf(self.
tab_11), _translate(
"MainWindow",
"Custom Components"))
1363 self.tabWidget.setTabText(self.tabWidget.indexOf(self.
tab_4), _translate(
"MainWindow",
"Add Component"))
1364 self.tabWidget_configuration.setTabText(self.tabWidget_configuration.indexOf(self.
tab_add_object), _translate(
"MainWindow",
"Robot Design"))
1365 self.label_configurations_4.setText(_translate(
"MainWindow",
"Configurations"))
1366 self.label_configuration_select_first_comp.setText(_translate(
"MainWindow",
"Select first component"))
1367 self.label_configuration_sub_module_list_3.setText(_translate(
"MainWindow",
"Select system:"))
1368 self.pushButton_configuration_set_comp_type.setText(_translate(
"MainWindow",
"Set"))
1369 self.label_24.setText(_translate(
"MainWindow",
"is"))
1370 self.label_25.setText(_translate(
"MainWindow",
"to"))
1371 self.pushButton_delete_component_config.setText(_translate(
"MainWindow",
"Delete"))
1372 self.pushButton_add_component_config.setText(_translate(
"MainWindow",
"Add"))
1373 self.label_configuration_select_second_comp.setText(_translate(
"MainWindow",
"Select second component"))
1374 self.pushButton_select_final_configuration_of_sub_module.setText(_translate(
"MainWindow",
"Select as final configuraiton"))
1375 self.label_configuration_failure_rate_7.setText(_translate(
"MainWindow",
"Failure rate:"))
1376 self.label_configuration_sub_module_list_2.setText(_translate(
"MainWindow",
"Select module:"))
1377 self.label_configuration_sub_module_list.setText(_translate(
"MainWindow",
"Select sub-module:"))
1378 self.label_components.setText(_translate(
"MainWindow",
"Components"))
1379 self.label_configuration_failure_rate_8.setText(_translate(
"MainWindow",
"Sub-module failure rate:"))
1380 self.tabWidget_types.setTabText(self.tabWidget_types.indexOf(self.
tab), _translate(
"MainWindow",
"Sub Module Configuration"))
1381 self.pushButton_delete_sub_module_config.setText(_translate(
"MainWindow",
"Delete"))
1382 self.pushButton_add_sub_module_config.setText(_translate(
"MainWindow",
"Add"))
1383 self.pushButton_configuration_set_sub_module_type.setText(_translate(
"MainWindow",
"Set"))
1384 self.label_26.setText(_translate(
"MainWindow",
"is"))
1385 self.label_27.setText(_translate(
"MainWindow",
"to"))
1386 self.label_configuration_failure_rate_9.setText(_translate(
"MainWindow",
"Module failure rate:"))
1387 self.label_configuration_select_first_sub_module.setText(_translate(
"MainWindow",
"Select first sub-module"))
1388 self.label_configuration_select_second_sub_module.setText(_translate(
"MainWindow",
"Select second sub-module"))
1389 self.label_configuration_failure_rate_10.setText(_translate(
"MainWindow",
"Failure rate:"))
1390 self.label_configuration_sub_module_list_4.setText(_translate(
"MainWindow",
"Select system:"))
1391 self.label_configuration_module_list.setText(_translate(
"MainWindow",
"Select module:"))
1392 self.pushButton_select_final_configuration_of_module.setText(_translate(
"MainWindow",
"Select as final configuraiton"))
1393 self.label_configurations_5.setText(_translate(
"MainWindow",
"Configurations"))
1394 self.label_sub_module.setText(_translate(
"MainWindow",
"Sub-modules"))
1395 self.tabWidget_types.setTabText(self.tabWidget_types.indexOf(self.
tab_2), _translate(
"MainWindow",
"Module Configuration"))
1396 self.label_configurations_3.setText(_translate(
"MainWindow",
"Configurations"))
1397 self.label_configuration_system_list.setText(_translate(
"MainWindow",
"Select system:"))
1398 self.label_modules.setText(_translate(
"MainWindow",
"Modules"))
1399 self.pushButton_delete_module_config.setText(_translate(
"MainWindow",
"Delete"))
1400 self.pushButton_add_module_config.setText(_translate(
"MainWindow",
"Add"))
1401 self.pushButton_configuration_set_module_type.setText(_translate(
"MainWindow",
"Set"))
1402 self.label_22.setText(_translate(
"MainWindow",
"is"))
1403 self.label_23.setText(_translate(
"MainWindow",
"to"))
1404 self.label_configuration_select_second_module.setText(_translate(
"MainWindow",
"Select second module"))
1405 self.label_configuration_select_first_module.setText(_translate(
"MainWindow",
"Select first module"))
1406 self.label_configuration_failure_rate_5.setText(_translate(
"MainWindow",
"Failure rate:"))
1407 self.label_configuration_system_failure_rate.setText(_translate(
"MainWindow",
"System failure rate:"))
1408 self.pushButton_select_final_configuration_of_system.setText(_translate(
"MainWindow",
"Select as final configuraiton"))
1409 self.label_configuration_reliability_type.setText(_translate(
"MainWindow",
"Select reliability model : "))
1410 self.label_configuration_unit.setText(_translate(
"MainWindow",
"Select unit : "))
1411 self.label_configuration_shape_parameter.setText(_translate(
"MainWindow",
"Shape Parameter :"))
1412 self.tabWidget_types.setTabText(self.tabWidget_types.indexOf(self.
tab_set_module_types_2), _translate(
"MainWindow",
"System Configuration"))
1413 self.tabWidget_configuration.setTabText(self.tabWidget_configuration.indexOf(self.
tab_set_type), _translate(
"MainWindow",
"Configuration Setup"))
1414 self.pushButton_c_ao_start_analysis.setText(_translate(
"MainWindow",
"START ANALYSIS"))
1415 self.pushButton_c_ao_save.setText(_translate(
"MainWindow",
"SAVE"))
1416 self.pushButton_c_ao_load.setText(_translate(
"MainWindow",
"LOAD"))
1417 self.tabWidget_general.setTabText(self.tabWidget_general.indexOf(self.
tab_configuration), _translate(
"MainWindow",
"Robot Configuration Setup"))
1418 self.groupBox_sys_failure_rate.setTitle(_translate(
"MainWindow",
"System Failure Rate - λ"))
1419 self.groupBox_hazard_rate_sensor_list.setTitle(_translate(
"MainWindow",
"Sensors"))
1420 self.pushButton_monitoring_deleted_sensor.setText(_translate(
"MainWindow",
"Delete"))
1421 self.label_sensor_list.setText(_translate(
"MainWindow",
"Sensor List"))
1422 self.groupBox_hazard_rate_add_sensor.setTitle(_translate(
"MainWindow",
"Add Sensor"))
1423 self.label_37.setText(_translate(
"MainWindow",
"Select a sensor:"))
1424 self.label_38.setText(_translate(
"MainWindow",
"Sensor value:"))
1425 self.pushButton_m_hazard_rate_refresh_sensor.setText(_translate(
"MainWindow",
"Refresh"))
1426 self.pushButton_m_hazard_rate_add_sensor.setText(_translate(
"MainWindow",
"Add Sensor"))
1427 self.groupBox_sys_select_failure_rate_type.setTitle(_translate(
"MainWindow",
"Select Failure Rate"))
1428 self.groupBox_sys_select_place_failure_rate.setTitle(_translate(
"MainWindow",
"Sensor"))
1429 self.label_39.setText(_translate(
"MainWindow",
"Where is the sensor? "))
1430 self.tabWidget_monitoring.setTabText(self.tabWidget_monitoring.indexOf(self.
tab_hazard_rate), _translate(
"MainWindow",
"Hazard Rate Analysis"))
1431 self.groupBox_sys_reliability.setTitle(_translate(
"MainWindow",
"System Reliability - R"))
1432 self.groupBox_sys_select_reliability_type.setTitle(_translate(
"MainWindow",
"Select Reliability"))
1433 self.groupBox_6.setTitle(_translate(
"MainWindow",
"Module Reliability"))
1434 self.groupBox_select_reliability_module.setTitle(_translate(
"MainWindow",
"Select Module"))
1435 self.groupBox_module_reliability.setTitle(_translate(
"MainWindow",
"Module Reliability - R"))
1436 self.groupBox_sys_select_module_reliability_type.setTitle(_translate(
"MainWindow",
"Select Module Reliability Type"))
1437 self.tabWidget_monitoring.setTabText(self.tabWidget_monitoring.indexOf(self.
tab_reliability), _translate(
"MainWindow",
"Reliability Analysis"))
1438 self.groupBox_m_potc_actual_group.setTitle(_translate(
"MainWindow",
"Actual Analysis"))
1439 self.groupBox_sys_potc_reliability.setTitle(_translate(
"MainWindow",
"Nominal PoTC"))
1440 self.groupBox_sys_potc_sb_reliability.setTitle(_translate(
"MainWindow",
"Sensor Based PoTC"))
1441 self.groupBox_m_potc_actual_time.setTitle(_translate(
"MainWindow",
"Actual Time"))
1442 self.groupBox_m_potc_actual_distance.setTitle(_translate(
"MainWindow",
"Actual Distance"))
1443 self.groupBox_m_potc_predict_group.setTitle(_translate(
"MainWindow",
"Predict Analysis"))
1444 self.groupBox_sys_potc_predict_reliability.setTitle(_translate(
"MainWindow",
"Nominal PoTC"))
1445 self.groupBox_sys_potc_predict_sb_reliability.setTitle(_translate(
"MainWindow",
"Sensor Based PoTC"))
1446 self.groupBox_m_potc_predict_time.setTitle(_translate(
"MainWindow",
"Predicted Time"))
1447 self.groupBox_m_potc_predict_distance.setTitle(_translate(
"MainWindow",
"Predicted Distance"))
1448 self.tabWidget_2.setTabText(self.tabWidget_2.indexOf(self.
tab_6), _translate(
"MainWindow",
"Real Time Analysis"))
1449 self.groupBox_potc_predict.setTitle(_translate(
"MainWindow",
"Predict PoTC"))
1450 self.groupBox_m_prognostic_potc_failure_rate.setTitle(_translate(
"MainWindow",
"Predicted PoTC"))
1451 self.groupBox_m_prognostic_potc_simulation_time.setTitle(_translate(
"MainWindow",
"Simulation Time"))
1452 self.groupBox_m_prognostic_potc_select_task.setTitle(_translate(
"MainWindow",
"Select Task"))
1453 self.pushButton_m_prognostic_potc_start_simulation.setText(_translate(
"MainWindow",
"Predict Simulation"))
1454 self.groupBox_m_prognostic_potc_simulation_count.setTitle(_translate(
"MainWindow",
"Simulation Count"))
1455 self.tabWidget_2.setTabText(self.tabWidget_2.indexOf(self.
tab_7), _translate(
"MainWindow",
"Prognostic Analysis"))
1456 self.tabWidget_monitoring.setTabText(self.tabWidget_monitoring.indexOf(self.
tab_potc), _translate(
"MainWindow",
"Task Completion Analysis"))
1457 self.tabWidget_general.setTabText(self.tabWidget_general.indexOf(self.
tab_monitoring), _translate(
"MainWindow",
"Monitoring and Analysis"))
1466 PHM Gui Main Function 1495 PHM Gui Main Plot Function 1499 layout = QtWidgets.QVBoxLayout(self.widget_monitoring_hazard_rate)
1500 monitoring_hazard_rate_dinamic_canvas = DynamicPlot(self,
"lineEdit_m_sys_lambda",
"phm_gui_time", self.widget_monitoring_hazard_rate, width=5, height=4, dpi=100)
1501 layout.addWidget(monitoring_hazard_rate_dinamic_canvas)
1502 self.widget_monitoring_hazard_rate.setFocus()
1504 layout = QtWidgets.QVBoxLayout(self.widget_monitoring_reliability)
1505 reliability_dinamic_canvas = ReliabilityPlot(self,
"lineEdit_m_sys_reliability",
"phm_gui_time", self.reliability_plot_scale_list, self.widget_monitoring_reliability, width=5, height=4, dpi=100)
1506 layout.addWidget(reliability_dinamic_canvas)
1507 self.widget_monitoring_reliability.setFocus()
1509 layout = QtWidgets.QVBoxLayout(self.widget_monitoring_potc)
1510 potc_static_canvas = POTCPlot(self,
"potc_main_dict", width=5, height=4, dpi=100)
1511 layout.addWidget(potc_static_canvas)
1512 self.widget_monitoring_potc.setFocus()
1517 PHM Gui Close Event Function 1519 rospy.signal_shutdown(
"ROS Close")
1520 print(
"\n\nSystem is closing...\n\n")
1522 file_dir =
"phm_start/params/" 1523 temp_file_name =
"last_configurations" 1528 print(
"\n\nYour files are saving...\n\n")
1533 Start Anaylsis Function 1535 self.label_configuration_reliability_type.setEnabled(
False)
1536 self.comboBox_configuration_reliability_model.setEnabled(
False)
1537 self.label_configuration_shape_parameter.setEnabled(
False)
1538 self.lineEdit_configuration_reliability_shape_parameter.setEnabled(
False)
1539 self.label_configuration_unit.setEnabled(
False)
1540 self.comboBox_configuration_unit.setEnabled(
False)
1541 self.pushButton_c_ao_start_analysis.setEnabled(
False)
1548 Start Set Reliability Model and Unit Function 1552 self.label_configuration_shape_parameter.setEnabled(
False)
1553 self.lineEdit_configuration_reliability_shape_parameter.setEnabled(
False)
1562 PHM General Threads Function 1565 self.thread_calculation_system_main_dict.start()
1568 self.thread_monitoring_system_potc.start()
1571 self.thread_temperature_sensor_dict.start()
1576 Calculation System Main Dict Thread Function 1579 while not rospy.is_shutdown():
1591 self.thread_rate.sleep()
1593 except Exception
as err:
1594 print(
"\nError: thread_calculation_system_main_dict_func\n")
1600 Monitoring System POTC Thread Function 1603 while not rospy.is_shutdown():
1606 self.thread_rate.sleep()
1608 except Exception
as err:
1609 print(
"\nError: thread_monitoring_system_potc_func\n")
1615 Temperature Sensors Thread Function 1618 while not rospy.is_shutdown():
1621 self.thread_rate.sleep()
1623 except Exception
as err:
1624 print(
"\nError: thread_temperature_sensors_func\n")
1633 /gui_hazard_rate Publisher Function 1638 phm_msg.data = str(filtered_hazard_rate_dict)
1640 self.publisher_gui_hazard_rate.publish(phm_msg)
1645 Hazard Rate Filter Function 1647 filtered_dict = dict()
1648 system_dict_keys = list(main_dict[
"System"].keys())
1649 filtered_dict[
"System"] = {
"Failure Rate": main_dict[
"System"][
"Failure Rate"]}
1652 for item
in system_dict_keys:
1653 filtered_dict[
"System"][str(item)] = {
"Failure Rate": main_dict[
"System"][str(item)][
"Failure Rate"]}
1655 return filtered_dict
1660 /gui_reliability Publisher Function 1665 phm_msg.data = str(filtered_reliability_dict)
1667 self.publisher_gui_reliability.publish(phm_msg)
1672 Reliability Filter Function 1674 filtered_dict = dict()
1675 system_dict_keys = list(main_dict[
"System"].keys())
1676 filtered_dict[
"System"] = {
"Reliability": main_dict[
"System"][
"Reliability"]}
1679 for item
in system_dict_keys:
1680 filtered_dict[
"System"][str(item)] = {
"Reliability": main_dict[
"System"][str(item)][
"Reliability"]}
1682 return filtered_dict
1687 /gui_actual_potc Publisher Function 1690 phm_msg.data = str(publish_data)
1692 self.publisher_gui_actual_potc.publish(phm_msg)
1697 /gui_predict_potc Publisher Function 1700 phm_msg.data = str(publish_data)
1702 self.publisher_gui_predict_potc.publish(phm_msg)
1711 Selected System Calculation Function 1714 selected_system =
"System" 1718 time_diff = done - start
1722 except Exception
as err:
1723 print(
"\nError: main_dict_selected_system_calculation_func\n")
1729 Module Calculation Function 1732 selected_system_dict = self.
main_dict[str(selected_system)]
1733 selected_configuration = dict(selected_system_dict[
"Configurations"])
1734 del selected_configuration[
"Configuration Count"]
1735 control_dict = dict()
1737 if str(selected_configuration) != str(control_dict):
1738 system_depth_level = selected_configuration[
"Depth Level"]
1739 selected_final_configuration = selected_system_dict[
"Final Configuration"]
1741 configuration_list = list(selected_configuration.keys())
1744 module_list = list(selected_system_dict.keys())
1750 for module
in module_list:
1754 for item
in sorted_list:
1755 item_module_list = selected_system_dict[
"Configurations"][str(item)][
"Components"]
1756 item_type = selected_system_dict[
"Configurations"][str(item)][
"Type"]
1761 self.
main_dict[str(selected_system)][
"Configurations"][str(item)][
"Failure Rate"][
"Nominal"] = calculate_fr
1762 self.
main_dict[str(selected_system)][
"Configurations"][str(item)][
"Failure Rate"][
"Sensor Based"] = sb_calculate_fr
1764 configuration_keys = list(self.
main_dict[str(selected_system)][
"Configurations"].keys())
1767 if selected_final_configuration
not in configuration_keys:
1768 if selected_final_configuration
not in module_list:
1769 self.
main_dict[str(selected_system)][
"Final Configuration"] =
"" 1770 selected_final_configuration ==
"" 1772 if selected_final_configuration ==
"":
1773 selected_system_fr = 0.0
1774 selected_system_sb_fr = 0.0
1777 if selected_final_configuration
in configuration_keys:
1778 selected_system_fr = self.
main_dict[str(selected_system)][
"Configurations"][str(selected_final_configuration)][
"Failure Rate"][
"Nominal"]
1779 selected_system_sb_fr = self.
main_dict[str(selected_system)][
"Configurations"][str(selected_final_configuration)][
"Failure Rate"][
"Sensor Based"]
1782 selected_system_fr = self.
main_dict[str(selected_system)][str(selected_final_configuration)][
"Failure Rate"][
"Nominal"]
1783 selected_system_sb_fr = self.
main_dict[str(selected_system)][str(selected_final_configuration)][
"Failure Rate"][
"Sensor Based"]
1785 self.
main_dict[str(selected_system)][
"Failure Rate"][
"Nominal"] = selected_system_fr
1786 self.
main_dict[str(selected_system)][
"Failure Rate"][
"Sensor Based"] = selected_system_sb_fr
1788 selected_system_fr = self.
main_dict[str(selected_system)][
"Failure Rate"][
"Nominal"]
1790 self.
main_dict[str(selected_system)][
"Reliability"][
"Nominal"] = selected_system_reliability
1792 selected_system_sb_fr = self.
main_dict[str(selected_system)][
"Failure Rate"][
"Sensor Based"]
1794 self.
main_dict[str(selected_system)][
"Reliability"][
"Sensor Based"] = selected_system_sb_reliability
1796 except Exception
as err:
1797 print(
"\nError: main_dict_module_calculate_func\n")
1803 Selected Module Failure Rate Calculation Function 1810 failure_rate_type =
"Nominal" 1813 failure_rate_type =
"Sensor Based" 1815 for item
in select_module_list:
1816 if item
in object_keys:
1817 selected_fr = self.
main_dict[str(selected_system)][
'Configurations'][str(item)][
'Failure Rate'][str(failure_rate_type)]
1819 if selected_fr !=
None and selected_fr !=
"None":
1820 fr_list.append(selected_fr)
1823 fr_type_list = list(self.
main_dict[str(selected_system)][str(item)][
'Failure Rate'].keys())
1824 fr_type_list.remove(
"Nominal")
1826 if len(fr_type_list) > 0
and not fr_type:
1827 selected_fr = self.
main_dict[str(selected_system)][str(item)][
'Failure Rate'][str(failure_rate_type)]
1830 selected_fr = self.
main_dict[str(selected_system)][str(item)][
'Failure Rate'][
"Nominal"]
1832 if selected_fr !=
None and selected_fr !=
"None":
1833 fr_list.append(selected_fr)
1835 if object_type ==
"Serial":
1836 calculate_fr = self.fr_calculation_class.component_serial_failure_rate_calculation(fr_list)
1839 calculate_fr = self.fr_calculation_class.component_parallel_failure_rate_calculation(fr_list)
1843 except Exception
as err:
1844 print(
"\nError: calculate_selected_module_fr_func\n")
1850 Sub Module Calculation Function 1853 selected_module_dict = self.
main_dict[str(selected_system)][str(selected_module)]
1854 selected_configuration = dict(selected_module_dict[
"Configurations"])
1855 del selected_configuration[
"Configuration Count"]
1856 control_dict = dict()
1858 if str(selected_configuration) != str(control_dict):
1859 module_depth_level = selected_configuration[
"Depth Level"]
1860 selected_final_configuration = selected_module_dict[
"Final Configuration"]
1862 configuration_list = list(selected_configuration.keys())
1865 sub_module_list = list(selected_module_dict.keys())
1871 for sub_module
in sub_module_list:
1875 for item
in sorted_list:
1876 item_sub_module_list = selected_module_dict[
"Configurations"][str(item)][
"Components"]
1877 item_type = selected_module_dict[
"Configurations"][str(item)][
"Type"]
1880 self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"][str(item)][
"Failure Rate"] = calculate_fr
1882 configuration_keys = list(self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"].keys())
1885 if selected_final_configuration
not in configuration_keys:
1886 if selected_final_configuration
not in module_list:
1887 self.
main_dict[str(selected_system)][str(selected_module)][
"Final Configuration"] =
"" 1888 selected_final_configuration ==
"" 1890 if selected_final_configuration ==
"":
1891 selected_module_fr = 0.0
1894 if selected_final_configuration
in configuration_keys:
1895 selected_module_fr = self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"][str(selected_final_configuration)][
"Failure Rate"]
1898 selected_module_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_final_configuration)][
"Failure Rate"]
1900 self.
main_dict[str(selected_system)][str(selected_module)][
"Failure Rate"][
"Nominal"] = selected_module_fr
1902 selected_module_fr = self.
main_dict[str(selected_system)][str(selected_module)][
"Failure Rate"][
"Nominal"]
1904 self.
main_dict[str(selected_system)][str(selected_module)][
"Reliability"][
"Nominal"] = selected_module_reliability
1906 sensor_list = list(self.temperature_sensor_dict.keys())
1907 sensor_list.remove(
"System")
1909 if len(sensor_list) > 0
and str(selected_module)
in sensor_list:
1911 selected_module_temperature_fr = self.fr_calculation_class.failure_rate_calculation_using_temperature_func(selected_module_fr, module_temperature, self.
temperature_t0)
1912 self.
main_dict[str(selected_system)][str(selected_module)][
"Failure Rate"][
"Sensor Based"] = selected_module_temperature_fr
1914 self.
main_dict[str(selected_system)][str(selected_module)][
"Reliability"][
"Sensor Based"] = selected_module_temperature_reliability
1917 del self.
main_dict[str(selected_system)][str(selected_module)][
"Failure Rate"][
"Sensor Based"]
1918 del self.
main_dict[str(selected_system)][str(selected_module)][
"Reliability"][
"Sensor Based"]
1923 except Exception
as err:
1924 print(
"\nError: main_dict_sub_module_calculate_func\n")
1930 Selected Sub Module Failure Rate Calculation Function 1936 for item
in select_sub_module_list:
1937 if item
in object_keys:
1938 selected_fr = self.
main_dict[str(selected_system)][str(selected_module)][
'Configurations'][str(item)][
'Failure Rate']
1940 if selected_fr !=
None and selected_fr !=
"None":
1941 fr_list.append(selected_fr)
1944 selected_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(item)][
'Failure Rate']
1946 if selected_fr !=
None and selected_fr !=
"None":
1947 fr_list.append(selected_fr)
1949 if object_type ==
"Serial":
1950 calculate_fr = self.fr_calculation_class.component_serial_failure_rate_calculation(fr_list)
1953 calculate_fr = self.fr_calculation_class.component_parallel_failure_rate_calculation(fr_list)
1957 except Exception
as err:
1958 print(
"\nError: calculate_selected_sub_module_fr_func\n")
1964 Component Calculation Function 1967 selected_sub_module_dict = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)]
1968 selected_configuration = dict(selected_sub_module_dict[
"Configurations"])
1969 del selected_configuration[
"Configuration Count"]
1970 control_dict = dict()
1972 if str(selected_configuration) != str(control_dict):
1973 sub_module_depth_level = selected_configuration[
"Depth Level"]
1974 selected_final_configuration = selected_sub_module_dict[
"Final Configuration"]
1976 configuration_list = list(selected_configuration.keys())
1981 for item
in sorted_list:
1982 item_component_list = selected_sub_module_dict[
"Configurations"][str(item)][
"Components"]
1983 item_type = selected_sub_module_dict[
"Configurations"][str(item)][
"Type"]
1986 self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Configurations"][str(item)][
"Failure Rate"] = calculate_fr
1988 configuration_keys = list(self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Configurations"].keys())
1991 if selected_final_configuration
not in configuration_keys:
1992 if selected_final_configuration
not in module_list:
1993 self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Final Configuration"] =
"" 1994 selected_final_configuration ==
"" 1996 if selected_final_configuration ==
"":
1997 selected_sub_module_fr = 0.0
2000 if selected_final_configuration
in configuration_keys:
2001 selected_sub_module_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Configurations"][str(selected_final_configuration)][
"Failure Rate"]
2004 selected_sub_module_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][str(selected_final_configuration)][
"Failure Rate"]
2006 self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Failure Rate"] = selected_sub_module_fr
2008 selected_sub_module_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Failure Rate"]
2010 self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Reliability"] = selected_sub_module_reliability
2012 except Exception
as err:
2013 print(
"\nError: main_dict_component_calculate_func\n")
2019 Selected Component Failure Rate Calculation Function 2025 for item
in select_component_list:
2026 if item
in object_keys:
2027 selected_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
'Configurations'][str(item)][
'Failure Rate']
2029 if selected_fr !=
None and selected_fr !=
"None":
2030 fr_list.append(selected_fr)
2033 selected_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][str(item)][
'Failure Rate']
2035 if selected_fr !=
None and selected_fr !=
"None":
2036 fr_list.append(selected_fr)
2038 if object_type ==
"Serial":
2039 calculate_fr = self.fr_calculation_class.component_serial_failure_rate_calculation(fr_list)
2042 calculate_fr = self.fr_calculation_class.component_parallel_failure_rate_calculation(fr_list)
2046 except Exception
as err:
2047 print(
"\nError: calculate_selected_component_fr_func\n")
2053 Sorted List for Depth Level Function 2056 sorted_list = list()
2058 for i
in range(depth_level + 1):
2059 for item
in configuration_list:
2060 depth = configuration_dict[str(item)][
"Depth Level"]
2063 sorted_list.append(item)
2067 except Exception
as err:
2068 print(
"\nError: sorted_list_for_depth_level\n")
2077 General Set Result Function 2080 selected_failure_rate_type = str(self.comboBox_m_sys_select_failure_rate_type.currentText())
2081 selected_reliability_type = str(self.comboBox_m_sys_select_reliability_type.currentText())
2082 selected_module_reliability = str(self.comboBox_m_reliability_module.currentText())
2083 selected_module_reliability_type = str(self.comboBox_m_sys_select_module_reliability_type.currentText())
2085 if selected_failure_rate_type !=
"" and selected_failure_rate_type !=
"None":
2086 system_failure_rate = self.
main_dict[
"System"][
"Failure Rate"][str(selected_failure_rate_type)]
2087 self.lineEdit_m_sys_lambda.setText(str(system_failure_rate))
2089 if selected_reliability_type !=
"" and selected_reliability_type !=
"None":
2090 system_reliability = self.
main_dict[
"System"][
"Reliability"][str(selected_reliability_type)]
2091 self.lineEdit_m_sys_reliability.setText(str(system_reliability))
2093 if selected_module_reliability !=
"" and selected_module_reliability !=
"None" and selected_module_reliability_type !=
"" and selected_module_reliability_type !=
"None":
2094 module_reliability = self.
main_dict[
"System"][str(selected_module_reliability)][
'Reliability'][str(selected_module_reliability_type)]
2095 self.lineEdit_m_module_reliability.setText(str(module_reliability))
2098 module_reliability = 1.0
2099 self.lineEdit_m_module_reliability.setText(str(module_reliability))
2103 except Exception
as err:
2104 print(
"\nError: general_set_result_func\n")
2110 Configuration Setup Set Result Function 2119 Configuration Setup Sub Module Set Result Function 2122 selected_system = str(self.comboBox_configuration_st_sc_select_system.currentText())
2123 selected_module = str(self.comboBox_configuration_st_sc_select_module.currentText())
2124 selected_sub_module = str(self.comboBox_configuration_st_sc_select_sub_module.currentText())
2126 selected_first_component = str(self.comboBox_configuration_select_first_comp.currentText())
2127 selected_second_component = str(self.comboBox_configuration_select_second_comp.currentText())
2129 if selected_system !=
"" and selected_system !=
"None" and selected_module !=
"" and selected_module !=
"None" and selected_sub_module !=
"" and selected_sub_module !=
"None":
2130 selected_fr = self.
main_dict[str(selected_system)][str(selected_module)][selected_sub_module][
"Failure Rate"]
2131 self.lineEdit_configuration_failure_rate_sub_module.setText(str(selected_fr))
2133 if selected_first_component !=
"" and selected_first_component !=
"None":
2136 if selected_first_component
in configuration_list:
2137 selected_fr = self.
main_dict[str(selected_system)][str(selected_module)][selected_sub_module][
"Configurations"][str(selected_first_component)][
"Failure Rate"]
2140 selected_fr = self.
main_dict[str(selected_system)][str(selected_module)][selected_sub_module][str(selected_first_component)][
"Failure Rate"]
2142 self.lineEdit_configuration_failure_rate_first_component.setText(str(selected_fr))
2144 if selected_second_component !=
"" and selected_second_component !=
"None":
2147 if selected_second_component
in configuration_list:
2148 selected_fr = self.
main_dict[str(selected_system)][str(selected_module)][selected_sub_module][
"Configurations"][str(selected_second_component)][
"Failure Rate"]
2151 selected_fr = self.
main_dict[str(selected_system)][str(selected_module)][selected_sub_module][str(selected_second_component)][
"Failure Rate"]
2153 self.lineEdit_configuration_failure_rate_second_component.setText(str(selected_fr))
2155 except Exception
as err:
2156 print(
"\nError: configuration_setup_sub_module_set_result_func\n")
2162 Configuration Setup Module Set Result Function 2165 selected_system = str(self.comboBox_configuration_st_ssm_select_system.currentText())
2166 selected_module = str(self.comboBox_configuration_st_ssm_select_module.currentText())
2168 selected_first_sub_module = str(self.comboBox_configuration_select_first_sub_module.currentText())
2169 selected_second_sub_module = str(self.comboBox_configuration_select_second_sub_module.currentText())
2171 if selected_system !=
"" and selected_system !=
"None" and selected_module !=
"" and selected_module !=
"None":
2172 selected_fr = self.
main_dict[str(selected_system)][str(selected_module)][
"Failure Rate"][
"Nominal"]
2173 self.lineEdit_configuration_failure_rate_module.setText(str(selected_fr))
2175 if selected_first_sub_module !=
"" and selected_first_sub_module !=
"None":
2178 if selected_first_sub_module
in configuration_list:
2179 selected_fr = self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"][str(selected_first_sub_module)][
"Failure Rate"]
2182 selected_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_first_sub_module)][
"Failure Rate"]
2184 self.lineEdit_configuration_failure_rate_first_sub_module.setText(str(selected_fr))
2186 if selected_second_sub_module !=
"" and selected_second_sub_module !=
"None":
2189 if selected_second_sub_module
in configuration_list:
2190 selected_fr = self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"][str(selected_second_sub_module)][
"Failure Rate"]
2193 selected_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_second_sub_module)][
"Failure Rate"]
2195 self.lineEdit_configuration_failure_rate_second_sub_module.setText(str(selected_fr))
2197 except Exception
as err:
2198 print(
"\nError: configuration_setup_module_set_result_func\n")
2204 Configuration Setup System Set Result Function 2207 selected_system = str(self.comboBox_configuration_st_sm_select_system.currentText())
2209 selected_first_module = str(self.comboBox_configuration_select_first_module.currentText())
2210 selected_second_module = str(self.comboBox_configuration_select_second_module.currentText())
2212 if selected_system !=
"" and selected_system !=
"None":
2213 selected_fr = self.
main_dict[str(selected_system)][
"Failure Rate"][
"Nominal"]
2214 self.lineEdit_configuration_failure_rate_system.setText(str(selected_fr))
2216 if selected_first_module !=
"" and selected_first_module !=
"None":
2219 if selected_first_module
in configuration_list:
2220 selected_fr = self.
main_dict[str(selected_system)][
"Configurations"][str(selected_first_module)][
"Failure Rate"][
"Nominal"]
2223 selected_fr = self.
main_dict[str(selected_system)][str(selected_first_module)][
"Failure Rate"][
"Nominal"]
2225 self.lineEdit_configuration_failure_rate_first_module.setText(str(selected_fr))
2227 if selected_second_module !=
"" and selected_second_module !=
"None":
2230 if selected_second_module
in configuration_list:
2231 selected_fr = self.
main_dict[str(selected_system)][
"Configurations"][str(selected_second_module)][
"Failure Rate"][
"Nominal"]
2234 selected_fr = self.
main_dict[str(selected_system)][str(selected_second_module)][
"Failure Rate"][
"Nominal"]
2236 self.lineEdit_configuration_failure_rate_second_module.setText(str(selected_fr))
2238 except Exception
as err:
2239 print(
"\nError: configuration_setup_system_set_result_func\n")
2248 Phm Temperature Sensor Thread Function 2250 general_key_list = list(self.temperature_sensor_dict.keys())
2252 for item
in general_key_list:
2256 if selected_sensors_number > 0:
2258 if str(value[
"Thread"].data) !=
"None":
2260 result += float(value[
"Thread"].data)
2262 if selected_sensors_number > 1:
2276 Configuration Set Type Events Func 2279 self.system_list_tab_func()
2280 self.module_list_tab_func()
2281 self.sub_module_list_tab_func()
2282 self.combobox_configuration_type()
2285 self.first_module_list_tab_func()
2286 self.second_module_list_tab_func()
2287 self.module_list_widget_func()
2289 self.comboBox_configuration_st_sm_select_system.currentIndexChanged.connect(self.system_list_control_of_set_module_types_tab)
2290 self.comboBox_configuration_st_sm_select_system.currentIndexChanged.connect(self.system_fr_control)
2291 self.comboBox_configuration_st_sm_select_system.currentIndexChanged.connect(self.convert_configurations_of_modules_into_syntax)
2292 self.comboBox_configuration_select_first_module.currentIndexChanged.connect(self.module_list_control_of_set_module_types_tab)
2293 self.comboBox_configuration_select_second_module.currentIndexChanged.connect(self.module_list_control_of_set_module_types_tab)
2294 self.comboBox_configuration_reliability_model.currentIndexChanged.connect(self.select_reliability_model_func)
2295 self.comboBox_configuration_unit.currentIndexChanged.connect(self.select_phm_unit_func)
2297 self.pushButton_configuration_set_module_type.clicked.connect(self.create_syntax_of_modules)
2298 self.pushButton_delete_module_config.clicked.connect(self.delete_module_configuration)
2299 self.pushButton_add_module_config.clicked.connect(self.add_module_into_config)
2300 self.pushButton_select_final_configuration_of_system.clicked.connect(self.select_final_configuration_of_system)
2301 self.lineEdit_configuration_reliability_shape_parameter.textChanged.connect(self.set_shape_parameter_func)
2304 self.first_sub_module_list_tab_func()
2305 self.second_sub_module_list_tab_func()
2306 self.sub_module_list_widget_func()
2309 self.comboBox_c_ao_am_select_type.addItems(self.type_list)
2310 self.comboBox_c_ao_asm_sfr_select_type.addItems(self.type_list)
2311 self.comboBox_c_ao_asm_select_type.addItems(self.type_list)
2312 self.comboBox_configuration_st_ssm_select_system.currentIndexChanged.connect(self.module_list_control_of_set_sub_module_types_tab)
2313 self.comboBox_configuration_st_ssm_select_module.currentIndexChanged.connect(self.sub_module_list_control_of_set_sub_module_types_tab)
2314 self.comboBox_configuration_st_ssm_select_module.currentIndexChanged.connect(self.module_fr_control)
2315 self.comboBox_configuration_st_ssm_select_module.currentIndexChanged.connect(self.convert_configurations_of_sub_modules_into_syntax)
2316 self.comboBox_configuration_select_first_sub_module.currentIndexChanged.connect(self.first_sub_module_list_control_of_set_sub_module_types_tab)
2317 self.comboBox_configuration_select_second_sub_module.currentIndexChanged.connect(self.second_sub_module_list_control_of_set_sub_module_types_tab)
2319 self.pushButton_configuration_set_sub_module_type.clicked.connect(self.create_syntax_of_sub_modules)
2320 self.pushButton_delete_sub_module_config.clicked.connect(self.delete_sub_module_configuration)
2321 self.pushButton_add_sub_module_config.clicked.connect(self.add_sub_module_into_config)
2322 self.pushButton_select_final_configuration_of_module.clicked.connect(self.select_final_configuration_of_module)
2325 self.first_component_list_tab_func()
2326 self.second_component_list_tab_func()
2327 self.component_list_widget_func()
2329 self.comboBox_configuration_st_sc_select_system.currentIndexChanged.connect(self.module_list_control_of_set_component_types_tab)
2330 self.comboBox_configuration_st_sc_select_module.currentIndexChanged.connect(self.sub_module_list_control_of_set_component_types_tab)
2331 self.comboBox_configuration_st_sc_select_sub_module.currentIndexChanged.connect(self.component_list_control_of_set_component_types_tab)
2332 self.comboBox_configuration_st_sc_select_sub_module.currentIndexChanged.connect(self.sub_module_fr_control)
2333 self.comboBox_configuration_st_sc_select_sub_module.currentIndexChanged.connect(self.convert_configurations_of_components_into_syntax)
2334 self.comboBox_configuration_select_first_comp.currentIndexChanged.connect(self.first_component_list_control_of_set_component_types_tab)
2335 self.comboBox_configuration_select_second_comp.currentIndexChanged.connect(self.second_component_list_control_of_set_component_types_tab)
2337 self.pushButton_configuration_set_comp_type.clicked.connect(self.create_syntax_of_components)
2338 self.pushButton_delete_component_config.clicked.connect(self.delete_component_configuration)
2339 self.pushButton_add_component_config.clicked.connect(self.add_component_into_config)
2340 self.pushButton_select_final_configuration_of_sub_module.clicked.connect(self.select_final_configuration_of_sub_module)
2345 Configuration Add Object 2 Tab Events Func 2348 self.pushButton_c_ao_am_add_module.clicked.connect(self.add_new_module)
2349 self.pushButton_c_ao_am_delete_module.clicked.connect(self.delete_a_module)
2350 self.lineEdit_c_ao_am_module_fr.textChanged.connect(self.calculate_set_fr_module_total_fr_func)
2351 self.spinBox_c_ao_am_quantity.valueChanged.connect(self.calculate_set_fr_module_total_fr_func)
2352 self.comboBox_c_ao_am_select_type.currentIndexChanged.connect(self.calculate_set_fr_module_total_fr_func)
2355 self.pushButton_c_ao_asm_add_sub_module.clicked.connect(self.add_new_sub_module)
2356 self.comboBox_c_ao_asm_select_module.currentIndexChanged.connect(self.add_sub_module_into_list_widget)
2357 self.lineEdit_c_ao_asm_sub_module_fr.textChanged.connect(self.calculate_set_fr_sub_module_total_fr_func)
2358 self.spinBox_c_ao_asm_sfr_quantity.valueChanged.connect(self.calculate_set_fr_sub_module_total_fr_func)
2359 self.comboBox_c_ao_asm_sfr_select_type.currentIndexChanged.connect(self.calculate_set_fr_sub_module_total_fr_func)
2360 self.groupBox_c_ao_asm_sub_module_fr.clicked.connect(self.sub_module_set_fr_groupbox_control)
2361 self.groupBox_c_ao_asm_default_fr.clicked.connect(self.sub_module_default_equipments_groupbox_control)
2362 self.lineEdit_c_ao_asm_component_fr.textChanged.connect(self.calculate_sub_module_total_fr_func)
2363 self.spinBox_c_ao_asm_quantity.valueChanged.connect(self.calculate_sub_module_total_fr_func)
2364 self.comboBox_c_ao_asm_select_type.currentIndexChanged.connect(self.calculate_sub_module_total_fr_func)
2365 self.pushButton_c_ao_asm_set_equipment.clicked.connect(self.sub_module_add_equipment_func)
2366 self.pushButton_c_ao_asm_delete_sub_module.clicked.connect(self.delete_a_sub_module)
2369 self.comboBox_c_ao_ac_select_module.currentIndexChanged.connect(self.add_component_tab_func)
2370 self.pushButton_c_ao_ac_add_component.clicked.connect(self.add_new_component)
2371 self.lineEdit_c_ao_ac_component_fr.textChanged.connect(self.calculate_set_fr_component_total_fr_func)
2372 self.spinBox_c_ao_ac_sfr_quantity.valueChanged.connect(self.calculate_set_fr_component_total_fr_func)
2373 self.groupBox_c_ao_ac_component_fr.clicked.connect(self.component_set_fr_groupbox_control)
2374 self.groupBox_c_ao_ac_default_fr.clicked.connect(self.component_default_equipments_groupbox_control)
2375 self.comboBox_c_ao_ac_select_module.currentIndexChanged.connect(self.add_component_into_list_widget)
2376 self.comboBox_c_ao_ac_select_sub_module.currentIndexChanged.connect(self.add_component_into_list_widget)
2377 self.lineEdit_c_ao_ac_component_fr_2.textChanged.connect(self.calculate_component_total_fr_func)
2378 self.spinBox_c_ao_ac_quantity.valueChanged.connect(self.calculate_component_total_fr_func)
2379 self.pushButton_c_ao_ac_set_equipment.clicked.connect(self.component_add_equipment_func)
2380 self.pushButton_c_ao_ac_delete_component.clicked.connect(self.delete_a_component)
2383 self.comboBox_c_ao_ace_select_module.currentIndexChanged.connect(self.add_component_element_tab_func)
2384 self.comboBox_c_ao_ace_select_sub_module.currentIndexChanged.connect(self.add_component_element_tab_func_2)
2385 self.pushButton_c_ao_ace_add_component_element.clicked.connect(self.add_new_custom_component)
2386 self.comboBox_c_ao_ace_select_module.currentIndexChanged.connect(self.add_elements_into_list_widget)
2387 self.comboBox_c_ao_ace_select_sub_module.currentIndexChanged.connect(self.add_elements_into_list_widget)
2388 self.comboBox_c_ao_ace_select_component.currentIndexChanged.connect(self.add_elements_into_list_widget)
2389 self.pushButton_c_ao_ac_set_formula.clicked.connect(self.set_formula_of_component)
2390 self.pushButton_c_ao_ac_set_formula.clicked.connect(self.add_component_into_list_widget)
2391 self.comboBox_c_ao_ace_select_component_2.currentIndexChanged.connect(self.control_component_formula)
2392 self.pushButton_c_ao_ace_delete_element.clicked.connect(self.delete_an_element)
2393 self.pushButton_c_ao_ace_delete_element.clicked.connect(self.add_component_into_list_widget)
2398 PHM Save And Load Button Function 2409 Control of Configuration List Function 2412 configuration_list = list(self.
main_dict[str(args[0])][str(args[1])][str(args[2])][
"Configurations"].keys())
2414 elif len(args) == 2:
2415 configuration_list = list(self.
main_dict[str(args[0])][str(args[1])][
"Configurations"].keys())
2417 elif len(args) == 1:
2418 configuration_list = list(self.
main_dict[str(args[0])][
"Configurations"].keys())
2421 print(
"\nThe function must have at least 1 input.\n")
2425 return configuration_list
2448 Remove "Configuration Count" Key Function 2450 if "Configuration Count" in temp_list:
2451 temp_list.remove(
"Configuration Count")
2459 Remove "Failure Rate Key" Function 2461 if "Failure Rate" in temp_list:
2462 temp_list.remove(
"Failure Rate")
2470 Remove "Reliability" Function 2472 if "Reliability" in temp_list:
2473 temp_list.remove(
"Reliability")
2481 Remove "Depth Level" Function 2483 if "Depth Level" in temp_list:
2484 temp_list.remove(
"Depth Level")
2492 Remove "Configurations" Function 2494 if "Configurations" in temp_list:
2495 temp_list.remove(
"Configurations")
2503 Remove "Elements" Function 2505 if "Elements" in temp_list:
2506 temp_list.remove(
"Elements")
2514 Remove "Formula" Function 2516 if "Formula" in temp_list:
2517 temp_list.remove(
"Formula")
2525 Remove "Final Configuration" Function 2527 if "Final Configuration" in temp_list:
2528 temp_list.remove(
"Final Configuration")
2539 Start PHM Gui Main Dict Function 2543 file_dir =
"phm_start/params/" 2544 temp_file_name =
"last_configurations" 2545 file_name = str(str(current_workspace) + str(file_dir) + str(temp_file_name) +
'.yaml')
2548 last_saved_dict_keys = list(last_saved_dict[
"System"].keys())
2551 if last_saved_dict_keys:
2552 self.
main_dict[
"System"].update(last_saved_dict[
"System"])
2557 self.
main_dict[
"System"] = {
"Reliability": {
"Nominal": 0.0,
"Sensor Based": 0.0},
"Failure Rate": {
"Nominal": 0.0,
"Sensor Based": 0.0},
"Configurations": {
'Configuration Count': {
'Serial': 0,
'Parallel': 0}},
"Final Configuration": str()}
2560 self.
main_dict[
"System"] = {
"Reliability": {
"Nominal": 0.0,
"Sensor Based": 0.0},
"Failure Rate": {
"Nominal": 0.0,
"Sensor Based": 0.0},
"Configurations": {
'Configuration Count': {
'Serial': 0,
'Parallel': 0}},
"Final Configuration": str()}
2568 System List Tab Function 2571 self.comboBox_configuration_st_sm_select_system.clear()
2572 self.comboBox_configuration_st_sm_select_system.addItem(
"None")
2575 self.comboBox_configuration_st_ssm_select_system.clear()
2576 self.comboBox_configuration_st_ssm_select_system.addItem(
"None")
2579 self.comboBox_configuration_st_sc_select_system.clear()
2580 self.comboBox_configuration_st_sc_select_system.addItem(
"None")
2582 system_list = list(self.main_dict.keys())
2585 self.comboBox_configuration_st_sm_select_system.addItems(sorted(system_list))
2586 self.comboBox_configuration_st_ssm_select_system.addItems(sorted(system_list))
2587 self.comboBox_configuration_st_sc_select_system.addItems(sorted(system_list))
2592 Module List Tab Function 2595 self.comboBox_configuration_st_ssm_select_module.clear()
2596 self.comboBox_configuration_st_ssm_select_module.addItem(
"None")
2599 self.comboBox_configuration_st_sc_select_module.clear()
2600 self.comboBox_configuration_st_sc_select_module.addItem(
"None")
2605 Sub Module List Tab Function 2608 self.comboBox_configuration_st_sc_select_sub_module.clear()
2609 self.comboBox_configuration_st_sc_select_sub_module.addItem(
"None")
2614 Configuration Type Function 2617 self.comboBox_configuration_type_of_module.clear()
2618 self.comboBox_configuration_type_of_module.addItems(self.
type_list)
2621 self.comboBox_configuration_type_of_sub_module.clear()
2622 self.comboBox_configuration_type_of_sub_module.addItems(self.
type_list)
2625 self.comboBox_configuration_type_of_component.clear()
2626 self.comboBox_configuration_type_of_component.addItems(self.
type_list)
2633 if 'series' in configuration_all:
2634 type_value =
'series' 2636 elif 'parallel' in configuration_all:
2637 type_value =
'parallel' 2647 Save System Into File Function 2649 main_dict_keys = list(self.
main_dict[
"System"].keys())
2653 file_dir =
"phm_start/params/" 2654 now = datetime.now()
2655 dt_string = now.strftime(
"%Y_%m_%d_-_%H_%M_%S")
2656 temp_file_name = str(
"phm_configurations_" + str(dt_string))
2660 self.pushButton_c_ao_load.setEnabled(
True)
2663 print(
"\nPlease enter the data.\n")
2668 Load System From File Function 2671 select_yaml_files = SelectFileGui.get_file_path(is_app=
True, caption=
"Select yaml file", filefilter=
"*yaml")
2673 if not select_yaml_files:
2674 print(
"\nError: Please select a yaml file.\n")
2677 selected_file_list = str(select_yaml_files[0]).split(
"'")
2678 selected_file = selected_file_list[1]
2682 if temp_loaded_object_keys:
2687 self.pushButton_c_ao_load.setEnabled(
False)
2692 print(
"\nPlease enter the data.\n")
2694 except Exception
as err:
2695 print(
"\nPlease enter the data.\n")
2704 First Component List Tab Function 2706 self.comboBox_configuration_select_first_comp.clear()
2707 self.comboBox_configuration_select_first_comp.addItem(
"None")
2712 Second Component List Tab Function 2714 self.comboBox_configuration_select_second_comp.clear()
2715 self.comboBox_configuration_select_second_comp.addItem(
"None")
2720 Component List Widget Function 2722 self.listWidget_components.clear()
2723 self.listWidget_configurations_of_components.clear()
2728 Module List Control of Set Component Types Tab Function 2730 selected_system = self.comboBox_configuration_st_sc_select_system.currentText()
2731 self.comboBox_configuration_st_sc_select_module.clear()
2733 if selected_system !=
"None" and selected_system !=
"":
2734 module_list = list(self.
main_dict[str(selected_system)].keys())
2736 self.comboBox_configuration_st_sc_select_module.addItems(module_list)
2741 Sub Module List Control of Set Component Types Tab Function 2743 selected_system = self.comboBox_configuration_st_sc_select_system.currentText()
2744 selected_module = self.comboBox_configuration_st_sc_select_module.currentText()
2746 self.comboBox_configuration_st_sc_select_sub_module.clear()
2748 if selected_system !=
"None" and selected_module !=
"None" and selected_system !=
"" and selected_module !=
"":
2749 sub_module_list = list(self.
main_dict[str(selected_system)][str(selected_module)].keys())
2751 self.comboBox_configuration_st_sc_select_sub_module.addItems(sub_module_list)
2756 Component List Control of Set Component Types Tab Function 2758 selected_system = self.comboBox_configuration_st_sc_select_system.currentText()
2759 selected_module = self.comboBox_configuration_st_sc_select_module.currentText()
2760 selected_sub_module = self.comboBox_configuration_st_sc_select_sub_module.currentText()
2762 self.comboBox_configuration_select_first_comp.clear()
2763 self.comboBox_configuration_select_second_comp.clear()
2764 self.lineEdit_configuration_failure_rate_first_component.clear()
2765 self.lineEdit_configuration_failure_rate_second_component.clear()
2766 self.lineEdit_configuration_first_component.clear()
2767 self.lineEdit_configuration_second_component.clear()
2768 self.listWidget_components.clear()
2770 if ((selected_system
and selected_module
and selected_sub_module) !=
"None")
and ((selected_system
and selected_module
and selected_sub_module) !=
""):
2771 component_list = list(self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)].keys())
2773 configuration_list = list(self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
'Configurations'].keys())
2775 component_list.extend(configuration_list)
2777 self.comboBox_configuration_select_first_comp.addItems(component_list)
2778 self.comboBox_configuration_select_second_comp.addItems(component_list)
2779 self.listWidget_components.addItems(sorted(component_list))
2782 self.comboBox_configuration_select_first_comp.clear()
2783 self.comboBox_configuration_select_second_comp.clear()
2784 self.listWidget_components.clear()
2789 Sub Module Failure Rate Control Function 2791 self.lineEdit_configuration_failure_rate_sub_module.clear()
2792 selected_system = self.comboBox_configuration_st_sc_select_system.currentText()
2793 selected_module = self.comboBox_configuration_st_sc_select_module.currentText()
2794 selected_sub_module = self.comboBox_configuration_st_sc_select_sub_module.currentText()
2796 if ((selected_system
and selected_module
and selected_sub_module) !=
"")
and ((selected_system
and selected_module
and selected_sub_module) !=
"None"):
2797 selected_sub_module_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
'Failure Rate']
2798 self.lineEdit_configuration_failure_rate_sub_module.setText(str(selected_sub_module_fr))
2803 Convert Configurations of Components Into Syntax Function 2805 selected_system = self.comboBox_configuration_st_sc_select_system.currentText()
2806 selected_module = self.comboBox_configuration_st_sc_select_module.currentText()
2807 selected_sub_module = self.comboBox_configuration_st_sc_select_sub_module.currentText()
2809 self.listWidget_configurations_of_components.clear()
2811 if ((selected_system
and selected_module
and selected_sub_module) !=
"")
and ((selected_system
and selected_module
and selected_sub_module) !=
"None"):
2812 configuraiton_list = list(self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Configurations"].keys())
2814 syntax_list = list()
2816 for configuration
in configuraiton_list:
2817 type_value = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Configurations"][str(configuration)][
"Type"]
2818 component_list = list(self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Configurations"][str(configuration)][
"Components"])
2819 syntax_name = str(configuration)
2821 if type_value ==
"Serial":
2824 for component
in component_list:
2825 temp_syntax += str(component) +
', ' 2827 length = len(temp_syntax)
2828 temp_syntax = temp_syntax[:length-2]
2829 syntax = str(syntax_name) +
' = ' +
'series(' + str(temp_syntax) +
')' 2831 elif type_value ==
'Parallel':
2834 for component
in component_list:
2835 temp_syntax += str(component) +
', ' 2837 length = len(temp_syntax)
2838 temp_syntax = temp_syntax[:length-2]
2839 syntax = str(syntax_name) +
' = ' +
'parallel(' + str(temp_syntax) +
')' 2841 syntax_list.append(syntax)
2843 self.listWidget_configurations_of_components.addItems(sorted(syntax_list))
2848 First Component List Control of Set Component Types Tab Function 2850 selected_system = self.comboBox_configuration_st_sc_select_system.currentText()
2851 selected_module = self.comboBox_configuration_st_sc_select_module.currentText()
2852 selected_sub_module = self.comboBox_configuration_st_sc_select_sub_module.currentText()
2854 if ((selected_system
and selected_sub_module
and selected_module) !=
"None")
and ((selected_system
and selected_sub_module
and selected_module) !=
""):
2855 component1 = self.comboBox_configuration_select_first_comp.currentText()
2858 if component1 !=
"None" and component1 !=
"":
2859 self.lineEdit_configuration_first_component.setText(str(component1))
2861 if component1
in configuration_list:
2862 component1_fr = self.
main_dict[str(selected_system)][str(selected_module)][selected_sub_module][
"Configurations"][str(component1)][
"Failure Rate"]
2865 component1_fr = self.
main_dict[str(selected_system)][str(selected_module)][selected_sub_module][str(component1)][
'Failure Rate']
2867 self.lineEdit_configuration_failure_rate_first_component.setText(str(component1_fr))
2872 Second Component List Control of Set Component Types Tab Function 2874 selected_system = self.comboBox_configuration_st_sc_select_system.currentText()
2875 selected_module = self.comboBox_configuration_st_sc_select_module.currentText()
2876 selected_sub_module = self.comboBox_configuration_st_sc_select_sub_module.currentText()
2878 if ((selected_system
and selected_sub_module
and selected_module) !=
"None")
and ((selected_system
and selected_sub_module
and selected_module) !=
""):
2879 component2 = self.comboBox_configuration_select_second_comp.currentText()
2882 if component2 !=
"None" and component2 !=
"":
2883 self.lineEdit_configuration_second_component.setText(str(component2))
2885 if component2
in configuration_list:
2886 component2_fr = self.
main_dict[str(selected_system)][str(selected_module)][selected_sub_module][
"Configurations"][str(component2)][
"Failure Rate"]
2889 component2_fr = self.
main_dict[str(selected_system)][str(selected_module)][selected_sub_module][str(component2)][
'Failure Rate']
2891 self.lineEdit_configuration_failure_rate_second_component.setText(str(component2_fr))
2896 Create Syntax of Components Function 2898 type_value = self.comboBox_configuration_type_of_component.currentText()
2899 selected_system = self.comboBox_configuration_st_sc_select_system.currentText()
2900 selected_module = self.comboBox_configuration_st_sc_select_module.currentText()
2901 selected_sub_module = self.comboBox_configuration_st_sc_select_sub_module.currentText()
2902 component1 = self.lineEdit_configuration_first_component.text()
2903 component2 = self.lineEdit_configuration_second_component.text()
2906 if type_value !=
"":
2907 new_config_name = str()
2908 self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Configurations"][
"Configuration Count"][str(type_value)] += 1
2909 selected_configuration_count = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Configurations"][
"Configuration Count"][str(type_value)]
2911 if type_value ==
'Serial':
2912 s_name =
's' + str(selected_configuration_count)
2913 new_config_name = s_name
2914 s_content =
'series(' + str(component1) +
', ' + str(component2) +
')' 2917 self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Configurations"][str(s_name)] =
None 2918 self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Configurations"][str(s_name)] = {
'Depth Level': level,
'Failure Rate': serial_fr,
'Type': str(type_value),
'Components': [str(component1), str(component2)]}
2920 self.listWidget_configurations_of_components.addItem(str(s_name +
' = ' + s_content))
2922 elif type_value ==
'Parallel':
2923 p_name =
'p' + str(selected_configuration_count)
2924 new_config_name = p_name
2925 p_content =
'parallel(' + str(component1) +
', ' + str(component2) +
')' 2928 self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Configurations"][str(p_name)] =
None 2929 self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Configurations"][str(p_name)] = {
'Depth Level': level,
'Failure Rate': parallel_fr,
'Type': str(type_value),
'Components': [str(component1), str(component2)]}
2931 self.listWidget_configurations_of_components.addItem(str(p_name +
' = ' + p_content))
2934 self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Configurations"][
"Depth Level"] = max_level
2936 self.comboBox_configuration_select_first_comp.addItem(str(new_config_name))
2937 self.comboBox_configuration_select_second_comp.addItem(str(new_config_name))
2938 self.listWidget_components.addItem(str(new_config_name))
2943 Calculate Serial Parallel Failure Rate Value of Components Function 2945 type_value = self.comboBox_configuration_type_of_component.currentText()
2946 selected_system = self.comboBox_configuration_st_sc_select_system.currentText()
2947 selected_module = self.comboBox_configuration_st_sc_select_module.currentText()
2948 selected_sub_module = self.comboBox_configuration_st_sc_select_sub_module.currentText()
2950 component1 = self.lineEdit_configuration_first_component.text()
2951 component2 = self.lineEdit_configuration_second_component.text()
2955 if ((component1
and component2) !=
"None")
and ((component1
and component2) !=
""):
2956 if component1
in configuration_list:
2957 component1_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
'Configurations'][str(component1)][
'Failure Rate']
2960 component1_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][str(component1)][
'Failure Rate']
2962 if component2
in configuration_list:
2963 component2_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
'Configurations'][str(component2)][
'Failure Rate']
2966 component2_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][str(component2)][
'Failure Rate']
2969 fr_list = [component1_fr, component2_fr]
2971 if type_value ==
"Serial":
2972 serial_fr = self.fr_calculation_class.component_serial_failure_rate_calculation(fr_list)
2975 elif type_value ==
"Parallel":
2976 parallel_fr = self.fr_calculation_class.component_parallel_failure_rate_calculation(fr_list)
2977 temp_fr = parallel_fr
2984 Calculate Depth Level of Component Configs Function 2986 selected_system = self.comboBox_configuration_st_sc_select_system.currentText()
2987 selected_module = self.comboBox_configuration_st_sc_select_module.currentText()
2988 selected_sub_module = self.comboBox_configuration_st_sc_select_sub_module.currentText()
2990 component1 = self.lineEdit_configuration_first_component.text()
2991 component2 = self.lineEdit_configuration_second_component.text()
2993 sub_module_dict = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)]
2996 if (component1
in configuration_list)
and (component2
not in configuration_list):
2997 old_level = sub_module_dict[
"Configurations"][str(component1)][
"Depth Level"]
2998 level = old_level + 1
3000 elif (component2
in configuration_list)
and (component1
not in configuration_list):
3001 old_level = sub_module_dict[
"Configurations"][str(component2)][
"Depth Level"]
3002 level = old_level + 1
3004 elif (component1
and component2)
in configuration_list:
3005 old_level1 = sub_module_dict[
"Configurations"][str(component1)][
"Depth Level"]
3006 old_level2 = sub_module_dict[
"Configurations"][str(component2)][
"Depth Level"]
3007 old_level = max(old_level1, old_level2)
3008 level = old_level + 1
3018 Delete Component Configuration Function 3021 selected_config_item = self.listWidget_configurations_of_components.selectedItems()
3022 configuration = self.listWidget_configurations_of_components.currentItem().text()
3023 ind = configuration.find(
' =')
3024 configuration_name = configuration[:ind]
3027 for cnt
in range(self.listWidget_components.count()):
3028 if self.listWidget_components.item(cnt) !=
None:
3029 if str(self.listWidget_components.item(cnt).text()) == str(configuration_name):
3030 self.listWidget_components.takeItem(cnt)
3036 for item
in selected_config_item:
3037 self.listWidget_configurations_of_components.takeItem(self.listWidget_configurations_of_components.row(item))
3040 selected_system = self.comboBox_configuration_st_sc_select_system.currentText()
3041 selected_module = self.comboBox_configuration_st_sc_select_module.currentText()
3042 selected_sub_module = self.comboBox_configuration_st_sc_select_sub_module.currentText()
3044 del self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
'Configurations'][str(configuration_name)]
3047 except AttributeError:
3048 print(
"\nNot found an object to delete.\n")
3053 Add Component Into Config Function 3055 selected_component = self.listWidget_components.currentItem().text()
3056 selected_configuration = self.listWidget_configurations_of_components.currentItem().text()
3057 ind = selected_configuration.find(
' =')
3058 selected_configuration_name = selected_configuration[:ind]
3060 if selected_component !=
"None" and selected_configuration !=
"None":
3061 new_config = selected_configuration[:-1] +
", " + selected_component +
")" 3063 for item
in self.listWidget_configurations_of_components.selectedItems():
3064 item.setText(new_config)
3066 selected_system = self.comboBox_configuration_st_sc_select_system.currentText()
3067 selected_module = self.comboBox_configuration_st_sc_select_module.currentText()
3068 selected_sub_module = self.comboBox_configuration_st_sc_select_sub_module.currentText()
3070 component_list = list(self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
'Configurations'][str(selected_configuration_name)][
'Components'])
3071 component_list.append(str(selected_component))
3073 self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
'Configurations'][str(selected_configuration_name)][
'Components'] = component_list
3078 for component
in component_list:
3079 if component
in configuration_list_of_components:
3080 fr_list.append(self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Configurations"][str(component)][
'Failure Rate'])
3082 fr_list.append(self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][str(component)][
'Failure Rate'])
3084 type_value = self.
check_type(selected_configuration)
3086 if type_value ==
'series':
3087 calculated_fr = self.fr_calculation_class.component_serial_failure_rate_calculation(fr_list)
3089 elif type_value ==
'parallel':
3090 calculated_fr = self.fr_calculation_class.component_parallel_failure_rate_calculation(fr_list)
3092 self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
'Configurations'][str(selected_configuration_name)][
'Failure Rate'] = calculated_fr
3095 self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
'Configurations'][str(selected_configuration_name)][
'Depth Level'] = level
3098 self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
'Configurations'][
'Depth Level'] = max_level
3103 Add Component Calculate Depth Level of Configurations 3105 selected_system = self.comboBox_configuration_st_sc_select_system.currentText()
3106 selected_module = self.comboBox_configuration_st_sc_select_module.currentText()
3107 selected_sub_module = self.comboBox_configuration_st_sc_select_sub_module.currentText()
3109 sub_module_dict = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)]
3110 component_list = list(sub_module_dict[
"Configurations"][str(selected_configuration_name)][
"Components"])
3115 for item
in component_list:
3116 if item
not in configuration_list_of_components:
3120 level = sub_module_dict[
"Configurations"][str(item)][
"Depth Level"]
3121 level_list.append(level)
3123 max_level = max(level_list) + 1
3130 Find Max Depth Level of Component Configs Function 3132 selected_system = self.comboBox_configuration_st_sc_select_system.currentText()
3133 selected_module = self.comboBox_configuration_st_sc_select_module.currentText()
3134 selected_sub_module = self.comboBox_configuration_st_sc_select_sub_module.currentText()
3136 if ((selected_system
and selected_module
and selected_sub_module) !=
"")
and ((selected_system
and selected_module
and selected_sub_module) !=
"None"):
3137 sub_module_dict = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)]
3138 configuration_list = list(sub_module_dict[
"Configurations"].keys())
3142 for item
in configuration_list:
3143 level = sub_module_dict[
"Configurations"][str(item)][
"Depth Level"]
3144 level_list.append(level)
3146 return max(level_list)
3151 Select Final Configuration of Sub Module Function 3154 selected_system = self.comboBox_configuration_st_sc_select_system.currentText()
3155 selected_module = self.comboBox_configuration_st_sc_select_module.currentText()
3156 selected_sub_module = self.comboBox_configuration_st_sc_select_sub_module.currentText()
3157 configuration_count = self.listWidget_configurations_of_components.count()
3159 if configuration_count > 0:
3160 selected_final_configuration = self.listWidget_configurations_of_components.currentItem().text()
3161 ind = selected_final_configuration.find(
' =')
3162 selected_final_configuration_name = selected_final_configuration[:ind]
3163 selected_final_configuration_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
'Configurations'][str(selected_final_configuration_name)][
'Failure Rate']
3166 selected_final_configuration_name = self.listWidget_components.currentItem().text()
3167 selected_final_configuration_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][str(selected_final_configuration_name)][
'Failure Rate']
3169 self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
"Final Configuration"] = str(selected_final_configuration_name)
3170 self.
main_dict[str(selected_system)][str(selected_module)][str(selected_sub_module)][
'Failure Rate'] = selected_final_configuration_fr
3172 self.lineEdit_configuration_failure_rate_sub_module.setText(str(selected_final_configuration_fr))
3175 except Exception
as err:
3176 print(
"\nError: select_final_configuration_of_sub_module\n")
3185 First Sub Module List Tab Function 3187 self.comboBox_configuration_select_first_sub_module.clear()
3188 self.comboBox_configuration_select_first_sub_module.addItem(
"None")
3193 Second Sub Module List Tab Function 3195 self.comboBox_configuration_select_second_sub_module.clear()
3196 self.comboBox_configuration_select_second_sub_module.addItem(
"None")
3201 Sub Module List Widget Function 3203 self.listWidget_sub_modules.clear()
3204 self.listWidget_configurations_of_sub_modules.clear()
3209 Module List Control of Set Sub Module Types Tab Function 3211 selected_system = self.comboBox_configuration_st_ssm_select_system.currentText()
3213 self.comboBox_configuration_st_ssm_select_module.clear()
3215 if selected_system !=
"None" and selected_system !=
"":
3216 module_list = list(self.
main_dict[str(selected_system)].keys())
3219 self.comboBox_configuration_st_ssm_select_module.addItems(module_list)
3224 Sub Module List Control of Set Sub Module Types Tab Function 3226 selected_system = self.comboBox_configuration_st_ssm_select_system.currentText()
3227 selected_module = self.comboBox_configuration_st_ssm_select_module.currentText()
3229 self.comboBox_configuration_select_first_sub_module.clear()
3230 self.comboBox_configuration_select_second_sub_module.clear()
3231 self.listWidget_sub_modules.clear()
3232 self.lineEdit_configuration_failure_rate_first_sub_module.clear()
3233 self.lineEdit_configuration_failure_rate_second_sub_module.clear()
3234 self.lineEdit_configuration_first_sub_module.clear()
3235 self.lineEdit_configuration_second_sub_module.clear()
3237 if ((selected_system
and selected_module) !=
"None")
and ((selected_system
and selected_module) !=
""):
3238 sub_module_list = list(self.
main_dict[str(selected_system)][str(selected_module)].keys())
3241 if "Configurations" in self.
main_dict[str(selected_system)][str(selected_module)]:
3242 configuration_list = list(self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"].keys())
3245 configuration_list = list()
3248 sub_module_list.extend(configuration_list)
3250 self.comboBox_configuration_select_first_sub_module.addItems(sub_module_list)
3251 self.comboBox_configuration_select_second_sub_module.addItems(sub_module_list)
3252 self.listWidget_sub_modules.addItems(sorted(sub_module_list))
3255 self.comboBox_configuration_select_first_sub_module.clear()
3256 self.comboBox_configuration_select_second_sub_module.clear()
3257 self.listWidget_sub_modules.clear()
3262 Module Failure Rate Control Function 3264 self.lineEdit_configuration_failure_rate_module.clear()
3266 selected_system = self.comboBox_configuration_st_ssm_select_system.currentText()
3267 selected_module = self.comboBox_configuration_st_ssm_select_module.currentText()
3269 if ((selected_system
and selected_module) !=
"")
and ((selected_system
and selected_module) !=
"None"):
3270 selected_module_fr = self.
main_dict[str(selected_system)][str(selected_module)][
'Failure Rate'][
"Nominal"]
3271 self.lineEdit_configuration_failure_rate_module.setText(str(selected_module_fr))
3276 Convert Configurations of Sub Modules Into Syntax Function 3278 selected_system = self.comboBox_configuration_st_ssm_select_system.currentText()
3279 selected_module = self.comboBox_configuration_st_ssm_select_module.currentText()
3281 self.listWidget_configurations_of_sub_modules.clear()
3283 if ((selected_system
and selected_module) !=
"")
and ((selected_system
and selected_module) !=
"None"):
3284 if "Configurations" in self.
main_dict[str(selected_system)][str(selected_module)]:
3285 configuraiton_list = list(self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"].keys())
3287 syntax_list = list()
3289 for configuration
in configuraiton_list:
3290 type_value = self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"][str(configuration)][
"Type"]
3291 component_list = list(self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"][str(configuration)][
"Components"])
3292 syntax_name = str(configuration)
3294 if type_value ==
"Serial":
3297 for component
in component_list:
3298 temp_syntax += str(component) +
', ' 3300 length = len(temp_syntax)
3301 temp_syntax = temp_syntax[:length-2]
3302 syntax = str(syntax_name) +
' = ' +
'series(' + str(temp_syntax) +
')' 3304 elif type_value ==
'Parallel':
3307 for component
in component_list:
3308 temp_syntax += str(component) +
', ' 3310 length = len(temp_syntax)
3311 temp_syntax = temp_syntax[:length-2]
3312 syntax = str(syntax_name) +
' = ' +
'parallel(' + str(temp_syntax) +
')' 3314 syntax_list.append(syntax)
3316 self.listWidget_configurations_of_sub_modules.addItems(sorted(syntax_list))
3321 First Sub Module List Control of Set Sub Module Types Tab Function 3323 selected_system = self.comboBox_configuration_st_ssm_select_system.currentText()
3324 selected_module = self.comboBox_configuration_st_ssm_select_module.currentText()
3326 if ((selected_system
and selected_module) !=
"None")
and ((selected_system
and selected_module) !=
""):
3327 sub_module1 = self.comboBox_configuration_select_first_sub_module.currentText()
3330 if sub_module1 !=
"None" and sub_module1 !=
"":
3331 self.lineEdit_configuration_first_sub_module.setText(str(sub_module1))
3333 if sub_module1
in configuration_list:
3334 sub_module1_fr = self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"][str(sub_module1)][
"Failure Rate"]
3337 sub_module1_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(sub_module1)][
'Failure Rate']
3339 self.lineEdit_configuration_failure_rate_first_sub_module.setText(str(sub_module1_fr))
3344 Second Sub Module List Control of Set Sub Module Types Tab Function 3346 selected_system = self.comboBox_configuration_st_ssm_select_system.currentText()
3347 selected_module = self.comboBox_configuration_st_ssm_select_module.currentText()
3349 if ((selected_system
and selected_module) !=
"None")
and ((selected_system
and selected_module) !=
""):
3350 sub_module2 = self.comboBox_configuration_select_second_sub_module.currentText()
3353 if sub_module2 !=
"None" and sub_module2 !=
"":
3354 self.lineEdit_configuration_second_sub_module.setText(str(sub_module2))
3356 if sub_module2
in configuration_list:
3357 sub_module2_fr = self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"][str(sub_module2)][
"Failure Rate"]
3360 sub_module2_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(sub_module2)][
'Failure Rate']
3362 self.lineEdit_configuration_failure_rate_second_sub_module.setText(str(sub_module2_fr))
3367 Create Syntax of Sub Modules Function 3369 type_value = self.comboBox_configuration_type_of_sub_module.currentText()
3370 selected_system = self.comboBox_configuration_st_ssm_select_system.currentText()
3371 selected_module = self.comboBox_configuration_st_ssm_select_module.currentText()
3372 sub_module1 = self.lineEdit_configuration_first_sub_module.text()
3373 sub_module2 = self.lineEdit_configuration_second_sub_module.text()
3377 if type_value !=
"":
3378 new_config_name = str()
3379 self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"][
"Configuration Count"][str(type_value)] += 1
3380 selected_configuration_count = self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"][
"Configuration Count"][str(type_value)]
3382 if type_value ==
'Serial':
3383 s_name =
's' + str(selected_configuration_count)
3384 new_config_name = s_name
3385 s_content =
'series(' + str(sub_module1) +
', ' + str(sub_module2) +
')' 3388 self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"][str(s_name)] =
None 3389 self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"][str(s_name)] = {
'Depth Level': level,
'Failure Rate': serial_fr,
'Type': str(type_value),
'Components': [str(sub_module1), str(sub_module2)]}
3390 self.listWidget_configurations_of_sub_modules.addItem(str(s_name +
' = ' + s_content))
3392 elif type_value ==
'Parallel':
3393 p_name =
'p' + str(selected_configuration_count)
3394 new_config_name = p_name
3395 p_content =
'parallel(' + str(sub_module1) +
', ' + str(sub_module2) +
')' 3398 self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"][str(p_name)] =
None 3399 self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"][str(p_name)] = {
'Depth Level': level,
'Failure Rate': parallel_fr,
'Type': str(type_value),
'Components': [str(sub_module1), str(sub_module2)]}
3400 self.listWidget_configurations_of_sub_modules.addItem(str(p_name +
' = ' + p_content))
3403 self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"][
"Depth Level"] = max_level
3405 self.comboBox_configuration_select_first_sub_module.addItem(str(new_config_name))
3406 self.comboBox_configuration_select_second_sub_module.addItem(str(new_config_name))
3407 self.listWidget_sub_modules.addItem(str(new_config_name))
3412 Calculate Serial Parallel Failure Rate Value of Sub Modules Function 3414 type_value = self.comboBox_configuration_type_of_sub_module.currentText()
3415 selected_system = self.comboBox_configuration_st_ssm_select_system.currentText()
3416 selected_module = self.comboBox_configuration_st_ssm_select_module.currentText()
3417 sub_module1 = self.lineEdit_configuration_first_sub_module.text()
3418 sub_module2 = self.lineEdit_configuration_second_sub_module.text()
3422 if ((sub_module1
and sub_module2) !=
"None")
and ((sub_module1
and sub_module2) !=
""):
3423 if sub_module1
in configuration_list:
3424 sub_module1_fr = self.
main_dict[str(selected_system)][str(selected_module)][
'Configurations'][str(sub_module1)][
'Failure Rate']
3427 sub_module1_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(sub_module1)][
'Failure Rate']
3429 if sub_module2
in configuration_list:
3430 sub_module2_fr = self.
main_dict[str(selected_system)][str(selected_module)][
'Configurations'][str(sub_module2)][
'Failure Rate']
3433 sub_module2_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(sub_module2)][
'Failure Rate']
3436 fr_list = [sub_module1_fr, sub_module2_fr]
3438 if type_value ==
"Serial":
3439 serial_fr = self.fr_calculation_class.component_serial_failure_rate_calculation(fr_list)
3442 elif type_value ==
"Parallel":
3443 parallel_fr = self.fr_calculation_class.component_parallel_failure_rate_calculation(fr_list)
3444 temp_fr = parallel_fr
3451 Calculate Depth Level of Sub Module Configs Function 3453 selected_system = self.comboBox_configuration_st_ssm_select_system.currentText()
3454 selected_module = self.comboBox_configuration_st_ssm_select_module.currentText()
3456 sub_module1 = self.lineEdit_configuration_first_sub_module.text()
3457 sub_module2 = self.lineEdit_configuration_second_sub_module.text()
3459 module_dict = self.
main_dict[str(selected_system)][str(selected_module)]
3462 if (sub_module1
in configuration_list_of_sub_modules)
and (sub_module2
not in configuration_list_of_sub_modules):
3463 old_level = module_dict[
"Configurations"][str(sub_module1)][
"Depth Level"]
3464 level = old_level + 1
3466 elif (sub_module2
in configuration_list_of_sub_modules)
and (sub_module1
not in configuration_list_of_sub_modules):
3467 old_level = module_dict[
"Configurations"][str(sub_module2)][
"Depth Level"]
3468 level = old_level + 1
3470 elif (sub_module1
and sub_module2)
in configuration_list_of_sub_modules:
3471 old_level1 = module_dict[
"Configurations"][str(sub_module1)][
"Depth Level"]
3472 old_level2 = module_dict[
"Configurations"][str(sub_module2)][
"Depth Level"]
3473 old_level = max(old_level1, old_level2)
3474 level = old_level + 1
3484 Find Max Depth Level of Sub Module Configs Function 3486 selected_system = self.comboBox_configuration_st_ssm_select_system.currentText()
3487 selected_module = self.comboBox_configuration_st_ssm_select_module.currentText()
3489 if ((selected_system
and selected_module) !=
"")
and ((selected_system
and selected_module) !=
"None"):
3490 module_dict = self.
main_dict[str(selected_system)][str(selected_module)]
3491 configuration_list = list(module_dict[
"Configurations"].keys())
3495 for item
in configuration_list:
3496 level = module_dict[
"Configurations"][str(item)][
"Depth Level"]
3497 level_list.append(level)
3499 return max(level_list)
3504 Delete Sub Module Configuration Function 3507 selected_config_item = self.listWidget_configurations_of_sub_modules.selectedItems()
3508 configuration = self.listWidget_configurations_of_sub_modules.currentItem().text()
3509 ind = configuration.find(
' =')
3510 configuration_name = configuration[:ind]
3513 for cnt
in range(self.listWidget_sub_modules.count()):
3514 if self.listWidget_sub_modules.item(cnt) !=
None:
3515 if str(self.listWidget_sub_modules.item(cnt).text()) == str(configuration_name):
3516 self.listWidget_sub_modules.takeItem(cnt)
3522 for item
in selected_config_item:
3523 self.listWidget_configurations_of_sub_modules.takeItem(self.listWidget_configurations_of_sub_modules.row(item))
3527 index_1 = self.comboBox_configuration_select_first_sub_module.findText(configuration_name)
3528 self.comboBox_configuration_select_first_sub_module.removeItem(index_1)
3530 index_2 = self.comboBox_configuration_select_second_sub_module.findText(configuration_name)
3531 self.comboBox_configuration_select_second_sub_module.removeItem(index_2)
3534 selected_system = self.comboBox_configuration_st_ssm_select_system.currentText()
3535 selected_module = self.comboBox_configuration_st_ssm_select_module.currentText()
3536 del self.
main_dict[str(selected_system)][str(selected_module)][
'Configurations'][str(configuration_name)]
3540 except AttributeError:
3541 print(
"\nNot found an object to delete.\n")
3546 Add Sub Module Into Config Function 3548 selected_sub_module = self.listWidget_sub_modules.currentItem().text()
3549 selected_configuration = self.listWidget_configurations_of_sub_modules.currentItem().text()
3550 ind = selected_configuration.find(
' =')
3551 selected_configuration_name = selected_configuration[:ind]
3553 if selected_sub_module !=
"None" and selected_configuration !=
"None":
3554 new_config = selected_configuration[:-1] +
", " + selected_sub_module +
")" 3556 for item
in self.listWidget_configurations_of_sub_modules.selectedItems():
3557 item.setText(new_config)
3559 selected_system = self.comboBox_configuration_st_ssm_select_system.currentText()
3560 selected_module = self.comboBox_configuration_st_ssm_select_module.currentText()
3562 component_list = list(self.
main_dict[str(selected_system)][str(selected_module)][
'Configurations'][str(selected_configuration_name)][
'Components'])
3563 component_list.append(str(selected_sub_module))
3564 self.
main_dict[str(selected_system)][str(selected_module)][
'Configurations'][str(selected_configuration_name)][
'Components'] = component_list
3569 for component
in component_list:
3570 if component
in configuration_list_of_sub_modules:
3571 fr_list.append(self.
main_dict[str(selected_system)][str(selected_module)][
"Configurations"][str(component)][
'Failure Rate'])
3574 fr_list.append(self.
main_dict[str(selected_system)][str(selected_module)][str(component)][
'Failure Rate'])
3576 type_value = self.
check_type(selected_configuration)
3578 if type_value ==
'series':
3579 calculated_fr = self.fr_calculation_class.component_serial_failure_rate_calculation(fr_list)
3581 elif type_value ==
'parallel':
3582 calculated_fr = self.fr_calculation_class.component_parallel_failure_rate_calculation(fr_list)
3584 self.
main_dict[str(selected_system)][str(selected_module)][
'Configurations'][str(selected_configuration_name)][
'Failure Rate'] = calculated_fr
3587 self.
main_dict[str(selected_system)][str(selected_module)][
'Configurations'][str(selected_configuration_name)][
'Depth Level'] = level
3590 self.
main_dict[str(selected_system)][str(selected_module)][
'Configurations'][
'Depth Level'] = max_level
3595 Add Sub Module Calculate Depth Level of Configurations Function 3597 selected_system = self.comboBox_configuration_st_ssm_select_system.currentText()
3598 selected_module = self.comboBox_configuration_st_ssm_select_module.currentText()
3600 module_dict = self.
main_dict[str(selected_system)][str(selected_module)]
3601 component_list = list(module_dict[
"Configurations"][str(selected_configuration_name)][
"Components"])
3606 for item
in component_list:
3607 if item
not in configuration_list_of_sub_modules:
3611 level = module_dict[
"Configurations"][str(item)][
"Depth Level"]
3613 level_list.append(level)
3615 max_level = max(level_list) + 1
3622 Select Final Configuration of Module Function 3625 selected_system = self.comboBox_configuration_st_ssm_select_system.currentText()
3626 selected_module = self.comboBox_configuration_st_ssm_select_module.currentText()
3627 configuration_count = self.listWidget_configurations_of_sub_modules.count()
3629 if configuration_count > 0:
3630 selected_final_configuration = self.listWidget_configurations_of_sub_modules.currentItem().text()
3631 ind = selected_final_configuration.find(
' =')
3632 selected_final_configuration_name = selected_final_configuration[:ind]
3633 selected_final_configuration_fr = self.
main_dict[str(selected_system)][str(selected_module)][
'Configurations'][str(selected_final_configuration_name)][
'Failure Rate']
3636 selected_final_configuration_name = self.listWidget_sub_modules.currentItem().text()
3637 selected_final_configuration_fr = self.
main_dict[str(selected_system)][str(selected_module)][str(selected_final_configuration_name)][
'Failure Rate']
3639 self.
main_dict[str(selected_system)][str(selected_module)][
"Final Configuration"] = str(selected_final_configuration_name)
3640 self.
main_dict[str(selected_system)][str(selected_module)][
'Failure Rate'][
"Nominal"] = selected_final_configuration_fr
3642 self.lineEdit_configuration_failure_rate_module.setText(str(selected_final_configuration_fr))
3646 except Exception
as err:
3647 print(
"\nError: select_final_configuration_of_module\n")
3656 First Module List Tab Function 3658 self.comboBox_configuration_select_first_module.clear()
3659 self.comboBox_configuration_select_first_module.addItem(
"None")
3664 Second Module List Tab Function 3666 self.comboBox_configuration_select_second_module.clear()
3667 self.comboBox_configuration_select_second_module.addItem(
"None")
3672 Module List Widget Function 3674 self.listWidget_modules.clear()
3675 self.listWidget_configurations_of_modules.clear()
3680 System List Control of Set Module Types Tab Function 3682 current_system = self.comboBox_configuration_st_sm_select_system.currentText()
3683 self.comboBox_configuration_select_first_module.clear()
3684 self.comboBox_configuration_select_second_module.clear()
3685 self.listWidget_modules.clear()
3687 if current_system !=
"None" and current_system !=
"":
3688 module_list = list(self.
main_dict[str(current_system)].keys())
3691 configuration_list = list(self.
main_dict[str(current_system)][
'Configurations'].keys())
3693 module_list.extend(configuration_list)
3695 self.comboBox_configuration_select_first_module.addItems(sorted(module_list))
3696 self.comboBox_configuration_select_second_module.addItems(sorted(module_list))
3697 self.listWidget_modules.addItems(sorted(module_list))
3700 self.comboBox_configuration_select_first_module.clear()
3701 self.comboBox_configuration_select_second_module.clear()
3702 self.listWidget_modules.clear()
3707 System Failure Rate Control Function 3709 self.lineEdit_configuration_failure_rate_system.clear()
3710 current_system = self.comboBox_configuration_st_sm_select_system.currentText()
3712 if current_system !=
"None" and current_system !=
"":
3713 current_system_fr = self.
main_dict[str(current_system)][
'Failure Rate'][
"Nominal"]
3714 self.lineEdit_configuration_failure_rate_system.setText(str(current_system_fr))
3719 Convert Configurations of Modules Into Syntax Function 3721 current_system = self.comboBox_configuration_st_sm_select_system.currentText()
3722 self.listWidget_configurations_of_modules.clear()
3724 if current_system !=
"None" and current_system !=
"":
3725 configuration_list = list(self.
main_dict[str(current_system)][
'Configurations'].keys())
3727 syntax_list = list()
3729 for configuration
in configuration_list:
3730 type_value = self.
main_dict[str(current_system)][
'Configurations'][str(configuration)][
'Type']
3731 component_list = list(self.
main_dict[str(current_system)][
'Configurations'][str(configuration)][
'Components'])
3732 syntax_name = str(configuration)
3734 if type_value ==
'Serial':
3736 for component
in component_list:
3737 temp_syntax += str(component) +
', ' 3739 length = len(temp_syntax)
3740 temp_syntax = temp_syntax[:length-2]
3741 syntax = str(syntax_name) +
' = ' +
'series(' + str(temp_syntax) +
')' 3743 elif type_value ==
'Parallel':
3746 for component
in component_list:
3747 temp_syntax += str(component) +
', ' 3749 length = len(temp_syntax)
3750 temp_syntax = temp_syntax[:length-2]
3751 syntax = str(syntax_name) +
' = ' +
'parallel(' + str(temp_syntax) +
')' 3753 syntax_list.append(syntax)
3755 self.listWidget_configurations_of_modules.addItems(sorted(syntax_list))
3760 Module List Control of Set Module Types Tab Function 3762 current_system = self.comboBox_configuration_st_sm_select_system.currentText()
3764 if current_system !=
"None" and current_system !=
"":
3765 module1 = str(self.comboBox_configuration_select_first_module.currentText())
3766 module2 = str(self.comboBox_configuration_select_second_module.currentText())
3769 if module1 !=
"None" and module1 !=
"":
3770 self.lineEdit_configuration_first_module.setText(str(module1))
3772 if module1
in configuration_list:
3773 module1_fr = self.
main_dict[str(current_system)][
'Configurations'][str(module1)][
'Failure Rate'][
"Nominal"]
3776 module1_fr = self.
main_dict[str(current_system)][str(module1)][
'Failure Rate'][
"Nominal"]
3778 self.lineEdit_configuration_failure_rate_first_module.setText(str(module1_fr))
3780 if module2 !=
"None" and module2 !=
"":
3781 self.lineEdit_configuration_second_module.setText(str(module2))
3783 if module2
in configuration_list:
3784 module2_fr = self.
main_dict[str(current_system)][
'Configurations'][str(module2)][
'Failure Rate'][
"Nominal"]
3787 module2_fr = self.
main_dict[str(current_system)][str(module2)][
'Failure Rate'][
"Nominal"]
3789 self.lineEdit_configuration_failure_rate_second_module.setText(str(module2_fr))
3794 Create Syntax of Modules Function 3796 type_value = self.comboBox_configuration_type_of_module.currentText()
3797 selected_system = self.comboBox_configuration_st_sm_select_system.currentText()
3798 module1 = self.lineEdit_configuration_first_module.text()
3799 module2 = self.lineEdit_configuration_second_module.text()
3802 if type_value !=
"":
3803 new_config_name = str()
3804 self.
main_dict[str(selected_system)][
"Configurations"][
"Configuration Count"][str(type_value)] += 1
3805 selected_configuration_count = self.
main_dict[str(selected_system)][
"Configurations"][
"Configuration Count"][str(type_value)]
3807 if type_value ==
'Serial':
3808 s_name =
's' + str(selected_configuration_count)
3809 new_config_name = s_name
3810 s_content =
'series(' + str(module1) +
', ' + str(module2) +
')' 3813 self.
main_dict[str(selected_system)][
'Configurations'][str(s_name)] =
None 3814 self.
main_dict[str(selected_system)][
'Configurations'][str(s_name)] = {
'Depth Level': level,
'Failure Rate': {
"Nominal": serial_fr,
"Sensor Based": serial_fr},
'Type': str(type_value),
'Components': [str(module1), str(module2)]}
3815 self.listWidget_configurations_of_modules.addItem(str(s_name +
' = ' + s_content))
3817 elif type_value ==
'Parallel':
3818 p_name =
'p' + str(selected_configuration_count)
3819 new_config_name = p_name
3820 p_content =
'parallel(' + str(module1) +
', ' + str(module2) +
')' 3823 self.
main_dict[str(selected_system)][
'Configurations'][str(p_name)] =
None 3824 self.
main_dict[str(selected_system)][
'Configurations'][str(p_name)] = {
'Depth Level': level,
'Failure Rate': {
"Nominal": parallel_fr,
"Sensor Based": parallel_fr},
'Type': str(type_value),
'Components': [str(module1), str(module2)]}
3826 self.listWidget_configurations_of_modules.addItem(str(p_name +
' = ' + p_content))
3829 self.
main_dict[str(selected_system)][
"Configurations"][
"Depth Level"] = max_level
3831 self.comboBox_configuration_select_first_module.addItem(str(new_config_name))
3832 self.comboBox_configuration_select_second_module.addItem(str(new_config_name))
3833 self.listWidget_modules.addItem(str(new_config_name))
3838 Calculate Serial Parallel Failure Rate Value of Modules 3840 type_value = self.comboBox_configuration_type_of_module.currentText()
3841 current_system = self.comboBox_configuration_st_sm_select_system.currentText()
3842 module1 = self.lineEdit_configuration_first_module.text()
3843 module2 = self.lineEdit_configuration_second_module.text()
3847 if ((module1
and module2) !=
"None")
and ((module1
and module2) !=
""):
3848 if module1
in configuration_list:
3849 module1_fr = self.
main_dict[str(current_system)][
'Configurations'][str(module1)][
'Failure Rate'][
"Nominal"]
3852 module1_fr = self.
main_dict[str(current_system)][str(module1)][
'Failure Rate'][
"Nominal"]
3854 if module2
in configuration_list:
3855 module2_fr = self.
main_dict[str(current_system)][
'Configurations'][str(module2)][
'Failure Rate'][
"Nominal"]
3858 module2_fr = self.
main_dict[str(current_system)][str(module2)][
'Failure Rate'][
"Nominal"]
3861 fr_list = [module1_fr, module2_fr]
3863 if type_value ==
"Serial":
3864 serial_fr = self.fr_calculation_class.component_serial_failure_rate_calculation(fr_list)
3867 elif type_value ==
"Parallel":
3868 parallel_fr = self.fr_calculation_class.component_parallel_failure_rate_calculation(fr_list)
3869 temp_fr = parallel_fr
3876 Calculate Depth Level of Module Configs Function 3878 selected_system = self.comboBox_configuration_st_sm_select_system.currentText()
3879 module1 = self.lineEdit_configuration_first_module.text()
3880 module2 = self.lineEdit_configuration_second_module.text()
3882 system_dict = self.
main_dict[str(selected_system)]
3885 if (module1
in configuration_list_of_modules)
and (module2
not in configuration_list_of_modules):
3886 old_level = system_dict[
"Configurations"][str(module1)][
"Depth Level"]
3887 level = old_level + 1
3889 elif (module2
in configuration_list_of_modules)
and (module1
not in configuration_list_of_modules):
3890 old_level = system_dict[
"Configurations"][str(module2)][
"Depth Level"]
3891 level = old_level + 1
3893 elif (module1
and module2)
in configuration_list_of_modules:
3894 old_level1 = system_dict[
"Configurations"][str(module1)][
"Depth Level"]
3895 old_level2 = system_dict[
"Configurations"][str(module2)][
"Depth Level"]
3896 old_level = max(old_level1, old_level2)
3897 level = old_level + 1
3907 Find Max Depth Level of Module Configs Function 3909 selected_system = self.comboBox_configuration_st_sm_select_system.currentText()
3911 if (selected_system !=
"")
and (selected_system !=
"None"):
3912 system_dict = self.
main_dict[str(selected_system)]
3913 configuration_list = list(system_dict[
"Configurations"].keys())
3917 for item
in configuration_list:
3918 level = system_dict[
"Configurations"][str(item)][
"Depth Level"]
3919 level_list.append(level)
3921 return max(level_list)
3926 Delete Module Configuration Function 3929 selected_config_item = self.listWidget_configurations_of_modules.selectedItems()
3930 configuration = self.listWidget_configurations_of_modules.currentItem().text()
3931 ind = configuration.find(
' =')
3932 configuration_name = configuration[:ind]
3935 for cnt
in range(self.listWidget_modules.count()):
3936 if self.listWidget_modules.item(cnt) !=
None:
3937 if str(self.listWidget_modules.item(cnt).text()) == str(configuration_name):
3938 self.listWidget_modules.takeItem(cnt)
3944 for item
in selected_config_item:
3945 self.listWidget_configurations_of_modules.takeItem(self.listWidget_configurations_of_modules.row(item))
3949 index_1 = self.comboBox_configuration_select_first_module.findText(configuration_name)
3950 self.comboBox_configuration_select_first_module.removeItem(index_1)
3952 index_2 = self.comboBox_configuration_select_second_module.findText(configuration_name)
3953 self.comboBox_configuration_select_second_module.removeItem(index_2)
3956 current_system = self.comboBox_configuration_st_sm_select_system.currentText()
3957 del self.
main_dict[str(current_system)][
'Configurations'][str(configuration_name)]
3961 except AttributeError:
3962 print(
"\nNot found an object to delete.\n")
3967 Add Module Into Config Function 3969 selected_module = self.listWidget_modules.currentItem().text()
3970 selected_configuration = self.listWidget_configurations_of_modules.currentItem().text()
3971 ind = selected_configuration.find(
' =')
3972 selected_configuration_name = selected_configuration[:ind]
3974 if selected_module !=
"None" and selected_configuration !=
"None":
3975 new_config = selected_configuration[:-1] +
", " + selected_module +
")" 3977 for item
in self.listWidget_configurations_of_modules.selectedItems():
3978 item.setText(new_config)
3980 current_system = self.comboBox_configuration_st_sm_select_system.currentText()
3981 component_list = list(self.
main_dict[str(current_system)][
'Configurations'][str(selected_configuration_name)][
'Components'])
3982 component_list.append(str(selected_module))
3983 self.
main_dict[str(current_system)][
'Configurations'][str(selected_configuration_name)][
'Components'] = component_list
3988 for component
in component_list:
3989 if component
in configuration_list_of_modules:
3990 fr_list.append(self.
main_dict[str(current_system)][
"Configurations"][str(component)][
"Failure Rate"][
"Nominal"])
3993 fr_list.append(self.
main_dict[current_system][str(component)][
"Failure Rate"][
"Nominal"])
3995 type_value = self.
check_type(selected_configuration)
3997 if type_value ==
'series':
3998 calculated_fr = self.fr_calculation_class.component_serial_failure_rate_calculation(fr_list)
4000 elif type_value ==
'parallel':
4001 calculated_fr = self.fr_calculation_class.component_parallel_failure_rate_calculation(fr_list)
4003 self.
main_dict[str(current_system)][
'Configurations'][str(selected_configuration_name)][
'Failure Rate'][
"Nominal"] = calculated_fr
4004 self.
main_dict[str(current_system)][
'Configurations'][str(selected_configuration_name)][
'Failure Rate'][
"Sensor Based"] = calculated_fr
4007 self.
main_dict[str(current_system)][
'Configurations'][str(selected_configuration_name)][
'Depth Level'] = level
4010 self.
main_dict[str(current_system)][
'Configurations'][
'Depth Level'] = max_level
4015 Add Module Calculate Depth Level of Configurations Function 4017 selected_system = self.comboBox_configuration_st_sm_select_system.currentText()
4018 system_dict = self.
main_dict[str(selected_system)]
4019 component_list = list(system_dict[
"Configurations"][str(selected_configuration_name)][
"Components"])
4024 for item
in component_list:
4025 if item
not in configuration_list_of_modules:
4029 level = system_dict[
"Configurations"][str(item)][
"Depth Level"]
4030 level_list.append(level)
4032 max_level = max(level_list) + 1
4039 Select Final Configuration of System Function 4042 current_system = self.comboBox_configuration_st_sm_select_system.currentText()
4043 configuration_count = self.listWidget_configurations_of_modules.count()
4045 if configuration_count > 0:
4046 selected_final_configuration = self.listWidget_configurations_of_modules.currentItem().text()
4047 ind = selected_final_configuration.find(
' =')
4048 selected_final_configuration_name = selected_final_configuration[:ind]
4049 selected_final_configuration_fr = self.
main_dict[str(current_system)][
'Configurations'][str(selected_final_configuration_name)][
'Failure Rate'][
"Nominal"]
4052 selected_final_configuration_name = self.listWidget_modules.currentItem().text()
4053 selected_final_configuration_fr = self.
main_dict[str(current_system)][str(selected_final_configuration_name)][
'Failure Rate'][
"Nominal"]
4055 self.
main_dict[str(current_system)][
"Final Configuration"] = str(selected_final_configuration_name)
4056 self.
main_dict[str(current_system)][
'Failure Rate'][
"Nominal"] = selected_final_configuration_fr
4058 self.lineEdit_configuration_failure_rate_system.setText(str(selected_final_configuration_fr))
4060 except Exception
as err:
4061 print(
"\nError: select_final_configuration_of_system\n")
4067 Select Reliability Model Function 4070 selected_model = self.comboBox_configuration_reliability_model.currentText()
4071 shape_parameter_list = [
"Weibull Distribution",
"Curve Distribution"]
4074 if selected_model
in shape_parameter_list:
4075 self.label_configuration_shape_parameter.setEnabled(
True)
4076 self.lineEdit_configuration_reliability_shape_parameter.setEnabled(
True)
4079 self.label_configuration_shape_parameter.setEnabled(
False)
4080 self.lineEdit_configuration_reliability_shape_parameter.setEnabled(
False)
4082 except Exception
as err:
4083 print(
"\nError: select_reliability_model_func\n")
4089 Select PHM Unit Function 4092 selected_unit = self.comboBox_configuration_unit.currentText()
4103 except Exception
as err:
4104 print(
"\nError: select_phm_unit_func\n")
4110 Set Shape Parameter Function 4113 shape_parameter = float(self.lineEdit_configuration_reliability_shape_parameter.text())
4116 except Exception
as err:
4117 print(
"\nError: set_shape_parameter_func\n")
4126 Add Component Element Tab Function 4128 self.comboBox_c_ao_ace_select_sub_module.clear()
4129 selected_module = self.comboBox_c_ao_ace_select_module.currentText()
4131 if selected_module !=
"":
4132 sub_module_list = list(self.
main_dict[
"System"][str(selected_module)].keys())
4134 self.comboBox_c_ao_ace_select_sub_module.addItems(sub_module_list)
4139 Add Component Element Tab Function 2 4141 self.comboBox_c_ao_ace_select_component.clear()
4142 self.comboBox_c_ao_ace_select_component_2.clear()
4143 selected_module = self.comboBox_c_ao_ace_select_module.currentText()
4144 selected_sub_module = self.comboBox_c_ao_ace_select_sub_module.currentText()
4146 if selected_sub_module !=
"":
4147 component_list = list(self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)].keys())
4150 self.comboBox_c_ao_ace_select_component.addItems(component_list)
4151 self.comboBox_c_ao_ace_select_component_2.addItems(component_list)
4156 Add New Custom Component Function 4158 selected_module = self.comboBox_c_ao_ace_select_module.currentText()
4159 selected_sub_module = self.comboBox_c_ao_ace_select_sub_module.currentText()
4160 component_name = self.lineEdit_c_ao_ace_set_component_name.text()
4161 element_name = self.lineEdit_c_ao_ace_set_element_name.text()
4162 element_variable_name = self.lineEdit_c_ao_ace_set_element_variable_name.text()
4163 element_value = self.lineEdit_c_ao_ace_set_element_value.text()
4165 component_list = list(self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)].keys())
4168 if component_name !=
"":
4169 if component_name
not in component_list:
4170 self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(component_name)] = {
"Elements": dict(),
"Formula": str(),
"Failure Rate": float(0.0),
"Final Configuration": str()}
4171 self.
add_elements(selected_module, selected_sub_module, component_name, element_name, element_variable_name, element_value)
4174 self.
add_elements(selected_module, selected_sub_module, component_name, element_name, element_variable_name, element_value)
4176 print(
"\nEnter a component name.\n")
4179 def add_elements(self, selected_module, selected_sub_module, component_name, element_name, element_variable_name, element_value):
4181 Add Elements Function 4183 if element_name !=
"" and element_variable_name !=
"" and element_value !=
"":
4184 self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(component_name)][
"Elements"][str(element_variable_name)] = {
"Name": str(element_name),
"Value": float(element_value)}
4187 self.lineEdit_c_ao_ace_set_element_name.clear()
4188 self.lineEdit_c_ao_ace_set_element_variable_name.clear()
4189 self.lineEdit_c_ao_ace_set_element_value.clear()
4191 component_list = list(self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)].keys())
4194 self.comboBox_c_ao_ace_select_component.clear()
4195 self.comboBox_c_ao_ace_select_component_2.clear()
4196 self.comboBox_c_ao_ace_select_component.addItems(component_list)
4197 self.comboBox_c_ao_ace_select_component_2.addItems(component_list)
4200 if element_name ==
"":
4201 print(
"\nEnter an element name.\n")
4203 elif element_variable_name ==
"":
4204 print(
"\n Enter a variable name for element " + str(element_name) +
".\n")
4206 elif element_value ==
"":
4207 print(
"\n Enter a value for element " + str(element_name) +
".\n")
4212 Add Elements Into List Widget Function 4214 self.listWidget_c_ao_ace_list_of_elements.clear()
4215 selected_module = self.comboBox_c_ao_ace_select_module.currentText()
4216 selected_sub_module = self.comboBox_c_ao_ace_select_sub_module.currentText()
4217 selected_component = self.comboBox_c_ao_ace_select_component.currentText()
4219 if selected_module !=
"" and selected_sub_module !=
"" and selected_component !=
"":
4220 element_variable_name_list = list(self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(selected_component)][
"Elements"].keys())
4223 for item
in element_variable_name_list:
4224 element_name = self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(selected_component)][
"Elements"][str(item)][
"Name"]
4225 element_value = self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(selected_component)][
"Elements"][str(item)][
"Value"]
4226 temp_str = str(element_name) +
" : " + str(item) +
" ---> " + str(element_value)
4228 self.listWidget_c_ao_ace_list_of_elements.addItem(temp_str)
4233 Set Formula of Component Function 4236 selected_module = str(self.comboBox_c_ao_ace_select_module.currentText())
4237 selected_sub_module = str(self.comboBox_c_ao_ace_select_sub_module.currentText())
4238 selected_component = str(self.comboBox_c_ao_ace_select_component_2.currentText())
4239 formula = self.plainTextEdit_c_ao_ac_set_formula.toPlainText()
4241 self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(selected_component)][
"Formula"] = str(formula)
4243 if formula !=
"" and formula !=
" " and formula !=
"None":
4244 component_dict = self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(selected_component)]
4248 formula_result = 0.0
4250 self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(selected_component)][
"Failure Rate"] = formula_result
4252 self.lineEdit_c_ao_ace_component_fr.clear()
4253 self.lineEdit_c_ao_ace_component_fr.setText(str(formula_result))
4255 except Exception
as err:
4257 temp_string =
"Incorrect Operation" 4258 self.lineEdit_c_ao_ace_component_fr.clear()
4259 self.lineEdit_c_ao_ace_component_fr.setText(str(temp_string))
4264 Calculate Formula Result Function 4266 formula = component_dict[
"Formula"]
4267 element_variable_list = list(component_dict[
"Elements"].keys())
4269 for item
in element_variable_list:
4270 formula = formula.replace(str(item), str(component_dict[
"Elements"][str(item)][
"Value"]))
4272 result = eval(formula)
4279 Control Component Formula Function 4281 selected_module = str(self.comboBox_c_ao_ace_select_module.currentText())
4282 selected_sub_module = str(self.comboBox_c_ao_ace_select_sub_module.currentText())
4283 selected_component = str(self.comboBox_c_ao_ace_select_component_2.currentText())
4285 if selected_component !=
"" and selected_sub_module !=
"" and selected_component !=
"":
4286 formula = str(self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(selected_component)][
"Formula"])
4287 component_failure_rate = str(self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(selected_component)][
"Failure Rate"])
4289 self.plainTextEdit_c_ao_ac_set_formula.clear()
4290 self.lineEdit_c_ao_ace_component_fr.clear()
4292 if formula !=
"" and component_failure_rate !=
"":
4293 self.plainTextEdit_c_ao_ac_set_formula.setPlainText(str(formula))
4294 self.lineEdit_c_ao_ace_component_fr.setText(str(component_failure_rate))
4299 Delete an Element Function 4301 selected_element_item = self.listWidget_c_ao_ace_list_of_elements.selectedItems()
4303 element = self.listWidget_c_ao_ace_list_of_elements.currentItem().text()
4304 ind1 = element.find(
':')
4305 ind2 = element.find(
'-')
4306 element_name = element[ind1+2:ind2-1]
4309 for item
in selected_element_item:
4310 self.listWidget_c_ao_ace_list_of_elements.takeItem(self.listWidget_c_ao_ace_list_of_elements.row(item))
4312 selected_module = self.comboBox_c_ao_ace_select_module.currentText()
4313 selected_sub_module = self.comboBox_c_ao_ace_select_sub_module.currentText()
4314 selected_component = self.comboBox_c_ao_ace_select_component.currentText()
4316 if ((selected_module
and selected_module
and selected_component) !=
"None")
and ((selected_sub_module
and selected_sub_module
and selected_component) !=
""):
4318 del self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(selected_component)][
"Elements"][str(element_name)]
4319 self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(selected_component)][
"Formula"] =
"" 4320 self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(selected_component)][
"Failure Rate"] = float(0.0)
4322 self.plainTextEdit_c_ao_ac_set_formula.clear()
4323 self.lineEdit_c_ao_ace_component_fr.clear()
4331 Add Component Tab Function 4333 self.comboBox_c_ao_ac_select_sub_module.clear()
4334 selected_module = self.comboBox_c_ao_ac_select_module.currentText()
4336 if selected_module !=
"":
4337 sub_module_list = list(self.
main_dict[
"System"][str(selected_module)].keys())
4340 self.comboBox_c_ao_ac_select_sub_module.addItems(sub_module_list)
4342 self.comboBox_c_ao_ac_select_equipment.clear()
4343 self.comboBox_c_ao_ac_select_equipment.addItems(self.
equipment_list)
4348 Add New Component Function 4350 selected_module = self.comboBox_c_ao_ac_select_module.currentText()
4351 selected_sub_module = self.comboBox_c_ao_ac_select_sub_module.currentText()
4352 component_name = self.lineEdit_c_ao_ac_set_component_name.text()
4356 if self.groupBox_c_ao_ac_component_fr.isChecked():
4358 elif self.groupBox_c_ao_ac_default_fr.isChecked():
4361 component_fr = float(0.0)
4363 if component_name !=
"":
4364 self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(component_name)] = {
"Elements": dict(),
"Formula": str(),
"Failure Rate": float(0.0),
'Final Configuration': str()}
4366 if component_fr !=
"":
4367 self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(component_name)][
"Failure Rate"] = float(component_fr)
4369 self.lineEdit_c_ao_ac_set_component_name.clear()
4372 print(
"\nEnter a failure rate value for the component " + str(component_name) +
".\n")
4374 print(
"\nEnter a component name.\n")
4376 self.groupBox_c_ao_ac_component_fr.setChecked(
False)
4377 self.groupBox_c_ao_ac_default_fr.setChecked(
False)
4382 Set Only Component Failure Rate Function 4384 self.groupBox_c_ao_ac_default_fr.setChecked(
False)
4385 component_fr = self.lineEdit_c_ao_ac_sfr_total_component_fr.text()
4387 self.lineEdit_c_ao_ac_component_fr.clear()
4388 self.spinBox_c_ao_ac_sfr_quantity.setValue(1)
4389 self.lineEdit_c_ao_ac_sfr_total_component_fr.clear()
4396 Set Component Failure Rate From Default Equipments Function 4398 self.groupBox_c_ao_ac_component_fr.setChecked(
False)
4399 component_fr = self.lineEdit_c_ao_ac_total_component_fr.text()
4401 self.lineEdit_c_ao_ac_component_fr_2.clear()
4402 self.spinBox_c_ao_ac_quantity.setValue(1)
4403 self.lineEdit_c_ao_ac_total_component_fr.clear()
4410 Calculate Component Total Failure Rate Function 4413 equipment_fr = float(self.lineEdit_c_ao_ac_component_fr_2.text())
4414 quantity = float(self.spinBox_c_ao_ac_quantity.value())
4416 if equipment_fr != 0
and str(equipment_fr) !=
"":
4417 calculate_fr = float(equipment_fr * quantity)
4418 self.lineEdit_c_ao_ac_total_component_fr.setText(str(calculate_fr))
4420 except ValueError
as err:
4421 print(
"\nError: calculate_component_total_fr_func\n")
4427 Calculate Set Failure Rate Component Total Failure Rate Func 4430 equipment_fr = float(self.lineEdit_c_ao_ac_component_fr.text())
4431 quantity = float(self.spinBox_c_ao_ac_sfr_quantity.value())
4433 if equipment_fr != 0
and str(equipment_fr) !=
"":
4434 calculate_fr = float(equipment_fr * quantity)
4435 self.lineEdit_c_ao_ac_sfr_total_component_fr.setText(str(calculate_fr))
4437 except ValueError
as err:
4438 print(
"\nError: calculate_set_fr_component_total_fr_func\n")
4444 Add Component Into List Widget Function 4446 self.listWidget_c_ao_ac_list_of_components.clear()
4447 selected_module = self.comboBox_c_ao_ac_select_module.currentText()
4448 selected_sub_module = self.comboBox_c_ao_ac_select_sub_module.currentText()
4450 if selected_module !=
"" and selected_sub_module !=
"":
4451 component_list = list(self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)].keys())
4454 for item
in component_list:
4455 component_fr = self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(item)][
"Failure Rate"]
4456 temp_str = str(str(item) + str(
" \t---> ") + str(component_fr))
4458 self.listWidget_c_ao_ac_list_of_components.addItem(temp_str)
4463 Component Set Failure Rate Groupbox Control Function 4465 self.groupBox_c_ao_ac_default_fr.setChecked(
False)
4470 Component Default Equipments Groupbox Control Function 4472 self.groupBox_c_ao_ac_component_fr.setChecked(
False)
4473 self.comboBox_c_ao_ac_select_equipment.clear()
4474 self.comboBox_c_ao_ac_select_equipment.addItems(self.
equipment_list)
4480 Control the Component Failure Rate is Changed or Not Function 4482 selected_module = self.comboBox_c_ao_ac_select_module.currentText()
4483 selected_sub_module = self.comboBox_c_ao_ac_select_sub_module.currentText()
4485 if ((selected_module
and selected_sub_module) !=
"")
and ((selected_module
and selected_sub_module) !=
"None"):
4486 component_list = list(self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)].keys())
4489 configuration_list = list(self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][
"Configurations"].keys())
4490 new_component_name = self.lineEdit_c_ao_ac_set_component_name.text()
4492 if new_component_name
in component_list:
4493 if self.lineEdit_c_ao_ac_sfr_total_component_fr.text() !=
"" and self.groupBox_c_ao_ac_component_fr.isChecked():
4494 new_component_fr = self.lineEdit_c_ao_ac_sfr_total_component_fr.text()
4496 elif self.lineEdit_c_ao_ac_component_fr_2.text() !=
"" and self.groupBox_c_ao_ac_default_fr.isChecked():
4497 new_component_fr = self.lineEdit_c_ao_ac_component_fr_2.text()
4499 for configuration
in configuration_list:
4500 component_list_in_configuration = list(self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][
"Configurations"][str(configuration)][
"Components"])
4502 if new_component_name
in component_list_in_configuration:
4503 self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(new_component_name)][
"Failure Rate"] = new_component_fr
4504 component_fr_list_in_configuration = list()
4506 for component
in component_list_in_configuration:
4507 component_fr_list_in_configuration.append(float(self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(component)][
"Failure Rate"]))
4509 type_value = self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][
"Configurations"][str(configuration)][
"Type"]
4511 if type_value ==
"Serial":
4512 serial_fr = self.fr_calculation_class.component_serial_failure_rate_calculation(component_fr_list_in_configuration)
4513 fr_value = serial_fr
4515 elif type_value ==
"Parallel":
4516 parallel_fr = self.fr_calculation_class.component_parallel_failure_rate_calculation(component_fr_list_in_configuration)
4517 fr_value = parallel_fr
4519 self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][
"Configurations"][str(configuration)][
"Failure Rate"] = float(fr_value)
4524 Component Add Equipment Function 4526 selected_equipment = str(self.comboBox_c_ao_ac_select_equipment.currentText())
4529 data_path =
"lineEdit_c_ao_ac_component_fr_2" 4531 if selected_equipment ==
"Mechanical Equipment":
4534 elif selected_equipment ==
"Electrical Equipment":
4538 self.add_equipment_component_window.show()
4543 Delete a Component Function 4545 selected_component_item = self.listWidget_c_ao_ac_list_of_components.selectedItems()
4546 component = self.listWidget_c_ao_ac_list_of_components.currentItem().text()
4547 ind = component.find(
' \t')
4548 component_name = component[:ind]
4551 for item
in selected_component_item:
4552 self.listWidget_c_ao_ac_list_of_components.takeItem(self.listWidget_c_ao_ac_list_of_components.row(item))
4554 selected_module = self.comboBox_c_ao_ac_select_module.currentText()
4555 selected_sub_module = self.comboBox_c_ao_ac_select_sub_module.currentText()
4557 if selected_module !=
"" and selected_module !=
"None" and selected_sub_module !=
"" and selected_sub_module !=
"None":
4559 del self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][str(component_name)]
4563 ind1 = self.comboBox_c_ao_ace_select_component.findText(str(component_name))
4564 self.comboBox_c_ao_ace_select_component.removeItem(ind1)
4566 ind2 = self.comboBox_c_ao_ace_select_component_2.findText(str(component_name))
4567 self.comboBox_c_ao_ace_select_component_2.removeItem(ind2)
4572 Delete Component From Configuration Function 4574 configuration_list = list(self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][
"Configurations"].keys())
4577 for item
in configuration_list:
4578 if str(deleted_component)
in list(self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][
"Configurations"][str(item)][
"Components"]):
4579 self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][
"Configurations"][str(item)][
"Components"].remove(str(deleted_component))
4580 temp_count = len(list(self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][
"Configurations"][str(item)][
"Components"]))
4583 self.
main_dict[
"System"][str(selected_module)][str(selected_sub_module)][
"Configurations"][str(item)][
"Failure Rate"] = 0.0
4594 Add New Sub Module Function 4596 selected_module = self.comboBox_c_ao_asm_select_module.currentText()
4597 sub_module_name = self.lineEdit_c_ao_asm_set_sub_module_name.text()
4600 if self.groupBox_c_ao_asm_sub_module_fr.isChecked():
4603 elif self.groupBox_c_ao_asm_default_fr.isChecked():
4607 sub_module_fr = float(0.0)
4609 if sub_module_name !=
"":
4610 self.
main_dict[
"System"][str(selected_module)][str(sub_module_name)] = {
"Failure Rate": float(0.0),
'Configurations': {
'Configuration Count': {
'Serial': 0,
'Parallel': 0}},
'Reliability': float(0.0),
'Final Configuration': str()}
4612 if str(sub_module_fr) !=
"":
4613 self.
main_dict[
"System"][str(selected_module)][str(sub_module_name)][
"Failure Rate"] = float(sub_module_fr)
4617 print(
"\nEnter a failure rate value for the sub-module " + str(sub_module_name) +
".\n")
4619 print(
"\nEnter a sub-module name.\n")
4621 self.groupBox_c_ao_asm_sub_module_fr.setChecked(
False)
4622 self.groupBox_c_ao_asm_default_fr.setChecked(
False)
4627 Set Sub Module Listwidget Function 4629 self.listWidget_c_ao_asm_list_of_sub_modules.clear()
4630 selected_module = self.comboBox_c_ao_asm_select_module.currentText()
4632 if selected_module !=
"":
4633 sub_module_list = list(self.
main_dict[
"System"][str(selected_module)].keys())
4636 for item
in sub_module_list:
4637 sub_module_fr = self.
main_dict[
"System"][str(selected_module)][str(item)][
"Failure Rate"]
4638 temp_str = str(str(item) + str(
" \t---> ") + str(sub_module_fr))
4640 self.listWidget_c_ao_asm_list_of_sub_modules.addItem(temp_str)
4645 Set Only Sub Module Failure Rate Function 4647 self.groupBox_c_ao_asm_default_fr.setChecked(
False)
4648 sub_module_fr = self.lineEdit_c_ao_asm_sfr_total_component_fr.text()
4650 self.lineEdit_c_ao_asm_sub_module_fr.clear()
4651 self.spinBox_c_ao_asm_sfr_quantity.setValue(1)
4652 self.lineEdit_c_ao_asm_sfr_total_component_fr.clear()
4654 return sub_module_fr
4659 Set Sub Module Failure Rate From Default Equipments Function 4661 self.groupBox_c_ao_asm_sub_module_fr.setChecked(
False)
4662 sub_module_fr = self.lineEdit_c_ao_asm_total_component_fr.text()
4664 self.lineEdit_c_ao_asm_component_fr.clear()
4665 self.spinBox_c_ao_asm_quantity.setValue(1)
4666 self.lineEdit_c_ao_asm_total_component_fr.clear()
4668 return sub_module_fr
4673 Calculate Sub Module Total Failure Rate Function 4676 equipment_fr = float(self.lineEdit_c_ao_asm_component_fr.text())
4677 quantity = float(self.spinBox_c_ao_asm_quantity.value())
4678 equipment_type = str(self.comboBox_c_ao_asm_select_type.currentText())
4680 if equipment_fr != 0
and str(equipment_fr) !=
"":
4681 if equipment_type ==
"Serial":
4682 calculate_fr = float(equipment_fr * quantity)
4685 parallel_count = float(self.fr_calculation_class.parallel_count_calculate_func(quantity))
4686 calculate_fr = float(equipment_fr * parallel_count)
4688 self.lineEdit_c_ao_asm_total_component_fr.setText(str(calculate_fr))
4690 except ValueError
as err:
4691 print(
"\nError: calculate_sub_module_total_fr_func\n")
4697 Calculate Set Failure Rate Sub Module Total Failure Rate Function 4700 equipment_fr = float(self.lineEdit_c_ao_asm_sub_module_fr.text())
4701 quantity = float(self.spinBox_c_ao_asm_sfr_quantity.value())
4702 equipment_type = str(self.comboBox_c_ao_asm_sfr_select_type.currentText())
4704 if equipment_fr != 0
and str(equipment_fr) !=
"":
4705 if equipment_type ==
"Serial":
4706 calculate_fr = float(equipment_fr * quantity)
4709 parallel_count = float(self.fr_calculation_class.parallel_count_calculate_func(quantity))
4710 calculate_fr = float(equipment_fr * parallel_count)
4712 self.lineEdit_c_ao_asm_sfr_total_component_fr.setText(str(calculate_fr))
4714 except ValueError
as err:
4715 print(
"\nError: calculate_set_fr_sub_module_total_fr_func\n")
4721 Add Sub Module Into Listwidget Function 4724 self.lineEdit_c_ao_asm_set_sub_module_name.clear()
4729 Sub Module Set Failure Rate Groupbox Control Function 4731 self.groupBox_c_ao_asm_default_fr.setChecked(
False)
4736 Sub Module Default Equipments Groupbox Control Function 4738 self.groupBox_c_ao_asm_sub_module_fr.setChecked(
False)
4739 self.comboBox_c_ao_asm_select_equipment.clear()
4740 self.comboBox_c_ao_asm_select_equipment.addItems(self.
equipment_list)
4746 Control the Sub Module Failure Rate is Changed or Not Function 4748 selected_module = self.comboBox_configuration_st_ssm_select_module.currentText()
4750 if (selected_module !=
"")
and (selected_module !=
"None"):
4751 sub_module_list = list(self.
main_dict[
"System"][str(selected_module)].keys())
4754 configuration_list = list(self.
main_dict[
"System"][str(selected_module)][
"Configurations"].keys())
4755 new_sub_module_name = self.lineEdit_c_ao_asm_set_sub_module_name.text()
4757 if new_sub_module_name
in sub_module_list:
4758 if self.lineEdit_c_ao_asm_sfr_total_component_fr.text() !=
"" and self.groupBox_c_ao_asm_sub_module_fr.isChecked():
4759 new_sub_module_fr = self.lineEdit_c_ao_asm_sfr_total_component_fr.text()
4761 elif self.lineEdit_c_ao_asm_component_fr.text() !=
"" and self.groupBox_c_ao_asm_default_fr.isChecked():
4762 new_sub_module_fr = self.lineEdit_c_ao_asm_component_fr.text()
4764 for configuration
in configuration_list:
4765 sub_module_list_in_configuration = list(self.
main_dict[
"System"][str(selected_module)][
"Configurations"][str(configuration)][
"Components"])
4767 if new_sub_module_name
in sub_module_list_in_configuration:
4768 self.
main_dict[
"System"][str(selected_module)][str(new_sub_module_name)][
"Failure Rate"] = new_sub_module_fr
4769 sub_module_fr_list_in_configuration = list()
4771 for sub_module
in sub_module_list_in_configuration:
4772 sub_module_fr_list_in_configuration.append(float(self.
main_dict[
"System"][str(selected_module)][str(sub_module)][
"Failure Rate"]))
4774 type_value = self.
main_dict[
"System"][str(selected_module)][
"Configurations"][str(configuration)][
"Type"]
4776 if type_value ==
"Serial":
4777 serial_fr = self.fr_calculation_class.component_serial_failure_rate_calculation(sub_module_fr_list_in_configuration)
4778 fr_value = serial_fr
4780 elif type_value ==
"Parallel":
4781 parallel_fr = self.fr_calculation_class.component_parallel_failure_rate_calculation(sub_module_fr_list_in_configuration)
4782 fr_value = parallel_fr
4784 self.
main_dict[
"System"][str(selected_module)][
"Configurations"][str(configuration)][
"Failure Rate"] = float(fr_value)
4789 Sub Module Add Equipment Function 4791 selected_equipment = str(self.comboBox_c_ao_asm_select_equipment.currentText())
4794 data_path =
"lineEdit_c_ao_asm_component_fr" 4796 if selected_equipment ==
"Mechanical Equipment":
4799 elif selected_equipment ==
"Electrical Equipment":
4803 self.add_equipment_sub_module_window.show()
4808 Delete a Sub Module Function 4810 selected_sub_module_item = self.listWidget_c_ao_asm_list_of_sub_modules.selectedItems()
4811 sub_module = self.listWidget_c_ao_asm_list_of_sub_modules.currentItem().text()
4812 ind = sub_module.find(
' \t')
4813 sub_module_name = sub_module[:ind]
4816 for item
in selected_sub_module_item:
4817 self.listWidget_c_ao_asm_list_of_sub_modules.takeItem(self.listWidget_c_ao_asm_list_of_sub_modules.row(item))
4819 selected_module = self.comboBox_c_ao_asm_select_module.currentText()
4821 if selected_module !=
"" and selected_module !=
"None":
4823 del self.
main_dict[
"System"][str(selected_module)][str(sub_module_name)]
4827 ind1 = self.comboBox_c_ao_ac_select_sub_module.findText(str(sub_module_name))
4828 self.comboBox_c_ao_ac_select_sub_module.removeItem(ind1)
4830 ind2 = self.comboBox_c_ao_ace_select_sub_module.findText(str(sub_module_name))
4831 self.comboBox_c_ao_ace_select_sub_module.removeItem(ind2)
4836 Delete Sub Module From Configuration Function 4838 configuration_list = list(self.
main_dict[
"System"][str(selected_module)][
"Configurations"].keys())
4841 for item
in configuration_list:
4842 if str(deleted_sub_module)
in list(self.
main_dict[
"System"][str(selected_module)][
"Configurations"][str(item)][
"Components"]):
4843 self.
main_dict[
"System"][str(selected_module)][
"Configurations"][str(item)][
"Components"].remove(str(deleted_sub_module))
4844 temp_count = len(list(self.
main_dict[
"System"][str(selected_module)][
"Configurations"][str(item)][
"Components"]))
4847 self.
main_dict[
"System"][str(selected_module)][
"Configurations"][str(item)][
"Failure Rate"] = 0.0
4858 Add New Module Function 4860 module_name = self.lineEdit_c_ao_am_module_name.text()
4864 if self.groupBox_c_ao_am_module_fr.isChecked():
4868 module_fr = float(0.0)
4870 if module_name !=
"":
4871 self.
main_dict[
"System"][str(module_name)] = {
"Failure Rate": {
"Nominal": float(0.0)},
'Configurations': {
'Configuration Count': {
'Serial': 0,
'Parallel': 0}},
'Reliability': {
"Nominal": float(0.0)},
'Final Configuration': str()}
4874 self.
main_dict[
"System"][str(module_name)][
"Failure Rate"][
"Nominal"] = float(module_fr)
4881 print(
"\nEnter a failure rate value for the module " + str(module_name) +
".\n")
4883 print(
"\nEnter a module name.\n")
4885 self.groupBox_c_ao_am_module_fr.setChecked(
False)
4890 Set Module Listwidget Function 4892 module_list = list(self.
main_dict[
"System"].keys())
4895 self.listWidget_c_ao_am_list_of_modules.clear()
4897 for item
in module_list:
4898 module_fr = self.
main_dict[
"System"][str(item)][
"Failure Rate"][
"Nominal"]
4899 self.listWidget_c_ao_am_list_of_modules.addItem(str(item) + str(
" \t---> ") + str(module_fr))
4904 Add Module Into Add Module Listwidget Function 4906 module_list = list(self.
main_dict[
"System"].keys())
4908 self.listWidget_c_ao_am_list_of_modules.clear()
4910 for item
in module_list:
4911 module_fr = self.
main_dict[
"System"][str(item)][
"Failure Rate"][
"Nominal"]
4912 self.listWidget_c_ao_am_list_of_modules.addItem(str(item) + str(
" \t---> ") + str(module_fr))
4917 Add Module Into Combobox Function 4919 module_list = list(self.
main_dict[
"System"].keys())
4922 self.comboBox_c_ao_asm_select_module.clear()
4923 self.comboBox_c_ao_asm_select_module.addItems(module_list)
4925 self.comboBox_c_ao_ac_select_module.clear()
4926 self.comboBox_c_ao_ac_select_module.addItems(module_list)
4928 self.comboBox_c_ao_ace_select_module.clear()
4929 self.comboBox_c_ao_ace_select_module.addItems(module_list)
4936 Set Only Module Failure Rate Function 4938 module_fr = self.lineEdit_c_ao_am_total_module_fr.text()
4940 self.lineEdit_c_ao_am_module_fr.clear()
4941 self.spinBox_c_ao_am_quantity.setValue(1)
4942 self.lineEdit_c_ao_am_total_module_fr.clear()
4949 Calculate Set Failure Rate Module Total Failure Rate Function 4952 equipment_fr = float(self.lineEdit_c_ao_am_module_fr.text())
4953 quantity = float(self.spinBox_c_ao_am_quantity.value())
4954 equipment_type = str(self.comboBox_c_ao_am_select_type.currentText())
4956 if equipment_fr != 0
and str(equipment_fr) !=
"":
4957 if equipment_type ==
"Serial":
4958 calculate_fr = float(equipment_fr * quantity)
4961 parallel_count = float(self.fr_calculation_class.parallel_count_calculate_func(quantity))
4962 calculate_fr = float(equipment_fr * parallel_count)
4964 self.lineEdit_c_ao_am_total_module_fr.setText(str(calculate_fr))
4966 except ValueError
as err:
4967 print(
"\nError: calculate_set_fr_module_total_fr_func\n")
4973 Control the Module Failure Rate is Changed or Not Function 4975 module_list = list(self.
main_dict[
"System"].keys())
4978 configuration_list = list(self.
main_dict[
"System"][
"Configurations"].keys())
4979 new_module_name = self.lineEdit_c_ao_am_module_name.text()
4981 if new_module_name
in module_list:
4982 new_module_fr = self.lineEdit_c_ao_am_module_fr.text()
4984 for configuration
in configuration_list:
4985 module_list_in_configuration = list(self.
main_dict[
"System"][
"Configurations"][str(configuration)][
"Components"])
4987 if new_module_name
in module_list_in_configuration:
4988 self.
main_dict[
"System"][str(new_module_name)][
"Failure Rate"][
"Nominal"] = new_module_fr
4989 module_fr_list_in_configuration = list()
4991 for module
in module_list_in_configuration:
4992 module_fr_list_in_configuration.append(float(self.
main_dict[
"System"][str(module)][
"Failure Rate"][
"Nominal"]))
4994 type_value = self.
main_dict[
"System"][
"Configurations"][str(configuration)][
"Type"]
4996 if type_value ==
"Serial":
4997 serial_fr = self.fr_calculation_class.component_serial_failure_rate_calculation(module_fr_list_in_configuration)
4998 fr_value = serial_fr
5000 elif type_value ==
"Parallel":
5001 parallel_fr = self.fr_calculation_class.component_parallel_failure_rate_calculation(module_fr_list_in_configuration)
5002 fr_value = parallel_fr
5004 self.
main_dict[
"System"][
"Configurations"][str(configuration)][
"Failure Rate"] = float(fr_value)
5009 Delete a Module Function 5011 selected_module_item = self.listWidget_c_ao_am_list_of_modules.selectedItems()
5013 module = self.listWidget_c_ao_am_list_of_modules.currentItem().text()
5014 ind = module.find(
' \t')
5015 module_name = module[:ind]
5018 for item
in selected_module_item:
5019 self.listWidget_c_ao_am_list_of_modules.takeItem(self.listWidget_c_ao_am_list_of_modules.row(item))
5022 del self.
main_dict[
"System"][str(module_name)]
5028 ind1 = self.comboBox_c_ao_asm_select_module.findText(str(module_name))
5029 self.comboBox_c_ao_asm_select_module.removeItem(ind1)
5031 ind2 = self.comboBox_c_ao_ac_select_module.findText(str(module_name))
5032 self.comboBox_c_ao_ac_select_module.removeItem(ind2)
5034 ind3 = self.comboBox_c_ao_ace_select_module.findText(str(module_name))
5035 self.comboBox_c_ao_ace_select_module.removeItem(ind3)
5040 Delete Module From Configuration Function 5042 configuration_list = list(self.
main_dict[
"System"][
"Configurations"].keys())
5045 for item
in configuration_list:
5046 if str(deleted_module)
in list(self.
main_dict[
"System"][
"Configurations"][str(item)][
"Components"]):
5047 self.
main_dict[
"System"][
"Configurations"][str(item)][
"Components"].remove(str(deleted_module))
5048 temp_count = len(list(self.
main_dict[
"System"][
"Configurations"][str(item)][
"Components"]))
5051 self.
main_dict[
"System"][
"Configurations"][str(item)][
"Failure Rate"] = 0.0
5062 Monitoring Events Function 5076 Monitoring Show Sensor List Function 5078 selected_item = str(self.comboBox_m_select_place_failure_rate.currentText())
5081 if (selected_item
in list(self.temperature_sensor_dict.keys()))
and selected_item !=
"" and selected_item !=
"None":
5083 distance_list = list()
5085 if temperature_sensor_list
and sensor_list:
5086 for sensor
in sensor_list:
5087 if sensor
not in temperature_sensor_list:
5088 distance_list.append(sensor)
5091 distance_list = sensor_list
5095 elif selected_item
not in list(self.temperature_sensor_dict.keys()):
5101 Combobox Hazard Rate Selection Sensor Function 5103 self.comboBox_m_hazard_rate_select_sensor.clear()
5104 self.comboBox_m_hazard_rate_select_sensor.addItem(
"None")
5105 self.comboBox_m_hazard_rate_select_sensor.addItems(sensor_list)
5106 self.lineEdit_m_hazard_rate_select_sensor_value.clear()
5111 Combobox Hazard Rate Select Sensor Function 5113 select_topic = self.comboBox_m_hazard_rate_select_sensor.currentText()
5115 if select_topic !=
"None" and select_topic !=
"":
5117 self.thread_hazard_rate_sensor_based.stop_thread()
5123 elif select_topic ==
"None":
5125 self.thread_hazard_rate_sensor_based.stop_thread()
5128 self.lineEdit_m_hazard_rate_select_sensor_value.clear()
5133 Monitoring Hazard Rate Select Place Function 5135 selected_item = str(self.comboBox_m_select_place_failure_rate.currentText())
5137 if (selected_item
in list(self.temperature_sensor_dict.keys()))
and selected_item !=
"" and selected_item !=
"None":
5140 elif selected_item
not in list(self.temperature_sensor_dict.keys()):
5141 self.listWidget_monitoring_hazard_rate_sensor_list.clear()
5147 Monitoring Hazard Rate Add Sensor Function 5149 selected_sensor = str(self.comboBox_m_hazard_rate_select_sensor.currentText())
5150 selected_item = str(self.comboBox_m_select_place_failure_rate.currentText())
5152 if selected_item !=
"" and selected_item !=
"None" and selected_sensor !=
"None" and selected_sensor !=
"":
5153 if selected_item
not in list(self.temperature_sensor_dict.keys()):
5162 Monitoring Hazard Rate Set Listwidget Sensor List Function 5166 self.listWidget_monitoring_hazard_rate_sensor_list.clear()
5167 self.listWidget_monitoring_hazard_rate_sensor_list.addItems(sensor_list)
5173 Get All Topics Function 5176 current_topics = rospy.get_published_topics()
5178 for topic_name, topic_type
in current_topics:
5179 if topic_name !=
"/rosout" and topic_name !=
"/rosout_agg":
5180 topic_list.append(topic_name)
5192 Monitoring General Tab Function 5201 Monitoring Regeneration Module Function 5203 module_list = list(self.
main_dict[
"System"].keys())
5205 self.comboBox_m_reliability_module.clear()
5206 self.comboBox_m_reliability_module.addItem(
"None")
5207 self.comboBox_m_reliability_module.addItems(module_list)
5208 self.comboBox_m_select_place_failure_rate.clear()
5209 self.comboBox_m_select_place_failure_rate.addItems(module_list)
5214 Monitoring Regeneration System Failure Type Function 5217 self.comboBox_m_sys_select_failure_rate_type.clear()
5218 self.comboBox_m_sys_select_failure_rate_type.addItems(failure_rate_type_list)
5219 self.comboBox_m_sys_select_reliability_type.clear()
5220 self.comboBox_m_sys_select_reliability_type.addItems(failure_rate_type_list)
5225 Monitoring Regeneration POTC Function 5227 task_list = list(self.prognostic_potc_dict.keys())
5231 self.comboBox_m_prognostic_potc_select_task.clear()
5232 self.comboBox_m_prognostic_potc_select_task.addItems(task_list)
5235 self.comboBox_m_prognostic_potc_select_task.clear()
5236 self.comboBox_m_prognostic_potc_select_task.addItem(
"None")
5241 Monitoring Module Reliability Function 5243 select_module = self.comboBox_m_reliability_module.currentText()
5245 if select_module !=
"" and select_module !=
"None":
5246 module_fr = self.
main_dict[
"System"][str(select_module)][
'Failure Rate'][
"Nominal"]
5249 self.comboBox_m_sys_select_module_reliability_type.clear()
5250 self.comboBox_m_sys_select_module_reliability_type.addItem(
"Nominal")
5252 type_list = list(self.
main_dict[
"System"][str(select_module)][
'Failure Rate'].keys())
5253 type_list.remove(
"Nominal")
5256 self.comboBox_m_sys_select_module_reliability_type.addItems(type_list)
5260 self.comboBox_m_sys_select_module_reliability_type.clear()
5262 self.lineEdit_m_module_reliability.setText(str(reliability))
5269 Monitoring System POTC Function 5271 system_fr = self.
main_dict[
"System"][
"Failure Rate"][
"Nominal"]
5274 if system_fr != 0.0
and self.potc_ros.robot_task_list_control:
5275 system_reliability = self.
main_dict[
"System"][
"Reliability"][
"Nominal"]
5276 system_sb_fr = self.
main_dict[
"System"][
"Failure Rate"][
"Sensor Based"]
5277 system_sb_reliability = self.
main_dict[
"System"][
"Reliability"][
"Sensor Based"]
5282 potc_position_list, potc_time_list = predict_potc_class.split_robot_task_list_func(self.potc_ros.robot_task_list)
5289 predict_potc = predict_potc_class.prognostic_calculate_last_potc_func(potc_time_list, potc_position_list)
5290 predict_sb_potc = predict_sb_potc_class.prognostic_calculate_last_potc_func(potc_time_list, potc_position_list)
5292 self.
potc_main_dict[
"Predict"][
"Nominal"][
"POTC"].append(float(predict_potc))
5293 predict_list_count = len(self.
potc_main_dict[
"Predict"][
"Nominal"][
"POTC"]) - 1
5294 self.
potc_main_dict[
"Predict"][
"Nominal"][
"Time"].append(int(predict_list_count))
5296 self.
potc_main_dict[
"Predict"][
"Sensor Based"][
"POTC"].append(float(predict_sb_potc))
5297 predict_sb_list_count = len(self.
potc_main_dict[
"Predict"][
"Sensor Based"][
"POTC"]) - 1
5298 self.
potc_main_dict[
"Predict"][
"Sensor Based"][
"Time"].append(int(predict_sb_list_count))
5300 publish_data = dict()
5301 publish_data[
"Nominal"] = {
"POTC": predict_potc,
"Time": predict_potc_class.simulation_time,
"Distance": predict_potc_class.simulation_distance}
5302 publish_data[
"Sensor Based"] = {
"POTC": predict_sb_potc,
"Time": predict_sb_potc_class.simulation_time,
"Distance": predict_sb_potc_class.simulation_distance}
5306 self.lineEdit_m_sys_potc_predict_reliability.setText(str(predict_potc))
5308 self.lineEdit_m_sys_potc_predict_sb_reliability.setText(str(predict_sb_potc))
5311 self.lineEdit_m_potc_predict_time.setText(str(predict_potc_class.simulation_time))
5313 self.lineEdit_m_potc_predict_distance.setText(str(predict_potc_class.simulation_distance))
5314 self.potc_ros.robot_task_list_control =
False 5317 if system_fr != 0.0
and self.potc_ros.task_time_control
and self.potc_ros.task_position_control:
5321 potc_task_time = self.potc_ros.task_time
5322 potc_task_position = self.potc_ros.task_position
5326 system_reliability = self.
main_dict[
"System"][
"Reliability"][
"Nominal"]
5328 system_sb_fr = self.
main_dict[
"System"][
"Failure Rate"][
"Sensor Based"]
5329 system_sb_reliability = self.
main_dict[
"System"][
"Reliability"][
"Sensor Based"]
5331 actual_potc = potc_class.probability_of_task_completion_calculate_func(potc_task_time, potc_task_position, system_fr, system_reliability)
5332 actual_sb_potc = potc_sb_class.probability_of_task_completion_calculate_func(potc_task_time, potc_task_position, system_sb_fr, system_sb_reliability)
5334 self.
potc_main_dict[
"Actual"][
"Nominal"][
"POTC"].append(float(actual_potc))
5335 actual_list_count = len(self.
potc_main_dict[
"Actual"][
"Nominal"][
"POTC"]) - 1
5336 self.
potc_main_dict[
"Actual"][
"Nominal"][
"Time"].append(int(actual_list_count))
5338 self.
potc_main_dict[
"Actual"][
"Sensor Based"][
"POTC"].append(float(actual_sb_potc))
5339 actual_sb_list_count = len(self.
potc_main_dict[
"Actual"][
"Sensor Based"][
"POTC"]) - 1
5340 self.
potc_main_dict[
"Actual"][
"Sensor Based"][
"Time"].append(int(actual_sb_list_count))
5342 publish_data = dict()
5343 publish_data[
"Nominal"] = {
"POTC": potc_class.last_potc,
"Time": potc_class.current_potc_time,
"Distance": potc_class.current_potc_distance}
5344 publish_data[
"Sensor Based"] = {
"POTC": potc_sb_class.last_potc,
"Time": potc_sb_class.current_potc_time,
"Distance": potc_sb_class.current_potc_distance}
5349 self.lineEdit_m_sys_potc_reliability.setText(str(potc_class.last_potc))
5351 self.lineEdit_m_sys_potc_sb_reliability.setText(str(potc_sb_class.last_potc))
5354 self.lineEdit_m_potc_actual_time.setText(str(potc_class.current_potc_time))
5356 self.lineEdit_m_potc_actual_distance.setText(str(potc_class.current_potc_distance))
5358 self.potc_ros.task_time_control =
False 5359 self.potc_ros.task_position_control =
False 5364 POTC Task Time Unit Function 5366 new_time_list = list()
5372 for time_value
in time_list:
5373 new_time = float(time_value / unit)
5374 new_time_list.append(new_time)
5376 return new_time_list
5381 POTC Task Position Unit Function 5383 new_position_list = list()
5389 for position
in position_list:
5390 new_position = [float(position[0] / unit), float(position[1] / unit)]
5391 new_position_list.append(new_position)
5393 return new_position_list
5398 POTC List Split Function 5400 potc_x_list = list()
5401 potc_y_list = list()
5403 potc_list_count = len(potc_list)
5405 for item
in range(potc_list_count):
5406 potc_x_list.append(potc_list[item][0])
5407 potc_y_list.append(potc_list[item][1])
5409 return potc_x_list, potc_y_list
5414 Plot Prognostic POTC Function 5419 title = str(title_name)
5423 self.new_graph_window_prognostic_potc.show()
5428 Monitoring Add Prognostic POTC Function 5430 prognostic_potc_keys_count = len(list(self.prognostic_potc_dict.keys()))
5431 node_count = len(position_list)
5432 task_name = str(
"task_" + str(prognostic_potc_keys_count + 1) +
"_node_count_" + str(node_count))
5440 Monitoring Prognostic POTC Function 5443 system_fr = self.
main_dict[
"System"][
"Failure Rate"][
"Nominal"]
5444 selected_task = str(self.comboBox_m_prognostic_potc_select_task.currentText())
5445 simulation_count = int(self.lineEdit_m_prognostic_potc_simulation_count.text())
5447 if system_fr != 0.0
and selected_task !=
"" and selected_task !=
"None" and simulation_count > 0
and str(simulation_count) !=
"":
5448 system_reliability = self.
main_dict[
"System"][
"Reliability"][
"Nominal"]
5452 title = str(simulation_count) +
" Count Simulation" 5454 potc_list = prognostic_potc_class.prognostic_calculate_potc_func(simulation_count, potc_time_list, potc_position_list)
5457 self.lineEdit_m_prognostic_potc.setText(str(prognostic_potc_class.simulation_potc))
5458 self.lineEdit_m_prognostic_potc_simulation_time.setText(str(prognostic_potc_class.simulation_time))
5461 elif str(simulation_count) ==
"":
5462 self.lineEdit_m_prognostic_potc.setText(str(
"Simulation Count Giriniz"))
5463 self.lineEdit_m_prognostic_potc_simulation_time.setText(str(
"Simulation Count Giriniz"))
5465 elif selected_task ==
"" or selected_task ==
"None":
5466 self.lineEdit_m_prognostic_potc.setText(str(
"Lutfen Task Bekleyiniz"))
5467 self.lineEdit_m_prognostic_potc_simulation_time.setText(str(
"Lutfen Task Bekleyiniz"))
5470 self.lineEdit_m_prognostic_potc.setText(str(
"Failure Rate Hesaplayiniz"))
5471 self.lineEdit_m_prognostic_potc_simulation_time.setText(str(
"Failure Rate Hesaplayiniz"))
5473 except Exception
as err:
5474 print(
"\nError: monitoring_prognostic_robot_task_completion_func\n")
5483 Fill The File With Data Function 5486 file_name = str(str(current_workspace) + str(file_dir) + str(temp_file_name) +
'.yaml')
5488 with open(file_name,
'w')
as outfile:
5489 yaml.dump(temp_data, outfile, default_flow_style=
False)
5494 Read Data From File Function 5496 load_file = file(str(selected_file),
'r') 5497 temp_dict = yaml.load(load_file) 5504 Get Current Workspace Function 5506 file_full_path = os.path.dirname(os.path.realpath(__file__))
5507 directory_name = sys.argv[0].split(
'/')[-2]
5508 workspace_name = file_full_path.split(str(directory_name))[0]
5510 return workspace_name
5515 Get Failure Rate Type Function 5517 failure_rate_type_list = list([
"Nominal"])
5518 type_list = list(self.
main_dict[
"System"][
"Failure Rate"].keys())
5519 type_list.remove(
"Nominal")
5520 failure_rate_type_list.extend(type_list)
5522 return failure_rate_type_list
5528 Start Hazard Rate Sensor Based Thread Function 5532 self.thread_hazard_rate_sensor_based.change_value.connect(self.lineEdit_m_hazard_rate_select_sensor_value.setText)
5533 self.thread_hazard_rate_sensor_based.start()
5539 Hazard Rate Sensor Based Thread Class 5541 change_value = pyqtSignal(str)
5542 error = pyqtSignal()
5544 QThread.__init__(self)
5551 Main Thread Function 5554 while not self.stop_event.isSet():
5555 time.sleep(self.
rate)
5556 read_data = str(eval(
"self.ros.data"))
5557 if read_data !=
"None":
5558 self.change_value.emit(read_data)
5560 except Exception
as err:
5566 Stop Thread Function 5568 self.stop_event.set()
5572 if __name__ ==
'__main__':
5574 rospy.init_node(
'start_gui')
5576 app = QtWidgets.QApplication(sys.argv)
5577 MAIN_WINDOW = QtWidgets.QMainWindow()
5579 PHM_UI.setupUi(MAIN_WINDOW)
5580 MAIN_WINDOW.setWindowTitle(
'PHM GUI')
5582 sys.exit(app.exec_())
5584 except Exception
as err:
def publisher_gui_hazard_rate_func(self)
configuration_reliability_model
def retranslateUi(self, MainWindow)
def calculate_selected_module_fr_func(self, selected_system, object_keys, select_module_list, object_type, fr_type)
def monitoring_add_prognostic_potc_func(self, position_list, time_list)
lineEdit_configuration_failure_rate_first_component
def first_sub_module_list_tab_func(self)
lineEdit_m_prognostic_potc_simulation_time
listWidget_configurations_of_components
def add_component_into_config(self)
def publisher_gui_actual_potc_func(self, publish_data)
def remove_depth_level_key(cls, temp_list)
lineEdit_c_ao_ace_set_element_name
def delete_component_configuration(self)
def main_dict_selected_system_calculation_func(self)
lineEdit_c_ao_ace_set_component_name
def remove_key(self, temp_list)
lineEdit_m_prognostic_potc_simulation_count
groupBox_sys_select_module_reliability_type
def plot_prognostic_potc_func(self, MainWindow, x_list, y_list, title_name)
label_configuration_failure_rate_8
def second_component_list_tab_func(self)
def calculate_sub_module_total_fr_func(self)
groupBox_c_ao_asm_select_module
lineEdit_configuration_reliability_shape_parameter
lineEdit_configuration_failure_rate_first_sub_module
label_configuration_shape_parameter
def remove_configurations_key(cls, temp_list)
pushButton_m_hazard_rate_add_sensor
thread_hazard_rate_sensor_based_control
label_configuration_failure_rate_9
def monitoring_general_tab_func(self)
def monitoring_hazard_rate_add_sensor_func(self)
def system_list_tab_func(self)
def add_new_component(self)
lineEdit_c_ao_asm_component_fr
def load_system_from_file(self)
def calculate_formula_result(cls, component_dict)
monitoring_hazard_rate_sensor
add_equipment_component_window
comboBox_m_hazard_rate_select_sensor
def select_final_configuration_of_module(self)
listWidget_c_ao_am_list_of_modules
groupBox_select_reliability_module
listWidget_c_ao_ac_list_of_components
def combobox_configuration_type(self)
def sub_module_list_control_of_set_component_types_tab(self)
pushButton_select_final_configuration_of_module
comboBox_configuration_st_sc_select_module
def delete_sub_module_configuration(self)
def click_start_analysis_func(self)
def potc_task_position_unit_func(cls, position_list, unit_type)
def read_data_from_file(cls, selected_file)
def create_syntax_of_components(self)
lineEdit_m_sys_potc_sb_reliability
groupBox_m_prognostic_potc_select_task
pushButton_m_hazard_rate_refresh_sensor
lineEdit_m_hazard_rate_select_sensor_value
def start_hazard_rate_sensor_based_thread_func(self, ros, rate)
add_equipment_sub_module_window
def main_dict_module_calculate_func(self, selected_system)
def find_max_depth_level_of_component_configs(self)
def system_fr_control(self)
def start_phm_save_and_load_buttons_control_func(self)
lineEdit_c_ao_asm_set_sub_module_name
label_configuration_select_second_sub_module
def set_module_listwidget_func(self)
listWidget_c_ao_ace_list_of_elements
def module_list_control_of_set_component_types_tab(self)
def module_fr_control(self)
def calculate_depth_level_of_component_configs(self)
def set_formula_of_component(self)
def configuration_setup_set_result_func(self)
def calculate_depth_level_of_sub_module_configs(self)
label_configuration_failure_rate_5
comboBox_m_select_place_failure_rate
def configuration_set_type_events_func(self)
def add_component_tab_func(self)
def add_new_custom_component(self)
def main_dict_sub_module_calculate_func(self, selected_system, selected_module)
def check_type(cls, configuration_all)
pushButton_add_module_config
groupBox_c_ao_am_list_of_modules
def combobox_hazard_rate_selection_sensor_func(self, sensor_list)
def delete_component_from_configuration_func(self, selected_module, selected_sub_module, deleted_component)
def monitoring_show_sensor_list_func(self)
comboBox_c_ao_ace_select_component_2
label_configuration_select_second_comp
groupBox_m_potc_actual_distance
def sub_module_list_widget_func(self)
def configuration_setup_sub_module_set_result_func(self)
def set_shape_parameter_func(self)
groupBox_c_ao_asm_list_of_sub_modules
def first_component_list_control_of_set_component_types_tab(self)
thread_component_sensor_control
def configuration_setup_system_set_result_func(self)
comboBox_m_sys_select_reliability_type
def calculate_set_fr_component_total_fr_func(self)
comboBox_configuration_select_second_comp
def control_the_component_fr_is_changed_or_not(self)
lineEdit_m_potc_actual_distance
groupBox_m_prognostic_potc_simulation_count
def convert_configurations_of_components_into_syntax(self)
def add_new_sub_module(self)
def delete_a_sub_module(self)
def control_the_sub_module_fr_is_changed_or_not(self)
def potc_list_split_func(self, potc_list)
def convert_configurations_of_sub_modules_into_syntax(self)
def remove_key_final_config(cls, temp_list)
def monitoring_regeneration_potc_task_func(self)
label_configuration_select_first_comp
reliability_plot_scale_list
lineEdit_c_ao_am_total_module_fr
groupBox_sys_potc_predict_sb_reliability
groupBox_c_ao_ac_set_component_name
groupBox_sys_failure_rate
spinBox_c_ao_ac_sfr_quantity
def monitoring_system_robot_task_completion_func(self)
def thread_calculation_system_main_dict_func(self)
label_configuration_select_first_module
def select_final_configuration_of_system(self)
groupBox_c_ao_ac_list_of_components
def component_set_fr_groupbox_control(self)
def sub_module_default_equipments_groupbox_control(self)
comboBox_configuration_st_sc_select_system
electrical_equipments_dict
def sub_module_list_tab_func(self)
def module_list_widget_func(self)
comboBox_c_ao_ace_select_sub_module
def get_all_topics_func(cls)
comboBox_c_ao_ac_select_module
def add_module_calculate_depth_level_of_configurations(self, selected_configuration_name)
def configuration_add_object_2_tab_events_func(self)
def filter_reliability_func(self, main_dict)
groupBox_m_potc_actual_time
widget_monitoring_reliability
def add_component_calculate_depth_level_of_configurations(self, selected_configuration_name)
lineEdit_m_prognostic_potc
groupBox_m_potc_predict_distance
def monitoring_regeneration_module_func(self)
pushButton_c_ao_ac_set_equipment
def sub_module_fr_control(self)
comboBox_configuration_select_first_module
def calculate_selected_component_fr_func(self, selected_system, selected_module, selected_sub_module, object_keys, select_component_list, object_type)
groupBox_c_ao_ace_set_element_name
comboBox_c_ao_ac_select_equipment
comboBox_configuration_st_sc_select_sub_module
lineEdit_configuration_second_sub_module
def calculate_serial_parallel_fr_value_of_sub_modules(self)
def monitoring_hazard_rate_set_list_widget_sensor_list_func(self, selected_item)
label_configuration_failure_rate_10
pushButton_monitoring_deleted_sensor
thread_calculation_system_main_dict
def module_list_control_of_set_module_types_tab(self)
comboBox_configuration_select_first_comp
comboBox_c_ao_am_select_type
comboBox_configuration_st_ssm_select_system
def delete_a_module(self)
def add_sub_module_into_list_widget(self)
pushButton_configuration_set_module_type
thread_hazard_rate_sensor_based
comboBox_configuration_st_sm_select_system
pushButton_c_ao_ace_delete_element
comboBox_c_ao_ac_select_sub_module
thread_temperature_sensor_dict
def find_max_depth_level_of_module_configs(self)
def main_dict_component_calculate_func(self, selected_system, selected_module, selected_sub_module)
def potc_task_time_unit_func(cls, time_list, unit_type)
groupBox_c_ao_ace_set_element_value
def set_sub_module_listwidget_func(self)
def calculate_set_fr_module_total_fr_func(self)
label_configuration_system_failure_rate
def remove_reliability_key(cls, temp_list)
def select_phm_unit_func(self)
def find_max_depth_level_of_sub_module_configs(self)
def calculate_serial_parallel_fr_value_of_modules(self)
groupBox_m_potc_predict_time
lineEdit_c_ao_ace_set_element_variable_name
lineEdit_m_potc_predict_distance
pushButton_select_final_configuration_of_sub_module
def remove_elements_key(cls, temp_list)
listWidget_configurations_of_modules
def sub_module_add_equipment_func(self, MainWindow)
lineEdit_configuration_failure_rate_sub_module
def control_component_formula(self)
lineEdit_m_potc_actual_time
def monitoring_hazard_rate_select_place_func(self)
def select_reliability_model_func(self)
spinBox_c_ao_asm_quantity
def get_failure_rate_type_func(self)
lineEdit_c_ao_asm_sfr_total_component_fr
pushButton_c_ao_ac_add_component
groupBox_c_ao_ac_select_sub_module
groupBox_sys_select_place_failure_rate
lineEdit_c_ao_ac_component_fr_2
publisher_gui_predict_potc
def start_phm_gui_main_dict_func(self)
groupBox_sys_select_failure_rate_type
def monitoring_events_func(self)
def remove_configuration_count_key(cls, temp_list)
groupBox_m_prognostic_potc_simulation_time
def __init__(self, ros, rate)
thread_sub_module_sensor_control
def delete_module_from_configuration_func(self, deleted_module)
groupBox_c_ao_asm_sub_module_fr
pushButton_c_ao_asm_delete_sub_module
def fill_the_file_with_data(self, file_dir, temp_file_name, temp_data)
def first_sub_module_list_control_of_set_sub_module_types_tab(self)
listWidget_monitoring_hazard_rate_sensor_list
def start_set_reliability_model_and_unit_func(self)
groupBox_c_ao_asm_default_fr
lineEdit_configuration_first_sub_module
selected_reliability_model
lineEdit_c_ao_ace_set_element_value
comboBox_m_sys_select_module_reliability_type
def second_component_list_control_of_set_component_types_tab(self)
def monitoring_regeneration_system_failure_type_func(self)
groupBox_hazard_rate_sensor_list
def add_sub_module_calculate_depth_level_of_configurations(self, selected_configuration_name)
def component_list_control_of_set_component_types_tab(self)
groupBox_module_reliability
pushButton_c_ao_ac_delete_component
def select_final_configuration_of_sub_module(self)
listWidget_c_ao_asm_list_of_sub_modules
def thread_temperature_sensors_func(self)
comboBox_configuration_type_of_sub_module
def save_system_into_file(self)
def delete_sub_module_from_configuration_func(self, selected_module, deleted_sub_module)
comboBox_c_ao_asm_select_equipment
comboBox_configuration_unit
comboBox_configuration_select_first_sub_module
pushButton_c_ao_start_analysis
lineEdit_c_ao_asm_sub_module_fr
lineEdit_m_sys_potc_predict_reliability
groupBox_c_ao_ac_component_fr
def monitoring_module_reliability_func(self)
lineEdit_c_ao_ac_sfr_total_component_fr
def calculate_set_fr_sub_module_total_fr_func(self)
lineEdit_m_module_reliability
def publisher_gui_reliability_func(self)
def add_component_element_tab_func(self)
def delete_module_configuration(self)
comboBox_configuration_select_second_module
def setupUi(self, MainWindow)
publisher_gui_actual_potc
def combobox_hazard_rate_select_sensor_func(self)
lineEdit_configuration_failure_rate_second_module
label_configuration_module_list
configuration_reliability_unit
lineEdit_m_sys_potc_reliability
label_configuration_sub_module_list
def add_module_into_config(self)
pushButton_c_ao_am_add_module
lineEdit_c_ao_ac_total_component_fr
lineEdit_m_sys_reliability
def set_only_component_fr(self)
comboBox_configuration_type_of_module
def module_list_tab_func(self)
lineEdit_configuration_failure_rate_module
groupBox_c_ao_am_add_module
def add_component_into_list_widget(self)
def publisher_gui_predict_potc_func(self, publish_data)
def component_default_equipments_groupbox_control(self)
groupBox_m_prognostic_potc_failure_rate
def phm_temperature_sensor_thread_func(self)
lineEdit_m_sys_potc_predict_sb_reliability
publisher_gui_reliability
def monitoring_prognostic_robot_task_completion_func(self, MainWindow)
groupBox_c_ao_ace_select_module
def component_add_equipment_func(self)
def general_set_result_func(self)
def add_module_into_am_list_widget(self)
groupBox_sys_select_reliability_type
comboBox_configuration_select_second_sub_module
pushButton_delete_component_config
groupBox_c_ao_ac_set_formula
def general_threads_func(self)
groupBox_sys_potc_reliability
def component_list_widget_func(self)
def delete_an_element(self)
pushButton_configuration_set_comp_type
def sub_module_list_control_of_set_sub_module_types_tab(self)
def system_list_control_of_set_module_types_tab(self)
def second_sub_module_list_control_of_set_sub_module_types_tab(self)
lineEdit_c_ao_ac_set_component_name
groupBox_m_potc_predict_group
pushButton_add_sub_module_config
pushButton_delete_sub_module_config
def set_only_module_fr(self)
lineEdit_configuration_second_component
pushButton_c_ao_am_delete_module
lineEdit_configuration_failure_rate_system
comboBox_configuration_st_ssm_select_module
def add_module_into_combobox(self)
comboBox_c_ao_ace_select_module
label_configuration_select_second_module
def control_of_configuration_list(self, args)
pushButton_configuration_set_sub_module_type
def sub_module_set_fr_groupbox_control(self)
groupBox_hazard_rate_add_sensor
pushButton_m_prognostic_potc_start_simulation
def calculate_depth_level_of_module_configs(self)
def first_component_list_tab_func(self)
widget_monitoring_hazard_rate
lineEdit_c_ao_am_module_fr
pushButton_add_component_config
groupBox_c_ao_asm_set_sub_module_name
label_configuration_sub_module_list_2
lineEdit_c_ao_asm_total_component_fr
def first_module_list_tab_func(self)
pushButton_select_final_configuration_of_system
comboBox_m_prognostic_potc_select_task
comboBox_c_ao_asm_select_module
def calculate_serial_parallel_fr_value_of_components(self)
comboBox_c_ao_asm_sfr_select_type
def add_elements_into_list_widget(self)
spinBox_c_ao_asm_sfr_quantity
lineEdit_configuration_first_module
groupBox_m_potc_actual_group
thread_monitoring_system_potc
def module_list_control_of_set_sub_module_types_tab(self)
def create_syntax_of_modules(self)
pushButton_delete_module_config
def configuration_setup_module_set_result_func(self)
label_configuration_select_first_sub_module
lineEdit_configuration_first_component
def remove_formula_key(cls, temp_list)
comboBox_m_sys_select_failure_rate_type
groupBox_c_ao_am_module_fr
lineEdit_c_ao_ace_component_fr
label_configuration_system_list
pushButton_c_ao_asm_set_equipment
def get_current_workspace(cls)
def add_component_element_tab_func_2(self)
def second_sub_module_list_tab_func(self)
def create_syntax_of_sub_modules(self)
def second_module_list_tab_func(self)
lineEdit_m_potc_predict_time
def set_component_fr_from_default_equipments(self)
listWidget_configurations_of_sub_modules
def thread_monitoring_system_potc_func(self)
plainTextEdit_c_ao_ac_set_formula
def add_elements(self, selected_module, selected_sub_module, component_name, element_name, element_variable_name, element_value)
def set_sub_module_fr_from_default_equipments(self)
groupBox_sys_potc_predict_reliability
lineEdit_configuration_failure_rate_first_module
lineEdit_c_ao_am_module_name
comboBox_configuration_type_of_component
def calculate_component_total_fr_func(self)
def control_the_module_fr_is_changed_or_not(self)
lineEdit_configuration_failure_rate_second_sub_module
def filter_hazard_rate_func(self, main_dict)
pushButton_c_ao_ace_add_component_element
publisher_gui_hazard_rate
pushButton_c_ao_asm_add_sub_module
groupBox_sys_potc_sb_reliability
groupBox_c_ao_ac_default_fr
label_configuration_reliability_type
lineEdit_c_ao_ac_component_fr
label_configuration_sub_module_list_3
def calculate_selected_sub_module_fr_func(self, selected_system, selected_module, object_keys, select_sub_module_list, object_type)
def sorted_list_for_depth_level(cls, configuration_dict, configuration_list, depth_level)
def set_only_sub_module_fr(self)
def delete_a_component(self)
new_graph_window_prognostic_potc
def add_sub_module_into_config(self)
lineEdit_configuration_second_module
mechanical_equipments_dict
def convert_configurations_of_modules_into_syntax(self)
groupBox_c_ao_ace_list_of_elements
pushButton_c_ao_ac_set_formula
selected_reliability_unit
label_configuration_failure_rate_7
label_configuration_sub_module_list_4
configuration_loaded_object_dict
comboBox_c_ao_ace_select_component
lineEdit_configuration_failure_rate_second_component
def remove_fr_key(cls, temp_list)
comboBox_configuration_reliability_model
comboBox_m_reliability_module
comboBox_c_ao_asm_select_type