Newer
Older
from PyQt5.QtWidgets import QMainWindow, QApplication, QPushButton, QTextEdit
from PyQt5 import uic, QtCore, QtGui, QtWidgets
import sys
class TestStandMainWindow(QMainWindow):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
uic.loadUi('climate-lab-main.ui', self)
self.startButton.clicked.connect(lambda: self.doMeasurement())
def doMeasurement(self):
self.setEnabled(False)
with open('test_stand_parameter.json', 'r') as f:
config_data = json.load(f)
output_basename = self.baseName.text()
meas = prototype.Measurements(config_data['chamber_ip'], config_data['vna_ip'], output_basename,
False, config_data)
try:
temperatures = meas.perform_temperature_sweep(self.startParameter.value(), self.stopParameter.value(),
self.stepParameter.value(),
self.fixedParameter.value(), self.soakingTime.value(),
self.stableReads.value())
temp_extensions = []
for t in temperatures:
temp_extensions.append(str(t)+'deg_'+str(self.fixedParameter.value())+'rh')
prototype.plot_output(output_basename, temp_extensions, True, output_basename +
': Temperature sweep ' + str(temperatures[0]) + ' degC to ' +
str(temperatures[-1]) + ' degC')
finally:
meas.chamber.close()
self.setEnabled(True)
if __name__ == '__main__':
app = QApplication(sys.argv)
mainWindow = TestStandMainWindow()
mainWindow.show()
app.exec_()