def performOpen(self, options={}): """Perform the operation of opening the instrument connection""" # check communication try: # open connections self.digitizer1 = afDigitizerWrapper.afDigitizer() self.digitizer1.create_object() self.digitizer2 = afDigitizerWrapper.afDigitizer() self.digitizer2.create_object() self.sigGen = afSigGenWrapper.afSigGen() self.sigGen.create_object() # get address strings sVisaDig1 = self.dComCfg['address'] sVisaDig1LO = self.getValue('Local oscillator digitizer 1 VISA') sVisaDig2 = self.getValue('Digitizer 2 VISA') sVisaDig2LO = self.getValue('Local oscillator digitizer 2 VISA') sVisaSigGen = self.getValue('Signal generator VISA') sVisaSigGenLO = self.getValue('Local oscillator signal generator VISA') self.nSamples = int(self.getValue('Number of samples')) self.nTriggers = int(self.getValue('Number of triggers')) self.nSegments=int(self.getValue('Number of segments')) self.cAvgSignals = [None]*3 self.cAvgNoise = [None]*3 self.vCorrelation = None self.dFreq = self.getValue('RF Frequency') self.nLags = int(self.getValue('Number of lags')) self.dPrefilter = int(self.getValue('Prefilter')) self.cTrace = [None]*2 # boot instruments self.digitizer1.boot_instrument(sVisaDig1LO, sVisaDig1) self.digitizer2.boot_instrument(sVisaDig2LO, sVisaDig2) self.sigGen.boot_instrument(sVisaSigGenLO, sVisaSigGen) # set LO Ref mode to Ext_Daisy, leveling to auto and modulation to CW self.sigGen.lo_reference_set(0) self.sigGen.rf_current_level_mode_set(0) self.sigGen.rf_modulation_source_set(3) # set modulation mode to generic self.digitizer1.modulation_mode_set(5) self.digitizer2.modulation_mode_set(5) # set LO mode to OXCO for dig 1 and Ext daisy for dig 2 self.digitizer1.lo_reference_set(2) self.digitizer2.lo_reference_set(2) except afDigitizerWrapper.Error as e: # re-cast afdigitizer errors as a generic communication error msg = str(e) raise InstrumentDriver.CommunicationError(msg)
def performOpen(self, options={}): """Perform the operation of opening the instrument connection""" # check communication try: # open connection self.sigGen = afSigGenWrapper.afSigGen() self.sigGen.create_object() # get address strings sVisaSigGen = self.dComCfg['address'] sVisaLO = self.getValue('Local oscillator VISA') self.sigGen.boot_instrument(sVisaLO, sVisaSigGen) except afSigGenWrapper.Error as e: # re-cast afSigGen errors as a generic communication error msg = str(e) raise InstrumentDriver.CommunicationError(msg)