Ejemplo n.º 1
0
    def Set_IQR_Trig_Timeout(self, iTime):
        """Trigger Timeout, sec"""
        self.write(f'TRIGger:GPRF:MEAS:IQRecorder:TOUT {iTime}')

    def Set_IQR_Trig_MinGap(self, iTime):
        """Trigger Timeout, sec"""
        self.write(f'TRIGger:GPRF:MEAS:IQRecorder:MGAP {iTime}')

    def Set_IQR_Units(self, sUnit):
        """VOLT (Float32) | RAW"""
        self.write(f'CONFigure:GPRF:MEAS:IQRecorder:MUNit {sUnit}')


###############################################################################
### Run if Main
###############################################################################
if __name__ == "__main__":
    ### this won't be run when imported
    CMP = RCT()
    CMP.jav_Open("192.168.1.160")
    # CMP.Set_IQR_timeout(1)
    # CMP.Init_Meas_IQCapture()
    # CMP.Set_IQR_Time(0.0125)
    # CMP.Set_IQR_SamplingRate(245.76)
    print(CMP.Get_IQR_data_ASCII()[0:50])
    rd = (CMP.Get_IQR_data_Bin())
    print(rd)
    CMP.jav_ClrErr()
    CMP.jav_Close()
Ejemplo n.º 2
0
 def test_RCT_Common(self):
     from rssd.RCT.Common import RCT             #pylint:disable=E0611,E0401
     self.CMW = RCT()
     self.assertEqual(self.CMW.Model,"CMW-GPRF")
Ejemplo n.º 3
0
            print('Error Set_5GNR_TransPrecoding')

    def Set_5GNR_Trigger_Source(self, source):
        """ string 'Free Run (Fast Sync)' 'Free Run (No Sync)' 'IF Power' """
        self.write(f':TRIG:NRMM:MEAS:MEV:SOUR "{source}"')

    def Set_5GNR_Stop(self):
        self.write(f'STOP:NRMM:MEAS:MEV STOP')  #RDY state


