Beispiel #1
0
    def run_sensor_cal_type(self, sensor, caltype, cal_info):

        completed = False

        logging.info('Running {} calibration for sensor {} on q330 (hostname: {})'.format(caltype.upper(), sensor, cal_info['ip']))

        # create qcal thread
        qcal_thread = QCalThread(os.path.join(self.app_root_dir, pcgl.get_bin_root()),
                                 cal_info['cmd_line'][caltype],
                                 cal_info['output_dir'])

        ping_thread = PingThread(cal_info['ip'])

        dlg = QtWidgets.QDialog(self.app_win)
        dlg = ProgressDlg(self.app_win)
        progdlg = Ui_ProgressDlg()
        progdlg.setupUi(dlg)
        dlg.setWindowTitle('PyCal - Data Acquisition')

        if caltype == CALTYPE_RBLF:
            cal_descr = 'Calibration Signal: LOW Frequency Random Binary\n\n' + cal_info['cal_descr']
        elif caltype == CALTYPE_RBHF:
            cal_descr = 'Calibration Signal: HIGH Frequency Random Binary\n\n' + cal_info['cal_descr']
        else:
            msg = 'Invalid CALIBRATION TYPE:' + caltype
            logging.error(msg)
            QtWidgets.QMessageBox().critical(self.app_win, 'PyCal ERROR', msg,
                                             QtWidgets.QMessageBox().Close,
                                             QtWidgets.QMessageBox().Close)
            return False, None

        progdlgHlpr = ProgressDlgHelper(dlg, cal_descr, cal_info['cal_time'][caltype], progdlg, qcal_thread, ping_thread)
        progdlgHlpr.start()

        if (dlg.exec() == QtWidgets.QDialog.Accepted) and (progdlgHlpr.retcode == 0):
            completed = True
            msg = 'Calibration completed successfully. Miniseed file saved: {}'.format(progdlgHlpr.calmsfn)
            logging.info(msg)
            # res = QtWidgets.QMessageBox().information(self.app_win, 'PyCal',
            #                                           'Calibration Completed!\n\n' + progdlgHlpr.msg,
            #                                           QtWidgets.QMessageBox().Close,
            #                                           QtWidgets.QMessageBox().Close)

        else:
            completed = False
            msg1 = 'Calibration failed with exit code: {}'.format(progdlgHlpr.retcode)
            msg2 = 'Calibration failed with message: {}'.format(progdlgHlpr.msg)
            logging.error(msg1)
            logging.error(msg2)
            res = QtWidgets.QMessageBox().critical(self.app_win, 'PyCal', msg2,
                                                  QtWidgets.QMessageBox().Close,
                                                  QtWidgets.QMessageBox().Close)

        return completed, progdlgHlpr.calmsfn
Beispiel #2
0
    def run_cal_B(self):

        if self.cur_row != -1:
            qtDlg = ProgressDlg()
            dlgUI = Ui_EstConnFrm()
            dlgUI.setupUi(qtDlg)
            qtDlg.setWindowTitle('PyCal - Connecting to Q330')
            wcfg = self.cfg[self.cur_row]
            estcomms = EstCommsDlgHelper(qtDlg, dlgUI, 'B', wcfg)

            if estcomms.exec() == QtWidgets.QDialog.Accepted:
                self.run_sensor_cal('B')
Beispiel #3
0
    def run_analysis(self, method, *args):

        dlg = ProgressDlg()
        dlgUI = Ui_AnalysisProgressFrm()
        dlgUI.setupUi(dlg)
        dlg.setWindowTitle('PyCal - Data Analysis')
        dlgHlpr = AnalysisProgressDlgHelper(dlg, dlgUI)

        res, msg_fn, amppltfn, phapltfn = dlgHlpr.run_analysis(method, *args)
        if res == -1:
            logging.warning('Analysis canceled by user.')
        elif res == 0:
            logging.info('Analysis completed.')

        return res, msg_fn, amppltfn, phapltfn
Beispiel #4
0
    def cool_off_q330(self, window_title= '', info_text='', cooling_period_seconds=330):

        dlg = ProgressDlg()
        dlgUI = Ui_CoolOffFrm()
        dlgUI.setupUi(dlg)
        dlgUI.infoLbl.setText(info_text)
        dlg.setWindowTitle(window_title)
        dlgHlpr = CoolOffDlgHelper(dlg, dlgUI)
        dlgHlpr.cooling_period_seconds = cooling_period_seconds


        success = dlgHlpr.exec() == QtWidgets.QDialog.Accepted
        if (success):
            logging.info('cool off completed.')
        else:
            logging.warning('cool off canceled by user during q330 cool off with msg: ' + info_text)

        return success