- integrated Stirrer into GUI
This commit is contained in:
+35
-4
@@ -33,25 +33,37 @@ class Window(QtWidgets.QMainWindow, Ui_MainWindow):
|
||||
self.actionStop.triggered.connect(self.disconnect)
|
||||
self.Slider_pwr_soll.valueChanged.connect(self.on_slider_pwr_soll_changed)
|
||||
self.Slider_temp_soll.valueChanged.connect(self.on_slider_temp_soll_changed)
|
||||
self.Slider_speed_soll.valueChanged.connect(self.on_slider_stirrer_speed_soll_changed)
|
||||
|
||||
self.doubleSpinBox_heatrate_soll.valueChanged.connect(self.on_heatrate_soll_changed)
|
||||
|
||||
self.checkbox_heater_activate.stateChanged.connect(self.on_checkbox_changed)
|
||||
self.checkbox_stirrer_activate.stateChanged.connect(self.on_checkbox_stirrer_activate_changed)
|
||||
|
||||
self.send_data = Queue()
|
||||
self.slider_pwr_initial_update = True
|
||||
self.slider_temp_soll_initial_update = True
|
||||
self.slider_speed_initial_update = True
|
||||
self.checkbox_heater_activate_initial_update = True
|
||||
self.checkbox_stirrer_activate_initial_update = True
|
||||
self.heatrate_soll_initial_update = True
|
||||
|
||||
def connect(self):
|
||||
self.slider_pwr_initial_update = True
|
||||
self.slider_temp_soll_initial_update = True
|
||||
self.slider_speed_initial_update = True
|
||||
self.checkbox_heater_activate_initial_update = True
|
||||
self.checkbox_stirrer_activate_initial_update = True
|
||||
self.heatrate_soll_initial_update = True
|
||||
self.ws_client.connect(uri=self.plainTextUri.toPlainText())
|
||||
|
||||
def disconnect(self):
|
||||
self.ws_client.disconnect()
|
||||
|
||||
def on_slider_temp_soll_changed(self, value):
|
||||
print("on_slider_temp_soll_changed {}".format(value))
|
||||
self.msg_tempctrl.send({'Soll': {'Temp': value}})
|
||||
|
||||
def on_heatrate_soll_changed(self, value):
|
||||
value = round(value, 1)
|
||||
print("on_textbox_heatrate_soll_changed {}".format(value))
|
||||
@@ -61,12 +73,16 @@ class Window(QtWidgets.QMainWindow, Ui_MainWindow):
|
||||
print("on_slider_pwr_soll_changed {}".format(value))
|
||||
self.msg_heater.send({'Power': value})
|
||||
|
||||
def on_slider_temp_soll_changed(self, value):
|
||||
print("on_slider_temp_soll_changed {}".format(value))
|
||||
self.msg_tempctrl.send({'Soll': {'Temp': value}})
|
||||
|
||||
def on_checkbox_changed(self, value):
|
||||
print("on_checkbox_changed {}".format(value))
|
||||
self.msg_heater.send({'Activate': int(value == 2)})
|
||||
|
||||
def on_slider_stirrer_speed_soll_changed(self, value):
|
||||
print("on_slider_stirrer_speed_soll_changed {}".format(value))
|
||||
self.msg_stirrer.send({'Speed': value})
|
||||
|
||||
def on_checkbox_stirrer_activate_changed(self, value):
|
||||
print("on_checkbox_stirrer_activate_changed {}".format(value))
|
||||
self.msg_stirrer.send({'Activate': int(value == 2)})
|
||||
|
||||
def on_pot_changed(self, msg):
|
||||
@@ -127,6 +143,21 @@ class Window(QtWidgets.QMainWindow, Ui_MainWindow):
|
||||
|
||||
def on_stirrer_changed(self, msg):
|
||||
print("on_stirrer_changed {}".format(msg))
|
||||
for key in msg:
|
||||
if "Activate" in key:
|
||||
if self.checkbox_stirrer_activate_initial_update:
|
||||
self.checkbox_stirrer_activate.setCheckState(2 if msg['Activate'] == 1 else 0)
|
||||
self.checkbox_stirrer_activate_initial_update = False
|
||||
elif "Speed" in key:
|
||||
if self.slider_speed_initial_update:
|
||||
self.Slider_speed_soll.setValue(msg['Speed'])
|
||||
self.slider_speed_initial_update = False
|
||||
elif "Capabilities" in key:
|
||||
submsg = msg['Capabilities']
|
||||
if "Power" in submsg:
|
||||
submsg = submsg['Power']
|
||||
self.Slider_speed_soll.setLowerBound(submsg['Min'])
|
||||
self.Slider_speed_soll.setUpperBound(submsg['Max'])
|
||||
|
||||
def closeEvent(self, event):
|
||||
print("Exitting gracefully!")
|
||||
|
||||
Reference in New Issue
Block a user