###############################################################################
### Run if Main
###############################################################################
if __name__ == "__main__":
    ### this won't be run when imported
    CMP = RCT()
    CMP.jav_Open("192.168.1.160")
    CMP.Set_5GNR_Path('P1.RRH.RF1')
    CMP.Set_5GNR_Freq(28e9)
    CMP.Set_5GNR_ExpPwr(-9)
    CMP.Set_5GNR_UserMargin(13)
    CMP.Set_5GNR_PhaseCompensate_Freq(28e9)
    CMP.Set_5GNR_BWP_Frame_Periodicity('2')
    CMP.Set_5GNR_BWP_Frame_SlotConfig(0, 0, 8, 0)
    CMP.Set_5GNR_ChannelBW(100)
    CMP.Set_5GNR_CellID(1)
    CMP.Set_5GNR_BWP_Ch_DMRS_1stDMRSSym(2)
    # CMP.Set_5GNR_NumBWP()
    CMP.write(f'CONF:NRMM:MEAS:CC{CMP.cc}:BWP BWP0, {CMP.scs}, NORM, 66, 0'
              )  #SCS; NORM; RB; RBO
    CMP.write(f'CONF:NRMM:MEAS:CC{CMP.cc}:BWP:PUSC:DMTA BWP0, 1, 2, 1'
Ejemplo n.º 4
0
        return rdStr

    def Set_Meas_RefLevl(self,fRefLvl):                                     #Val
        ### ENP = Expected Nominal Power
        self.write(f'CONF:GPRF:MEAS:RFS:ENP {fRefLvl}')

    def Set_Meas_Span(self,fFreq):
        """ 10; 20; 40; 80; 160; 250; 500; 1000 MHz allowed """
        self.write(f'CONF:GPRF:MEAS:FFTS:FSP {fFreq}')

    def Set_Meas_SweepTime(self,fTime):
        if fTime > 0:
            self.write(f'CONF:GPRF:MEAS:SPEC:FSW:SWT {fTime}')
        else:
            self.write(f'CONF:GPRF:MEAS:SPEC:FSW:SWT:AUTO ON')

    def Set_Meas_UserMargin(self,fPwr):
        """User Margin (Crest Factor)"""
        self.write(f'CONFigure:GPRF:MEAS:RFSettings:UMARgin {fPwr}')

###############################################################################
### Run if Main
###############################################################################
if __name__ == "__main__":
    ### this won't be run when imported
    CMW = RCT()
    CMW.jav_Open("192.168.1.160")
    pwr = CMW.Get_Meas_FFT_Power()
    print(pwr)
    # CMW.Set_Meas_Autolevel()
    CMW.jav_Close()
Ejemplo n.º 5
0
 def setUp(self):  #run before each test
     self.CMP = RCT().jav_OpenTest(host)
Ejemplo n.º 6
0
class TestGeneral(unittest.TestCase):
    def setUp(self):  #run before each test
        self.CMP = RCT().jav_OpenTest(host)

    def tearDown(self):  #Run after each test
        self.assertEqual(self.CMP.jav_Error()[0], '0')
        self.CMP.jav_Close()

###############################################################################
### <Test>
###############################################################################

    def test_RCT_Ex_GenArb(self):
        self.CMP.Init_Gen()
        self.CMP.Set_Gen_Port('P1.IFOut')
        self.CMP.Set_Gen_Port_State('ON')
        self.CMP.Set_Gen_Freq(6e9)
        self.CMP.Set_Gen_RFPwr(-50)
        self.CMP.Set_Gen_Mode('ARB')
        self.CMP.Set_Gen_ArbWv('Test.wv')
        self.CMP.Set_Gen_ArbExec()
        self.CMP.Set_Gen_RFState('ON')

    def test_RCT_Ex_GenCW(self):
        self.CMP.Init_Gen()
        self.CMP.Set_Gen_Port('P1.IFOut')
        self.CMP.Set_Gen_Port_State('ON')
        self.CMP.Set_Gen_Freq(6e9)
        self.CMP.Set_Gen_RFPwr(-50)
        self.CMP.Set_Gen_Mode('CW')
        self.CMP.Set_Gen_RFState('ON')

    def test_RCT_Ex_GenListMode(self):
        self.CMP.Init_Gen()
        self.CMP.Set_Gen_Port('P1.IFOut')
        self.CMP.Set_Gen_Port_State('ON')
        self.CMP.Set_Gen_Freq(6e9)
        self.CMP.Set_Gen_RFPwr(-50)
        self.CMP.Set_Gen_ListMode('ON')
        self.CMP.Set_Gen_RFState('ON')
        self.CMP.Set_Gen_ListMode('OFF')

    def test_RCT_Ex_MeasFFT(self):
        self.CMP.Init_Meas_FFT()
        self.CMP.Set_Meas_Freq(6e9)
        self.CMP.Set_Meas_Port('P1.IFIn')
        self.CMP.Set_Meas_Autolevel()
        # self.CMP.Set_Meas_RefLevl(-10)
        # self.CMP.Set_Meas_UserMargin(0)
        self.CMP.Set_Meas_RFBW(10e6)
        self.CMP.Set_Meas_Span(100e6)

    def test_RCT_Ex_MeasPwr(self):
        self.CMP.Init_Meas_Power()
        self.CMP.Set_Meas_Freq(6e9)
        self.CMP.Set_Meas_UserMargin(0)
        self.CMP.Set_Meas_Expected_Nom_Power(0)
        self.CMP.Set_Meas_TriggerSource('IF Power')
        self.CMP.Set_Meas_TriggerThreshold(-10)
        self.CMP.Set_Meas_TriggerThreshold(-40)
        self.CMP.Set_Meas_Pwr_MLength(100e-6)
        self.CMP.Set_Meas_RFBW(100e6)
        self.CMP.Get_Meas_Power()

    def test_RCT_Get_Gen(self):
        self.CMP.Get_Gen_ArbWv()
        self.CMP.Get_Gen_Freq()
        self.CMP.Get_Gen_Mode()
        self.CMP.Get_Gen_Port()

    def test_RCT_Get_Meas(self):
        self.CMP.Get_Meas_Port()

    def test_RCT_System(self):
        self.CMP.Get_Options()
        self.CMP.Init_Syst()
Ejemplo n.º 7
0
        """ExpPwr = Range + ExtAttn - UserMargin
           range: -10 to 10
           units: dB """
        self.write(f'CONF:NRMM:MEAS:RFS:MLOF {pwr}')

    def Set_5GNR_PhaseComp(self,state,freq):
        """ State: OFF | CAF | UDEF 
            Freq : Hz"""
        self.write(f'CONF:NRMM:MEAS:MEV:PCOM {state},{freq}')

    def Set_5GNR_Periodicity(self,period):
        """ Period: 05 | 0625 | 1 | 125 | 2 | 25 | 5 | 10 """
        self.write(f'CONF:NRMM:MEAS:ULDL:PER MS{period}')

    def Set_5GNR_UserMargin(self, pwr):
        """ExpPwr = Range + ExtAttn - UserMargin
           units: dB """
        self.write(f'CONF:NRMM:MEAS:RFS:UMAR {pwr} DB')


###############################################################################
### Run if Main
###############################################################################
if __name__ == "__main__":
    ### this won't be run when imported
    CMW = RCT()
    CMW.jav_Open("192.168.1.160")
    CMW.Init_Syst()
    print(CMW.Get_5GNR_EVM())
    CMW.jav_Close()
Ejemplo n.º 8
0
        return rdStr

    def Set_Meas_RefLevl(self,fRefLvl):                                     #Val
        ### ENP = Expected Nominal Power
        self.write(f'CONF:GPRF:MEAS:RFS:ENP {fRefLvl}')

    def Set_Meas_Span(self,fFreq):
        """ 10; 20; 40; 80; 160; 250; 500; 1000 MHz allowed """
        self.write(f'CONF:GPRF:MEAS:FFTS:FSP {fFreq}')

    def Set_Meas_SweepTime(self,fTime):
        if fTime > 0:
            self.write(f'CONF:GPRF:MEAS:SPEC:FSW:SWT {fTime}')
        else:
            self.write(f'CONF:GPRF:MEAS:SPEC:FSW:SWT:AUTO ON')

    def Set_Meas_UserMargin(self,fPwr):
        """User Margin (Crest Factor)"""
        self.write(f'CONFigure:GPRF:MEAS:RFSettings:UMARgin {fPwr}')

###############################################################################
### Run if Main
###############################################################################
if __name__ == "__main__":
    ### this won't be run when imported
    CMW = RCT()
    CMW.jav_Open("192.168.1.160")
    pwr = CMW.Set_Gen_ArbWv('OneTone.mat.wv')
    print(pwr)
    # CMW.Set_Meas_Autolevel()
    CMW.jav_Close()