Exemplo n.º 1
0
#Attenuators sweep test
s21_testA=list()
step_sizeA=list()
s21_testB=list()
step_sizeB=list()
if metadata_param['att_sweep_test']=="run":
    print("Running attenuators sweep test ... \n")
    test_lib.set_vna(0, center_freq, freq_span, 0, vna)
    sgen.set_pos("direct")
    s21=vna.get_s21_data() #Select the S21 measurement in theNetwork Analyzer
    vna.send_command(b":SOUR1:POW:GPP "+format(pow_value).encode('utf-8')+b"\n")
    rfsw.sw1_pos(1)
    rfsw.sw2_pos(1)
    print("Running attenuators sweep test, Channel A ... \n")
    for att in range (int(att_sweep_low), int(att_sweep_high+1)*2, int(att_step*2)):
        rffe.set_attenuator_value(att/2)
        s21=test_lib.marker_value(0,center_freq,"s21", vna)
        s21=float(test_lib.marker_value(0,center_freq,"s21", vna))
        s21_testA.append(round(s21,2))
    fail=0
    for i in range(0,len(s21_testA)-1):
        step_sizeA.append(round(s21_testA[i+1]-s21_testA[i],2))
        if abs(float(step_sizeA[i]))>abs(att_step+att_step_tol) or abs(float(step_sizeA[i]))<abs(att_step-att_step_tol):
            fail=1
    if fail==1:
        att_sweep_resultA="Attenuator Sweep Test Channel A --> FAILED"
    else:
        att_sweep_resultA="Attenuator Sweep Test Channel A --> Ok"
    #Data aquisition for channel B
    test_lib.set_vna(0, center_freq, freq_span, 0, vna)
    rfsw.sw1_pos(2)
Exemplo n.º 2
0
attenuation_values = arange(0, 32, 0.5)

for rffe_numb in range(33, 45, 1):
    RFFE_CONTROLLER_BOARD_IP = '10.2.117.' + str(rffe_numb)
    try:
        rffe = RFFEControllerBoard(RFFE_CONTROLLER_BOARD_IP)
    except (socket.error):
        sys.stdout.write(
            "Unable to reach the RF front-end controller board with the IP: " +
            RFFE_CONTROLLER_BOARD_IP + " through the network. " +
            "Skipping it...\n")
        continue

    #Attenuators test
    for att in attenuation_values:
        rffe.set_attenuator_value(att)
        read_att = rffe.get_attenuator_value()
        if not read_att == att:
            print("Board " + RFFE_CONTROLLER_BOARD_IP +
                  " failed in attenuator test! " + "It should return att = " +
                  str(att) + " but got att = " + read_att)
    print("Board " + RFFE_CONTROLLER_BOARD_IP + " passed attenuator test! ")

    #Temperature reading test
    tmp1 = rffe.get_temp1()
    tmp2 = rffe.get_temp2()
    print("Temperature -> 1: " + str(tmp1) + ", 2: " + str(tmp2))

    #Test Reset
    #rffe.reset()
Exemplo n.º 3
0
sw_sweep = [0,1,2,3]
attenuation_values = arange(0,32,0.5)

for rffe_numb in range(33,45,1):
    RFFE_CONTROLLER_BOARD_IP = '10.2.117.'+str(rffe_numb)
    try:
        rffe = RFFEControllerBoard(RFFE_CONTROLLER_BOARD_IP)
    except (socket.error):
        sys.stdout.write("Unable to reach the RF front-end controller board with the IP: "+ RFFE_CONTROLLER_BOARD_IP +" through the network. " +
                        "Skipping it...\n")
        continue

    #Attenuators test
    for att in attenuation_values:
        rffe.set_attenuator_value(att)
        read_att = rffe.get_attenuator_value()
        if not read_att == att:
            print ("Board "+RFFE_CONTROLLER_BOARD_IP+" failed in attenuator test! "+
            "It should return att = "+str(att)+" but got att = "+read_att)
    print ("Board "+RFFE_CONTROLLER_BOARD_IP+" passed attenuator test! ")

    #Temperature reading test
    tmp1 = rffe.get_temp1()
    tmp2 = rffe.get_temp2()
    print ("Temperature -> 1: "+str(tmp1)+", 2: "+str(tmp2))

    #Test Reset
    #rffe.reset()

    #Close connection