def __init__(self, main, ui):
        self.ui = ui
        self.copyDataFunc = main.CopyDataFunc
        self.collect_data_thread = Collect_data()
        self.save_thread = Save_Thread()

        main.connect(self.ui.pushButton_browse_keithley, SIGNAL('clicked()'),
                     self.Browse_keithley)
        main.connect(self.ui.pushButton_import_keithley, SIGNAL('clicked()'),
                     self.Import_keithley)
        main.connect(self.ui.pushButton_close_keithley, SIGNAL('clicked()'),
                     self.Close_keithley)
        main.connect(self.ui.pushButton_select_keithley, SIGNAL('clicked()'),
                     self.Select_keithley)
        main.connect(self.ui.pushButton_scan_keithley, SIGNAL('clicked()'),
                     self.Scan_keithley)
        main.connect(self.ui.pushButton_pause_keithley, SIGNAL('clicked()'),
                     self.collect_data_thread.pause)
        main.connect(self.ui.pushButton_stop_keithley, SIGNAL('clicked()'),
                     self.collect_data_thread.stop)
        main.connect(self.ui.pushButton_clear_keithley, SIGNAL('clicked()'),
                     self.collect_data_thread.Clear_keithley)
        main.connect(self.ui.pushButton_copy_keithley, SIGNAL('clicked()'),
                     self.Copy_keithley)
        main.connect(self.ui.pushButton_fit_keithley, SIGNAL('clicked()'),
                     self.collect_data_thread.Fit)
        main.connect(self.ui.pushButton_browse_save_G_keithley,
                     SIGNAL('clicked()'), self.Google_browse)
        main.connect(self.ui.pushButton_browse_save_O_keithley,
                     SIGNAL('clicked()'), self.Other_browse)
        main.connect(self.ui.pushButton_check_G_keithley, SIGNAL('clicked()'),
                     self.Check)
        main.connect(self.ui.pushButton_Select_Directory_G_keithley,
                     SIGNAL('clicked()'), self.Google_select_namefolder)
        main.connect(self.ui.pushButton_Save_G_keithley, SIGNAL('clicked()'),
                     self.G_save)
        main.connect(self.ui.pushButton_Open_G_keithley, SIGNAL('clicked()'),
                     self.G_open)
        main.connect(self.ui.pushButton_Save_O_keithley, SIGNAL('clicked()'),
                     self.O_save)
        main.connect(self.ui.pushButton_Open_O_keithley, SIGNAL('clicked()'),
                     self.O_open)
        main.connect(
            self.ui.radioButton_voltage_keithley, SIGNAL("clicked()"),
            lambda: self.ui.tabWidget_scan_keithley.setCurrentIndex(0))
        main.connect(self.ui.radioButton_timescan_keithley,
                     SIGNAL("clicked()"),
                     self.collect_data_thread.Pre_MPL_Plot)
        main.connect(self.ui.radioButton_stepscan_keithley,
                     SIGNAL("clicked()"),
                     self.collect_data_thread.Pre_MPL_Plot)
        main.connect(self.collect_data_thread, SIGNAL("plot"), self.Plot_data)
        main.connect(self.collect_data_thread, SIGNAL("mpl_plot"),
                     self.Plot_analysis)
        main.connect(self.collect_data_thread, SIGNAL("data_available"),
                     self.Pre_save)
        # self.connect(self.Keithley_programs.collect_data_thread, SIGNAL("clear_plot"), self.Keithley_programs.Clear_plot)

        self.Array = []
        self.count = 0
        self.go_on = True

        # Set up guiqwt plot
        self.curve_item = make.curve([], [], color='b', marker="o")
        self.ui.curvewidget_keithley.plot.add_item(self.curve_item)
        self.ui.curvewidget_keithley.plot.set_antialiasing(True)
        self.ui.curvewidget_keithley.plot.set_titles(
            "Measurement and Plot Based on Array", "X-Axis", "Y-Axis")

        self.curve_ct_item = make.curve([], [], color='b', marker="o")
        self.ui.curvewidget_ct_keithley.plot.add_item(self.curve_ct_item)
        self.ui.curvewidget_ct_keithley.plot.set_antialiasing(True)
        self.ui.curvewidget_ct_keithley.plot.set_titles(
            "Current vs Time", "Time", "Current")

        self.curve_vt_item = make.curve([], [], color='b', marker="o")
        self.ui.curvewidget_vt_keithley.plot.add_item(self.curve_vt_item)
        self.ui.curvewidget_vt_keithley.plot.set_antialiasing(True)
        self.ui.curvewidget_vt_keithley.plot.set_titles(
            "Voltage vs Time", "Time", "Voltage")
