Index: TD_AirTrap/loader.py =================================================================== diff -u -r4b4fedc07e2f374ff7618f47d00aa2db2323f91d -rf05537cca2e7e054a5124d4f5f9ed3ad26264458 --- TD_AirTrap/loader.py (.../loader.py) (revision 4b4fedc07e2f374ff7618f47d00aa2db2323f91d) +++ TD_AirTrap/loader.py (.../loader.py) (revision f05537cca2e7e054a5124d4f5f9ed3ad26264458) @@ -71,7 +71,7 @@ @Slot() def do_air_trap(self): """ - the slot for air trap + the slot for air trap change :return: none """ low_level = self.low_level.value() Index: TD_Battery/interface.ui =================================================================== diff -u -r21c7894d12a3744993fd0d9940be06336c3ba4e7 -rf05537cca2e7e054a5124d4f5f9ed3ad26264458 --- TD_Battery/interface.ui (.../interface.ui) (revision 21c7894d12a3744993fd0d9940be06336c3ba4e7) +++ TD_Battery/interface.ui (.../interface.ui) (revision f05537cca2e7e054a5124d4f5f9ed3ad26264458) @@ -6,444 +6,124 @@ 0 0 - 1026 - 337 + 369 + 117 &1 States/&3 TD Battery - - - - - - - 320 - 215 - - - - - 8 - 50 - false - - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAsNeeded - - - QAbstractItemView::NoEditTriggers - - - true - - - QAbstractItemView::SingleSelection - - - QAbstractItemView::SelectRows - - - true - - - false - - - 9 - - - 2 - - - true - - - 85 - - - true - - - true - - - 18 - - - 21 - - - - 0 - - - - - 1 - - - - - 2 - - - - - 3 - - - - - 4 - - - - - 5 - - - - - 6 - - - - - 7 - - - - - 8 - - - - - 0 : OP Mode - - - - - Description - - + + + + - - MODE_FAUL - + + + + + + 0 + 0 + + + + + 235 + 0 + + + + + 10 + + + + color: rgb(238, 238, 236); +background-color: rgb(52, 105, 2); + + + 148 : [0x9400] : TD Battery + + + Qt::AlignCenter + + + + + + + Send + + + + + + + reset + + + + - - - fault mode - - - - MODE_SERV - + + + + + QLayout::SetMaximumSize + + + 10 + + + + + capacity + + + + + + + 1000 + + + + + + + A/C Power + + + + + + + + + - - - Service mode - - - - - MODE_INIT - - - - - Initialization & POST mode - - - - - MODE_STAN - - - - - Standby mode - - - - - MODE_TPAR - - - - - Treatment Parameters (Validation) mode - - - - - MODE_PRET - - - - - Pre-Treatment mode - - - - - MODE_TREA - - - - - Treatment mode - - - - - MODE_POST - - - - - Post-Treatment mode - - - - - MODE_NLEG - - - - - illegal mode transition - - - + - - - + + + + Qt::Vertical + + - 400 - 285 + 20 + 40 - - - 8 - 50 - false - - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAsNeeded - - - QAbstractItemView::NoEditTriggers - - - true - - - QAbstractItemView::SingleSelection - - - QAbstractItemView::SelectRows - - - true - - - false - - - 6 - - - 2 - - - true - - - 285 - - - true - - - true - - - 18 - - - 21 - - - - 0 - - - - - 1 - - - - - 2 - - - - - 3 - - - - - 4 - - - - - 5 - - - - - 1 : SubMode - - - - - Description - - - - - STANDBY_START_STATE - - - - - Start standby (home actuators). - - - - - STANDBY_WAIT_FOR_TREATMENT_STATE - - - - - Wait for treatment. - - - - - STANDBY_WAIT_FOR_DISINFECT_STATE - - - - - Wait for UI to send disinfect option. - - - - - STANDBY_WAIT_FOR_DD_CLEANING_MODE_CMD_RESPONSE_STATE - - - - - Wait for DD cleaning mode command response state. - - - - - STANDBY_WAIT_FOR_DD_CLEANING_MODE_TO_START_STATE - - - - - Wait for DD cleaning mode to start state. - - - - - STANDBY_CLEANING_MODE_IN_PROGRESS_STATE - - - - - Cleaning mode in progress state. - - - + - - - - - - reset - - - - - - - - 0 - 0 - - - - - 10 - - - - color: rgb(238, 238, 236); -background-color: rgb(52, 105, 2); - - - 148 : [0x9400] : TD Battery - - - Qt::AlignCenter - - - - - - - Send - - - - - - - tbSend - tbReset - tblOpMode - tblSubMode - Index: TD_Battery/loader.py =================================================================== diff -u -r21c7894d12a3744993fd0d9940be06336c3ba4e7 -rf05537cca2e7e054a5124d4f5f9ed3ad26264458 --- TD_Battery/loader.py (.../loader.py) (revision 21c7894d12a3744993fd0d9940be06336c3ba4e7) +++ TD_Battery/loader.py (.../loader.py) (revision f05537cca2e7e054a5124d4f5f9ed3ad26264458) @@ -21,7 +21,7 @@ class Loader(DynamicLoader): """ - The TD Air Trap ui loader + The TD Battery ui loader """ def __init__(self): @@ -34,18 +34,19 @@ finds and creates widgets :return: none """ - self.tbReset = self.find_widget(QtWidgets.QToolButton , 'tbReset' ) - self.tbSend = self.find_widget(QtWidgets.QToolButton , 'tbSend' ) - self.tblOpMode = self.find_widget(QtWidgets.QTableWidget , 'tblOpMode' ) - self.tblSubMode = self.find_widget(QtWidgets.QTableWidget , 'tblSubMode' ) + self.tbReset = self.find_widget(QtWidgets.QToolButton , 'tbReset' ) + self.tbSend = self.find_widget(QtWidgets.QToolButton , 'tbSend' ) + self.capacity = self.find_widget(QtWidgets.QSpinBox , 'capacitySpinBox' ) + self.acpower = self.find_widget(QtWidgets.QCheckBox , 'aCPowerCheckBox' ) + def _init_connections(self): """ initializes the widgets connections :return: none """ self.tbReset.clicked.connect(self._init_widgets) - self.tbSend.clicked.connect(self.do_treatment_states) + self.tbSend.clicked.connect(self.do_battery_data) # self.tblOpMode.currentCellChanged.connect(self.do_treatment_states) # self.tblSubMode.currentCellChanged.connect(self.do_treatment_states) @@ -55,20 +56,19 @@ initializes the widgets' properties :return: none """ - self.tblOpMode.setCurrentCell(TDOpModes.MODE_INIT.value, 0) - self.tblOpMode.horizontalHeaderItem(0).setTextAlignment(QtCore.Qt.AlignLeft) - self.tblSubMode.setCurrentCell(TDStandbyStates.STANDBY_START_STATE.value, 0) - self.tblSubMode.horizontalHeaderItem(0).setTextAlignment(QtCore.Qt.AlignLeft) + self.capacity.setValue(0) + self.acpower.setChecked(False) @Slot() - def do_treatment_states(self): + def do_battery_data(self): """ - the slot for state change + the slot for battery change :return: none """ - op_mode = int(self.tblOpMode.verticalHeaderItem(self.tblOpMode.currentRow()).text()) - sub_mode = int(self.tblSubMode.verticalHeaderItem(self.tblSubMode.currentRow()).text()) - self.td_interface.td_operation_mode( - op_mode, - sub_mode + capacity = self.capacity.value() + ac_power = self.acpower.isChecked() + + self.td_interface.td_battery( + capacity, + ac_power ) \ No newline at end of file Index: TD_BloodPump/loader.py =================================================================== diff -u -r4b4fedc07e2f374ff7618f47d00aa2db2323f91d -rf05537cca2e7e054a5124d4f5f9ed3ad26264458 --- TD_BloodPump/loader.py (.../loader.py) (revision 4b4fedc07e2f374ff7618f47d00aa2db2323f91d) +++ TD_BloodPump/loader.py (.../loader.py) (revision f05537cca2e7e054a5124d4f5f9ed3ad26264458) @@ -21,7 +21,7 @@ class Loader(DynamicLoader): """ - The TD Air Trap ui loader + The TDBlood Pump ui loader """ def __init__(self): @@ -74,7 +74,7 @@ @Slot() def do_bp_data(self): """ - the slot for state change + the slot for bp data change :return: none """ set_flow = self.sFlow.value() Index: TD_Ejector/interface.ui =================================================================== diff -u --- TD_Ejector/interface.ui (revision 0) +++ TD_Ejector/interface.ui (revision f05537cca2e7e054a5124d4f5f9ed3ad26264458) @@ -0,0 +1,124 @@ + + + ui_interface + + + + 0 + 0 + 346 + 131 + + + + &1 States/&9 TD Ejector + + + + 6 + + + + + + + + + + 0 + 0 + + + + + 214 + 0 + + + + + 10 + + + + color: rgb(238, 238, 236); +background-color: rgb(52, 105, 2); + + + 146 : [0x9200] : TD Ejector + + + Qt::AlignCenter + + + + + + + Send + + + + + + + reset + + + + + + + + + + + QLayout::SetMaximumSize + + + 10 + + + + + steps/min + + + + + + + + + + position + + + + + + + + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + Index: TD_Ejector/loader.py =================================================================== diff -u --- TD_Ejector/loader.py (revision 0) +++ TD_Ejector/loader.py (revision f05537cca2e7e054a5124d4f5f9ed3ad26264458) @@ -0,0 +1,73 @@ +""" + The TD Air Trap Mode ui loader +""" +# Python +import os + +# Qt +from PySide2 import QtCore, QtWidgets +from PySide2.QtCore import Slot + +# parent +from engine.dynamicloader import DynamicLoader + +# plugin specific +from leahi_dialin.common.td_defs import TDOpModes +from leahi_dialin.common.td_defs import TDStandbyStates + +# hd Simulator +from leahi_dialin.ui.td_messaging import TD_Messaging + + +class Loader(DynamicLoader): + """ + The TD Air Trap ui loader + """ + + def __init__(self): + self.td_interface = TD_Messaging() + super().__init__(os.path.dirname(__file__)) + + + def _init_loader(self): + """ + finds and creates widgets + :return: none + """ + self.tbReset = self.find_widget(QtWidgets.QToolButton , 'tbReset' ) + self.tbSend = self.find_widget(QtWidgets.QToolButton , 'tbSend' ) + + self.position = self.find_widget(QtWidgets.QSpinBox , 'positionSpinBox' ) + self.stepPerMin = self.find_widget(QtWidgets.QSpinBox , 'stepsMinSpinBox' ) + + def _init_connections(self): + """ + initializes the widgets connections + :return: none + """ + self.tbReset.clicked.connect(self._init_widgets) + self.tbSend.clicked.connect(self.do_ejector_data) + # self.tblOpMode.currentCellChanged.connect(self.do_treatment_states) + # self.tblSubMode.currentCellChanged.connect(self.do_treatment_states) + + @Slot() + def _init_widgets(self): + """ + initializes the widgets' properties + :return: none + """ + self.position.setValue(0) + self.stepPerMin.setValue(0) + + @Slot() + def do_ejector_data(self): + """ + the slot for ejector change + :return: none + """ + position = self.position.value() + steps_per_min = self.stepPerMin.value() + self.td_interface.td_ejector( + position, + steps_per_min + ) \ No newline at end of file Index: TD_Switches/interface.ui =================================================================== diff -u -r21c7894d12a3744993fd0d9940be06336c3ba4e7 -rf05537cca2e7e054a5124d4f5f9ed3ad26264458 --- TD_Switches/interface.ui (.../interface.ui) (revision 21c7894d12a3744993fd0d9940be06336c3ba4e7) +++ TD_Switches/interface.ui (.../interface.ui) (revision f05537cca2e7e054a5124d4f5f9ed3ad26264458) @@ -6,444 +6,142 @@ 0 0 - 1026 - 337 + 369 + 165 &1 States/&5 TD Switches - - - - - - - 320 - 215 - - - - - 8 - 50 - false - - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAsNeeded - - - QAbstractItemView::NoEditTriggers - - - true - - - QAbstractItemView::SingleSelection - - - QAbstractItemView::SelectRows - - - true - - - false - - - 9 - - - 2 - - - true - - - 85 - - - true - - - true - - - 18 - - - 21 - - - - 0 - - - - - 1 - - - - - 2 - - - - - 3 - - - - - 4 - - - - - 5 - - - - - 6 - - - - - 7 - - - - - 8 - - - - - 0 : OP Mode - - - - - Description - - + + + + - - MODE_FAUL - + + + + + + 0 + 0 + + + + + 235 + 0 + + + + + 10 + + + + color: rgb(238, 238, 236); +background-color: rgb(52, 105, 2); + + + 147 : [0x9300] : TD Switches + + + Qt::AlignCenter + + + + + + + Send + + + + + + + reset + + + + - - - fault mode - - - - MODE_SERV - + + + + + QLayout::SetMaximumSize + + + 10 + + + + + Door + + + + + + + 1000 + + + + + + + Rot1 + + + + + + + 1000 + + + + + + + Rot2 + + + + + + + 1000 + + + + + + - - - Service mode - - - - - MODE_INIT - - - - - Initialization & POST mode - - - - - MODE_STAN - - - - - Standby mode - - - - - MODE_TPAR - - - - - Treatment Parameters (Validation) mode - - - - - MODE_PRET - - - - - Pre-Treatment mode - - - - - MODE_TREA - - - - - Treatment mode - - - - - MODE_POST - - - - - Post-Treatment mode - - - - - MODE_NLEG - - - - - illegal mode transition - - - + - - - + + + + Qt::Vertical + + - 400 - 285 + 20 + 40 - - - 8 - 50 - false - - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAsNeeded - - - QAbstractItemView::NoEditTriggers - - - true - - - QAbstractItemView::SingleSelection - - - QAbstractItemView::SelectRows - - - true - - - false - - - 6 - - - 2 - - - true - - - 285 - - - true - - - true - - - 18 - - - 21 - - - - 0 - - - - - 1 - - - - - 2 - - - - - 3 - - - - - 4 - - - - - 5 - - - - - 1 : SubMode - - - - - Description - - - - - STANDBY_START_STATE - - - - - Start standby (home actuators). - - - - - STANDBY_WAIT_FOR_TREATMENT_STATE - - - - - Wait for treatment. - - - - - STANDBY_WAIT_FOR_DISINFECT_STATE - - - - - Wait for UI to send disinfect option. - - - - - STANDBY_WAIT_FOR_DD_CLEANING_MODE_CMD_RESPONSE_STATE - - - - - Wait for DD cleaning mode command response state. - - - - - STANDBY_WAIT_FOR_DD_CLEANING_MODE_TO_START_STATE - - - - - Wait for DD cleaning mode to start state. - - - - - STANDBY_CLEANING_MODE_IN_PROGRESS_STATE - - - - - Cleaning mode in progress state. - - - + - - - - - - reset - - - - - - - - 0 - 0 - - - - - 10 - - - - color: rgb(238, 238, 236); -background-color: rgb(52, 105, 2); - - - 147 : [0x9300] : TD Switches - - - Qt::AlignCenter - - - - - - - Send - - - - - - - tbSend - tbReset - tblOpMode - tblSubMode - Index: TD_Switches/loader.py =================================================================== diff -u -r21c7894d12a3744993fd0d9940be06336c3ba4e7 -rf05537cca2e7e054a5124d4f5f9ed3ad26264458 --- TD_Switches/loader.py (.../loader.py) (revision 21c7894d12a3744993fd0d9940be06336c3ba4e7) +++ TD_Switches/loader.py (.../loader.py) (revision f05537cca2e7e054a5124d4f5f9ed3ad26264458) @@ -21,7 +21,7 @@ class Loader(DynamicLoader): """ - The TD Air Trap ui loader + The TD Switches ui loader """ def __init__(self): @@ -36,16 +36,18 @@ """ self.tbReset = self.find_widget(QtWidgets.QToolButton , 'tbReset' ) self.tbSend = self.find_widget(QtWidgets.QToolButton , 'tbSend' ) - self.tblOpMode = self.find_widget(QtWidgets.QTableWidget , 'tblOpMode' ) - self.tblSubMode = self.find_widget(QtWidgets.QTableWidget , 'tblSubMode' ) + self.door = self.find_widget(QtWidgets.QSpinBox , 'doorSpinBox' ) + self.rot1 = self.find_widget(QtWidgets.QSpinBox , 'rot1SpinBox' ) + self.rot2 = self.find_widget(QtWidgets.QSpinBox , 'rot2SpinBox' ) + def _init_connections(self): """ initializes the widgets connections :return: none """ self.tbReset.clicked.connect(self._init_widgets) - self.tbSend.clicked.connect(self.do_treatment_states) + self.tbSend.clicked.connect(self.do_td_switches) # self.tblOpMode.currentCellChanged.connect(self.do_treatment_states) # self.tblSubMode.currentCellChanged.connect(self.do_treatment_states) @@ -55,20 +57,21 @@ initializes the widgets' properties :return: none """ - self.tblOpMode.setCurrentCell(TDOpModes.MODE_INIT.value, 0) - self.tblOpMode.horizontalHeaderItem(0).setTextAlignment(QtCore.Qt.AlignLeft) - self.tblSubMode.setCurrentCell(TDStandbyStates.STANDBY_START_STATE.value, 0) - self.tblSubMode.horizontalHeaderItem(0).setTextAlignment(QtCore.Qt.AlignLeft) + self.door.setValue(0) + self.rot1.setValue(0) + self.rot2.setValue(0) @Slot() - def do_treatment_states(self): + def do_td_switches(self): """ the slot for state change :return: none """ - op_mode = int(self.tblOpMode.verticalHeaderItem(self.tblOpMode.currentRow()).text()) - sub_mode = int(self.tblSubMode.verticalHeaderItem(self.tblSubMode.currentRow()).text()) - self.td_interface.td_operation_mode( - op_mode, - sub_mode + door = self.door.value() + rot1 = self.rot1.value() + rot2 = self.rot2.value() + self.td_interface.td_switches( + door, + rot1, + rot2 ) \ No newline at end of file Index: TD_Temperatures/interface.ui =================================================================== diff -u -r21c7894d12a3744993fd0d9940be06336c3ba4e7 -rf05537cca2e7e054a5124d4f5f9ed3ad26264458 --- TD_Temperatures/interface.ui (.../interface.ui) (revision 21c7894d12a3744993fd0d9940be06336c3ba4e7) +++ TD_Temperatures/interface.ui (.../interface.ui) (revision f05537cca2e7e054a5124d4f5f9ed3ad26264458) @@ -6,444 +6,106 @@ 0 0 - 1026 - 337 + 352 + 88 &1 States/&6 TD Temperatures - - + + - - - - - 320 - 215 - - - - - 8 - 50 - false - - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAsNeeded - - - QAbstractItemView::NoEditTriggers - - - true - - - QAbstractItemView::SingleSelection - - - QAbstractItemView::SelectRows - - - true - - - false - - - 9 - - - 2 - - - true - - - 85 - - - true - - - true - - - 18 - - - 21 - - - - 0 - - - - - 1 - - - - - 2 - - - - - 3 - - - - - 4 - - - - - 5 - - - - - 6 - - - - - 7 - - - - - 8 - - - - - 0 : OP Mode - - - - - Description - - - - - MODE_FAUL - + + + + + + + 0 + 0 + + + + + 220 + 0 + + + + + 10 + + + + color: rgb(238, 238, 236); +background-color: rgb(52, 105, 2); + + + 145 : [0x9100] : TD Temperatures + + + Qt::AlignCenter + + - - - fault mode - + + + + Send + + - - - MODE_SERV - + + + + reset + + - - - Service mode - - - - - MODE_INIT - - - - - Initialization & POST mode - - - - - MODE_STAN - - - - - Standby mode - - - - - MODE_TPAR - - - - - Treatment Parameters (Validation) mode - - - - - MODE_PRET - - - - - Pre-Treatment mode - - - - - MODE_TREA - - - - - Treatment mode - - - - - MODE_POST - - - - - Post-Treatment mode - - - - - MODE_NLEG - - - - - illegal mode transition - - - + - - - - - 400 - 285 - - - - - 8 - 50 - false - - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAsNeeded - - - QAbstractItemView::NoEditTriggers - - - true - - - QAbstractItemView::SingleSelection - - - QAbstractItemView::SelectRows - - - true - - - false - - - 6 - - - 2 - - - true - - - 285 - - - true - - - true - - - 18 - - - 21 - - - - 0 - - - - - 1 - - - - - 2 - - - - - 3 - - - - - 4 - - - - - 5 - - - - - 1 : SubMode - - - - - Description - - - - - STANDBY_START_STATE - + + + + + + QLayout::SetMaximumSize + + + 10 + + + + + Board + + + + + + + - - - Start standby (home actuators). - - - - - STANDBY_WAIT_FOR_TREATMENT_STATE - - - - - Wait for treatment. - - - - - STANDBY_WAIT_FOR_DISINFECT_STATE - - - - - Wait for UI to send disinfect option. - - - - - STANDBY_WAIT_FOR_DD_CLEANING_MODE_CMD_RESPONSE_STATE - - - - - Wait for DD cleaning mode command response state. - - - - - STANDBY_WAIT_FOR_DD_CLEANING_MODE_TO_START_STATE - - - - - Wait for DD cleaning mode to start state. - - - - - STANDBY_CLEANING_MODE_IN_PROGRESS_STATE - - - - - Cleaning mode in progress state. - - - + - - - - - - reset - - - - - - - - 0 - 0 - - - - - 10 - - - - color: rgb(238, 238, 236); -background-color: rgb(52, 105, 2); - - - 145 : [0x9100] : TD Op Mode - - - Qt::AlignCenter - - - - - - - Send - - - - + + + + Qt::Vertical + + + + 20 + 0 + + + - - tbSend - tbReset - tblOpMode - tblSubMode - Index: TD_Temperatures/loader.py =================================================================== diff -u -r21c7894d12a3744993fd0d9940be06336c3ba4e7 -rf05537cca2e7e054a5124d4f5f9ed3ad26264458 --- TD_Temperatures/loader.py (.../loader.py) (revision 21c7894d12a3744993fd0d9940be06336c3ba4e7) +++ TD_Temperatures/loader.py (.../loader.py) (revision f05537cca2e7e054a5124d4f5f9ed3ad26264458) @@ -21,7 +21,7 @@ class Loader(DynamicLoader): """ - The TD Air Trap ui loader + The TD temperature ui loader """ def __init__(self): @@ -34,18 +34,17 @@ finds and creates widgets :return: none """ - self.tbReset = self.find_widget(QtWidgets.QToolButton , 'tbReset' ) - self.tbSend = self.find_widget(QtWidgets.QToolButton , 'tbSend' ) - self.tblOpMode = self.find_widget(QtWidgets.QTableWidget , 'tblOpMode' ) - self.tblSubMode = self.find_widget(QtWidgets.QTableWidget , 'tblSubMode' ) + self.tbReset = self.find_widget(QtWidgets.QToolButton , 'tbReset' ) + self.tbSend = self.find_widget(QtWidgets.QToolButton , 'tbSend' ) + self.board = self.find_widget(QtWidgets.QDoubleSpinBox , 'boardDoubleSpinBox' ) def _init_connections(self): """ initializes the widgets connections :return: none """ self.tbReset.clicked.connect(self._init_widgets) - self.tbSend.clicked.connect(self.do_treatment_states) + self.tbSend.clicked.connect(self.do_temperature_data) # self.tblOpMode.currentCellChanged.connect(self.do_treatment_states) # self.tblSubMode.currentCellChanged.connect(self.do_treatment_states) @@ -55,20 +54,16 @@ initializes the widgets' properties :return: none """ - self.tblOpMode.setCurrentCell(TDOpModes.MODE_INIT.value, 0) - self.tblOpMode.horizontalHeaderItem(0).setTextAlignment(QtCore.Qt.AlignLeft) - self.tblSubMode.setCurrentCell(TDStandbyStates.STANDBY_START_STATE.value, 0) - self.tblSubMode.horizontalHeaderItem(0).setTextAlignment(QtCore.Qt.AlignLeft) + self.board.setValue(0) @Slot() - def do_treatment_states(self): + def do_temperature_data(self): """ - the slot for state change + the slot for temperature data change :return: none """ - op_mode = int(self.tblOpMode.verticalHeaderItem(self.tblOpMode.currentRow()).text()) - sub_mode = int(self.tblSubMode.verticalHeaderItem(self.tblSubMode.currentRow()).text()) - self.td_interface.td_operation_mode( - op_mode, - sub_mode + board_temp = self.board.value() + + self.td_interface.td_temperatures( + board_temp ) \ No newline at end of file Index: TD_Valves/interface.ui =================================================================== diff -u -r21c7894d12a3744993fd0d9940be06336c3ba4e7 -rf05537cca2e7e054a5124d4f5f9ed3ad26264458 --- TD_Valves/interface.ui (.../interface.ui) (revision 21c7894d12a3744993fd0d9940be06336c3ba4e7) +++ TD_Valves/interface.ui (.../interface.ui) (revision f05537cca2e7e054a5124d4f5f9ed3ad26264458) @@ -6,444 +6,124 @@ 0 0 - 1026 - 337 + 352 + 124 &1 States/&7 TD Valves - - + + - - - - - 320 - 215 - - - - - 8 - 50 - false - - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAsNeeded - - - QAbstractItemView::NoEditTriggers - - - true - - - QAbstractItemView::SingleSelection - - - QAbstractItemView::SelectRows - - - true - - - false - - - 9 - - - 2 - - - true - - - 85 - - - true - - - true - - - 18 - - - 21 - - - - 0 - - - - - 1 - - - - - 2 - - - - - 3 - - - - - 4 - - - - - 5 - - - - - 6 - - - - - 7 - - - - - 8 - - - - - 0 : OP Mode - - - - - Description - - - - - MODE_FAUL - + + + + + + + 0 + 0 + + + + + 220 + 0 + + + + + 10 + + + + color: rgb(238, 238, 236); +background-color: rgb(52, 105, 2); + + + 43 : [0x2B00] : TD Valves + + + Qt::AlignCenter + + - - - fault mode - + + + + Send + + - - - MODE_SERV - + + + + reset + + - - - Service mode - - - - - MODE_INIT - - - - - Initialization & POST mode - - - - - MODE_STAN - - - - - Standby mode - - - - - MODE_TPAR - - - - - Treatment Parameters (Validation) mode - - - - - MODE_PRET - - - - - Pre-Treatment mode - - - - - MODE_TREA - - - - - Treatment mode - - - - - MODE_POST - - - - - Post-Treatment mode - - - - - MODE_NLEG - - - - - illegal mode transition - - - + - - - - - 400 - 285 - - - - - 8 - 50 - false - - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAsNeeded - - - QAbstractItemView::NoEditTriggers - - - true - - - QAbstractItemView::SingleSelection - - - QAbstractItemView::SelectRows - - - true - - - false - - - 6 - - - 2 - - - true - - - 285 - - - true - - - true - - - 18 - - - 21 - - - - 0 - - - - - 1 - - - - - 2 - - - - - 3 - - - - - 4 - - - - - 5 - - - - - 1 : SubMode - - - - - Description - - - - - STANDBY_START_STATE - + + + + + + QLayout::SetMaximumSize + + + 10 + + + + + arterial + + + + + + + 1000 + + + + + + + venous + + + + + + + 1000 + + + + - - - Start standby (home actuators). - - - - - STANDBY_WAIT_FOR_TREATMENT_STATE - - - - - Wait for treatment. - - - - - STANDBY_WAIT_FOR_DISINFECT_STATE - - - - - Wait for UI to send disinfect option. - - - - - STANDBY_WAIT_FOR_DD_CLEANING_MODE_CMD_RESPONSE_STATE - - - - - Wait for DD cleaning mode command response state. - - - - - STANDBY_WAIT_FOR_DD_CLEANING_MODE_TO_START_STATE - - - - - Wait for DD cleaning mode to start state. - - - - - STANDBY_CLEANING_MODE_IN_PROGRESS_STATE - - - - - Cleaning mode in progress state. - - - + - - - - - - reset - - - - - - - - 0 - 0 - - - - - 10 - - - - color: rgb(238, 238, 236); -background-color: rgb(52, 105, 2); - - - XX : [0xXX00] : TD Valves - - - Qt::AlignCenter - - - - - - - Send - - - - + + + + Qt::Vertical + + + + 20 + 40 + + + - - tbSend - tbReset - tblOpMode - tblSubMode - Index: TD_Valves/loader.py =================================================================== diff -u -r21c7894d12a3744993fd0d9940be06336c3ba4e7 -rf05537cca2e7e054a5124d4f5f9ed3ad26264458 --- TD_Valves/loader.py (.../loader.py) (revision 21c7894d12a3744993fd0d9940be06336c3ba4e7) +++ TD_Valves/loader.py (.../loader.py) (revision f05537cca2e7e054a5124d4f5f9ed3ad26264458) @@ -21,7 +21,7 @@ class Loader(DynamicLoader): """ - The TD Air Trap ui loader + The TD Valves ui loader """ def __init__(self): @@ -34,18 +34,19 @@ finds and creates widgets :return: none """ - self.tbReset = self.find_widget(QtWidgets.QToolButton , 'tbReset' ) - self.tbSend = self.find_widget(QtWidgets.QToolButton , 'tbSend' ) - self.tblOpMode = self.find_widget(QtWidgets.QTableWidget , 'tblOpMode' ) - self.tblSubMode = self.find_widget(QtWidgets.QTableWidget , 'tblSubMode' ) + self.tbReset = self.find_widget(QtWidgets.QToolButton , 'tbReset' ) + self.tbSend = self.find_widget(QtWidgets.QToolButton , 'tbSend' ) + self.arterial = self.find_widget(QtWidgets.QSpinBox , 'arterialSpinBox' ) + self.venous = self.find_widget(QtWidgets.QSpinBox , 'venousSpinBox' ) + def _init_connections(self): """ initializes the widgets connections :return: none """ self.tbReset.clicked.connect(self._init_widgets) - self.tbSend.clicked.connect(self.do_treatment_states) + self.tbSend.clicked.connect(self.do_valve_data) # self.tblOpMode.currentCellChanged.connect(self.do_treatment_states) # self.tblSubMode.currentCellChanged.connect(self.do_treatment_states) @@ -55,20 +56,18 @@ initializes the widgets' properties :return: none """ - self.tblOpMode.setCurrentCell(TDOpModes.MODE_INIT.value, 0) - self.tblOpMode.horizontalHeaderItem(0).setTextAlignment(QtCore.Qt.AlignLeft) - self.tblSubMode.setCurrentCell(TDStandbyStates.STANDBY_START_STATE.value, 0) - self.tblSubMode.horizontalHeaderItem(0).setTextAlignment(QtCore.Qt.AlignLeft) + self.arterial.setValue(0) + self.venous.setValue(0) @Slot() - def do_treatment_states(self): + def do_valve_data(self): """ - the slot for state change + the slot for Valve data change :return: none """ - op_mode = int(self.tblOpMode.verticalHeaderItem(self.tblOpMode.currentRow()).text()) - sub_mode = int(self.tblSubMode.verticalHeaderItem(self.tblSubMode.currentRow()).text()) - self.td_interface.td_operation_mode( - op_mode, - sub_mode + arterial = self.arterial.value() + venous = self.venous.value() + self.td_interface.td_valves( + arterial, + venous ) \ No newline at end of file Index: TD_Versions/interface.ui =================================================================== diff -u --- TD_Versions/interface.ui (revision 0) +++ TD_Versions/interface.ui (revision f05537cca2e7e054a5124d4f5f9ed3ad26264458) @@ -0,0 +1,368 @@ + + + ui_interface + + + + 0 + 0 + 758 + 208 + + + + + 16777215 + 16777215 + + + + + 0 + 0 + + + + &10 Misc/&1 TD Versions + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + 0 + + + + + + + + 0 + 0 + + + + + 220 + 0 + + + + + 10 + + + + color: rgb(238, 238, 236); +background-color: rgb(52, 105, 2); + + + 149 : [0x9500] : TD Serial # + + + Qt::AlignCenter + + + + + + + Send + + + + + + + reset + + + + + + + + + + 16777215 + 30 + + + + + + + + + 206 + 0 + + + + + 16777215 + 30 + + + + background-color: rgb(32, 74, 135); +color: rgb(255, 255, 255); + + + Serial # + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + + + + + 0 + 0 + + + + + 220 + 0 + + + + + 10 + + + + color: rgb(238, 238, 236); +background-color: rgb(52, 105, 2); + + + 15 : [0x0E00] : TD Versions + + + Qt::AlignCenter + + + + + + + Send + + + + + + + reset + + + + + + + + + + + 0 + + + + + 0 + + + + + 0 + + + + + + 200 + 0 + + + + false + + + background-color: rgb(114, 159, 207); +color: rgb(255, 255, 255); + + + Device Ver. + + + + + + + background-color: rgb(52, 101, 164); +color: rgb(255, 255, 255); + + + FPGA Ver. + + + + + + + + + + + + + + + + Lab + + + + + + + Micro + + + + + + + Minor + + + + + + + ID + + + + + + + + + + + + + Minor + + + + + + + Build + + + + + + + + + + + + + + + + Major + + + + + + + + + + Comp. + + + + + + + + + + Major + + + + + + + + + + + + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + Index: TD_Versions/loader.py =================================================================== diff -u --- TD_Versions/loader.py (revision 0) +++ TD_Versions/loader.py (revision f05537cca2e7e054a5124d4f5f9ed3ad26264458) @@ -0,0 +1,108 @@ +""" + The TD Air Trap Mode ui loader +""" +# Python +import os + +# Qt +from PySide2 import QtCore, QtWidgets +from PySide2.QtCore import Slot + +# parent +from engine.dynamicloader import DynamicLoader + +# plugin specific +from leahi_dialin.common.td_defs import TDOpModes +from leahi_dialin.common.td_defs import TDStandbyStates + +# hd Simulator +from leahi_dialin.ui.td_messaging import TD_Messaging + + +class Loader(DynamicLoader): + """ + The TD Versions ui loader + """ + + def __init__(self): + self.td_interface = TD_Messaging() + super().__init__(os.path.dirname(__file__)) + + + def _init_loader(self): + """ + finds and creates widgets + :return: none + """ + self.tbReset = self.find_widget(QtWidgets.QToolButton , 'tbReset' ) + self.tbSend = self.find_widget(QtWidgets.QToolButton , 'tbSend' ) + + self.dmajor = self.find_widget(QtWidgets.QSpinBox , 'deviceMajorspinBox' ) + self.dminor = self.find_widget(QtWidgets.QSpinBox , 'deviceMinorspinBox' ) + self.dmicro = self.find_widget(QtWidgets.QSpinBox , 'deviceMicrospinBox' ) + self.dbuild = self.find_widget(QtWidgets.QSpinBox , 'deviceBuildspinBox' ) + self.comp = self.find_widget(QtWidgets.QSpinBox , 'deviceCompatibilityspinBox' ) + self.fpga_id = self.find_widget(QtWidgets.QSpinBox , 'FPGAIDspinBox' ) + self.fpga_major = self.find_widget(QtWidgets.QSpinBox , 'FPGAMajorspinBox' ) + self.fpga_minor = self.find_widget(QtWidgets.QSpinBox , 'deviceMinorspinBox' ) + self.fpga_lab = self.find_widget(QtWidgets.QSpinBox , 'FPGALabspinBox' ) + self.serial = self.find_widget(QtWidgets.QPlainTextEdit , 'deviceSerial' ) + + def _init_connections(self): + """ + initializes the widgets connections + :return: none + """ + self.tbReset.clicked.connect(self._init_widgets) + self.tbSend.clicked.connect(self.do_version_data) + # self.tblOpMode.currentCellChanged.connect(self.do_treatment_states) + # self.tblSubMode.currentCellChanged.connect(self.do_treatment_states) + + @Slot() + def _init_widgets(self): + """ + initializes the widgets' properties + :return: none + """ + self.dmajor.setValue(0) + self.dminor.setValue(0) + self.dmicro.setValue(0) + self.dbuild.setValue(0) + self.comp.setValue(0) + self.fpga_id.setValue(0) + self.fpga_major.setValue(0) + self.fpga_minor.setValue(0) + self.fpga_lab.setValue(0) + self.serial.setPlainText("12345") + + @Slot() + def do_version_data(self): + """ + the slot for Version data change + :return: none + """ + major = self.dmajor.value() + minor = self.dminor.value() + micro = self.dmicro.value() + build = self.dbuild.value() + fpga_id = self.fpga_id.value() + fpga_major = self.fpga_major.value() + fpga_minor = self.fpga_minor.value() + fpga_lab = self.fpga_lab.value() + compatibility_rev = self.comp.value() + self.td_interface.td_versions( + major, + minor, + micro, + build, + fpga_id, + fpga_major, + fpga_minor, + fpga_lab, + compatibility_rev + ) + + serial = self.serial.toPlainText() + self.td_interface.cmd_send_serial_td_data( + serial + ) \ No newline at end of file Index: TD_Voltages/interface.ui =================================================================== diff -u -r21c7894d12a3744993fd0d9940be06336c3ba4e7 -rf05537cca2e7e054a5124d4f5f9ed3ad26264458 --- TD_Voltages/interface.ui (.../interface.ui) (revision 21c7894d12a3744993fd0d9940be06336c3ba4e7) +++ TD_Voltages/interface.ui (.../interface.ui) (revision f05537cca2e7e054a5124d4f5f9ed3ad26264458) @@ -6,444 +6,261 @@ 0 0 - 1026 - 337 + 412 + 270 &1 States/&8 TD Voltages - - + + - - - - - 320 - 215 - - - - - 8 - 50 - false - - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAsNeeded - - - QAbstractItemView::NoEditTriggers - - - true - - - QAbstractItemView::SingleSelection - - - QAbstractItemView::SelectRows - - - true - - - false - - - 9 - - - 2 - - - true - - - 85 - - - true - - - true - - - 18 - - - 21 - - - - 0 - - - - - 1 - - - - - 2 - - - - - 3 - - - - - 4 - - - - - 5 - - - - - 6 - - - - - 7 - - - - - 8 - - - - - 0 : OP Mode - - - - - Description - - - - - MODE_FAUL - + + + + + + + 0 + 0 + + + + + 280 + 0 + + + + + 10 + + + + color: rgb(238, 238, 236); +background-color: rgb(52, 105, 2); + + + 29 : [0x1D00] : TD Voltages + + + Qt::AlignCenter + + - - - fault mode - + + + + Send + + - - - MODE_SERV - + + + + reset + + - - - Service mode - + + + + + + + + + + + + QLayout::SetMaximumSize + + + 10 + + + + + 1.2V Line + + + + + + + 1.200000000000000 + + + + + + + 3.3V line + + + + + + + 5V Logic + + + + + + + 5.000000000000000 + + + + + + + 5V Sensors + + + + + + + 5.000000000000000 + + + + + + + 24V Line + + + + + + + 24.000000000000000 + + + + + + + 24 Regen + + + + + + + 24.000000000000000 + + + + + + + 3.300000000000000 + + + + - - - MODE_INIT - - - - - Initialization & POST mode - - - - - MODE_STAN - - - - - Standby mode - - - - - MODE_TPAR - - - - - Treatment Parameters (Validation) mode - - - - - MODE_PRET - - - - - Pre-Treatment mode - - - - - MODE_TREA - - - - - Treatment mode - - - - - MODE_POST - - - - - Post-Treatment mode - - - - - MODE_NLEG - - - - - illegal mode transition - - - + - - - - - 400 - 285 - + + + + 10 - - - 8 - 50 - false - - - - Qt::ScrollBarAlwaysOff - - - Qt::ScrollBarAsNeeded - - - QAbstractItemView::NoEditTriggers - - - true - - - QAbstractItemView::SingleSelection - - - QAbstractItemView::SelectRows - - - true - - - false - - - 6 - - - 2 - - - true - - - 285 - - - true - - - true - - - 18 - - - 21 - - - - 0 - - - - - 1 - - - - - 2 - - - - - 3 - - - - - 4 - - - - - 5 - - - - - 1 : SubMode - - - - - Description - - - - STANDBY_START_STATE - + + + FPGA ADC + + - - Start standby (home actuators). - + + + 1.000000000000000 + + - - STANDBY_WAIT_FOR_TREATMENT_STATE - + + + FPGA VCC + + - - Wait for treatment. - + + + 3.000000000000000 + + - - STANDBY_WAIT_FOR_DISINFECT_STATE - + + + FPGA VAUX + + - - Wait for UI to send disinfect option. - + + + 3.000000000000000 + + - - STANDBY_WAIT_FOR_DD_CLEANING_MODE_CMD_RESPONSE_STATE - + + + FPGA VPVN + + - - Wait for DD cleaning mode command response state. - + + + 1.000000000000000 + + - - STANDBY_WAIT_FOR_DD_CLEANING_MODE_TO_START_STATE - + + + Res Ref + + - - Wait for DD cleaning mode to start state. - + + + 3.000000000000000 + + - - - STANDBY_CLEANING_MODE_IN_PROGRESS_STATE - - - - - Cleaning mode in progress state. - - - + - - - - - - reset - - - - - - - - 0 - 0 - - - - - 10 - - - - color: rgb(238, 238, 236); -background-color: rgb(52, 105, 2); - - - 29 : [0x1D00] : TD Voltages - - - Qt::AlignCenter - - - - - - - Send - - - - + + + + Qt::Vertical + + + + 20 + 0 + + + - - tbSend - tbReset - tblOpMode - tblSubMode - Index: TD_Voltages/loader.py =================================================================== diff -u -r21c7894d12a3744993fd0d9940be06336c3ba4e7 -rf05537cca2e7e054a5124d4f5f9ed3ad26264458 --- TD_Voltages/loader.py (.../loader.py) (revision 21c7894d12a3744993fd0d9940be06336c3ba4e7) +++ TD_Voltages/loader.py (.../loader.py) (revision f05537cca2e7e054a5124d4f5f9ed3ad26264458) @@ -21,7 +21,7 @@ class Loader(DynamicLoader): """ - The TD Air Trap ui loader + The TD Voltages ui loader """ def __init__(self): @@ -34,18 +34,29 @@ finds and creates widgets :return: none """ - self.tbReset = self.find_widget(QtWidgets.QToolButton , 'tbReset' ) - self.tbSend = self.find_widget(QtWidgets.QToolButton , 'tbSend' ) - self.tblOpMode = self.find_widget(QtWidgets.QTableWidget , 'tblOpMode' ) - self.tblSubMode = self.find_widget(QtWidgets.QTableWidget , 'tblSubMode' ) + self.tbReset = self.find_widget(QtWidgets.QToolButton , 'tbReset' ) + self.tbSend = self.find_widget(QtWidgets.QToolButton , 'tbSend' ) + self.line_1_2 = self.find_widget(QtWidgets.QDoubleSpinBox , '12VLineDoubleSpinBox' ) + self.line_3_3v = self.find_widget(QtWidgets.QDoubleSpinBox , '33VLineDoubleSpinBox' ) + self.line_logic_5v = self.find_widget(QtWidgets.QDoubleSpinBox , '5VLogicDoubleSpinBox' ) + self.line_sensors_5v= self.find_widget(QtWidgets.QDoubleSpinBox , '5VSensorsDoubleSpinBox' ) + self.line_24v = self.find_widget(QtWidgets.QDoubleSpinBox , '24VLineDoubleSpinBox' ) + self.line_regen_24v = self.find_widget(QtWidgets.QDoubleSpinBox , '24RegenDoubleSpinBox' ) + self.fpga_adc_ref = self.find_widget(QtWidgets.QDoubleSpinBox , 'fPGAADCDoubleSpinBox' ) + self.res_ref = self.find_widget(QtWidgets.QDoubleSpinBox , 'resRefDoubleSpinBox' ) + self.fpga_vcc = self.find_widget(QtWidgets.QDoubleSpinBox , 'fPGAVCCDoubleSpinBox' ) + self.fpga_vaux = self.find_widget(QtWidgets.QDoubleSpinBox , 'fPGAVAUXDoubleSpinBox' ) + self.fpga_vpvn = self.find_widget(QtWidgets.QDoubleSpinBox , 'fPGAVPVNDoubleSpinBox' ) + + def _init_connections(self): """ initializes the widgets connections :return: none """ self.tbReset.clicked.connect(self._init_widgets) - self.tbSend.clicked.connect(self.do_treatment_states) + self.tbSend.clicked.connect(self.do_voltage_data) # self.tblOpMode.currentCellChanged.connect(self.do_treatment_states) # self.tblSubMode.currentCellChanged.connect(self.do_treatment_states) @@ -55,20 +66,38 @@ initializes the widgets' properties :return: none """ - self.tblOpMode.setCurrentCell(TDOpModes.MODE_INIT.value, 0) - self.tblOpMode.horizontalHeaderItem(0).setTextAlignment(QtCore.Qt.AlignLeft) - self.tblSubMode.setCurrentCell(TDStandbyStates.STANDBY_START_STATE.value, 0) - self.tblSubMode.horizontalHeaderItem(0).setTextAlignment(QtCore.Qt.AlignLeft) + self.line_1_2.setValue = 1.2 + self.line_3_3v.setValue = 3.3 + self.line_logic_5v.setValue = 5.0 + self.line_sensors_5v.setValue = 5.0 + self.line_24v.setValue = 24.0 + self.line_regen_24v.setValue = 24.0 + self.fpga_adc_ref.setValue = 1.0 + self.res_ref.setValue = 3.0 + self.fpga_vcc.setValue = 3.0 + self.fpga_vaux.setValue = 3.0 + self.fpga_vpvn.setValue = 1.0 @Slot() - def do_treatment_states(self): + def do_voltage_data(self): """ - the slot for state change + the slot for voltage data change :return: none """ - op_mode = int(self.tblOpMode.verticalHeaderItem(self.tblOpMode.currentRow()).text()) - sub_mode = int(self.tblSubMode.verticalHeaderItem(self.tblSubMode.currentRow()).text()) - self.td_interface.td_operation_mode( - op_mode, - sub_mode + line_1_2v = self.line_1_2.value() + line_3_3v = self.line_3_3v.value() + line_logic_5v = self.line_logic_5v.value() + line_sensors_5v = self.line_sensors_5v.value() + line_24v = self.line_24v.value() + line_regen_24v = self.line_regen_24v.value() + fpga_adc_ref = self.fpga_adc_ref.value() + res_ref = self.res_ref.value() + fpga_vcc = self.fpga_vcc.value() + fpga_vaux = self.fpga_vaux.value() + fpga_vpvn = self.fpga_vpvn.value() + self.td_interface.td_voltages( + line_1_2v, line_3_3v, line_logic_5v, + line_sensors_5v, line_24v, line_regen_24v, + fpga_adc_ref, res_ref, fpga_vcc, + fpga_vaux, fpga_vpvn ) \ No newline at end of file