Measurement Computing DAC488 v.1 User Manual

Page 52

Advertising
background image

46 DAC488 Calibration

DAC488 User’s Manual

1670 LPRINT
1680 LPRINT"Port Range %Err +FS %Err -FS Offset Err J Vals H Val"
1690 FOR PORT = 1 TO LASTPORT
1700 LPRINT
1710 FOR RANGE = 0 TO 3
1720 LPRINT USING " # ## V +#.### +#.### +##.###^^^^ ### ###
+###";PORT,RNG(RANGE),PFS!(PORT,RANGE),NFS!(PORT,RANGE),
OFS!(PORT,RANGE),GAIN(PORT,RANGE,1),GAIN(PORT,RANGE,2), OFFSET(PORT,RANGE);
1730 IF ABS(PFS!(PORT,RANGE)) < .1 AND ABS(NFS!(PORT,RANGE)) < .1 AND
ABS(OFS!(PORT,RANGE)) < .001 THEN LPRINT "Passed" ELSE LPRINT "FAILED!
1740 NEXT RANGE
1750 NEXT PORT
1760 LPRINT
1770 LPRINT" Calibrator:"
1780 LPRINT
1790 LPRINT" Comments:"
1800 LPRINT CHR$(12);
1810 RETURN
1820 'ROUTINE TO PRINT PERFORMANCE VERIFICATION IN SAME FORMAT
1830 'AS AUTO CAL PROGRAM
1840 '
1850 FOR PORT = 1 TO LASTPORT
1860 LPRINT CHR$(12)
1870 PRINT "Connect the output of port ";PORT;" to the DMM input."
1880 PRINT"Press any key to continue "
1890 IF INKEY$="" THEN GOTO 1890
1900 IF DAC2$ <> "Y" THEN GOTO 1930
1910 LPRINT"IOtech DAC488/2 Performance Verification Port #";PORT
1920 GOTO 1940
1930 LPRINT"IOtech DAC488/4 Performance Verification Port #";PORT
1940 LPRINT"Nominal Actual Error Result Nominal Actual Error Result"
1950 '
1960 ' 10 VOLT RANGE
1970 '
1980 PRINT#1,"OUTPUT ";KAD$;";F0R3Z0P0S2T1B0G1M0K0Y0X"
1990 RANGE = 3:V1 = 10: VSTEP = -1:OFSP=.005
2000 LPRINT
2010 GOSUB 2130
2020 RANGE = 2:V1 = 5: VSTEP = -.5:OFSP=.003
2030 LPRINT
2040 GOSUB 2130
2050 PRINT#1,"OUTPUT ";KAD$;";R2X":OFSP=.001
2060 RANGE = 1:V1 = 1: VSTEP = -.1
2070 LPRINT
2080 GOSUB 2130
2090 PRINT
2100 NEXT PORT
2110 KEY ON
2120 RETURN
2130 'SUBROUTINE TO PRINT REPORT AFTER CALIBRATION
2140 '
2150 FOR VOLTS! = V1 TO 0 STEP VSTEP
2160 '
2170 PRINT#1,"OUTPUT ";DAD$;";R";RANGE;"P";PORT;"V";VOLTS!;"X"
2180 GOSUB 1520 ' DELAY
2190 PRINT#1,"ENTER ";KAD$
2200 INPUT#2,ACTPOS$:ACTPOSV!=VAL(ACTPOS$) 'ACTPOS=ACTUAL POSITIVE VALUE READ
2210 PRINT#1,"OUTPUT ";DAD$;";R";RANGE;"P";PORT;"V-";VOLTS;"X"
2220 GOSUB 1520 ' DELAY
2230 PRINT#1,"ENTER ";KAD$
2240 INPUT#2,ACTNEG$:ACTNEGV!=VAL(ACTNEG$) 'ACTNEG = ACTUAL NEGATIVE VALUE READ
2250 POSERROR! = ABS(ACTPOSV! - VOLTS!)
2260 IF POSERROR! <=(VOLTS!*.001 + OFSP) THEN PRESULT$="Pass" ELSE PRESULT$="Failed"
2270 NEGERROR! = ABS(ACTNEGV! - (-1*VOLTS!))
2280 IF NEGERROR! <=((1*VOLTS!)*.001 + OFSP) THEN NRESULT$="Pass" ELSE NRESULT$="Failed"
2290 '
2300 LPRINT USING "##.#### ##.#### #.#### \ \ ###.#### ###.#### #.#### \
\";VOLTS!,ACTPOSV!,POSERROR!,PRESULT$,-VOLTS!,ACTNEGV!,NEGERROR!,NRESULT$
2310 '
2320 NEXT VOLTS!
2330 RETURN

Advertising
This manual is related to the following products: