Chapter 9 111
Measurement Applications (Sample Programs)
Measurement with Auto-sorting System
9. Measurement Applications
(Sample Programs)
1430 Freq(1)=1.E+3
1440 Freq(2)=1.E+6
1450 Load_para$="CPD"
1460 OUTPUT @Agt4288a;":STAT:OPER:ENAB 128"
1470 OUTPUT @Agt4288a;"*SRE 128"
1480 SELECT Standard$
1490 CASE "Open"
1500 Std$="STAN1"
1510 CASE "Short"
1520 Std$="STAN2"
1530 CASE "Load"
1540 Std$="STAN3"
1550 CALL Inp_data("Load(Cp) Value @1kHz",Load1(1))
1560 CALL Inp_data("Load(D) Value @1kHz",Load2(1))
1570 CALL Inp_data("Load(Cp) Value @1MHz",Load1(2))
1580 CALL Inp_data("Load(D) Value @1MHz",Load2(2))
1590 OUTPUT @Agt4288a;":CORR:CKIT:STAN3:FORM "&Load_para$
1600 FOR I=1 TO 2
1610 OUTPUT @Agt4288a;":SOUR:FREQ ";Freq(I)
1620 OUTPUT @Agt4288a;":CORR:CKIT:STAN3 ";Load1(I);",";Load2(I)
1630 NEXT I
1640 END SELECT
1650 Compen_meas: !
1660 PRINT "Set "&Standard$&"-Connection."
1670 INPUT "OK? [Y/N]",Inp_char$
1680 IF UPC$(Inp_char$)="Y" THEN
1690 FOR I=1 TO 2
1700 PRINT "Frequency:";Freq(I)
1710 OUTPUT @Agt4288a;":SOUR:FREQ ";Freq(I)
1720 OUTPUT @Agt4288a;"*CLS"
1730 OUTPUT @Agt4288a;"*OPC?"
1740 ENTER @Agt4288a;Buff$
1750 ! Measurement
1760 ON INTR 7 GOTO Meas_end
1770 ENABLE INTR 7;2
1780 OUTPUT @Agt4288a;":CORR:COLL "&Std$
1790 Meas_wait: GOTO Meas_wait
1800 Meas_end: OFF INTR 7
1810 ! Error Check
1820 OUTPUT @Agt4288a;":SYST:ERR?"
1830 ENTER @Agt4288a;Err_no,Err$
1840 IF Err_no<>0 THEN
1850 PRINT "Error: "&Err$
1860 GOTO Compen_meas
1870 END IF
1880 ! Data Check
1890 OUTPUT @Agt4288a;":CORR:DATA? "&Std$
1900 ENTER @Agt4288a;Para1,Para2
1910 Err_flag=0
1920 SELECT Standard$
1930 CASE "Open"
1940 Ym=SQRT(Para1*Para1+Para2*Para2)
1950 PRINT "G =";Para1,"B =";Para2,"|Y| =";Ym
1960 IF Ym>=Limit THEN Err_flag=1
1970 CASE "Short"
1980 Zm=SQRT(Para1*Para1+Para2*Para2)
1990 PRINT "R =";Para1,"X =";Para2,"|Z| =";Zm
2000 IF Zm>=Limit THEN Err_flag=1
2010 CASE "Load"
2020 OUTPUT @Agt4288a;":CORR:CKIT:STAN3?"
2030 ENTER @Agt4288a;Cpref,Dref
2040 Bref=2*PI*Freq(I)*Cpref
2050 Gref=Bref*Dref
2060 Zref=1/SQRT(Gref*Gref+Bref*Bref)