Example #2
0
    def __init__ (self, main, ui):

        self.ui = ui
        self.copyDataFunc = main.CopyDataFunc
        self.update_visa()

        self.collectDataThread = CollectData()
        self.save_thread = Save_Thread()
        
        main.connect(self.ui.pushButton_copy_LI, SIGNAL('clicked()'), self.Copy_LI_S)
        main.connect(self.ui.pushButtonSelectReadVisaLI_S, SIGNAL('clicked()'),self.select_ReadVisa)
        main.connect(self.ui.pushButtonSelectSweepVisaLI_S, SIGNAL('clicked()'), self.select_SweepVisa)
        main.connect(self.ui.pushButtonCloseReadVisaLI_S, SIGNAL('clicked()'), self.close_ReadVisa)
        main.connect(self.ui.pushButtonCloseSweepVisaLI_S, SIGNAL('clicked()'), self.close_SweepVisa)
        
        main.connect(self.ui.pushButtonStartLI_S, SIGNAL("clicked()"), self.start)
        main.connect(self.ui.pushButtonPauseLI_S, SIGNAL("clicked()"), self.collectDataThread.pause)
        main.connect(self.ui.pushButtonStopLI_S, SIGNAL("clicked()"), self.stop)
        
        main.connect(self.collectDataThread, SIGNAL("Plot"), self.plotData)
        main.connect(self.collectDataThread, SIGNAL("StatPlot"), self.plot_Stats)
        main.connect(self.collectDataThread, SIGNAL("PreSave"), self.pre_save)
        
        main.connect(self.ui.pushButtonBrowseLI_S, SIGNAL("clicked()"), self.browse)
        main.connect(self.ui.pushButtonSelectFolderLI_S, SIGNAL("clicked()"), self.select_name)
        main.connect(self.ui.radioButtonCSV_LI_S, SIGNAL("clicked()"), self.save_type)
        main.connect(self.ui.radioButtonTXT_LI_S, SIGNAL("clicked()"), self.save_type)
        main.connect(self.ui.pushButtonSaveLI_S, SIGNAL("clicked()"), self.save)


        self.canvas_import_LI_S = FigureCanvas(self.ui.mplwidget_import_LI_S.figure)
        self.canvas_import_LI_S.setParent(self.ui.widgetLI_S)
        # This is the toolbar widget for the import canvas
        self.mpl_toolbar_import_LI_S = NavigationToolbar(self.canvas_import_LI_S, self.ui.widgetLI_S)
        
        vbox_import_LI_S = QVBoxLayout()
        vbox_import_LI_S.addWidget(self.canvas_import_LI_S)
        vbox_import_LI_S.addWidget(self.mpl_toolbar_import_LI_S)
        self.ui.widgetLI_S.setLayout(vbox_import_LI_S)
        
        self.ui.mplwidget_import_LI_S = self.canvas_import_LI_S
        
        # Set up guiqwt plot
        self.curve_item = make.curve([], [], color = 'b', marker = "o")
        self.ui.curvewidgetLI_S.plot.add_item(self.curve_item)
        self.ui.curvewidgetLI_S.plot.set_antialiasing(True)
        
        self.curve_item_STDEV = make.curve([], [], color = 'b', marker = "o")
        self.ui.curvewidgetSTDEV_LI_S.plot.add_item(self.curve_item_STDEV)
        self.ui.curvewidgetSTDEV_LI_S.plot.set_antialiasing(True)
        
        self.curve_item_Mean = make.curve([], [], color = 'b', marker = "o")
        self.ui.curvewidgetMeanValue_LI_S.plot.add_item(self.curve_item_Mean)
        self.ui.curvewidgetMeanValue_LI_S.plot.set_antialiasing(True)
        
        self.ui.pushButtonStartLI_S.setEnabled(False)
        self.ui.pushButtonStopLI_S.setEnabled(False)
        self.ui.pushButtonPauseLI_S.setEnabled(False)
        self.ui.pushButtonClearLI_S.setEnabled(False)
        self.ui.pushButtonCloseReadVisaLI_S.setEnabled(False)
        self.ui.pushButtonCloseSweepVisaLI_S.setEnabled(False)
        
        self.SweepVisa_check = False
        self.ReadVisa_check = False
    def __init__(self, main, ui):
        self.ui = ui
        self.copyData = main.copyData
        self.collectDataThread = CollectData()
        self.save_thread = Save_Thread()

        self.update_visa()

        self.ui.pushButtonStart.setDisabled(True)
        self.ui.pushButtoncloseVisa1.setDisabled(True)
        self.ui.pushButtoncloseVisa2.setDisabled(True)
        self.ui.pushButtonStop.setEnabled(False)
        self.ui.pushButtonStart.setEnabled(False)

        self.x_value = []
        self.y_value = []
        self.item = 0
        self.Array = []

        self.timeStep = .1
        self.ui.lineEditTimeStep.setText(str(self.timeStep))

        self.directory = ''
        self.temp = []

        # Sets up Current v. Voltage guiqwt plot
        self.curve_item_ay = make.curve([], [], color='b', marker="o")
        self.ui.curvewidget_scanPlot_ay.plot.add_item(self.curve_item_ay)
        self.ui.curvewidget_scanPlot_ay.plot.set_antialiasing(True)

        # Sets up Voltage v. Time Step guiqwt plot
        self.curve_item_vt_ay = make.curve([], [], color='b', marker="o")
        self.ui.curvewidget_vt_ay.plot.add_item(self.curve_item_vt_ay)
        self.ui.curvewidget_vt_ay.plot.set_antialiasing(True)

        # Sets up Current v. Time Step guiqwt plot
        self.curve_item_ct_ay = make.curve([], [], color='b', marker="o")
        self.ui.curvewidget_ct_ay.plot.add_item(self.curve_item_ct_ay)
        self.ui.curvewidget_ct_ay.plot.set_antialiasing(True)

        # For the canvas.
        self.canvas_import_ay = FigureCanvas(
            self.ui.mplwidget_import_ay.figure)
        self.canvas_import_ay.setParent(self.ui.widget_import_ay)
        self.mpl_toolbar_import_ay = NavigationToolbar(
            self.canvas_import_ay, self.ui.widget_import_ay)
        self.canvas_analysis_ay = FigureCanvas(
            self.ui.mplwidget_analysis_ay.figure)
        self.canvas_analysis_ay.setParent(self.ui.widget_analysis_ay)
        self.mpl_toolbar_analysis_ay = NavigationToolbar(
            self.canvas_analysis_ay, self.ui.widget_analysis_ay)
        self.canvas_analysis_ct_ay = FigureCanvas(
            self.ui.mplwidget_analysis_ct_ay.figure)
        self.canvas_analysis_ct_ay.setParent(self.ui.widget_analysis_ct_ay)
        self.mpl_toolbar_analysis_ct_ay = NavigationToolbar(
            self.canvas_analysis_ct_ay, self.ui.widget_analysis_ct_ay)
        self.canvas_analysis_vt_ay = FigureCanvas(
            self.ui.mplwidget_analysis_vt_ay.figure)
        self.canvas_analysis_vt_ay.setParent(self.ui.widget_analysis_vt_ay)
        self.mpl_toolbar_analysis_vt_ay = NavigationToolbar(
            self.canvas_analysis_vt_ay, self.ui.widget_analysis_vt_ay)

        # Create the QVBoxLayout object and add the widget into the layout
        vbox_import_ay = QVBoxLayout()
        vbox_import_ay.addWidget(self.canvas_import_ay)
        vbox_import_ay.addWidget(self.mpl_toolbar_import_ay)
        self.ui.widget_import_ay.setLayout(vbox_import_ay)
        vbox_analysis_ay = QVBoxLayout()
        vbox_analysis_ay.addWidget(self.canvas_analysis_ay)
        vbox_analysis_ay.addWidget(self.mpl_toolbar_analysis_ay)
        self.ui.widget_analysis_ay.setLayout(vbox_analysis_ay)
        vbox_analysis_ct_ay = QVBoxLayout()
        vbox_analysis_ct_ay.addWidget(self.canvas_analysis_ct_ay)
        vbox_analysis_ct_ay.addWidget(self.mpl_toolbar_analysis_ct_ay)
        self.ui.widget_analysis_ct_ay.setLayout(vbox_analysis_ct_ay)
        vbox_analysis_vt_ay = QVBoxLayout()
        vbox_analysis_vt_ay.addWidget(self.canvas_analysis_vt_ay)
        vbox_analysis_vt_ay.addWidget(self.mpl_toolbar_analysis_vt_ay)
        self.ui.widget_analysis_vt_ay.setLayout(vbox_analysis_vt_ay)

        # Connect the mplwidget with canvass
        self.ui.mplwidget_import_ay = self.canvas_import_ay
        self.ui.mplwidget_analysis_ay = self.canvas_analysis_ay
        self.ui.mplwidget_analysis_ct_ay = self.canvas_analysis_ct_ay
        self.ui.mplwidget_analysis_vt_ay = self.canvas_analysis_vt_ay

        main.connect(self.ui.pushButtonselectVisa, SIGNAL('clicked()'),
                     self.select_visa)
        main.connect(self.ui.pushButtonupdateVisa, SIGNAL('clicked()'),
                     self.update_visa)
        main.connect(self.ui.pushButtoncloseVisa1, SIGNAL('clicked()'),
                     self.close_visaCurrent)
        main.connect(self.ui.pushButtoncloseVisa2, SIGNAL('clicked()'),
                     self.close_visaVoltage)

        main.connect(self.ui.pushButton_browse_ay, SIGNAL('clicked()'),
                     self.browse_ay)
        main.connect(self.ui.pushButton_import_ay, SIGNAL('clicked()'),
                     self.import_ay)
        main.connect(self.ui.pushButton_copy_ay, SIGNAL('clicked()'),
                     self.copy_ay)

        main.connect(self.ui.pushButtonStart, SIGNAL('clicked()'),
                     self.pre_start)
        main.connect(self.ui.pushButtonPause, SIGNAL('clicked()'),
                     self.collectDataThread.pause)
        main.connect(self.ui.pushButtonStop, SIGNAL('clicked()'), self.stop)
        main.connect(self.ui.pushButtonClear, SIGNAL('clicked()'),
                     self.clear_plots)
        main.connect(self.ui.pushButtonFit, SIGNAL('clicked()'), self.Fit)

        main.connect(self.collectDataThread, SIGNAL("Plot"), self.plotData)
        main.connect(self.collectDataThread, SIGNAL("Analyze"), self.Analyze)

        main.connect(self.ui.pushButton_browse_save_G_ay, SIGNAL('clicked()'),
                     self.Google_browse)
        main.connect(self.ui.pushButton_check_G_ay, SIGNAL('clicked()'),
                     self.Check)
        main.connect(self.ui.pushButton_Select_Directory_G_ay,
                     SIGNAL('clicked()'), self.Google_select_namefolder)
        main.connect(self.ui.radioButton_csv_G_ay, SIGNAL('clicked()'),
                     self.Select_type_G_ay)
        main.connect(self.ui.radioButton_txt_G_ay, SIGNAL('clicked()'),
                     self.Select_type_G_ay)
        main.connect(self.ui.radioButton_Timename_G_ay, SIGNAL('clicked()'),
                     self.Select_name_G_ay)
        main.connect(self.ui.radioButton_Custom_Name_G_ay, SIGNAL('clicked()'),
                     self.Select_name_G_ay)
        main.connect(self.ui.pushButton_Save_G_ay, SIGNAL('clicked()'),
                     self.G_save)
    def __init__(self, main, ui):
        self.ui = ui
        self.copyData = main.copyData
        self.collectDataThread = CollectData()
        self.save_thread = Save_Thread()
        
        self.rm = visa.ResourceManager()
        self.update_visa()
        
        self.ui.startButton.setDisabled(True)
        self.ui.closeVisaButton0.setDisabled(True)
        self.ui.closeVisaButton1.setDisabled(True)
        self.ui.stopButton.setEnabled(False)
        self.ui.startButton.setEnabled(False)
        
        self.x_value = []
        self.y_value = []
        self.item = 0
        self.Array = []
        self.frontX = 0.0
        self.frontY = 0.0
        self.backX = 0.0
        self.backY = 0.0
        self.x_plot = [-1.0,1.0]
        self.y_plot = [-1.0,1.0]
        
        self.timeStep = .1
        self.ui.timeStepValue.setText(str(self.timeStep))
        
        self.directory = ''
        self.temp = []

        # Sets up Current v. Voltage guiqwt plot
        self.curve_item_ay = make.curve([], [], color='b', marker = "o")
        self.ui.curvewidget_scanPlot_ay.plot.add_item(self.curve_item_ay)
        self.ui.curvewidget_scanPlot_ay.plot.set_antialiasing(True)
        self.ui.curvewidget_scanPlot_ay.plot.set_titles("Current v. Voltage", "Current (A)", "Voltage (V)")
        
        # Sets up Voltage v. Time Step guiqwt plot
        self.curve_item_vt_ay = make.curve([], [], color='b', marker = "o")
        self.ui.curvewidget_vt_ay.plot.add_item(self.curve_item_vt_ay)
        self.ui.curvewidget_vt_ay.plot.set_antialiasing(True)
        self.ui.curvewidget_vt_ay.plot.set_titles("Voltage v. Time Step", "Time Step", "Voltage (V)")
        
         # Sets up Current v. Time Step guiqwt plot
        self.curve_item_ct_ay = make.curve([], [], color='b', marker = "o")
        self.ui.curvewidget_ct_ay.plot.add_item(self.curve_item_ct_ay)
        self.ui.curvewidget_ct_ay.plot.set_antialiasing(True)
        self.ui.curvewidget_ct_ay.plot.set_titles("Current v. Time Step", "Time Step", "Current (A)")
        
        main.connect(self.ui.startButton, SIGNAL("clicked()"), self.start)
        main.connect(self.ui.stopButton, SIGNAL("clicked()"), self.stop)
        main.connect(self.ui.slopeButton_ay, SIGNAL("clicked()"), self.slopeTriger)
        main.connect(self.collectDataThread, SIGNAL("stop"), self.stop)
        main.connect(self.collectDataThread, SIGNAL("plot"), self.plotData)
        main.connect(self.collectDataThread, SIGNAL("analyse"), self.analyse)

        main.connect(self.ui.pushButton_browse_ay, SIGNAL('clicked()'), self.browse_ay)
        main.connect(self.ui.pushButton_import_ay, SIGNAL('clicked()'), self.import_ay)
        main.connect(self.ui.pushButton_copy_ay, SIGNAL('clicked()'), self.copy_ay)
        main.connect(self.ui.selectVisaButton, SIGNAL("clicked()"), self.select_visa)
        main.connect(self.ui.updateVisaButton, SIGNAL("clicked()"), self.update_visa)
        main.connect(self.ui.closeVisaButton0, SIGNAL("clicked()"), self.close_visa0)
        main.connect(self.ui.closeVisaButton1, SIGNAL("clicked()"), self.close_visa1)
        
        main.connect(self.ui.pushButton_browse_save_G_ay, SIGNAL('clicked()'), self.Google_browse)
        main.connect(self.ui.pushButton_browse_save_O_ay, SIGNAL('clicked()'), self.Other_browse)
        main.connect(self.ui.pushButton_check_G_ay, SIGNAL('clicked()'), self.Check)
        main.connect(self.ui.pushButton_Select_Directory_G_ay, SIGNAL('clicked()'), self.Google_select_namefolder)
        main.connect(self.ui.pushButton_Save_G_ay, SIGNAL('clicked()'), self.G_save)
        main.connect(self.ui.pushButton_Open_G_ay, SIGNAL('clicked()'), self.G_open)
        main.connect(self.ui.pushButton_Save_O_ay, SIGNAL('clicked()'), self.O_save)
        main.connect(self.ui.pushButton_Open_O_ay, SIGNAL('clicked()'), self.O_open)
        
        main.ui.mplwidget_analysis_ay.figure.canvas.mpl_connect('button_release_event', self.slope)
    def __init__(self, main, ui):
        self.ui = ui
        self.copyDataFunc = main.CopyDataFunc
        self.collect_data_thread = Collect_data()
        self.save_thread = Save_Thread()
        
        main.connect(self.ui.pushButtonK2_browseGate, SIGNAL('clicked()'), self.Browse_Array)
        main.connect(self.ui.pushButtonK2_importGate, SIGNAL('clicked()'), self.Import_Array)
        main.connect(self.ui.pushButtonK2_copyGate, SIGNAL('clicked()'), self.Copy_Array)
        main.connect(self.ui.pushButtonK2_updateGate, SIGNAL('clicked()'), self.update_visas)
        main.connect(self.ui.pushButtonK2_updateLead, SIGNAL('clicked()'), self.update_visas)
        main.connect(self.ui.pushButtonK2_selectGate, SIGNAL('clicked()'), lambda : self.Select_visa("gate", self.gate_visa, self.ui.comboBoxK2_gateVisa, self.ui.lineEditK2_gateVisa, [self.ui.pushButtonK2_selectGate, self.ui.pushButtonK2_closeGate]))
        main.connect(self.ui.pushButtonK2_selectLead, SIGNAL('clicked()'), lambda : self.Select_visa("lead", self.lead_visa, self.ui.comboBoxK2_leadVisa, self.ui.lineEditK2_leadVisa, [self.ui.pushButtonK2_selectLead, self.ui.pushButtonK2_closeLead]))
        main.connect(self.ui.pushButtonK2_closeGate, SIGNAL('clicked()'), lambda : self.Close_visa("gate", self.gate_visa, self.ui.lineEditK2_gateVisa, [self.ui.pushButtonK2_selectGate, self.ui.pushButtonK2_closeGate]))
        main.connect(self.ui.pushButtonK2_closeLead, SIGNAL('clicked()'), lambda : self.Close_visa("lead", self.lead_visa, self.ui.lineEditK2_leadVisa, [self.ui.pushButtonK2_selectLead, self.ui.pushButtonK2_closeLead]))
        main.connect(self.ui.pushButtonK2_Start, SIGNAL('clicked()'), self.start)
        main.connect(self.ui.pushButtonK2_Stop, SIGNAL('clicked()'), self.collect_data_thread.stop)
        main.connect(self.ui.pushButtonK2_Pause, SIGNAL('clicked()'), self.collect_data_thread.pause)
        main.connect(self.ui.pushButtonK2_browse_save_G, SIGNAL('clicked()'), self.Google_browse)
        main.connect(self.ui.pushButtonK2_browse_save_O, SIGNAL('clicked()'), self.Other_browse)
        main.connect(self.ui.pushButtonK2_check_G, SIGNAL('clicked()'), self.Check)
        main.connect(self.ui.pushButtonK2_Select_Directory_G, SIGNAL('clicked()'), self.Google_select_namefolder)
        main.connect(self.ui.pushButtonK2_Save_G, SIGNAL('clicked()'), self.G_save)
        main.connect(self.ui.pushButtonK2_Open_G, SIGNAL('clicked()'), self.G_open)
        main.connect(self.ui.pushButtonK2_Save_O, SIGNAL('clicked()'), self.O_save)
        main.connect(self.ui.pushButtonK2_Open_O, SIGNAL('clicked()'), self.O_open)
        main.connect(self.collect_data_thread, SIGNAL("curve_plot"), self.curvePlots_update)
        main.connect(self.collect_data_thread, SIGNAL("mpl_plot"), self.mplPlots)
        main.connect(self.collect_data_thread, SIGNAL("data_available"), self.Pre_save)

    
        self.Array = []
        self.count = 0
        self.go_on = True
        
        self.ui.mplwidgetK2_gateArray = self.make_mplToolBar(self.ui.mplwidgetK2_gateArray, self.ui.widgetK2_gateArray)
        self.ui.mplwidgetK2_AgateVoltage = self.make_mplToolBar(self.ui.mplwidgetK2_AgateVoltage, self.ui.widgetK2_AgateVoltage)
        self.ui.mplwidgetK2_AleadCurrent = self.make_mplToolBar(self.ui.mplwidgetK2_AleadCurrent, self.ui.widgetK2_AleadCurrent)
        self.ui.mplwidgetK2_AgateCurrent = self.make_mplToolBar(self.ui.mplwidgetK2_AgateCurrent, self.ui.widgetK2_AgateCurrent)
        self.ui.mplwidgetK2_ALeadResistance = self.make_mplToolBar(self.ui.mplwidgetK2_ALeadResistance, self.ui.widgetK2_ALeadResistance)
        self.ui.mplwidgetK2_ALeadCurrentGateVoltage = self.make_mplToolBar(self.ui.mplwidgetK2_ALeadCurrentGateVoltage, self.ui.widgetK2_ALeadCurrentGateVoltage)
        self.ui.mplwidgetK2_ALeadResistanceGateVoltage = self.make_mplToolBar(self.ui.mplwidgetK2_ALeadResistanceGateVoltage, self.ui.widgetK2_ALeadResistanceGateVoltage)
        
        self.axes_gateArray = None
        self.axes_AgateVoltage = None
        self.axes_AleadCurrent = None
        self.axes_AgateCurrent = None
        self.axes_ALeadResistance = None
        self.axes_ALeadCurrentGateVoltage = None
        self.axes_ALeadResistanceGateVoltage = None
        

        
        #self.ui.mplwidget_import = self.canvas_import
        #self.ui.mplwidget_analysis = self.canvas_analysis
        #self.ui.mplwidget_ct_analysis = self.canvas_ct_analysis
        #self.ui.mplwidget_vt_analysis = self.canvas_vt_analysis
        
        # Set up guiqwt plot
        
        self.curve_itemK2_SgateVoltage = self.make_curveWidgets(self.ui.curvewidgetK2_SgateVoltage, "b", titles = ["Gate Voltage", "Steps", "Gate Voltage (V)"])
        self.curve_itemK2_SleadCurrent = self.make_curveWidgets(self.ui.curvewidgetK2_SleadCurrent, "b", titles = ["Lead Current", "Steps", "Lead Current (A)"])
        self.curve_itemK2_SgateCurrent = self.make_curveWidgets(self.ui.curvewidgetK2_SgateCurrent, "b", titles = ["Gate Current", "Steps", "Gate Current (A)"])
        self.curve_itemK2_SleadResistance = self.make_curveWidgets(self.ui.curvewidgetK2_SleadResistance, "b", titles = ["Lead Resistance", "Steps", "Lead Resistance (Ohms)"])
        self.curve_itemK2_SleadCurrentGateVoltage = self.make_curveWidgets(self.ui.curvewidgetK2_SleadCurrentGateVoltage, "b", titles = ["Lead Current vs Gate Voltage", "Gate Voltage (V)", "Lead Current (A)"])
        self.curve_itemK2_SleadResistanceGateVoltage = self.make_curveWidgets(self.ui.curvewidgetK2_SleadResistanceGateVoltage, "b", titles = ["Lead Resistane vs Gate Voltage", "Gate Voltage (V)", "Lead Resistance (Ohms)"])
        
        self.ui.pushButtonK2_Pause.setEnabled(False)
        self.ui.pushButtonK2_Stop.setEnabled(False)
        self.gate_visa = None
        self.lead_visa = None
        self.update_visas()
        
        self.uiSavingGDpushButtons = [ self.ui.pushButtonK2_browse_save_G, self.ui.pushButtonK2_check_G, self.ui.pushButtonK2_Select_Directory_G, self.ui.pushButtonK2_Save_G, self.ui.pushButtonK2_Open_G]
        self.uiSavingGDradioButton = [self.ui.radioButtonK2_csv_G, self.ui.radioButtonK2_txt_G, self.ui.radioButtonK2_Timename_G, self.ui.radioButtonK2_Custom_Name_G]
        self.uiSavingGDtextEdit = [self.ui.textEditK2_comment_G]
        self.uiSavingGDcomboBox = [self.ui.comboBoxK2_Name_Folder_G]
        self.uiSavingGDlineEdit = [self.ui.lineEditK2_GoogleDrive_G, self.ui.lineEditK2_Custom_Name_G]
        self.uiSavingGDlabel = [self.ui.labelK2_condition_G]
        
        
        """
Example #6
0
    def __init__(self, main, ui):

        self.ui = ui
        self.update_visas()
        self.collectDataThread = CollectData()
        self.save_thread = Save_Thread()
        # Set up guiqwt plot
        self.curve_item_current = make.curve([], [], color='b')
        self.ui.curvewidgetCurrent_CB.plot.add_item(self.curve_item_current)
        self.ui.curvewidgetCurrent_CB.plot.set_antialiasing(True)

        self.curve_item_voltage = make.curve([], [], color='b')
        self.ui.curvewidgetVoltage_CB.plot.add_item(self.curve_item_voltage)
        self.ui.curvewidgetVoltage_CB.plot.set_antialiasing(True)

        self.curve_item_conductance = make.curve([], [], color='b')
        self.ui.curvewidgetConductance_CB.plot.add_item(
            self.curve_item_conductance)
        self.ui.curvewidgetConductance_CB.plot.set_antialiasing(True)

        self.curve_item_resistance = make.curve([], [], color='b')
        self.ui.curvewidgetResistance_CB.plot.add_item(
            self.curve_item_resistance)
        self.ui.curvewidgetResistance_CB.plot.set_antialiasing(True)

        self.ui.pushButtonStart_CB.setEnabled(False)
        self.ui.pushButtonStop_CB.setEnabled(False)
        self.ui.pushButtonPause_CB.setEnabled(False)
        self.ui.pushButtonClear_CB.setEnabled(False)
        self.ui.pushButtonCloseAgilent_CB.setEnabled(False)
        self.ui.pushButtonCloseLockIn_CB.setEnabled(False)

        main.connect(self.ui.pushButtonUpdateVisas_CB, SIGNAL('clicked()'),
                     self.update_visas)
        main.connect(self.ui.pushButtonSelectVisas_CB, SIGNAL('clicked()'),
                     self.select_visas)
        main.connect(self.ui.pushButtonCloseAgilent_CB, SIGNAL('clicked()'),
                     self.closeAgilent)
        main.connect(self.ui.pushButtonCloseLockIn_CB, SIGNAL('clicked()'),
                     self.closeLockIn)
        main.connect(self.ui.pushButtonRetrieveVoltage_CB, SIGNAL('clicked()'),
                     self.retrieve_inputs)

        main.connect(self.ui.pushButtonStart_CB, SIGNAL('clicked()'),
                     self.start)
        main.connect(self.ui.pushButtonPause_CB, SIGNAL('clicked()'),
                     self.collectDataThread.pause)
        main.connect(self.ui.pushButtonStop_CB, SIGNAL('clicked()'), self.stop)
        main.connect(self.ui.pushButtonPause_CB, SIGNAL('clicked()'),
                     self.append_parameters)
        main.connect(self.ui.pushButtonStop_CB, SIGNAL('clicked()'),
                     self.append_parameters)
        main.connect(self.ui.pushButtonClear_CB, SIGNAL('clicked()'),
                     self.reset_plots)

        main.connect(self.collectDataThread, SIGNAL('Plot'), self.plotData)
        main.connect(self.collectDataThread, SIGNAL('PreSave'), self.PreSave)

        main.connect(self.ui.pushButtonBrowse_CB, SIGNAL("clicked()"),
                     self.browse)
        main.connect(self.ui.pushButtonSelectFolder_CB, SIGNAL("clicked()"),
                     self.select_name)
        main.connect(self.ui.radioButtonCSV_CB, SIGNAL("clicked()"),
                     self.save_type)
        main.connect(self.ui.radioButtonTXT_CB, SIGNAL("clicked()"),
                     self.save_type)
        main.connect(self.ui.pushButtonSave_CB, SIGNAL("clicked()"), self.save)
        #Variables and Arrays
        self.lock_in_sens_list = [
            100E-9, 200E-9, 500E-9, 1E-6, 2E-6, 5E-6, 10E-6, 20E-6, 50E-6,
            100E-6, 200E-6, 500E-6, 1E-3, 2E-3, 5E-3, 10E-3, 20E-3, 50E-3,
            100E-3, 200E-3, 500E-3
        ]

        self.sens = []
        self.frequency = []
        self.amplitude = []
        self.phase = []
        self.QFactor = []
        self.filter = []
        self.trim_frequency = []
        self.slope = []
        self.reserve = []
        self.quadrant = []
        self.mode = []
        self.range = []
        self.coupling = []
        self.inputType = []
        self.floatground = []
        self.TimeConstant = []