Chapter 9 105
Measurement Applications (Sample Programs)
Basic Capacitor Measurement
9. Measurement Applications
(Sample Programs)
1200 PRINT "R =";Para1,"X =";Para2,"|Z| =";Zm
1210 IF Zm>=Limit THEN Err_flag=1
1220 CASE "Load"
1230 OUTPUT @Agt4288a;":CORR:CKIT:STAN3?"
1240 ENTER @Agt4288a;Cpref,Dref
1250 Bref=2*PI*Freq(I)*Cpref
1260 Gref=Bref*Dref
1270 Zref=1/SQRT(Gref*Gref+Bref*Bref)
1280 Bm=2*PI*Freq(I)*Para1
1290 Gm=Bm*Para2
1300 Zm=1/SQRT(Gm*Gm+Bm*Bm)
1310 PRINT "Cpref=";Cpref,"Dref=";Dref,"|Zref| =";Zref
1320 PRINT "Cp =";Para1,"D =";Para2,"|Z| =";Zm
1330 IF ABS((Zm-Zref)/Zref)>=Limit THEN Err_flag=1
1340 END SELECT
1350 IF Err_flag<>0 THEN
1360 PRINT "Out of limit!!"
1370 GOTO Compen_meas
1380 END IF
1390 NEXT I
1400 PRINT Standard$&" Data Measurement Complete"
1410 OUTPUT @Agt4288a;":SOUR:FREQ ";Curr_freq
1420 RETURN 0
1430 ELSE
1440 PRINT "Program Interruption"
1450 OUTPUT @Agt4288a;":SOUR:FREQ ";Curr_freq
1460 RETURN -1
1470 END IF
1480 FNEND
1490 !=============================================
1500 ! Data Input Function
1510 !=============================================
1520 SUB Inp_data(Mes$,Inp_val)
1530 DIM Inp_char$[30]
1540 ON ERROR GOTO Inp_start
1550 Inp_start:!
1560 PRINT "Input "&Mes$
1570 INPUT "Value?",Inp_char$
1580 Inp_val=VAL(UPC$(Inp_char$))
1590 PRINT "Input Value: ";Inp_val
1600 INPUT "OK? [Y/N]",Inp_char$
1610 IF UPC$(Inp_char$)<>"Y" THEN Inp_start
1620 OFF ERROR
1630 SUBEND