#time.sleep(6) VSE.Init_K96() #Change Channel VSE.Set_DisplayUpdate("ON") #Display On VSE.Set_SweepCont(0) #Continuous Sweep Off VSE.Set_IQ_SamplingRate(Fs) #Sampling Rate VSE.Set_File_InputIQW(Fs, IQFile) #VSE Input File VSE.Set_K96_File_Config(OFDMCfg) #K96 Demod File VSE.Set_K96_BurstSearch("OFF") #Burst Search off VSE.Set_K96_OFDMSymbols(14) FSW.jav_Reset() FSW.Init_IQ() #FSW IQ Channel FSW.Set_IQ_SamplingRate(Fs) FSW.Set_SweepTime(MeasTim) SMW.Set_RFState("ON") ########################################################## ### Make Measurement ########################################################## for Freq in FreqArry: ### Set Frequency SMW.Set_Freq(Freq) FSW.Set_Freq(Freq + 50e6) VSE.Set_Freq(0) for Pwr in PwrArry: ### Set Power SMW.Set_RFPwr(Pwr) #FSW.Set_Autolevel_IFOvld() #Maximize Dynamic Range
### Code Start ########################################################## from rssd.SMW_Common import VSG from rssd.FileIO import FileIO import time f = FileIO() DataFile = f.Init(OutFile) SMW = VSG() SMW.jav_Open(SMW_IP, f.sFName) ########################################################## ### Instrument Settings ########################################################## SMW.Set_RFPwr(SWM_Out) #Output Power SMW.Set_RFState('ON') #Turn RF Output on f.write(SMW.query('FREQ:MULT:EXT:TYPE?')) #SMZ # f.write(SMW.query('FREQ:MULT:EXT:SNUM?')) #Serial Num f.write(SMW.query('FREQ:MULT:EXT:LOAD:VERS?')) f.write(SMW.query('FREQ:MULT:EXT:FMAX?')) f.write(SMW.query('FREQ:MULT:EXT:FMIN?')) f.write(SMW.query('FREQ:MULT:EXT:REV?')) #Revision f.write("Power") f.write(SMW.query('FREQ:MULT:EXT:PMAX?')) #Revision f.write(SMW.query('FREQ:MULT:EXT:PMIN?')) #Revision f.write(SMW.query('FREQ:MULT:EXT:STAT?')) SMW.write("MMEM:CDIR '/smz/firmware/'") f.write(SMW.query("FREQ:MULT:EXT:FIRM:CAT?")) f.write(SMW.query("FREQ:MULT:EXT:CORR:POW:POIN?"))
########################################################## ### Code Start ########################################################## SMW = VSG().jav_Open(SMW_IP, OFile) FSWP = PNA().jav_Open(FSWP_IP, OFile) ########################################################## ### Measure Time ########################################################## Header = 'Iter,SetFreq,SMFPwr,FSWPFreq,FSWPPwr,LockStatus' OFile.write(Header) FSWP.Set_SweepCont(0) SMW.Set_RFPwr(-50) SMW.Set_RFState(1) for i in range(numMeas): #Loop: Measurements for freq in FreqArry: #Loop: Frequency SMW.Set_Freq(freq) # FSWP.Set_Freq(freq) for pwr in pwrArry: #Loop: Power SMW.Set_RFPwr(pwr) FSWP.Set_InitImm() SMW.delay(2) lock = FSWP.Get_FreqLock() ffrq = FSWP.Get_Freq() fpwr = FSWP.Get_Power() OutStr = f'{i},{freq},{pwr},{ffrq},{fpwr},{lock}' OFile.write(OutStr)
########################################################## sDate = time.strftime("%y%m%d-%H%M%S") OFile.write('DemodBW,Phase,Mkr1,Mkr2,Mkr3,Mkr4,Meas,MeasAvg\n') FSW.write('SYST:DISP:UPD ON') #********************************* #*** SMW-Setup #********************************* SMW.Set_Freq(28e9) SMW.Set_BBState(0) #Arb Off SMW.Set_IQMod(0) #IQ Mod Off SMW.write(':SOUR1:ROSC:SOUR EXT') #ExtReference SMW.write(':SOUR1:ROSC:EXT:FREQ 10MHZ') SMW.write(':SOUR1:ROSC:EXT:SBAN WIDE' ) #SMW WIDE(Vary less)|NARR(varys more) bandwidth SMW.Set_RFState('ON') #********************************* #*** FSW-Analog Demodulation #********************************* FSW.Set_Channel('ADEM') FSW.write('LAY:REPL:WIND "1","XTIM:PM"') #PM Demod window FSW.Set_SweepCont('OFF') #Single sweep FSW.write('ROSC:SOUR INT') #Reference FSW.Set_Freq(28e9) #RF Freq FSW.Set_SweepTime(SwpTim / 1000) #Sweep Time FSW.write('SENS:BWID:DEM %fKHZ' % DemodBW) #Demod BW MMM FSW.write('SENS:ADEM:AF:COUP DC') #Coupling MMM FSW.write('UNIT:ANGL DEG') #Units FSW.write('DISP:TRAC1:Y:PDIV 4') #Y Scaling FSW.Set_Trace_AvgCount(1) #Average
########################################################## ### Rohde & Schwarz Automation for demonstration use. ### Purpose: VSG List Mode ### Author: mclim ### Date: 2019.06.13 ########################################################## ### User Entry ########################################################## host = '192.168.1.114' #Get local machine name ########################################################## ### Code Start ########################################################## from rssd.SMW_Common import VSG SMW = VSG().jav_Open(host) #SMW.jav_logSCPI() # Log SCPI commands SMW.Set_Freq(10e9) # Set 10GHz SMW.Set_RFPwr(-30) # Output -30dBm SMW.Set_ListMode_File('list1.lsw') # Select List File SMW.Set_ListMode_TrigSource('SING') # Single run SMW.Set_ListMode_RMode('LIVE') SMW.Set_ListMode_Dwell(1) # Dwell time SMW.Set_RFState(1) # RF Output on. SMW.Set_ListMode('LIST') # Turn on listmode SMW.Set_ListMode_TrigExecute() # Execute single trigger SMW.Set_ListMode_TrigWait() # Wait for single trigger SMW.Set_RFState('OFF') # RF Output off SMW.jav_ClrErr() # Clear Errors