DMM User Manual PDF
DMM User Manual PDF
NOTICE: Signametrics was acquired by Agilent Technologies in October 2010. This document,
published prior to that date, is provided as a courtesy and may contain references to products or
services no longer supported by Agilent. For the latest information on Agilents modular test and
measurement products go to: www.agilent.com/find/modular
Or in the US, call Agilent Technologies at 1-800-829-4444 (8am-8pm EST)
For other Countries: www.agilent.com/find/contactus
Agilent Technologies, Inc. November 8, 2011
5990-9497EN
Operator's Manual
Model SM2060 7 Digit Digital PCI Multimeter
Model SMX2060 7 Digit Digital PXI Multimeter
Model SM2064 7 Digit High Work Load PCI Digital Multimeter
Model SMX2064 7 Digit High Work Load PXI Digital Multimeter
Signametrics Corporation
June, 2010
Rev 1.70 driver and Rev F Hardware.
CAUTION
In no event shall Signametrics or its Representatives are liable for any consequential damages whatsoever
(including, without limitation, damages for loss of business profits, business interruption, loss of business
information, or other loss) arising out of the use of or inability to use Signametrics products, even if Signametrics
has been advised of the possibility of such damages. Because some states do not allow the exclusion or limitation of
liability for consequential damages, the above limitations may not apply to you.
2004 Signametrics Corp. Printed in the USA. All rights reserved. Contents of this publication must not be
reproduced in any form without the permission of Signametrics Corporation.
Signametrics
TABLE OF CONTENTS
1.0 INTRODUCTION .................................................................................................................................................8
1.1 SAFETY CONSIDERATIONS ..........................................................................................................................8
1.2 MINIMUM REQUIREMENTS .........................................................................................................................9
1.3 FEATURE SET .............................................................................................................................................9
2.0 SPECIFICATIONS .............................................................................................................................................10
2.1 DC VOLTAGE MEASUREMENT .................................................................................................................10
2.2 DC CURRENT MEASUREMENT ..................................................................................................................11
2.3 RESISTANCE MEASUREMENTS ..................................................................................................................11
2.3.1 2-wire .....................................................................................................................................11
2.3.2 4-wire .....................................................................................................................................12
2.3.3 6-wire Guarded Resistance Measurement (2064)..................................................................12
2.3.4 Extended Resistance Measurements (2064)...........................................................................12
2.3.5 Offset Ohms Measurements (2064)........................................................................................12
2.4 AC VOLTAGE MEASUREMENTS ................................................................................................................13
2.4.1 AC Voltage True RMS Measurement .....................................................................................13
2.4.2 AC Peak-to-Peak Measurement (2064) .................................................................................14
2.4.3 AC Crest Factor Measurement (2064)...................................................................................14
2.4.4 AC Median Value Measurement (2064).................................................................................15
2.4.5 Average AC Voltage Measurement (2064) ............................................................................15
2.4.6 Low frequency RMS Voltage Measurement (2064) ...............................................................15
2.5 AC CURRENT MEASUREMENT, TRUE RMS ..............................................................................................15
2.6 LEAKAGE MEASUREMENT (2064) ............................................................................................................16
2.7 RTD TEMPERATURE MEASUREMENT .......................................................................................................16
2.8 THERMOCOUPLE TEMPERATURE MEASUREMENT .....................................................................................17
2.9 ADDITIONAL COMPONENT MEASUREMENT CAPABILITY ..........................................................................17
2.9.1 Diode Characterization .........................................................................................................17
2.9.2 Capacitance, Charge Balance Method ..................................................................................17
2.9.3 Capacitance, In-Circuit Method (2064)................................................................................18
2.9.4 Inductance Measurement (2064) ...........................................................................................18
2.10 TIME MEASUREMENTS ...........................................................................................................................19
2.10.1 Threshold DAC (2064).........................................................................................................19
2.10.2 Frequency and Period Measurements .................................................................................19
2.10.3 Duty Cycle Measurement (2064) .........................................................................................19
2.10.4 Pulse Width (2064) ..............................................................................................................19
2.10.5 Totalizer (2064) ...................................................................................................................19
2.11 TRIGGER FUNCTIONS ..............................................................................................................................20
2.11.1 External Hardware Trigger (at DIN-7 connector) ..............................................................20
2.11.2 PXI Bus Trigger inputs ........................................................................................................20
2.11.3 Analog Threshold Trigger....................................................................................................20
2.11.4 Long Trigger (SM/SMX2064 with Option R) ....................................................................20
2.11.5 Delayed Hardware Trigger..................................................................................................20
2.12 MEASUREMENT TIMES ...........................................................................................................................20
2.12.1 Measurement Apertures and Read Interval .........................................................................20
2.12.2 Range and Function Transition Times.................................................................................22
2.13 SOURCE FUNCTIONS (2064) ...................................................................................................................22
2.13.1 Source DC Voltage, Measure DC Voltage...........................................................................22
2.13.2 Source DC Voltage, Measure DC Current ..........................................................................23
2.13.3 Source and Measure AC Voltage .........................................................................................23
2.13.4 Source DC Current Measure DC Voltage ...........................................................................23
2.13.5 Pulse Generator ...................................................................................................................23
2.14 ACCURACY NOTES .................................................................................................................................24
2.15 OTHER SPECIFICATIONS .........................................................................................................................25
3.0 GETTING STARTED.........................................................................................................................................27
Signametrics
Signametrics
Signametrics
DMMGetTCType...........................................................................................................................101
DMMGetTrigger ...........................................................................................................................102
DMMGetTriggerInfo.....................................................................................................................102
DMMGetType ...............................................................................................................................104
DMMGetVer .................................................................................................................................104
DMMInit .......................................................................................................................................104
DMMIsAutoRange ........................................................................................................................105
DMMIsInitialized..........................................................................................................................106
DMMIsRelative .............................................................................................................................106
DMMLongTrigger ........................................................................................................................107
DMMLongTrigRead......................................................................................................................108
DMMOpenPCI..............................................................................................................................109
DMMOpenCalACCaps .................................................................................................................109
DMMOpenTerminalCal................................................................................................................110
DMMOutputSync ..........................................................................................................................110
DMMPeriodStr .............................................................................................................................111
DMMRead.....................................................................................................................................112
DMMReadBuffer...........................................................................................................................112
DMMReadBufferStr ......................................................................................................................113
DMMReadCJTemp .......................................................................................................................114
DMMReadCrestFactor .................................................................................................................115
DMMReadDutyCycle ....................................................................................................................116
DMMReadSR ................................................................................................................................116
DMMReadFrequency....................................................................................................................117
DMMReadHiLoSense ...................................................................................................................118
DMMReadHiSense........................................................................................................................118
DMMReadInductorQ ....................................................................................................................119
DMMReadInductorR.....................................................................................................................119
DMMReadLoSense .......................................................................................................................120
DMMReadMeasurement ...............................................................................................................121
DMMReadMedian.........................................................................................................................121
DMMReadNorm............................................................................................................................122
DMMReadPeakToPeak.................................................................................................................122
DMMReadPeriod..........................................................................................................................123
DMMReadStr ................................................................................................................................124
DMMReadTestV............................................................................................................................124
DMMReadTotalizer ......................................................................................................................125
DMMReadWidth ...........................................................................................................................126
DMMReady ...................................................................................................................................126
DMMSetACCapsDelay .................................................................................................................127
DMMSetACCapsLevel ..................................................................................................................127
DMMSetACVSource .....................................................................................................................128
DMMSetAperture..........................................................................................................................130
DMMSetAutoRange ......................................................................................................................130
DMMSetBuffTrigRead ..................................................................................................................131
DMMSetCapsAveSamp .................................................................................................................132
DMMSetCJTemp...........................................................................................................................133
DMMSetCompThreshold ..............................................................................................................133
DMMSetCounterRng.....................................................................................................................134
DMMSetDCISource ......................................................................................................................135
DMMSetDCVSource .....................................................................................................................136
DMMSetFastRMS .........................................................................................................................136
DMMSetFuncRange......................................................................................................................137
DMMSetFunction..........................................................................................................................138
DMMSetInductFreq ......................................................................................................................138
DMMSetOffsetOhms .....................................................................................................................140
DMMSetPLC.................................................................................................................................140
DMMSetPulseGen.........................................................................................................................141
DMMSetPXITrigger......................................................................................................................142
DMMSetRange..............................................................................................................................142
Signametrics
DMMSetRate.................................................................................................................................143
DMMSetReadInterval ...................................................................................................................143
DMMSetReference ........................................................................................................................144
DMMSetRelative ...........................................................................................................................144
DMMSetRTD ................................................................................................................................145
DMMSetSensorParams.................................................................................................................145
DMMSetSourceMode....................................................................................................................146
DMMSetSourceRes .......................................................................................................................147
DMMSetSync ................................................................................................................................147
DMMSetTCType ...........................................................................................................................149
DMMSetTempUnits.......................................................................................................................149
DMMSetTrigPolarity ....................................................................................................................150
DMMSetTrigRead .........................................................................................................................150
DMMSetTrimDAC ........................................................................................................................152
DMMStartTotalizer.......................................................................................................................152
DMMStopTotalizer .......................................................................................................................153
DMMTerminate.............................................................................................................................154
DMMTrigger.................................................................................................................................154
DMMTriggerBurst ........................................................................................................................155
DMMUnlockCounter ....................................................................................................................156
DMMWaitForTrigger ...................................................................................................................157
DMMWidthStr...............................................................................................................................157
5.7 CALIBRATION AND SERVICE COMMANDS ...............................................................................................159
AC_zero ........................................................................................................................................159
DMMLoadCalFile.........................................................................................................................159
GetGain.........................................................................................................................................160
GetOffset .......................................................................................................................................161
SetFcomp ......................................................................................................................................161
SetOffset ........................................................................................................................................162
Linearize_AD ................................................................................................................................162
Read_ADcounts ............................................................................................................................163
WrCalFileToStore.........................................................................................................................163
WrCalStoreToFile.........................................................................................................................164
5.8 SERVICE COMMANDS .............................................................................................................................165
GrdXingTest..................................................................................................................................165
ClearBuffer ...................................................................................................................................165
5.9 ERROR CODES ........................................................................................................................................166
5.10 WARNING CODES .................................................................................................................................166
5.11 PARAMETER LIST .................................................................................................................................167
5.11.1 Measurement and Source Functions..................................................................................167
5.11.2 Composite Function-Range ...............................................................................................168
5.11.3 Function Values .................................................................................................................170
5.11.4 Range Values .....................................................................................................................170
5.11.5 Aperture parameters ..........................................................................................................172
5.11.6 Additional parameters .......................................................................................................173
6.0 MAINTENANCE ..............................................................................................................................................173
6.1 PERFORMANCE TESTS ............................................................................................................................175
6.2 DC VOLTAGE TEST ................................................................................................................................175
6.3 RESISTANCE TEST, 2-WIRE .....................................................................................................................176
6.4 RESISTANCE TEST, 4-WIRE .....................................................................................................................177
6.5 AC VOLTAGE TEST ................................................................................................................................178
6.6 DC CURRENT TEST ................................................................................................................................179
6.7 AC CURRENT TEST ................................................................................................................................180
6.8 CAPACITANCE TEST (2064 ONLY) ..........................................................................................................181
6.8 INDUCTANCE TEST (2064 ONLY) ............................................................................................................182
6.9 FREQUENCY COUNTER TEST (2064 ONLY) .............................................................................................183
6.10 CALIBRATION .......................................................................................................................................184
7.0 WARRANTY AND SERVICE.........................................................................................................................186
Signametrics
8.0 ACCESSORIES.................................................................................................................................................186
1.0 Introduction
Congratulations! You have purchased a Personal Computer (PC) Plug-in instrument with analog and systems
performance that rivals the best, all-in-one box, instruments. The SM2060 and SMX2064 Digital Multimeters
(DMMs) are easy to setup and use, have sophisticated analog and digital circuitry to provide very repeatable
measurements, and are protected to handle any unexpected situations your measurement environment may
encounter. To get years of reliable service from these DMMs, please take a few moments and review this manual
before installing and using this precision instrument.
This manual describes the SM2060 and SM2064 DMMs. The SMX2060 is identical to the SM2060 and the
SMX2064 is identical to the SM2064. The only difference is the bus type. The SM206X is a PCI module, while the
SMX206X is a PXI/cPCI module.
Note: In this manual, all references made to the "SM2060" are applicable to the SMX2060, and references to the
SM2064 are applicable to the SMX2064. References to DMM apply to the SM2060, SMX2060, SM2064 and
SMX2064. Features unique to the SM2064 are identified.
Warning
During and after installing your DMM, Check to see that no loose wires or ribbon cables infringe
upon any of the internal circuits of the DMM, as this may apply measurement voltages to your
computer, causing electrocution and/or damage to your computer!
To avoid shock hazard, install the DMM only into a computer that has its power connector
connected to a power receptacle with an earth safety ground.
When making any measurements above 50 VDC or 40 VAC, only use Safety Test Leads. Examples
of these are the Signametrics Basic Test Leads and Deluxe Test Leads, offered as an accessory with the
Signametrics DMMs.
Signametrics
SM/SMX2060
SM/SMX2064
4,500 rps
(plus 10mA)
20,000 rps
Signametrics
2.0 Specifications
The following specifications are based on both, verification of large number of units as well as
mathematical evaluation. They should be considered under the environment specified.
To obtain the specified accuracies, allow for half an hour for the multimeter to warm up.
It is important to note that a DMM specified range is expressed as a numeric value indicating the highest
absolute voltage that can be measured. The lowest value that can be detected is expressed by the
corresponding resolution for the range.
Full Scale
7- Digits
240.00000 mV
2.4000000 V
24.000000 V
240.00000 V
330.00000 V
Resolution
10 V
100 V
1 V
10 V
10 V
24 hours
23C 1C
0.003 + 1 V
0.002 + 3 V
0.004 + 120 V
0.003 + 250 V
0.0075 + 550 V
90 Days
23C 5C
0.004 + 1.5 V
0.0025 + 4 V
0.005 + 130 V
0.004 + 300 V
0.01+ 700 V
[1] With Aperture set to 0.5 Sec, and within one hour from Self Calibration (S-Cal).
For resolution at smaller Apertures, see the following table. Use this table for DC Volts, DC current and
Resistance measurements.
Measurement Aperture
SM2060, SM2064
0.5 s < Aperture
10 ms < Aperture
625s < Aperture
2.5us < Aperture [2]
Maximum reading
rate
2 / second
100 / second
1200 / second
20,000 / second [2]
Resolution
7-1/2 digits
25 bits
6-1/2 digits
22 bits
5-1/2 digits
18 bits
4 digits
14 bits
Signametrics
10
Full Scale
Reading
240.0000 A
2.400000 A
24.00000 A
240.000 A
2.40000 mA
24.0000 mA
240.000 mA
2.40000 A
Resolution
0.1 pA
1 pA
10 pA
10 A
10 A
100 A
1 A
10 A
Max Burden
Voltage
100 V
100 V
100 V
2.5mV
25mV
250mV
55mV
520mV
24 hours
23C 5C
0.07 + 40pA
0.05 + 70pA
0.05 + 400pA
0.052 + 200 A
0.05 + 300 A
0.05 + 350 A
0.05 + 50 A
0.3 + 60 A
90 Days
23C 5C
0.1 + 45pA
0.08 + 90pA
0.08 + 600pA
0.07 + 300 A
0.06 + 400 A
0.065 + 450 A
0.055 + 60 A
0.4 + 70 A
One Year
23C 5C
0.17 + 60pA
0.21 + 150pA
0.13 + 0.8nA
0.1 + 400 A
0.07 + 550 A
0.08 + 550 A
0.065 + 80 A
0.45 + 90 A
[1] With Aperture set to 0.96 Sec, and within one hour from Zero (Relative control).
[2] Available only with the SM2064.
Resolution
1
10
100
1 m
10 m
100 m
100
1 k
Test current
10 mA
1 mA
1 mA
100 A
10 A
1 A
100 nA
4 nA
2.3.1 2-wire
Accuracy (% of reading + ) [1]
Range
24
240
2.4 k
24 k
240 k
2.4 M
24 M
240 M
24 hours 23C 1C
0.0038 + 1.4 m [2]
0.0037 + 4.5 m [2]
0.0023 + 28 m
0.0025 + 300 m
0.0055 + 3.2
0.018 + 40
0.12 + 400
0.8 + 20 k
90 Days 23C 5C
0.005 + 1.6 m [2]
0.0046 + 5 m [2]
0.004 + 32 m
0.004 + 330 m
0.006 + 4
0.03 + 50
0.13 + 500
1.0 + 30 k
[1] With Aperture set to 0.5 Sec, and within one hour from Self Calibration (S-Cal).
[2] Use of S-Cal and Relative to improve measurement floor.
11
Signametrics
2.3.2 4-wire
Accuracy (% of reading + ) [1]
Range
24
240
2.4 k
24 k
240 k
2.4 M
24 M
Maximum Lead
Resistance
50
500
500
5 k
50k
50 k
50 k
24 hours
23C 1C
0.0038 + 0.7 m [2]
0.0037 + 3 m [2]
0.0023 + 28 m
0.0025 + 300 m
0.0055 + 3.2
0.018 + 40
0.12 + 400
90 Days
23C 5C
0.005 + 0.8 m [2]
0.0046 + 4 m [2]
0.004 + 32 m
0.004 + 330 m
0.007 + 4
0.03 + 50
0.13 + 500
One Year
23C 5C
0.008 + 1 m [2]
0.007 + 5 m [2]
0.006 + 33 m
0.006 + 350 m
0.007 + 5
0.04 + 70
0.2 + 600
[1] With Aperture set to 0.5 Sec, and within one hour from Self Calibration (S-Cal).
[2] Use of Relative to facilitate indicated floor (adder part of spec).
[1] This table should be used in conjunction with the 2-wire and 4-wire table above.
ution
5C
25A
0.2 + 50
400k
1k to 100M
10
0.33 + 90
0.3 + 350
4M
10k to 1G
100 2.5A
0.43 + 550
250nA
0.4 + 3k
40M
100k to 10G
1k
0.55 + 4.5k
[1] With Aperture set to 0.5 Sec, and within one hour from Zero (Relative control).
[2] Multiply % of reading by 1/Voltage Source for applied voltages below 1V
[3] Limit is reached when the test current exceeds the Current Limit, or it is below 0.04% of this value.
The purpose of Offset Ohms is to compensate for errors due to DC voltages which are in series with the
resistance being measured. DMMSetOffsetOhms() function provides the means to control this
operation. It is disabled by default.
Characteristics
Offset correction range: 240mV or 2.4V depending on selected range
Application: 2-Wire and 4-Wire Ohms
Offset voltage: Depends on head-room; range and measured resistance value.
Range
Signametrics
12
Resolution
100 V
1 V
10 V
100 V
100 V
[1] Between 5 mV and 10 mV, add 100 V additional errors to the accuracy table below.
[2] Signal is limited to 8x106 Volt Hz Product. For example, the largest frequency input at 250 V is 32 kHz, or
8x106 Volt x Hz.
2.4 V
24 V
240 V
330 V
Frequency
10 Hz - 20 Hz
20 Hz - 47 Hz
47 Hz - 10 kHz
10 kHz - 50 kHz
50 kHz - 100 kHz
10 Hz - 20 Hz
20 Hz - 47 Hz
47 Hz - 10 kHz
10 kHz - 50 kHz
50 kHz - 100 kHz
10 Hz - 20 Hz
20 Hz - 47 Hz
47 Hz - 10 kHz
10 kHz - 50 kHz
50 kHz - 100 kHz
10 Hz - 20 Hz
20 Hz - 47 Hz
47 Hz - 10 kHz
10 kHz - 50 kHz
50 kHz - 100 kHz
10 Hz - 20 Hz
20 Hz - 47 Hz
47 Hz - 10 kHz
10 kHz - 50 kHz
50 kHz - 100 kHz
24 hours
23C 1C
3.0 + 350 V
0.37 + 150 V
0.13 + 100 V
0.25 + 160 V
1.9 + 350 V
3.0 + 2 mV
0.37 + 1.3 mV
0.05 + 1 mV
0.32 + 1.2 mV
1.9 + 1.5 mV
3.0 + 14 mV
0.37 + 12 mV
0.06 + 10 mV
0.18 + 18 mV
1.3 + 30 mV
3.0 + 140 mV
0.37 + 120 mV
0.04 + 100 mV
0.28 + 150 mV
1.4 + 200 mV
3.0 + 200 mV
0.43 + 180 mV
0.07 + 150 mV
0.28 + 200 mV
1.3 + 270 mV
90 Days
23C 5C
3.1 + 380 V
0.38 + 170 V
0.14 + 110 V
0.26 + 200 V
1.95 + 370 V
3.1 + 2.2 mV
0.38 + 1.5 mV
0.055 + 1.1 mV
0.33 + 1.3 mV
2.0 + 1.7 mV
3.1 + 16 mV
0.37 + 14 mV
0.065 + 11 mV
0.2 + 21 mV
1.4 + 35 mV
3.1 + 160 mV
0.38 + 130 mV
0.045 + 110 mV
0.29 + 170 mV
1.5 + 240 mV
3.1 + 160 mV
0.44 + 200 mV
0.08 + 200 mV
0.30 + 250 mV
2.4 + 350 mV
One Year
23C 5C
3.2 + 430 V
0.4 + 200 V
0.15 + 120 V
0.27 + 230 V
2.0 + 400 V
3.2 + 2.5 mV
0.4 + 1.7 mV
0.065 + 1.2 mV
0.35 + 1.5 mV
2.1 + 2 mV
3.3 + 20 mV
0.4 + 16 mV
0.073 + 13 mV
0.22 + 25 mV
1.5 + 40 mV
3.3 + 200 mV
0.4 + 150 mV
0.06 + 130 mV
0.30 + 200 mV
1.6 + 300 mV
3.3 + 200 mV
0.45 + 250 mV
0.09 + 230 mV
0.32 + 300 mV
1.6 + 400 mV
13
Signametrics
Frequency
240 mV
24 hours
23C 1C
0.6 + 150 V
0.13 + 100 V
0.55 + 160 V
5.3 + 350 V
0.93 + 1.3 mV
0.068 + 1 mV
0.62 + 1.2 mV
5.1 + 1.5 mV
0.93 + 12 mV
0.065 + 10 mV
0.31 + 18 mV
2.0 + 30 mV
0.93 + 120 mV
0.062 + 100 mV
0.32 + 150 mV
2.5 + 200 mV
1.0 + 180 mV
0.065 + 150 mV
0.34 + 200 mV
2.5 + 270 mV
350 Hz - 800 Hz
800 Hz - 10 kHz
10 kHz - 50 kHz
50 kHz - 100 kHz
350 Hz - 800 Hz
800 Hz - 10 kHz
10 kHz - 50 kHz
50 kHz - 100 kHz
350 Hz - 800 Hz
800 Hz - 10 kHz
10 kHz - 50 kHz
50 kHz - 100 kHz
350 Hz - 800 Hz
800 Hz - 10 kHz
10 kHz - 50 kHz
50 kHz - 100 kHz
350 Hz - 800 Hz
800 Hz - 10 kHz
10 kHz - 50 kHz
50 kHz - 100 kHz
2.4 V
24 V
240 V
330 V
90 Days
23C 5C
0.65 + 170 V
0.14 + 110 V
0.6 + 200 V
5.4 + 370 V
0.96 + 1.5 mV
0.075 + 1.1 mV
0.65 + 1.3 mV
5.2 + 1.7 mV
0.96 + 14 mV
0.068 + 11 mV
0.33 + 21 mV
2.2 + 35 mV
0.96 + 130 mV
0.065 + 110 mV
0.4 + 170 mV
2.8 + 240 mV
1.1 + 200 mV
0.07 + 200 mV
0.45 + 250 mV
2.8 + 350 mV
One Year
23C 5C
0.7 + 200 V
0.15 + 120 V
0.63 + 230 V
5.6 + 400 V
1.0 + 1.7 mV
0.08 + 1.2 mV
0.70 + 1.5 mV
5.3 + 2 mV
1.0 + 16 mV
0.073 + 13 mV
0.35 + 25 mV
2.4 + 40 mV
1.0 + 150 mV
0.08 + 130 mV
0.45 + 200 mV
3.2 + 300 mV
1.1 + 250 mV
0.08 + 230 mV
0.5 + 300 mV
3.2 + 400 mV
ACV
Range
240 mV
2.4 V
24 V
240 V
Lowest specified
input voltage
(Vp-p)
0.1 V
1.0 V
10 V
100 V
Full Scale
reading (Vp-p)
Resolution
1.9 V
16 V
190 V
850 V
1 mV
10 mV
100 mV
1V
0.5 3 mV
0.5 40 mV
0.5 700 mV
0.55 6 V
ACV
Range
240 mV
2.4 V
24 V
240 V
Lowest specified
input voltage
(Vp-p)
0.1 V
1.0 V
10 V
100 V
Resolution
1.9 V
16 V
190 V
700 V
0.01
0.01
0.01
0.01
2.2 0.3
2.1 0.1
2.0 0.1
2.0 0.1
Signametrics
14
Measures the mid-point between the positive and negative peaks of a repetitive waveform
Used to determine the Threshold DAC setting for optimal frequency and timing measurements
ACV
Range
240 mV
2.4 V
24 V
240 V
Full Scale
reading
0.95 V
9.5 V
95.0 V
350.0 V
Resolution
1 mV
10 mV
100 mV
1V
2.0% 17 mV
3% 160 mV
3% 1.4 V
3% 12 V
[1] Median measurements require a repetitive signal with frequency range of 30 Hz to 30 KHz.
Range
240 mV
2.4 V
24 V
240 V
330 V
Specified input
voltage [1]
240 mV
2.4 V
24 V
240 V
330 V
Resolution
10 V
100 V
1 mV
10 mV
10 mV
[1] Requires selection of a DC Voltage range, and entry of signal frequency. Signal is repetitive.
[2] Specified for a sine wave. More abrupt signals such as square wave, pulse, and triangle will
degrade the accuracy relative to frequency contents of waveform.
Range
240 mV
2.4 V
24 V
240 V
330 V
Specified input
voltage [1]
240 mV
2.4 V
24 V
240 V
330 V
Resolution
10 V
100 V
1 mV
10 mV
10 mV
[1] Requires selection of a DC Voltage range, and entry of signal frequency. Signal is repetitive.
[2] Specified for a sine wave. More abrupt signals such as square wave, pulse, and triangle will
degrade the accuracy relative to frequency contents of waveform.
2.4 mA
24 mA
240 mA
2.4 A
2.400000 mA
24.00000 mA
240.0000 mA
2.400000 A
Lowest Specified
Current
60 A
300 A
3 mA
30 mA
Maximum Burden
Voltage (RMS)
25mV
250mV
55mV
520mV
15
Resolution
1 nA
10 nA
100 nA
1 uA
Signametrics
24 mA
240 mA
2.4 A
Frequency [1]
24 hours
23C 1C
3.8 + 4 A
0.9 + 4 A
0.04 + 1.5 A
0.12 + 4 A
1.8 + 30 A
0.6 + 30 A
0.07 + 10 A
0.21 + 30 A
1.8 + 400 A
0.6 + 400 A
0.1 + 100 A
0.3 + 300 A
1.8 + 4 mA
0.66 + 4 mA
0.3 + 3.8mA
0.4 + 4mA
10 Hz - 20 Hz
20 Hz - 47 Hz
47 Hz - 1 kHz
1 kHz - 10 kHz
10 Hz - 20 Hz
20 Hz - 47 Hz
47 Hz - 1 kHz
1 kHz - 10 kHz
10 Hz - 20 Hz
20 Hz - 47 Hz
47 Hz - 1 kHz
1 kHz - 10 kHz
10 Hz - 20 Hz
20 Hz - 47 Hz
47 Hz - 1 kHz
1 kHz - 10 kHz
90 Days
23C 10C
2.7 + 4 A
0.9 + 4 A
0.08 + 3 A
0.14 + 4 A
2.6 + 30 A
0.9 + 30 A
0.15 + 20 A
0.3 + 40 A
2.7 + 400 A
0.9 + 400 A
0.17 + 180 A
0.35 + 350 A
2.5 + 4.5 mA
0.8 + 6 mA
0.33 + 3.8 mA
0.45 + 4.5 mA
One Year
23C 10C
2.9 + 4 A
1.0 + 4 A
0.12 + 4 A
0.22 + 4 A
2.8 + 30 A
1.0 + 30 A
0.16 + 30 A
0.4 + 40 A
2.8 + 400 A
1.0 + 400 A
0.2 + 220 A
0.4 + 400 A
2.7 + 5 mA
0.9 + 6 mA
0.35 + 4 mA
0.5 + 5 mA
[1] All AC Current ranges have typical measurement capability of at least 20 kHz.
Full Scale
240.0000 A
2.400000 A
24.00000 A
Resolution
0.1 pA
1 pA
10 pA
24 hours
23C 5C
0.07 + 40pA
0.05 + 70pA
0.05 + 400pA
90 Days
23C 5C
0.1 + 45pA
0.08 + 90pA
0.08 + 600pA
One Year
23C 5C
0.17 + 60pA
0.21 + 150pA
0.13 + 0.8nA
[1] With Aperture set to 0.5 Sec, and within one hour from Zero (Relative control).
Ro: Variable 10 to 10 k
Measurement Method: 4-Wire
Temperature units: Selectable oC or oF
RTD Type
0.01C
Temperature
range
-150 to 650C
500, 1 k
0.01C
-150 to 650C
0.03C
Less than 12
0.01C
-100 to 200C
Higher than 90
0.01C
-100 to 200C
Ro ()
Resolution
pt385, pt3911,
pt3916, pt3926
pt385, pt3911,
pt3916, pt3926
Cu (Copper)
100, 200
Cu (Copper)
[1] With Aperture of 0.5s and higher, using a 4-wire RTD. Measurement accuracy does not include RTD probe
error.
Signametrics
16
B
E
J
K
N
R
S
T
Resolution
0.01C
0.01C
0.01C
0.01C
0.01C
0.01C
0.01C
0.01C
Maximum Temperature
[2]
2200C
1200C
2000C
3000C
3000C
2700C
3500C
550C
[1] With Aperture of 0.5s and higher. Measurement accuracy does not include Thermocouple error.
[2] DMM Linearization temperature range may be greater than that of the Thermocouple device.
Full Scale
Resolution
Reading
1,200 pF
12 F
120 F
1.2 F
12 F
120 F
1.2 mF
12 mF
1,199.9 pF
11.999 F
119.99 F
1.1999 F
11.999 F
119.99 F
1.1999 mF
50.000 mF
0.1 pF
1 pF
10 pF
100 pF
1 F
10 F
100 F
1 F
One Year
23C 5C
1 1 pF [2]
1.2 5 pF [3]
1.0 [3]
1.0 [3]
1.0 [3]
1.0 [3]
1.2 [3]
2 [3]
[1] Within one hour of zero, using Relative control. Specified at DMM input terminals.
[2] Accuracy is specified for values higher than 5% of the selected range.
[3] For values between 200pf and 500pf the floor is 2.5pf rather than 1pf.
This Measurement is independent of set Aperture and Read Interval. If desired, the DMMSetCapsAveSamp()
function may be used to control measurement parameters. It is provided means to fine tune the measurement timing for
the application, trading off accuracy for speed.
Measurement time will vary as function of the set parameters, selected range and measured capacitance. The following are
measurement times associated with the default parameters, as range is selected.
17
Signametrics
Range
Input
19.5 ms
51.3
400ms
2.5
52.3 ms
19.1
1.0 s
1
12 F
70.0 ms
14.3
1.4 s
0.7
12 F
118ms
8.5
2.4 s
0.4
120 F
8.9 ms
112.4
2.5 s
5.5
120 F
127 ms
7.9
2.5 s
0.4
1.2 F
15.6 ms
64.1
350 ms
3
1.2 F
175 ms
5.7
3.5 s
5.7
12 F
14.1 ms
70.9
300 ms
0.3
12 F
480 ms
2.1
9s
0.1
120 F
17.3 ms
57.8
350 ms
3
120 F
50.3 ms
19.9
1s
1
1.2 mF
52.6 ms
19.0
1s
1
1.2 mF
151.5 ms
6.6
3s
0.3
12 mF
52.8 ms
18.9
1s
1
12 mF
170 ms
5.9
3.5 ms
0.3
[1] Time depends on the value being measured and the amount of charge present during measurement. The 2060
models with hardware version E and higher include capacitance.
1,200 pF
1,200 pF
5% of Scale
Full Scale
5% of Scale
Full Scale
5% of Scale
Full Scale
5% of Scale
Full Scale
5% of Scale
Full Scale
5% of Scale
Full Scale
5% of Scale
Full Scale
5% of Scale
Full Scale
Full Scale
3- Digits
23.99 F
239.9 F
2.399 F
23.99 F
239.9 F
2.399 mF
Resolution
10 pF
100 pF
1000 pF
10 F
100 F
1 F
One Year
23C 5C [2]
5 200 pF
5 1 F
3 5 F
3 50 F
5 500 F
6 5 F
[1] Within one hour of AC Caps Open Cal operation, and relative correction.
[2] Specified for values higher than 5% of the selected range with Aperture > 0.2s
Test frequency
33 H
330 H
3.3 mH
33 mH
330 mH
3.3 H
100 kHz
50 kHz
4 kHz
1.5 kHz
1 kHz
100 Hz
Full Scale
4 Digits
33.000 H
330.00 H
3.3000 mH
33.000 mH
330.00 mH
3.3000 H
Resolution
1 H
10 H
100 H
1 H
10 H
100 H
Accuracy 23C 5C
One Year [2]
3.0% + 500 H
2.0% + 3 H
1.5% + 25 H
1.5% + 200 H
2.5 + 3 mH
3 + 35 mH
Signametrics
18
The Threshold DAC is used for selecting a detection level, providing optimal frequency and time
measurements even at extreme duty cycle values.
240 mV
2.4 V
24 V
240 V
-1.0 V to +1.0 V
-10.0 V to +10.0 V
-100.0 V to 100.0 V
-400 V to 400 V
Threshold
DAC
resolution
0.5 mV
5.0 mV
50 mV
500 mV
1.900 V
19.00 V
190.0 V
850.0 V
0.2% + 4 mV
0.2% + 40 mV
0.2% + 0.4 V
0.2% + 4 V
[1] This table should be used in conjunction with the AC volts section above.
Frequency
1Hz 130Hz
130Hz 640Hz
640Hz 2.5kHz
2.5kHz 40kHz
40kHz 200kHz
200kHz 300kHz
Resolution (Hz)
1 mHz
6.5 mHz
25 mHz
0.4 Hz
2.5 Hz
1.5 Hz
25% of range
2 Hz to 100 Hz
100 Hz to 1 kHz
1 kHz to 10 kHz
10 kHz to 100
kHz
Resolution
0.02%
0.2%
2%
20%
Typical Uncertainty is
0.03% of reading
adder shown
Full scale reading
0.03%
0.3%
3%
20%
100.00 %
100.00 %
100.00 %
100.00 %
Frequency range
Resolution
Width range
1 s
2 s to 1 s
Typical
Uncertainty
0.01 +/- 4 s
Note that the Pulse Width function provides means to measure frequencies down to 0.5Hz by adding the
measured positive and negative width values.
Signametrics
Signametrics
20
Aperture
5.1200s [1]
5.0666s [1]
2.08s [1]
2.0s [1]
1.06666s [1]
960ms [1]
533.33ms [1]
480ms [1]
266.666ms [1]
160.0ms
133.33ms
80.00ms
66.6667ms
40.00ms
33.333ms
20.00ms
16.6667ms
10ms
8.333ms
5ms
4.16667ms
2.5ms
2.0833ms
1.25ms
1.0417ms
625S
520.83S
312.5S
260.42S
130.21S
2.5S [2]
60Hz
50Hz
400Hz
Command/Response
mode min. Read
Interval(s) / max meas.
rate(Hz)
5.121s / 0.2
5.0677s / 0.2
2.081s / 0.5
2.001s / 0.5
1.067s / 1
0.9605s / 1
533.6ms / 2
480.2ms / 2
268ms / 4
166ms / 6
134ms / 8
80.4ms / 13
67.2ms / 15
40.4ms / 25
33.643ms / 29.72
20.098ms / 49.76
16.77ms / 59.6
10.094ms / 99
8.422ms / 119
5.109ms / 195
4.265ms / 234
2.598ms / 385
2.177ms / 458
1.344ms / 744
1.133ms / 880
719s / 1,390
617s / 1,625
410s / 2,445
355s / 2,825
223s / 4,475
47s / 21,600
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
160.3 ms / 6
133.5 ms / 8
80.2 ms / 13
66.713 ms / 15
40.32 ms / 24.8
33.38 ms / 30
20.33 ms / 50
16.89 ms / 59
10.25 ms / 97
8.503 ms / 115
5.187 ms / 185
4.274 ms / 220
2.614 ms / 350
2.216 ms / 410
1.380 ms / 625
1.158 ms / 864
728 s / 1,370
622 s / 1,610
414 s / 2,445
358 s / 2,825
217 s / 4,660
45 s / 22,200
21
Signametrics
Signametrics
22
Parameter
Voltage source range [1]
-10.0 V to +10.0 V
DC Current measurement range
0 mA to+/-24mA
Voltage setting resolution
5mV
1% 35 mV
Voltage setting accuracy 23C 10C One Year
Typical settling time
3s [2]
DC Current measurement accuracy
0.1% + 1 A
[1] See the performance envalop for limitations of the voltage and current values.
[2] Issue DMMSetDCVSource operation at least five times to arrive at the specified accuracy. Use aperture of 133ms or higher.
Resolution [2]
Minimum
level
1.25 A
4.2 V
500 pA
10 A
1% + 10 A
12.5 A
4.2 V
5 A
50 A
1% + 100 A
125 A
4.2 V
50 A
100 A
1% + 500 A
1.25 mA
4.2 V
500 A
1 A
1% + 5 A
12.5 mA
1.5 V
5 A
10 A
1% + 50 A
[1] Compliance voltage is the range at which the current source is linear. It does not imply a measurement range. Wile in this
mode, the DMM measures the load voltage ranging from 0V to 2.4V.
[2] Resolution without Trim DAC. The use of the Trim DAC can improve the resolution by a factor of 10, but it has to be set
separately since it is not calibrated.
23
Signametrics
Range
Typical Resolution
1s
65.5ms to 3s [2]
100s
Number of Pulses
1 to 32,000
Amplitude
0V to +10V or 0V to -10V
5mV
[1] The resolution is determined by the higher of the two widths values (positive or negative portions). This value also determes
tha minimum pulse width.
[2] The minimum pulse widths are 25s or 1.5ms depending on the value of the higher of the two pulse widths.
Signametrics
24
Isolation
Safety
Calibration
to 80% at 37C
to 95% at 37C
Operating Altitude
Storage Altitude
10,000
50,000
MTBF
100,000 hours
Size
1C (SM2064)
Power
Note: Signametrics reserves the right to make changes in materials, specifications, product functionality, or
accessories without notice.
25
Signametrics
Accessories
Several accessories are available for the SM2060 series DMMs, which can be purchased directly from
Signametrics, or one of its approved distributors or representatives. These are some of the accessories available:
Mini DIN for Trigger, 6-Wire Ohms and Guarding connector SM2060-CON7
Signametrics
26
Use extreme care when plugging the DMM module(s) into a PCI bus slot. If possible, choose an empty
slot away from any high-speed boards (e.g. video cards) or the power supply. Please be patient during
the installation process! The DMM comes with 4 safety-input jacks. Because of their necessary size,
they are a tight fit in many PC chassis. Insert the bracket end of the DMM into your PC first, watching
for any interference between the safety input jacks and your PC chassis. Sliding the bracket end of the
DMM into the chassis may be helpful. Be patient! You should only have to install it once!
Signametrics
Before using the DMM, please take a few moments and review this section to understand where the voltage,
current, or resistance and other inputs and outputs should be applied. This section contains important
information concerning voltage and current limits. Do not exceed these limits, as personal injury or damage
to the instrument, your computer or application may result.
V, + This is the positive terminal for all Volts, 2W, capacitance, diode and inductance measurements,
and for sourcing of VDC, VAC and IDC. It is also the Source HI for 4W measurements. The maximum
input across V, + and V, - is 300 VDC or 250 VAC when in the measuring mode. When in the
sourcing mode, the maximum input allowed before damage occurs is 100 volts.
V, - This is the negative terminal for all Volts, 2W, capacitance diode and inductance measurements,
and or sourcing of VDC, VAC and IDC. It is also the Source LO for 4W. Do not float this terminal or
any other DMM terminal more than 300 VDC or 250 VAC above Earth Ground. (Also, see Trig,
6W Guard below.)
I + This is the positive terminal for all Current measurements. It is also the Sense HI for 4W
measurements and 6W guarded measurements. The maximum input across I, 4W + and I, 4W - is
2.5 A. Do not apply more than 5 V peak across these two terminals!. While the SMX2064 is in DCV or
DCI source mode this terminal can be used as an auxiliary voltage measurement input.
I This is the negative terminal for all Current measurements. In the Current modes, it is protected with a
2.5 A, 250 V Fast Blow fuse. It is also the Sense LO for 4W measurements and 6W guarded
Signametrics
28
measurements. V, - and I, 4W - should never have more than 5 V peak across them. While the 2064
is in DCV or DCI source mode this terminal may be used as an auxiliary voltage measurement input.
TRIG / SYNC / GUARD The Trigger input, Sync output and the two Guard signals are available at the
DIN-7 connector located to the right of the I , 4 + terminal. This group of pins includes the trigger
input (7) line, the Sync output line (2), the Trigger and Sync lines commong (4), and in the case of the
2064, the Guarded Source (1) and Sense (6) signals. The Trigger can be setup to trigger reading(s) into
the onboard buffer, or for immediate response. The Sync line can be used to issue or synchronize
operations with an external device, such as Componenet Handlers. The Six Wire Guard signals facilitate
in-circuit resistor measurements by means of isolating a loading node. A mating male DIN-7 plug can be
ordered from Signametrics. The connector is generically referred to as a mini DIN-7 male.
To activate the Trigger input, apply 3.5 V to 12 V (max). Connect the positve to the Trigger pin and the
negative to the Trigger and Sync Common pin.
The Sync output is an open collector capable of withstanding +20V. Typical current sinking is 0.5mA
with a current limit of 3mA. The width of the Sync signal depends on the selected Aperture. The
minimum width is about 200us when the Aperture is set to 130us. It can be enabled or disabled (default),
set to a positive or negative pulse, be set low or high using functions such as DMMOutputSync and
DMMSetSync
The two 6-Wire guard signals should never have more than 5 V peak across them.
Warning! The DIN connector pins are protected to a maximum of 40 V with respect to the PC chassis.
Do not apply any voltages greater than 40 V to the DIN connector pins. Violating this limit may result in
personal injury and/or permanent damage to the DMM.
DIN-7, Pin number
2
7
4
1
6
Function
Sync output, referenced to pin 4
External Trigger input, Positive
Trigger and Sync Common
Guard Source (SM2064)
Guard Sense (SM2064)
29
Signametrics
Figure 3-2. The Control Panel for the SM2064. The three main groups include Measure, Source and
Range buttons. The Range buttons are context sensitive such that only 240m, 2.4, 24, 240 and 330
appear when in AC Voltage Function is selected, and 2.4m, 24m, 240m and 2.4 appear when AC Current
functions is selected, etc.
Note: All of the controls described below correspond to their respective software function, which can be
invoked within your control software or as objects in a visual programming environment. The software
command language of the SM2060 provides a powerful set of capabilities. Some of the functions are not
included in the control panel, but are in the software.
DC/AC This function switches between DC and AC. This is applicable for the following DMM
functions: Voltage, Current, and Voltage-Source. If Voltage-Source is the function presently in use, the
Source control under the Tools menu can be used to set frequency and amplitude in ACV, and amplitude
only in DCV and DCI.
Relative This is the Relative function. When activated, the last reading is stored and subtracted from all
subsequent readings. This is a very important function when making low-level DCV measurements, or in
2W. For example, when using 2W, you can null out lead resistance by shorting the leads together and
Signametrics
30
clicking on Relative. When making low level DC voltage measurements (e.g., in the V region), first
apply a copper short to the V, + & - input terminals, allow the reading to stabilize for a few seconds,
and click on Relative. This will correct for any offsets internal to the SM2060. The Relative button can
also be used in the Percent and dB deviation displays (shown below), which are activated using the Tools
in the top menu.
The Min/Max box can be used to analyze variations in terms of Min, Max,
Percent and dBV. This display can be activated by selecting the
Min/Max/Deviation from the Tools menue. For instance, testing a circuit
bandwidth with an input of 1V RMS, activate the Relative function with the
frequency set to 100Hz, than sweep gradually the frequency, and monitor the
percent deviation as well as the dBV error and capture any response anomalies
with the Min/Max display. The left display indicates peaking of 2.468% (0.21
dBV) and maximum peaking in the response of +56.24mV and a notch of
10.79mV from the reference at 100Hz.
Aperture Box: Controls the SM2060 reading aperture. As aperture decreases, the measurement noise
increases. For best accuracy set to the longest aperture acceptable for the application. Also consider the
line frequency (50/60 Hz) of operation when setting it, as certain apertures have better noise rejection at
either 50 or 60 Hz. (See Specifications for details.). When measuring RMS values, there is no point
setting the Read Interval (1/rate) to a value shorter than 0.16s since the RMS circuitry has a settling time
that is greater.
Range: Can be set to Autorange or manual by clicking on the appropriate range in the lower part of the
Windows panel. Auto ranging is best used for bench top application and is not recommended for an
automated test application due to the uncertainty of the DMM range, as well as the extra time for range
changes. Locking a range is highly recommended when operating in an automated test system, especially
to speed up measurements. Another reason to lock a range is to control the input impedance in DCV.
The 240 mV and 2.4 V ranges have virtually infinite input impedance, while the 24 V and 240 V and 330
V ranges have 10 M input impedance.
S_Cal: This function is the System Calibration that corrects for internal gain, scale factor and zero
errors. The DMM does this by alternatively selecting its local DC reference and a zero input. It is
required at least once every day to meet the SM2060 accuracy specifications. It is recommended that you
also perform this function whenever the external environment changes (e.g. the temperature in your work
environment changes by more than 5C, or the SM2064 on board temperature sensor indicates more than
a 5C change). This function takes less than a few seconds to perform. Disconnect all leads to the DMM
before doing this operation. Keep in mind that this is not a substitute for periodic calibration, which must
be performed with external standards.
ClosedLoop: This check box selection is used in conjunction with the AC and DC Voltage-Source
functions of the SM2064. When checked, the DMM monitors the output level and continuously applies
corrections to the output level. When not checked, the DMM is a 12-bit source vs. 16 bits in the
ClosedLoop mode.
OpenCal: This check box selection is used in conjunction with inductance measurement. It is necessary
to perform Open Terminal Calibration using this control, prior to measuring inductance. This function
characterizes both the internal DMM circuitry as well as the probe cables. To perform OpenCal, attach the
probe cables to the DMM, leaving the other end of the probe cables open circuited. Then, activate the
OpenCal button.
31
Signametrics
Sources Panel: There are three function buttons in the Source group (SM2064 only). The V, I, LEAK
buttons select one of three source functions, Voltage (DC and AC), IDC and Leakage. The Sources Panel
is automatically enabled when one of the source functions is enabled. It can also be invoked using the
Sources Panel selection under the Tools menu. This panel allows the entry of values for all of the source
functions, including Leakage.
The V-OUT Scroll bar and Text box are used to
set the Voltage for DC and AC Volts as well as
for Leakage. When sourcing ACV, the voltage is
in RMS and the FREQ. Scroll bar and Text box
control the frequency of the source. It is also
used to control inductance frequency. When
sourcing DC current, use the I-OUT set of
controls. When measuring timing or freqeuncy
the THRESH set of controls is used for
comperator threshold. All of the source controls
are context sensitive and will be enabled when
Signametrics
32
Signametrics
Consideration must be given to the selected Aperture. This is particularly important at signal frequencies
lower than 100Hz. Two error sources are suppresssed using the right Aperture, the RMS converter low
frequency cutoff and signal aliasing with the Aperture. At these lower frequencies make sure to set the
Aperture to a value that is at least ten (10) times the period of the measured signal.
Figure 4-1. Make Voltage ACV measurements with the source ground attached to the SM2060 V, - to
minimize Common Mode measurement problems.
Signametrics
34
Signametrics
In order to measure down to Pico Amperes it may be necessary to guard the terminals as described in the
guarding section of this manual (4.3.8 Guarding High Value Resistance Measurements). It is also a good
idea to zero the measurement function using Relative control.
Warning! Applying voltages greater than 35 V to the I+ and/or the I- terminals can cause personal
injury and/or damage to your DMM and computer! Think before applying any inputs to these
terminals!
36
make low value measurements. All resistance measurement modes are susceptible to Thermo-Voltaic
(Thermal EMF) errors present in the signal path. See section 4.3.6 for details.
37
Signametrics
Figure 4-3. The I- and I+ sense leads should be closest to the body of the resistor when making 4W
measurements. Mind the lead resistance of the V,+ and V,- lines.
Signametrics
38
Signametrics
Range Code
0
1
2
Signametrics
Measurement range
1k to 100M
10k to 1G
100k to 10G
Resolution
10
100
1k
40
Voltage Range
0.02V to 10.0V
0.02V to 10.0V
0.02V to 10.0V
Current Limit
25A
2.5A
250nA
Figure 4-5. Guarding improves accuracy when measuring high value resistors using the Extended
Resistance measurement method.
Ohms
Current
10 mA
1 mA
1 mA
100 uA
10 uA
1 uA
100 nA
10 nA
DMM
Resolution
10
100
1 m
10 m
100 m
1
100
10 k
Error due to
10 V EMF
1 m
10 m
10 m
100 m
1
10
100
1 k
Error due to
100 V EMF
10 m
100 m
100 m
1
10
100
1 k
10 k
Error due to
1mV EMF
100 m
1
1
10
100
10
100
100 k
41
Signametrics
Figure 4-6. Depiction of the error caused the cable leakage, RL.
The SM2064 provides an active guard signal that can be connected to the shield and prevent the leakage
caused by the dielectrics finite resistance. With the shield voltage guarded with Vx, as indicated in
Figure 4-7, there is 0V between the shield and the high sense wire, and therefore no current flows through
RL.
Figure 4-7. Guarding improves accuracy in 2-Wire measurement while testing high value resistors.
Signametrics
42
Signametrics
Keep in mind that setting it to a value lower than the Minimum Read Interval indicated in the tables
below will result in it being the table value.
60
Hz
50Hz
400Hz
Command/Response mode
min. Read Interval(s) / max
meas. rate(Hz)
5.121s / 0.2
5.0677s / 0.2
2.081s / 0.5
2.001s / 0.5
1.067s / 1
0.9605s / 1
533.6ms / 2
480.2ms / 2
268ms / 4
166ms / 6
134ms / 8
80.4ms / 13
67.2ms / 15
40.4ms / 25
33.643ms / 29.72
20.098ms / 49.76
16.77ms / 59.6
10.094ms / 99
8.422ms / 119
5.109ms / 195
4.265ms / 234
2.598ms / 385
2.177ms / 458
1.344ms / 744
1.133ms / 880
719s / 1,390
617s / 1,625
410s / 2,445
355s / 2,825
215s / 4,660
47s / 21,600
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
160.3 ms / 6
133.5 ms / 8
80.2 ms / 13
66.713 ms / 15
40.32 ms / 24.8
33.38 ms / 30
20.33 ms / 50
16.89 ms / 59
10.25 ms / 97
8.503 ms / 115
5.187 ms / 185
4.274 ms / 220
2.614 ms / 350
2.216 ms / 410
1.380 ms / 625
1.158 ms / 864
728 s / 1,370
622 s / 1,610
414 s / 2,445
358 s / 2,825
217 s / 4,660
45 s / 22,200
44
The highest accuracy is obtained from 4-wire devices, since this method eliminates the error introduced
by the resistance of the test leads. The connection configuration for RTDs is identical to 4-wire Ohms.
45
Signametrics
connection.
Figure 4-10. Measuring capacitors or inductors is best handled with coaxial or shielded probe wires.
Signametrics
46
Additional considerations
Lead resistance (overall path resistance, including swithing and interconnects) should be kept below 1
Ohm. The selected aperture must be an integer value multiple of 1/test frequency. When testing polarized
capacitors the DMMs positive terminal must be connected to the corresponding terminal of the capacitor.
Capacitors with high ESR will read lower than their nominal value.
Signametrics
48
Signametrics
the PXI trigger inputs or from the DIN-7 source at the panel of the SMX2064 DMM. The hardware
responds to a positive edge on the trigger input. The trigger pulse must be at least 50s wide. The Long
Trigger function will accept one to 50,000 trigger events (Tc), responding to each trigger it takes 1 to
50,000 samples (Sc), or a total of Tc * Sc samples (1 to 2.5e9). The time from the positive edge of the
trigger signal to the first sample, and the sample to sample time interval, (Td), can be a value between
100us and 3,600s, settable in increments of 1s. The total time required for acquisition following each
trigger event is Sc * Td. To prevent timing conflicts and data over-runs, set Td to a value greater than the
Aperture plus the time to transmit the measurements and the overhead time to process each measurement.
The latter is specified in the manual as overhead time. The DMM Sync output may be activated to
monitor and observe these relations. To prevent overrun errors it is required that readings are retrieved in
real time, as they become available. This is particularly important when running fast and long. To
improve performance use a tight reading loop and set a high Thread priority. Apperture must be set to
160ms or lower value. Read Interval must be set to zero (default).
Signametrics
50
Figure 4-14. Analog Threshold Trigger operation with Positive Edge and Sync enabled.
Signametrics
Aperture greater than 625s, 120 otherwise. Setting the Read Interval can help with fine tuning of the
sampling timing. Use the DMMReady() function to monitor completion. Aperture time must not exceed
160ms.
i = DMMSetBuffTrigRead(0, 2, 50, LEADING) two settling readings, 50 samples and positive Edge.
While DMMReady (0) = No
wait for completion
Wend
For i = 0 To Samp - 1
'Read measurements from buffer.
DMMReadBuffer 0, rd(i)
Next
52
responds to it by making a measurement. The DMM generates the next Sync pulse, and this process
repeats for as many steps as required.
Figure 4-15. Interface timing diagram of a Component Handler interface and a DMM. The DMM is the
master, or the controlling device.
Figure 4.16. Equivalent circuits of the Trigger input and Sync output.
53
Signametrics
Signametrics
54
COUNTER_20HZ. The result is a measurement time of 16ms to measure the 500Hz and 31ms to measure
100Hz. The cost is peak to peak error of 0.2% at 500 Hz and 0.07% at 100 Hz.
To return to the normal/default auto ranging mode, unlock the counter using the DMMUnlockCounter
function. Counter ranges are defined in DMMUser.H file. Entering VAC also unlocks the counter.
Range Symbol
COUNTR_20HZ
COUNTR_130HZ
COUNTR_640HZ
COUNTR_2500HZ
COUNTR_10kHZ
COUNTR_40kHZ
COUNTR_200kHZ
COUNTR_500kHZ
Value
7
6
5
4
3
2
1
0
Frequency Range
1.9 Hz to 19.9 Hz
19.9 Hz to 128.8 Hz
128.8 Hz to 640 Hz
640 Hz to 2.56 kHz
2.56 kHz to 10.24 kHz
10.24 kHz to 40.96 kHz
40.96 kHz to 200 kHz
200 kHz to 500 kHz
Period Range
50.3 ms to 526 ms
7.76 ms to 50.3 ms
1.563 ms to 7.76 ms
390.6 s to 1.563 ms
97.66 s to 390.6 s
24.41 s to 97.66 s
5 s to 24.41 s
2 s to 5 s
56
the peak value of 120 V RMS plus 10% (120V + 10%) X 2 ). Enable the Totalizer and read it
periodically to get the number of times this value was exceeded.
Example Two: Defects in coils, inductors, or transformers can be manifested as an increased decay, or
greatly attenuated resonance when stimulated with a charged capacitor. The Totalizer function can be
utilized to count transitions above a preset Threshold voltage as in the Figure 4-14 below.
Figure 4-20. Testing inductor Q by counting the number of transitions of decaying resonance.
It should be taken in considerations that the signal being measured is AC coupled. This means that the
wave shape and its duty cycle can affect the DC average of the signal, and the effective value of the
threshold DAC which is being utilized. See section 4.15.1 (Threshold DAC) and figure 4.15 for details.
57
Signametrics
Figure 4-21. Sourcing DC voltage. Monitoring of the output in closed loop operation.
Figure 4-22. Sourcing DC voltage and monitoring of the output at the load.
In Figure 4-19, a Kelvin connection improves the voltage accuracy delivered to the load. It simply
eliminates the effect of the source lead wires resistance. To measure the voltage at the load use
DMMReadHiLoSense. Read about this measurement function it in section 4.19.
58
above), while adjusting the Rs value using DMMSetSourceRes(). Using this function overrides the
DMMOpenTermianlCal() operation above. The nominal value for Rs is between 150 and 300.
59
Signametrics
Figure 4-24. Connection topology, and symbolic diagram of the V-source/I-measure function.
Figure 4-25. Generating AC voltage. Monitoring of the output in closed loop operation.
Signametrics
60
For improved accuracy, at the cost of reduced settling time, select the Closed-Loop mode of operation. In
this mode the DMM monitors the voltage source output, and makes adjustments to it each time a
measurement is taken (using DMMRead or DMMReadNorm). This result is a very accurate output and
an equivalent resolution of 17 bits, but requires repetitive measurements. Use an Aperture of 160ms for
signal frequencies higher than 200Hz, and higher apertures for lower frequencies.
Figure 4-26. Sourcing DC current and measuring voltage in the two-wire configuration. This function
can be used for semiconductor parametric tests.
61
Signametrics
Figure 4-27. Sourcing DC current and measuring voltage in the four-wire configuration eliminates the
error due to lead voltage drop.
Figure 4-28. Generating pulses is straight forward. It can be used for various test applications.
While the DMM is in this mode, it is possible to make DC voltage measurements. Using DMMRead will
measure the average DC at the generator output. DMMReadHiSense, DMMReadLoSense and
DMMReadHiLoSense will measure the lower two terminals.
Signametrics
62
63
Signametrics
Figure 4-30. Triggered reading process and timing of SM4042 Scanner and an SM2064 DMMs.
Unlike the previous example, DMMSetBuffTrigRead() is not time critical since the DMM saves all
measurements to its on-board buffer, which is read after the scan is complete. However, this function is
limited to a maximum of 64 readings per scan.
SCANTriggerOutState(nScan, Enabled, PosEdge)
Set trigger output to Positive edge.
nReadings = 50
Total number of measurements to take
DMMSetBuffTrigRead(nDmm, 4, nReadings, NegEdge)
Use 4 settling readings each
SCANAutoScan(nScan, nSteps)
Set off AutoScan
While DMMReady(nDmm) = NO
wait for the DMM to indicate completion
Wend
For I = 0 to nReadings -1
read values stored in the buffer
while(DMMReadBuffer(nDmm, reading(I))
Store each reading
Next
SCANOpenAllChannels(nScan)
Good idea to open all channels when done
While SCANReady(nScan) = NO
Since AutoScan is a polled operation,
DoEvents
' Make sure Scanner is ready Wend
There are several SM2060 family commands to be considered for this operation: DMMSetTrigRead(),
DMMSetBuffTrigRead(), DMMReadMeasurement(), DMMReady(), DMMReadBuffer() and
DMMReadBufferStr().
Referring to figure 4.28, the total time it takes the DMM make a reading must be set to be shorter than tDelay, for completion of the measurements prior to the selection of the next channel.
64
The SMX2064 PXI Digital Multimeters are designed to interface to the PXI trigger bus off the J2
connector. That includes the PXI_TRIG0 through PXI_TRIG6 and PXI_STAR trigger. The trigger to the
DMM is a Wire-Ored function of the external trigger from the DIN-7 connector and the selected
PXI_TRIG input. The data ready signal from the SMX2064 can be selected as a trigger source and to
drive PXI_TRIG1 through PXI_TRIG6 or the PXI_STAR trigger. The function that selects both the the
PXI trigger input and output is DMMSetPXITrigger(int nDmm, int iTrigIn, int iTrigOut).
0
1
0
1
0
1
0
1
The default (at initialization) is zero for both the PXI input and output triggers disabled. This allows the
DIN-7 to be selected at initialization.
Signametrics
external divider network (Figure 4.26). When not in the above functions, make sure these terminals are
disconnected from the application.
Figure 4.32. Extending voltage range of auxiliary inputs by using external attenuator.
A further limitation of these function is that their common mode voltage is limited to 3V relative to the
V- terminal. This means that to preserve accuracy and proper operation, neither terminals should have a
voltage higher than this value as it is measured between the respective terminal and the V- terminal. For
instance, while measuring a differential output voltage of 10mV of a load cell, which is stimulated by the
DMM internal DCV source, both terminals as at a common mode voltage of about 2.5V, which is within
the 3V limit. Actually the I+ terminals common mode is 2.505V. Provided the stimulus applied to the
Signametrics
66
cell would have been 10V, a common mode voltage of 5V would have resulted, exceeding the 3V limit.
In Figure 4.31 the stimulus voltage to the load cell is measured using the DMMRead function and the
output of the cell is measured using DMMReadHiLoSense function.
Figure 4.33. A load cell application maintains common mode limits on I+ and I-.
Another function of interest is the DMMReadTestV which allows precise leakage voltage measurement
while the SM2064 is in leakage measurement function.
The table below indicates which of the above auxiliary DCV measurement functions can be used while
various measurement and sourcing operations of the SMX2064 DMM are selected.
SMX2064 Function DMMReadHiSense()
DMMReadLoSense()
DMMReadHiLoSense()
VDC
Diode Test
2-Wire Ohms
VDC Source
VAC Source
IDC Source
Leakage
Extended Ohms
Caps
Inductance
Figure 4.34. Auxiliary DCV measurement functions applicability for various DMM operations.
67
Signametrics
Signametrics
File
Description
SM60CAL.DAT
This file contains calibration information for the DMM. Do not write
into this file unless you are performing an external calibration! This file
is normally placed at the C:\ root directory by the setup program, and
should be left there. It may contain calibration records for several
DMMs.
SM2060.LIB
SM2060.DLL
The 32-bit driver DLL. This should be installed either in your working
directory, in the Windows system directory, or in a directory on your
PATH. The installation program installs this file in your Windows
system directory (usually C:\WINDOWS\SYSTEM32 for Win98/95
or at C:\WINNT\SYSTEM32 for Windows NT).
SMX2060.H
Driver header file. Contains the definitions of all the DMMs function
prototypes for the DLL, constant definitions, and error codes. Install in
a directory pointed to by your INCLUDE environment variable.
DMMUser.H
Header file containing all of the necessary DMMs function, range, rate
definitions to be used with the various measure and source functions.
SM2064.vbw
SM2064.frm
SM2064.vbp
2060glbl.bas
File
Description
SM2064.exe
Msvcrt.dll
68
Windrvr.vxd
Windrvr.sys
Install.doc
The file SM60CAL.DAT contains calibration information for each DMM, and determines the overall
analog performance for that DMM. You must not alter this file unless you are performing an external
calibration of the DMM. This file may contain multiple records for several DMMs. Following
installation, starting the DMM via the provided graphical user interface, or by executing DMMInit()
operation, this calibration record is extracted from the on-board none volatile store, and written to the
above file. Each record starts with a header line, followed by calibration data.
card_id 8123
type 2064 calibration_date
06/25/2005
ad
; A/D compensation
72.0
20.0
1.0
vdc
; VDC 240mV, 2.4V, 24V, 330V ranges. 1st entry is Offset the 2nd is gain parameters
-386.0 0.99961
-37.0 .999991
-83.0 0.999795
-8.8 1.00015
-2.3
1.00001
vac
; VAC 1st line - DC offset. Subsequent lines: 1st entry is Offset the 2nd is gain, 3rd freq. comp
5.303
; starting with the 240mV range, and last line is for the 330V range.
0.84
1.015461 23
0.0043
1.0256
23
0.1
1.02205
2
0.4
1.031386 1
3.0
1.034601 2
idc
; IDC 240nA to 2.5A ranges. 1st entry is offset, 2nd is gain parameter
-1450.0 1.00103
-176.0 1.00602
-1450.0 1.00482
-176.0 1.0
-10.0 1.00083
-16.0 1.00222
-50.0 1.0034
-176.0 1.0
iac
; IAC 2.4mA to 2.4A ranges, offset and gain
1.6 1.02402
0.0 1.03357
1.69 1.00513
0.0 1.0142
2w-ohm ; Ohms 24, 240, 2.4k,...,240Meg ranges, offset and gain
12700.0
1.002259 ;in the SMX2060 & SMX2055 the 1st and last lines are placeholders
1256.0
1.002307
110.0
1.002665
0.0
1.006304
0.0
1.003066
0.0
1.001848
0.0
0.995664
0.0
1.00030
The first line identifies the DMM and the calibration date. The "card-id" is stored on each DMM. During
initialization the driver reads it from the DMM and matches it to that in the calibration record.
69
Signametrics
During initialization (DMMInit()), the driver reads various parameters such as DMM type (SM2060/44),
and serial number, and then reads the corresponding calibration information from the SM60CAL.DAT
file.
The DMMInit() function reads the information from these files to initialize the DMM. DMMInit accepts
parameters that are the names of these files. A qualified technician may modify individual entries in the
calibration file, then reload them using the DMMLoadCalFile command.
Signametrics
70
71
Signametrics
Signametrics
72
73
Signametrics
short ret, i;
DMMSetFunctions (0, VDC);
DMMSetAutoRange (0, TRUE);
/* to settle auto-range and function changes ignore three readings */
for( i = 0 ; i < 4 ; i++ ) ret = DMMReadNorm (0, &Vreading);
return ret; }
DMMArmAnalogTrigger
SM2060 SM2064
Description
Remarks
This function is usable for VDC, VAC, Ohms, IAC IDC and Leakage. It sets up the
DMM for analog level trigger operation. In response to this command the DMM
continuously makes measurements, storing them to a circular buffer. A trigger event
occurs when a measured value crosses the threshold, dThresh, in the transition direction
specified by the currently set Edge. The Edge polarity is set using the
DMMSetTrigPolarity function. At the trigger point the DMM makes additional
iPostSamples measurements and stores them to the circular buffer. Following completion
of the capture process, use the DMMGetTriggerInfo function to get information related
to the operation, such as the total number of pre trigger measurements.
The dThresh value is in base units, and must be within the selected measurement range.
For example, in the 240 mV range, dThresh must be within -0.24 and +0.24. In the
24k, range it must be set between 0.0 and 24000.0.
Prior to executing this operation set the measurement function, range, Aperture, Read
Interval and Edge polarity. Between the time this function is issued and the time the
buffer is read, no other command should be sent to the DMM. Two exceptions are the
DMMReady and DMMDisArmTrigger commands.
Read Interval must be set between 0 (default) and 65ms. Aperture must be set between
160ms and 2.5us. The value of iPostSamples must be set between 1 and the buffer size.
The buffer size is 80 for Apertures of 160ms to 1.4ms, and 120 for Apertures in the range
of 2.5s to 625us. The highest Aperture allowed for this operation is 160ms. Aperture
and Read Interval are set using the DMMSetAperture and DMMSetReadInteval
functions, respectively.
Use the DMMReady to monitor completion of this operation. When ready, read up-to
the above buffer size, using DMMReadBuffer or DMMReadBufferStr functions. Once
DMMReady returns TRUE, it should not be used again prior to reading the buffer, since
it initializes the buffer for reading when it detects a ready condition.
Signametrics
74
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iPostSamples
int The number of samples the DMM takes following a trigger pulse.
This number must be between 1 to 80 and 1 to 120. See above details.
dThresh
Return Value
Example
Value
Meaning
DMM_OKAY
Negative value
Error code.
double Buffer[80];
DMMArmAnalogTrigger(0,80,1.5);
while( ! DMMReady(0));
// Wait for capture
for(i=0; i < 80 ; i++)
j = DMMReadBuffer(0, &Buffer[i]);
DMMArmTrigger
SM2060 SM2064
Description
Remarks
Setup the DMM for external hardware trigger mode (input at DIN7 connector).
Following reception of this command the DMM continuously makes measurements and
places them in a circular buffer, while waiting for the for the selected trigger edge. All
measurements are made at the currently set Aperture and Read Interval. On reception of
the selected trigger edge the DMM makes iPostTrig samples at the currently function and
range, storing them to the buffer. The result is a buffer containing both, pre-trigger and
iPostTrig post-trigger samples. The total number of which is limited to the buffer size
(120 or 80 depending on set Aperture. See DMMArmAnalogTrigger for details). With
the exception of the DMMReady and DMMDisarmTrigger commands, following the
issue of the DMMArmTrigger command, no other function should be sent to the DMM
prior to reading the captured data. This function is usable for VDC, VAC, Ohms, IAC,
RTD and IDC and Leakage. Following completion of the capture process, Use the
DMMGetTriggerInfo function to get information related to the operation. The Trigger
Edge polarity can be set with the DMMSetTrigPolarity function.
The width of the trigger input must be at least as wide as the selected Aperture and/or
Read Interval, whichever is greater.
75
Signametrics
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iPostTrig
int The number of samples the DMM takes following a trigger. This
value must be between 1 and 80 or 120 depending on set resolution.
Return Value
Example
Value
Meaning
DMM_OKAY
Negative Value
Error code.
double Buffer[70];
DMMArmTrigger(0,70);
// Setup to capture 70 post trigger samp.
while( ! DMMReady(0));
// wait for ready
for(i=0; i < 70 ; i++)
// read measurements from internal buffer
j = DMMReadBuffer(0, &Buffer[i]);
DMMBurstBuffRead
SM2060 SM2064
Description
Remarks
Following reception of this command the DMM enters a burst read mode, taking a total
of iSamples measurements at the currently set measurement function, range, Aperture
and Read Interval. Those readings are saves to the on-board buffer. Each measurement I
preceded by iSettle readings, which are discarded. Therefore for each sample saved
iSettle + 1 readings are taken. The last reading is saved. This process repeats for
iSamples. No other DMM command should be issued until the process is complete, and
the contents of the buffer are read. One exception is the DMMDisarmTrigger
command, which terminates the process. No auto ranging is allowed in this mode. This
function is usable for VDC, VAC, Ohms, IAC, IDC and RTD measurements.
Measurement Aperture should be set to 160ms or lower. The total time it takes to
complete this process is approximately iSamples * ( iSettle + 1) * Aperture (or Read
Interval, if set).
Use the DMMReady to monitor if the has completed the operation, and is ready. When
ready, read up to iSamples, using DMMReadBuffer or DMMReadBufferStr functions.
Once DMMReady returns TRUE, it should not be used again until the buffer is read,
since it clears some flags in preparation for buffer reading when it detects a ready
condition.
Signametrics
76
Parameter
Type/Description
iDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iSettle
iSamples
int The number of samples the DMM takes following the same
number of trigger pulses. This number must be between 1 and 80 or
120 depending on set Aperture.
Return Value
Example
Value
Meaning
DMM_OKAY
Negative Value
Error code.
double Buffer[50];
DMMBurstBuffRead(0, 4, 50); // 4 settling readings for each //
measurement, and take 50 readings
while( ! DMMReady(0) );
// wait for completion
for(i=0; i < 50 ; i++)
// read 50 readings from buff.
j = DMMReadBuffer(0, &Buffer[i]);
DMMBurstRead
SM2060 M2064
Description
Setup the DMM for multiple readings operation, sending back measurements as they
come.
#include "SMX2060.h"
#include "DMMUser.H"
int DMMBurstRead(int nDmm, int iSettle, int iSamples)
Remarks
On execution of this command the DMM enters a tight loop, where it takes multiple
measurements, sending them back as they come. This function is similar to the
DMMSetTrigRead function, with the exception that it does not wait for a hardware
trigger to start the process. For each reading returned the DMM takes iSettle + 1 samples,
sending the last sample back. All samples are taken at the set Measurement function,
Aperture and Read Interval currently set. This process repeats for iSamples. Following
the issue of this command and until iSampels measurements are read back, it is
necessary to keep up with the DMM and read all iSample measurements as fast as they
come. Failing to do so will result in communication overrun. Use the
DMMReadMeasurement command to read these measurements. The DMM
communication channel has a limited size FIFO which helps a bit. No auto ranging is
allowed in this mode. The advantage of this function is that it makes measurements with
a consistent sampling rate. Use it carefully and only in cases where this feature is
necessary. It is usable for VDC, Ohms and IDC measurements. Measurement Aperture
should be set to 160ms or lower. The total time it takes to complete this process is equal
to (iSamples * ( iSettle + 1) * Aperture or * Read Interval if it is not set to 0.
Use the DMMReadMeasurement to monitor when reading becomes available, and to
read the data. Read as many samples as iSamples to guarantee proper conclusion of this
capture process.
77
Signametrics
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iSettle
iSamples
int The number of samples the DMM takes following the same
number of trigger pulses. This number must be between 1 and 60,000,
inclusive.
Return Value
Example
Signametrics
Value
Meaning
DMM_OKAY
Negative Value
Error code.
double Reading[250];
DMMBurstRead(0, 2, 250); // take 2 measurements prior to each
// sample. Take a total of 250 samples
for(i=0; i < 250 ; i++) // read them as as they come
while( ! DMMReadMeasurement(0 , Reading[i]) );
78
DMMCalibrate
SM2060 SM2064
Internally calibrate the DMM.
Description
#include "SMX2060.h"
int DMMCalibrate(int nDmm)
This function performs self calibration of the various components of the DMM, as well
as an extensive self test. At the end of this operation it returns the DMM to the current
operating mode. Using this function periodically, or when the DMM internal temperature
varies, will enhance the accuracy of the DMM. Using this function does not remove the
requirement to perform periodic external calibration.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
The return value is one of the following constants.
Return Value
Value
Meaning
DMM_OKAY
DMM is OK.
Negative Value
Error
Example
Comments
This performs an internal DMM calibration and is the same as the S-Cal command in the
VB Control Panel. It is not related to the external calibration represented in the
SM60CAL.DAT file.
DMMCleanRelay
SM2060 SM2064
Clean specified relay.
Description
#include "SMX2060.h"
int DMMCleanRelay(int nDmm, int iRelay, int iCycles)
This function cleans iRelay by vibrating the contact iCycles times. This function is useful
for removing oxides and other deposits from the relay contacts. DC Current
measurements are particularly sensitive to K2 contact resistance and therefore should be
cleaned periodically. It is also useful for making sound in computer without a speaker.
Remarks
Return Value
Parameter
Type/Description
iRelay
int The relay to clean. 1 for K2, 2 for K2 and 3 for K3.
iCycles
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
79
Signametrics
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMClearMinMax
SM2060 SM2064
Clears the Min/Max storage.
Description
#include "SMX2060.h"
int DMMClearMinMax(int nDmm)
This function clears the Min/Max values, and initiates a new Min/Max detection. See
DMMGetMin for more details.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
Integer error code..
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMClosePCI
SM2060 SM2064
Close the PCI bus for the specified DMM. Not for user applications.
Description
#include "SMX2060.h"
int DMMClosePCI(int nDmm)
This function is limited for servicing the DMM. It has no use in normal DMM operation.
See also DMMOpenPCI() function.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
Integer error code.
Return Value
Signametrics
Value
Meaning
DMM_OKAY
80
Negative Value
Example
Error code
DMMDelayedTrigger
SM2060 SM2064
Arm DMM for delayed external trigger operation.
Description
#include "SMX2060.h"
#include "SMX2060.h"
int DMMDelayedTrigger(int nDmm, double dDelay, int iSamples)
Setup for delayed external trigger capture mode (off the DIN7 or PXI trigger bus).
Following reception of this command the DMM enters a wait state, waiting for trigger
edge currently selected (see DMMSetTrigPolarity). At the detection of the selected
polarity, the DMM waits for dDelay prior to making iSamples samples. The value of
dDelay can be set between 0 and 1s. The samples are taken using the currently set
function, range, Aperture (DMMSetAperture) and Read-Interval
(DMMSetReadInterval). iSamples are stored in the DMMs internal buffer. With the
exception of the DMMReady and DMMDisarmTrigger commands, following the issue of
DMMDelayedTrigger command, no other function should be used prior to reading the
captured data. This function is usable in VDC, VAC, Ohms, IAC, RTD and IDC.
Remarks
Read Interval must be set between 0 (default) and 65ms. Aperture must be set between
160ms and 2.5us. The value of iPostSamples must be set between 1 and the buffer size.
The buffer size is 80 for Apertures of 160ms to 1.4ms, and 120 for Apertures in the range
of 2.5s to 625us. The highest Aperture allowed for this operation is 160ms. Aperture
and Read Interval are set using the DMMSetAperture and DMMSetReadInteval
functions, respectively.
Following DMMDelayedTrigger, use the DMMReady to monitor completion of the
capture process. When the DMM is ready read the buffer using DMMReadBuffer or
DMMReadBufferStr functions. Read iSamples measurements from the buffer. Once
DMMReady returns TRUE, it should not be called again since it prepares the buffer for
reading when it detects a ready condition. Other related functions include; DMMReady,
DMMReadBuffer, DMMReadBufferStr, DMMSetReadInterval, DMMSetSync,
DMMSetTrigPolarity, DMMDisarmTrigger.
Example
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
dDelay
iSamples
int The number of samples the DMM takes following a trigger. This
value must be between 1 and 80 or 120 depending on set resolution.
81
Signametrics
DMMDisableTrimDAC
SM2060
Terminate the operation of the Trim DAC.
Description
#include "SMX2060.h"
int DMMDisableTrimDAC(int nDmm)
This function disables the Trim DAC. Since usage of the Trim DAC consumes the
on-board microcontrollers resources it must be turned off with this function when not in
use. See DMMSetTrimDAC, DMMSetDCVSource and DMMSetACVSource for
more details.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
Integer error code.
Return Value
Example
Value
Meaning
DMM_OKAY
Negative Value
Error code
DMMDisArmTrigger
SM2060 SM2064
Abort trigger operation.
Description
#include "SMX2060.h"
int DMMDisArmTrigger (int nDmm)
This function sends the DMM a trigger termination command. If the DMM is waiting
Remarks
for a trigger, following one of the Triggered operations, it will terminate the operation
and will be ready for a new operation. It can be used following an external hardware or
analog level trigger arm command (DMMArmAnalogTrigger, DMMArmTrigger, or
DMMTrigger ).
Return Value
Signametrics
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
Meaning
DMM_OKAY
82
Negative Value
Error code
DMMDutyCycleStr
SM2060 SM2064
Return percent duty cycle of an AC signal in string format.
Description
#include "SMX2060.h"
int DMMDutyCycleStr(int nDmm, LPSTR lpszReading)
This function is the string version of DMMReadDutyCycle. The measurement result is
stored at the location pointed to by lpszReading. See DMMReadDutyCycle for more
details.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpszReading
Return Value
Value
Meaning
Negative Value
Error code
Warning code
Example
DMMErrString
SM2060 SM2064
Description
Remarks
Return Value
This function returns a string containing the error or warning description which
corresponds to the iErrorCode. The string is placed at lpszError. Error codes are
negative numbers, while warning codes are positive numbers.
Parameter
Type/Description
iErrorCode
iBuffLength
lpszError
The return value is the length of the error string or one of the following constants.
83
Signametrics
Value
Meaning
Negative Value
Error code
Warning code
Example
char cBuf[64];
int length = DMMErrString( -3, cBuf, 48);
DMMFrequencyStr
SM2060 SM2064
Return the next DMM frequency reading, formatted for printing.
Description
#include "SMX2060.h"
int DMMFrequencyStr(int nDmm, LPSTR lpszReading)
This function makes frequency measurement and returns the result as a string formatted
for printing. The print format is fixed to six digits plus units, e.g., 05.001 Hz. If the
DMM is in Autorange, be certain to take an amplitude reading before using this
command. It may take several calls to DMMFrequencyStr() to get the measured
frequency, because the DMM frequency counter uses a frequency ranging scheme which
gets activated only when a frequency or period reading function is received. If the
previously measured frequency was 2 Hz and the frequency being measured is 300 kHz
(or vise versa), it might take as many as six calls to DMMFrequencyStr() or any of the
other frequency measurement functions, to read the correct frequency. To improve this
use the DMMSetCounterRng() is function requires the DMM to be in either VAC or
IAC function and at the appropriate range.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpszReading
Return Value
Example
Signametrics
Value
Meaning
Negative Value
Error code
Warning code
char cBuf[64];
int status;
status = DMMFrequencyStr(0, cBuf);
84
DMMGetACCapsR
SM2060 SM2064
Return the resistance component of the last AC Caps measurement.
Description
#include "SMX2060.h"
int DMMGetACCapsR(int nDmm, double *lpdResult)
This function retrieves the resistive component from last reading of the In Circuit (AC
based) Capacitance measurement. It performs all scaling and conversion required, and
returns the result as a 64-bit double-precision floating-point number in the location
pointed to by lpdResult. Returned result is a value in ohms. Read about In-Circuit
Capacitance Measurements section of this manual.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdResult
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
OVER_RNG
Example
double d;
int status;
status = DMMGetACCapsR(0, &d);
DMMGetAperture
SM2060 SM2064
Get DMM reading rate
Description
#include "SMX2060.h"
int DMMGetAperture(int nDmm, double *lpdAperture)
This function returns a double floating point value of the currently selected Aperture. It is
not available with the SMX2055 DMM.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdAperture
Return Value
Value
Meaning
Negative Value
Error code
85
Signametrics
Example
DMMGetAverageVAC
SM2060
SM2064
Measure average of an AC voltage
Description
#include "SMX2060.h"
int DMMGetAverageVAC(int nDmm, double dFrequency, double *lpdAvg)
This function returns a double floating value of the AC average voltage of a signal. The
Signale is converted to its absolute value (rectified) and averaged over one or more
periods. The DMM must be in the DC voltage measurement mode, and the appropriate
range selected. The signal frequency dFrequency, must be entered.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
dFrequency
lpdAvg
Return Value
Value
Meaning
Negative Value
Error code
Example
DMMGetBufferSize
SM2060 SM2064
Return the currently selected internal buffer size.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMGetBufferSize(int nDmm, int * lpiLength)
This function returns the currently set buffer size. This value can be 80 or 120. The value
depends on the settings of the Aperture value.
Remarks
Parameter
Type/Description
iDmm
int
lpiLength
Return Value
Value
Signametrics
Meaning
86
Value
Example
DMMGetBusInfo
SM2060 SM2064
Returns the PCI Bus and Slot numbers for the selected DMM.
Description
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
bus
slot
Return Value
Value
Meaning
DMM_OKAY
Negative number
Error code
Example
int bus, slot; // Find on which bus, and slot the DMM is at
DMMGetBusInfo(3, &bus, &slot); // DMM#3
DMMGetCalDate
SM2060 SM2064
Return the calibration date string from the DMM.
Description
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpszCalDate
Return Value
Value
Meaning
87
Signametrics
Example
Signametrics
Negative Value
Error code
Warning code
char cBuf[64];
int status;
status = DMMGetCalDate(0, cBuf);
88
DMMGetdB
SM2060 SM2064
Get dB deviation from the reading at the time relative was activated.
Description
#include "SMX2060.h"
int DMMGetdB(int nDmm, double *lpdDev)
This function returns a double floating value that is the dB deviation relative to the
reading made just before the relative function was activated. This function is useful in
determining measurement errors in dB. It can be used for bandwidth measurements or
DC evaluation.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdDev
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMGetdBStr
SM2060 SM2064
Get dB deviation from the reading at the time relative was activated.
Description
#include "SMX2060.h"
int DMMGetdBStr(int nDmm, LPCSTR lpszDB)
This function is the same as the DMMGetdB(), with the exception that it returns a string.
See DMMGetdB() for more details.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpszDB
89
Signametrics
Return Value
Example
Value
Meaning
Negative Value
Error code
Warning code
Postive Value 100
char cBuf[64]; int strLength = DMMGetdBStr(0, cBuf);
DMMGetCJTemp
SM2060 SM2064
Retrieve the currently set cold junction temperature.
Description
#include "SMX2060.h"
int DMMGetCJTemp(int nDmm, double *lpdTemp)
Get the currently set cold junction temperature. For more details see
DMMSetCJTemp() function.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdTemp
Return Value
Example
Value
Meaning
DMM_OKAY
Negative Value
Error code.
DMMGetCJTemp(0, &temp);
DMMGetDeviation
SM2060 SM2064
Description
Get percent deviation from the reading at the time relative was activated.
#include "SMX2060.h"
int DMMGetDeviation(int nDmm, double *lpdDev)
Remarks
Signametrics
This function returns a double floating value that is the percent deviation relative to the
reading made just before the relative function was activated (DMMSetRelative). This
function is useful in quantifying measurement errors. It can be used for bandwidth
measurements or DC evaluation, or percent variation of a device under test over
temperature. The absolute value of lpdDev can be used as a pass/fail window for
production. Another function effecting DMMGetDeviation is DMMSetReference.
Unlike DMMSetRelative, which uses the current measurement as a reference,
DMMSetReference provides the facility to set this reference.
90
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdDev
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
double error;
int status = DMMGetDeviation(0, &error);
DMMGetDeviatStr
SM2060 SM2064
Get percent deviation from the reading at the time relative was activated.
Description
#include "SMX2060.h"
int DMMGetDeviatStr(int nDmm, LPCSTR lpszDev)
This function is the same as the DMMGetDeviation(), with the exception that it returns
a string. See DMMGetDeviation() for more details.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpszDev
Return Value
Example
Value
Meaning
Negative Value
Error code
Warning code
char cBuf[64];
int strLength = DMMGetDeviatStr(0, cBuf);
91
Signametrics
DMMGetDiffMnMxStr
SM2060 SM2064
Returns the difference between the max and min values as string.
Description
#include "SMX2060.h"
int DMMGetDiffMnMxStr (int nDmm, LPSTR lpszReading)
This function return the difference between the current Max. and Min values, which is
the peak-to-peak range of recent readings. It returns the result as a string formatted for
printing. The print format is determined by the range and function.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpszReading
The return value is one of the following constants, or the string length is OK.
Return Value
Value
Meaning
Negative Value
Error code
Warning code
Example
char cBuf[64];
int status = DMMGetDiffMnMxStr(0, cBuf);
DMMGetFuncRange
SM2060 SM2064
Get DMM range code.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMGetFuncRange(int nDmm)
This function returns the combined DMM function/range code. See DMMUser.H for the
complete set of codes.
Remarks
Signametrics
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
92
Integer value corresponding to the currently set DMM function/range, or an error code.
The following are a few examples of the returned value.
Return Value
Value
Meaning
Positive value
Negative Value
Error code
Example
DMMGetFunction
SM2060 SM2064
Get DMM function code.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMGetFunction(int nDmm)
This function returns the DMM function code. The codes are defined in the
DMMUser.H file.
Remarks
Parameter
Type/Description
nDmm
Return Value
Value
Meaning
Positive value
Negative Value
Error code
Example
DMMGetGrdVer
SM2060 SM2064
Get DMM firmware version.
Description
#include "SMX2060.h"
int DMMGetGrdVer(int nDmm)
This function returns the DMM firmware version of the on-board controller.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
93
Signametrics
Integer value. The return value is the version value or an error code.
Return Value
Value
Meaning
Positive Value
Version
Negative Value
Error code
Example
firmwarever = DMMGetGrdVer(0);
DMMGetHwVer
SM2060 SM2064
Get the hardware version of the DMM.
Description
#include "SMX2060.h"
int DMMGetHwVer(int nDmm)
This function returns the hardware version. A returned value of 0 corresponds to Rev_, 1
corresponds to Rev_A, 2 to Rev_B etc.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
DMM hardware code or an error code.
Return Value
Value
Meaning
Positive value
Negative Value
Error code
Example
DMMGetID
SM2060 SM2064
Get DMM ID code.
Description
#include "SMX2060.h"
int DMMGetID(int nDmm)
This function returns the DMM identification code. Each DMM has a unique ID code
that must match the calibration file card_ID field in SM60CAL.DAT. This code must
reflect the last digits of the DMM serial number.
Remarks
Signametrics
Parameter
Type/Description
nDmm
94
Return Value
Value
Meaning
DMM_E_DMM
Example
int id = DMMGetID(0);
DMMGetLowFreqVRMS
SM2060
SM2064
Measure average of an AC voltage
Description
#include "SMX2060.h"
int DMMGetLowFreqVRMS(int nDmm, double dFrequency, double *lpdVRMS)
This function returns a double floating value of a low frequency RMS voltage. The
DMM must be in the DC voltage measurement mode, and the appropriate range selected.
The signal frequency dFrequency, must be entered.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
dFrequency
lpdVRMS
Return Value
Value
Meaning
Negative Value
Error code
Example
DMMGetManDate
SM2060 SM2064
Get Manufacturing date stamp from the DMM hardware
Description
#include "SMX2060.h"
int DMMGetManDate(int nDmm, int *month, int *day, int *year)
This function returns the DMM manufacturing date which is read from the hardware.
The month, day and year are returned as integers. This is used to track the DMM to a
specific manufacturing date.
Remarks
Parameter
Type/Description
nDmm
95
Signametrics
month
day
year
Return Value
Value
Meaning
DMM_OKAY
DMM_E_DMM
Example
DMMGetMax
SM2060 SM2064
Get Maximum reading history.
Description
#include "SMX2060.h"
int DMMGetMax(int nDmm, double *lpdMax)
This function returns a double floating value that is the maximum (of the Min/Max
function) value since either a function change, range change or call to the
DMMClearMinMax function was made. This value is updated every time a
measurement is performed using DMMRead, DMMReadStr or DMMReadNorm.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdMax
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
double
DMMGetMaxStr
SM2060 SM2064
Description
Signametrics
96
This function is the string version of DMMGetMax. It returns the result as a string
formatted for printing. The print format is determined by the range and function. See
DMMGetMax for more details.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpszReading
The return value is one of the following constants, or the string length is OK.
Return Value
Example
Value
Meaning
Negative Value
Error code
Warning code
char cBuf[64];
int status = DMMGetMaxStr(0, cBuf);
97
Signametrics
DMMGetMin
SM2060 SM2064
Get Minimum reading history.
Description
#include "SMX2060.h"
int DMMGetMin(int nDmm, double *lpdMax)
This function returns a double floating value that is the minimum (of the Min/Max
function) value since either a function change, range change or a call to the
DMMClearMinMax() function was made. This value is updated every time a
measurement is performed using DMMRead, DMMReadStr or DMMReadNorm.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdMax
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMGetMinStr
SM2060 SM2064
Returns the minimum as a formatted string.
Description
#include "SMX2060.h"
int DMMGetMinStr(int nDmm, LPSTR lpszReading)
This function is the string version of DMMGetMin. It returns the result as a string
formatted for printing. The print format is determined by the range and function. See
DMMGetMin for more details.
Remarks
Signametrics
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpszReading
98
The return value is one of the following constants, or the string length is OK.
Return Value
Value
Meaning
Negative Value
Error code
Warning code
Example
char cBuf[64];
int status = DMMGetMinStr(0, cBuf);
DMMGetRange
SM2060 SM2064
Get DMM range code.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMGetRange(int nDmm)
This function returns the DMM range code. The range codes are in the sequence of 0, 1,
2, 3, where 0 is the lowest range.
Remarks
Parameter
Type/Description
nDmm
Return Value
Value
Meaning
Negative Value
Error code
Example
int id;
if(DMMGetRange == 0) printf("Lowest range selected");
DMMGetRate
SM2060 SM2060 SMX2055
Description
Remarks
This function is only applicable with the SMX2055 DMM. Read the SMX2055 manual
for details.
99
Signametrics
DMMGetReadInterval
SM2060 SM2064
Get Read Interval value.
Description
#include "SMX2060.h"
int DMMGetReadInterval(int nDmm, double *lpdRI)
This function returns a double floating value that is the currently set A/D Read Interval.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdDev
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMGetSourceFreq
SM2060 SM2064
Get the currently set ACV Source frequency.
Description
#include "SMX2060.h"
int DMMGetSourceFreq(int nDmm, double *lpdFreq)
This function returns a double floating value that is the currently set ACV source
frequency of the SM2064. It can be used to display or verify the default frequency of the
stimulus for the various Inductance and AC based capacitance measurement ranges.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdFreq
Return Value
Example
Signametrics
Value
Meaning
DMM_OKAY
Negative Value
Error code
double
100
DMMGetSourceMode
SM2060 SM2064
Get the operation mode of the source.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMGetSourceMode(int nDmm)
This function returns the currently set source mode.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
Source mode code.
Return Value
Value
Meaning
Negative Value
Error code
Example
if(DMMGetSourceMode(0) == CLOSED_LOOP)
Mode = 4Wire;
DMMGetTCType
SM2060 SM2064
Get the themocouple type currently selected.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMGetTCType(int nDmm)
This function returns the Themocouple type currently selected.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
DMM type Integer or an error code.
Return Value
Example
Value
Meaning
Btype to TType
Negative Value
Error code
101
Signametrics
DMMGetTrigger
2060 2064
Get the logic level of the external Trigger input line.
Description
#include "SM2060.h"
int DMMGetTrigger(int nDmm)
This function returns the logic level of the external Trigger line. Iit returns 0 wen the line
is at a low logic level or unenergized, it returns 1 if the line is energized, or at a voltage
that is higher than 3.5V. This function provide means to handshake with external devices
such as Component Handlers and other instruments. See also DMMOutputSync() and
DMMWaitForTrigger()
Remarks
Parameter
Type/Description
nDmm
Return Value
Value
Meaning
Negative value
If an error detected.
If warning
Example
status = DMMGetTrigger(0);
DMMGetTriggerInfo
SM2060 SM2064
Description
Remarks
This function returns various parameters associated with previous trigger operation. For
instance, if the trigger event occurred soon after DMMArmTrigger command is issued,
the buffer does have a chance to fill. That is the total number of pre trigger samples plus
post trigger samples is less than the size of the buffer. The iNullCount is the number of
these empty samples at the beginning of the buffer. These empty samples should be
ignored when reading the buffer by reading and discarding iNullCount samples. The
iPreTrig value is the number of valid samples taken prior to the trigger event. If the
circular buffer fills at least once, or wraps, the value of iBufCycles will be greater than
0. Than the sum of iPreTrig and iPostTrig samples is equate to the size of the buffer.
The amount of time the trigger event occurred following the issue of the command may
be calculated using the following relation:
tTriggDelay = iReadInterval * ( (iBufCycles * 120) + iPreTrig)
Signametrics
102
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
DMM type Integer or an error code.
Return Value
Example
Value
Meaning
iNullCount
iPreTrig
iBufCycles
The number of times the buffer filled prior to trigger. This value can be 0
0 to 65,280.
Negative Value
Error code
103
Signametrics
DMMGetType
SM2060 SM2064
Get the type of the DMM.
Description
#include "SMX2060.h"
int DMMGetType(int nDmm)
This function returns a value representing the DMM model.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
DMM type Integer or an error code.
Return Value
Value
Meaning
2060
2064
Negative Value
Error code
Example
DMMGetVer
SM2060 SM2064
Get DMM software driver version.
Description
#include "SMX2060.h"
int DMMGetVer(int nDmm, double *lpfResult )
This function returns the DMM software driver version, which is a double floating value.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpfResult
Return Value
Value
Meaning
Negative Value
Error code
Example
DMMInit
SM2060 SM2064
Description
Signametrics
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpszCal
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
/* initialize DMM */
int i = DMMInit(0,"C:\\SM60CAL.dat");
DMMIsAutoRange
SM2060 SM2064
Get the status of the autorange flag.
Description
#include "SMX2060.h"
int DMMIsAutoRange(int nDmm)
This function returns the DMM autorange flag state.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
105
Signametrics
Return Value
Value
Meaning
TRUE
FALSE
DMM_E_DMM
Example
DMMIsInitialized
SM2060 SM2064
Get the status of the DMM.
Description
#include "SMX2060.h"
int DMMIsInitialized(int nDmm)
This function returns the status of the DMM. If TRUE, the DMM has been initialized and
is active. If FALSE the DMM is not initialized. To use the DMM, it must be initialized
using DMMInit or DMMQuickInit functions. This function is used for maintenance
and is not needed under normal operation.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
TRUE, FALSE or an error code.
Return Value
Example
Value
Meaning
TRUE
FALSE
DMM_E_DMM
DMMIsRelative
SM2060 SM2064
Get the status of the Relative flag.
Description
#include "SMX2060.h"
int DMMIsRelative(int nDmm)
This function returns the DMM Relative flag state.
Remarks
Signametrics
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
106
Return Value
Value
Meaning
TRUE
FALSE
Negative Value
Error code
Example
DMMLongTrigger
SM2060 SM2064 SM2064-R
Arm DMM for long trigger operation. Only available with Option R
Description
#include "SM2060.h"
int DMMLongTrigger(int nDmm, int iTrigCnt, int iSampl, double dTd)
This function sets up the DMM for hardware trigger operation. The trigger source can be
from either the front panel (DIN-7 connector) or from the selected PXI trigger bus. In
response to this command the DMM enters a wait state for trigger. In response to a
positive trigger edge, it takes iSampl samples, spaced by dTd seconds from each other.
This is repeated for a total of iTrigCnt trigger events. All measurements are sent back
from the DMM to the PCI bus as soon as they become available. Failure to retrieve all
samples sufficiently fast will result in communication error. The value of iTrigCnt and
iSampl must be between 1 and 50,000. The time delay between samples, dTd, should be
set to a value that is greater than the set aperture and up to 3,600s. All samples must be
read using the DMMLongTrigRead() function. The total number of samples is iTrigCnt
* iSampl. The minimum trigger period must be greater than the set aperture or dTd.
Remarks
This trigger mode is usable for VDC, VAC, Ohms, IAC IDC and Leakage. The DMM
Read Interval must be set to zero (default) during this operation. Aperture must be set
between 160ms and 2.5us. Use the DMMLongTrigRead() too monitor completion of
this operation, as sell as read the samples.
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iTrigCnt
int The number of trigger events the DMM will respond to. This
number must be between 1 and 50,000.
iSampl
int The number of samples the DMM takes following each trigger
event. This number must be between 1 and 50,000.
dTd
107
Signametrics
Return Value
Example
Value
Meaning
DMM_OKAY
Warning code.
Negative value
Error code.
double Buffer[3000];
DMMSetAperture(0, APR_625us);
DMMSetReadInterval(0, 0.0); // Must be zero to use this function
DMMLongTrigger(0, 100, 30, 0.01 ); //expect 100 triggers, take 30 samples
// for each trigger, space samples by 10ms.
for(i=0 ; i < 3000 ; i++){
// read a total of iTrigCnt * iSampl samples.
while( ! DMMLongTrigRead(0, &r)); // Wait and read 3000 samples
Buffer[i] = r ;
}
DMMLongTrigRead
SM2060 SM2064 SM2064-R
Read samples generated by DMMLongTrigger operation. Available with Option R
Description
#include "SM2060.h"
int DMMLongTrigRead(int nDmm, double * lpdReading)
This function does two things, it checks for the availability of a sample resulting from a
DMMLongTrigger operation, as well as reading it. If a sample is not ready a FALSE (0)
is retunred, if it is available it returns TRUE (1) as well as save the sample at a location
pointed to by lpdReading. Therefore, when ready is indicated the reading must be read
from this location and saved in a buffer. Failing to do so will result in this value being
overwritten by a subsequent sample. Use a tight loop to check for samples availability
and saving the sample at a safe location. All triggered samples must be read using this
function. The total number of samples is equal to iTrigCnt times iSampl. Look up these
parameters in the DMMLongTrigger() description above.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
double * The location at which the reading is saved when TRUE is
returned.
The return value is one of the following constants.
lpdReading
Return Value
Example
Signametrics
Value
Meaning
TRUE
FALSE
Positive value
Warning code
Negative value
Error code.
double Buffer[3000];
108
DMMLongTrigger(0, 100, 30, 0.01 ); //expect 100 trigger pulses, take 30 samples
// for each trigger, space samples by 10ms.
for(i=0 ; i < 3000 ; i++){
// read a total of iTrigCnt * iSampl (3000) samples.
while( ! DMMLongTrigRead(0, &r)); // Wait for a sample
Buffer[i] = r ;
}
DMMOpenPCI
SM2060 SM2064
Open the PCI bus for the specified DMM. Not for user application.
Description
#include "SMX2060.h"
int DMMOpenPCI(int nDmm)
This function is limited for servicing the DMM. It has no use in normal DMM operation..
See also DMMClosePCI() function.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
Integer error code.
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMOpenCalACCaps
SM2060 SM2064
Calibrate the AC based in circuit capacitance function.
Description
#include "SMX2060.h"
int DMMOpenCalACCapsl(int nDmm)
This function characterizes the selected range of the AC Capacitance measurement path
and source, which is required prior to making measurements. For better accuracy it
should be performed frequently. It should be performed without test leads. This function
characterizes the stimulus source at the specific frequency associated with the selected
range. It takes about fifteen seconds to complete the process. Make sure to perform this
operation for each range you intend to use. This operations is necessary both, AC based
capacitance measurement and for the ESR function.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
109
Signametrics
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMOpenTerminalCal
SM2060 SM2064
Calibrate the Inductance measurement function with open terminals.
Description
#include "SMX2060.h"
int DMMOpenTerminalCal(int nDmm)
This function characterizes the Inductance measurement path and source, which is
required prior to making inductance measurements. It should be performed within one
hour, before using the inductance measurements. For better accuracy it should be
performed more frequently. The Open Terminal calibration should be performed with the
test leads open. The DMMOpenTerminalCal sweeps the inductance stimulus source
across the full bandwidth, and makes measurements at several points. It takes about
twenty seconds to complete the process. For a complete characterization of the
Inductance measurement system it is also necessary to perform the inductance zero
operation with the inductance range and frequency selected, using the Relative function
and with the probes shorted.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
Integer error code.
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMOutputSync
2060 2064
Description
Remarks
Signametrics
This function has three modes. It sets the Sync output line low (iMode=0), it can set it
high (iMode=1) or generate a pulse of dWide in width (iMode = 2). In modes 0 and 1 the
value of dWide is ignored. If iMode = 2 the polarity of the Sync pulse is determined by
its previously setting by the DMMSetSync() function. The pulse width (dWide) can be
set from 100us to 1.04s. In all three modes the Sync pulse gets set regardless if it was
110
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iMode
dWide
Double Sets the width of the pulse in mode 2. Can take a value from
100e-6 to 1.04. Ignored in modes 0 and 1.
Integer error code.
Return Value
Example
Value
Meaning
DMM_OKAY
Negative Value
Error code
Positive Value
Warning code
DMMPeriodStr
SM2060 SM2064
Return the next DMM period reading, formatted for printing.
Description
#include "SMX2060.h"
int DMMPeriodStr(int nDmm, LPSTR lpszReading)
This function makes a period measurement and returns the result as a string formatted for
printing. The print format is fixed to five digits plus units, e.g., 150.01 ms. See
DMMFrequencyStr() for more details.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpszReading
Return Value
Value
Meaning
Negative Value
Error code
111
Signametrics
Warning code
char cBuf[64];
int status;
status = DMMPeriodStr(0, cBuf);
Example
DMMRead
SM2060 SM2064
Description
#include "SMX2060.h"
int DMMRead(int nDmm, double *lpdResult)
DMMRead comands the DMM to perform a single measurement and retrieve the result.
The DMM, performs all scaling and conversion required, and returns the result as a 64bit double-precision floating-point number in the location pointed to by lpdResult. It can
be used with all the Primary functions (those that can be selected using
DMMSetFunction() and DMMSetRange() ). Returned result is a scaled value which is
normalized to the selected range. That is, it returns 200 for 200mV input while in the
240 mV range, and 100 for 100 k input in the 240k range. DMMReadStr() is
similar to DMMRead(), but it returns a formatted string.Use the DMMReadNorm()
function for base units read function. A very large values are indication of over range
condition.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdResult
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Positive Value
Example
double dResults[100];
int status;
For(i=0; I < 100; i++) DMMRead(0, &dResults[i]);// Read to a buffer
DMMReadBuffer
SM2060 SM2064
Description
Return the next double floating-point reading from the DMM internal buffer.
#include "SMX2060.h"
int DMMReadBuffer(int nDmm, double *lpdResult)
Signametrics
112
Read the next measurement from the DMM internal buffer, pointed to by an internal
buffer pointer, and increment the pointer. Store the measurement as a 64-bit doubleprecision floating-point number in the location pointed to by lpdResult. Limit using this
operation to the number of samples (size) of the buffer. See DMMArmAnalogTrigger()
functions for more information about the buffer size.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdResult
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error Code
Example
double Buffer[10];
int status;
DMMArmTrigger(0,10);
// Set up for 10 triggered samples
while( ! DMMReady(0));
for(i=0; i < 10 ; i++)
status = DMMReadBuffer(0, &Buffer[i]);
DMMReadBufferStr
SM2060 SM2064
Return the next reading, formatted for printing.
Description
#include "SMX2060.h"
int DMMReadBufferStr(int nDmm, , LPSTR lpszReading)
The same as DMMReadBuffer() except the reading is formatted as a string with units.
Measurements are stored as a null terminated string at the location pointed to by
lpszReading.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpszReading
Return Value
Example
Value
Meaning
Negative Value
Error code
Warning code
char Buf[64];
113
Signametrics
DMMArmTrigger(0,1);
// take a single triggered sample
while( !DMMReady(0));
DMMReadBufferStr(0, Buf);
DMMReadCJTemp
SM2060 SM2064
Read cold junction temperature for thermocouple measurement.
Description
#include "SMX2060.h"
int DMMReadCJTemp(int nDmm, double *lpdTemp)
Read the cold junction temperature sensor. When measuring temperature using
thermocouples it is necessary to establish a reference or cold junction temperature, or the
temperature of the point at which the thermocouple wires are connected to copper at
eigher the DMM or switching card. This function provides a way to do this. It reads the
sensor output voltage (0 to +/-3.3V), and converts it to cold junction temperature using
the built in equation Temp = b + (Vcjs a)/m. The default values of a, b and m are
designed specifically for the temperature sensor of the SM40T or SMX40T terminal
block. The value of the cold junction temperature is saved internally for subsequent
thermocouple measurements as well as return at the location pointed to by lpdTemp.
Remarks
Signametrics
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdTemp
114
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code.
Example
DMMReadCJTemp(0, &temp);
DMMReadCrestFactor
SM2060 SM2064
Return ACV signals Crest Factor.
Description
#include "SMX2060.h"
int DMMReadCrestFactor(int nDmm, double *lpdResult)
To use this function the DMM must be in ACV measurement function, and a valid range
must be selected. A double-precision floating-point Crest Factor is stored in the location
pointed to by lpdResult. This measurement is a composite function, utilizing several sub
functions, and could take over 10 seconds to perform. See the Crest Factor measurement
section of the manual for more detail.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdResult
Return Value
Example
Value
Meaning
DMM_OKAY
Negative Value
Error code
115
Signametrics
DMMReadDutyCycle
SM2060 SM2064
Return percent duty cycle of ACV signal.
Description
#include "SMX2060.h"
int DMMReadDutyCycle(int nDmm, double *lpdDcy)
To use this function the DMM must be in AC measurement mode, and a valid range must
be selected. It returns percent duty cycle of the signal. It is stored as double-precision
floating-point numbers in the location pointed to by lpdDcy. The measured duty cycle is
effected by the setting of the Threshold DAC.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdDcy
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMReadSR
SM2060 SM2064
Description
Signametrics
116
This function makes a single resistance reading. The funciton uses the value of C to help
measure the resistance in series with it. If C is unknown enter 0.0 for C. The
measurement result is stored as double-precision floating-point numbers in the location
pointed to by lpdR. The DMM must be set to the ESR function during this operation. It
assumes that an DMMOpenCalACCaps() was performed prior to using this funciton.
Note: Avilable with DLL Version 1.52 and higher.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
dC
double Phas the nominal value of the capacior. Can be set to a value
between 0 and 1uF (1.0e-6).
lpdDcy
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
double R;
Example
DMMReadFrequency
SM2060 SM2064
Return the next double floating-point frequency reading from the DMM.
Description
#include "SMX2060.h"
int DMMReadFrequency(int nDmm, double *lpdResult)
This is function, that is the DMM must be in ACV measurement function, and a valid
range must be selected for proper operation. If the frequency counter is not engaged,
select it. Make a single frequency measurement, and store the result as a 64-bit doubleprecision floating-point number in the location pointed to by lpdResult. See
DMMFrequencyStr() for more details. In cases where the of frequency being measured
is approximately known, use DMMSetCounterRng to select the appropriate range. This
will eliminate the self ranging of the counter, resulting in a single measurement to
acquire the frequency.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdResult
Return Value
Value
Meaning
DMM_OKAY
117
Signametrics
DMM_E_INIT
DMM_E_DMM
Example
double d;
int status = DMMReadFrequency(0, &d);
DMMReadHiLoSense
SM2060 SM2064
Measure the differential voltage present between the I+ and I- termials.
Description
#include "SMX2060.h"
int DMMReadHiLoSense(int nDmm, double *lpdRead)
This function returns a double floating-point reading indicating the voltage present
between the I- and the I+ terminals. It is valid while the DMM is in 2-Wire Ohms, VDC
or IDC source modes. The returned value is in base units. That is in the range of range of
2.4V. Very large values are indication of over range condition. See also
DMMReadLoSense.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdRead
Return Value
Value
Meaning
POS_FS, NEG_FS
Negative Value
Error code
DMM_OKAY
Valid return.
Example
DMMReadHiSense
SM2060 SM2064
Description
Remarks
This function returns a double floating-point reading indicating the voltage present
between the V- and the I+ terminal. It is valid while the DMM is in 2-Wire, VDC or IDC
source modes. The returned value is in base units. That is in the range of range of 2.4V.
Very large values are indication of over range condition. See also DMMReadLoSense.
Parameter
Signametrics
Type/Description
118
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdRead
Return Value
Value
Meaning
POS_FS or NEG_FS
Negative Value
Error code
DMM_OKAY
Valid return.
Example
DMMReadInductorQ
SM2060 SM2064
Return inductors Q value.
Description
#include "SMX2060.h"
int DMMReadInductorQ(int nDmm, double *lpdResult)
To use this function the DMM must be in the Inductance measurement mode, and a valid
inductance value must have been read prior to using this function. Resulting Q is stored
as double-precision floating-point number in the location pointed to by lpdResult. To
read the inductors series resistance use DMMReadIndcutorR.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdResult
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
double Q;
int status = DMMReadInductorQ(0, &Q);
DMMReadInductorR
SM2060 SM2064
Description
119
Signametrics
To use this function, the DMM must be in the Inductance measurement mode, and a valid
inductance value must have been read prior to using this function. Resulting series
resistance (Rs) is stored as double-precision floating-point number in the location pointed
to by lpdResult. See also DMMReadInductorQ.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdResult
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
double Rs;
int status = DMMReadInductorR(0, &Rs);
DMMReadLoSense
SM2060 SM2064
Measure the DC voltage present at the I+ termial.
Description
#include "SMX2060.h"
int DMMReadLoSense(int nDmm, double *lpdRead)
This function returns a double floating-point reading indicating the voltage present
between the V- and the I- terminals. It is valid while the DMM is in 2-Wire Ohms, VDC
or IDC source mode. The returned value is in base units. That is in the range of range of
2.4V. Very large values are indication of over range condition. See also
DMMReadHiSense.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdRead
Return Value
Example
Signametrics
Value
Meaning
POS_FS or NEG_FS
Negative Value
Error code
DMM_OKAY
Valid return.
120
DMMReadMeasurement
SM2060 SM2064
Return a reading which is the result of DMMSetTrigRead operation.
Description
#include "SMX2060.h"
int DMMReadMeasurement(int nDmm, double *lpdRead)
This measurement reading function is designed to read triggered measurements from the
DMM. It returns FALSE if reading is not ready to be read. If a reading is ready, TRUE
is returned, and the result in the form of a 64-bit double-precision floating-point number
is placed at the location pointed to by lpdRead.The returned value is in base units,
meaning it returns 0.3 for a 300mV input and 1e6 for 1.0 Mohm measurement. This
function is designed to read bursting measurements form the DMM, resulting from
DMMSetTrigRead and DMMBurstRead operations. For proper communications with
the DMM this function must read the same number as is set by the burst or trigger
functions above.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdRead
Return Value
Example
Value
Meaning
TRUE
FALSE
No measurement is available
TIMEOUT
OVERRUN
Error code.
double Reading[150];
DMMBurstRead(0, 4, 150); // 4 settle., 150 samples
for(i=0; i < 150 ; i++) // read 150 measurements
while( DMMReadMeasurement(0 , Reading[i]) == FALSE );
// wait for all measurements to be ready, and read them.
DMMReadMedian
SM2060 SM2064
Description
121
Signametrics
To use this function the DMM must be in ACV measurement function, and a valid range
must be selected. A double-precision floating-point Median voltage result is stored in the
location pointed to by lpdResult. This measurement is a composite function which
utilizes several sub functions, and could take over 10 seconds to perform. See the
Median measurement section of the manual for more detail.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdResult
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMReadNorm
SM2060 SM2064
Take a reading that is in base value.
Description
#include "SMX2060.h"
int DMMReadNorm(int nDmm, double *lpdRead)
This function returns a double floating-point reading. Unlike DMMRead() the returned
value is in base units. That is, it returns 0.2 for a 200 mV input and 1e6 for a 1.0 M.
Very large values are indication of over range condition.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdRead
Return Value
Value
Meaning
POS_FS or NEG_FS
Negative Value
Error code
DMM_OKAY
Valid return.
Example
DMMReadPeakToPeak
SM2060 SM2064
Signametrics
122
Description
#include "SMX2060.h"
int DMMReadPeakToPeak(int nDmm, double *lpdResult)
To use this function, the DMM must be in ACV measurement function, and a valid range
must be selected. A double-precision floating-point peak-to-peak voltage result is stored
in the location pointed to by lpdResult. This measurement is a composite function which
utilizes several sub functions, and could take over 10 seconds to perform.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdResult
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMReadPeriod
SM2060 SM2064
Description
Return the next double floating-point period reading from the DMM.
#include "SMX2060.h"
int DMMReadPeriod(int nDmm, double *lpdResult)
Remarks
To use this function the DMM must be in ACV measurement mode, and a valid range must be
selected for this operation. It makes a single period measurement, and stores the result as a
double-precision floating-point number in the location pointed to by lpdResult. See
DMMFrequencyStr() for more details.
123
Signametrics
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdResult
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
double d;
int status;
status = DMMReadPeriod(0, &d);
DMMReadStr
SM2060 SM2064
Return the next reading from the DMM formatted for printing.
Description
#include "SMX2060.h"
int DMMReadStr(int nDmm, LPSTR lpszReading)
This function is the string version of DMMRead(). It reads the next measurement result,
performs all scaling and conversion required, and returns the result as a string formatted
for printing. The print format is determined by the range and function. See DMMRead()
for more details.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpszReading
Return Value
Value
Meaning
Negative Value
Error code
Warning code
Example
char cBuf[64];
int status = DMMReadStr(0, cBuf);
DMMReadTestV
SM2060 SM2064
Signametrics
124
Description
#include "SMX2060.h"
int DMMReadTestV(int nDmm, double *lpdTestV)
This is function requires the DMM to be in LEAKAGE measurement. It measres the
voltage applied to the device during leakage measurement, placing the double-precision
floating-point result in a location pointed to by lpdTestV. The starndard measurement
functions, DMMRead(), DMMReadStr() and DMMReadNorm() return the value of
the leakage.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdTestV
Return Value
Value
Meaning
DMM_OKAY
Positive Value
Warning code
Negative Value
Error code
Example
DMMReadTotalizer
SM2060 SM2064
Read the totalized value accumulated by the Totalizer function.
Description
#include "SMX2060.h"
int DMMReadTotalizer(int nDmm, int * lpiTotal)
This function reads the total value accumulated by the Totalizer function. For details see
DMMStartTotalize.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpiTotal
Return Value
Example
Value
Meaning
Negative Value
Error code
125
Signametrics
DMMReadWidth
SM2060 SM2064
Return the pulse width of the input signal.
Description
#include "SMX2060.h"
int DMMReadWidth(int nDmm, int iPol, double *lpdWidth)
Remarks
DAC.Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iPol
int 0 indicates to the DMM to measure the negative part of the signal,
1 indicates the positive width.
lpdNwid
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMReady
SM2060 SM2064
Return the ready state of the DMM following trigger operation.
Description
#include "SMX2060.h"
int DMMReady(int nDmm)
Following the completion of a triggered measurement event, be it hardware or software,
the DMMReady function is used to detect completion. The DMMReady function
checks the DMM and returns TRUE (1) if ready, and FALSE (0) otherwise. Once a
TRUE status is returned, the DMMReady function should not be used again since the
DMMReady function clears some flags in preparation for data transfer when it detects a
ready state. See DMMArmAnalogTrigger, DMMArmTrigger, DMMTrigger,
DMMReadBuffer and DMMPolledReaed for more details on this function.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
The return value is one of the following constants.
Return Value
Signametrics
Value
Meaning
TRUE
126
FALSE
Negative Value
Error code
Example
double Buffer[10];
DMMTrigger(0,10);
while( ! DMMReady(0) );
for(i=0; i < 10 ; i++) j = DMMReadBuffer(0, &Buffer[i]);
DMMSetACCapsDelay
SM2060 SM2064
Set the measurement delay of AC based Capacitance.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMSetACCapsDelay(int nDmm, double ldDelay)
This function sets the AC based capacitance measurement delay, which is the time the
measurement system settles. . The default value is 0s. This function can set this value
from 0.0 to 10.0 seconds. Since the DMM is optimized for the defalut value, it is possible
that changing this value will introduce additional error. A negative delay value causes the
range limits to be disabled, making it possible to measure values greater than defined by
the selected range. For instance a value of -0.01 will set the delay to 0.01s and remove
the range limit. The default is hat range limits are enabled.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
ldDelay
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMSetACCapsLevel
SM2060 SM2064
127
Signametrics
Set the level of the AC voltage source for a peak value during In-Circuit caps.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMSetACCapsLevel(int nDmm, double ldVolts)
This function sets the AC peak voltage level for the In-Circuit Capacitance measurement
function. This value is used on any of the AC Caps calibration and measurement.
Following setting of this function, it is necessary to perform open calibration of the AC
Capacitance ranges to be used. Since the DMM is optimized for the default value, it is
recommended not to use this function, maintaining the default 0.45V peak value.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
ldVolts
double
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMSetACVSource
SM2060
SM2064
Set the ACV source output level and frequency.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMSetACVSource(int nDmm, double ldVolts, double ldFreq)
This function sets the AC voltage source to RMS amplitude of ldVolts, and the frequency
to ldFreq. The DMM must be in VAC_SRC operation for this function to execute
properly. Reading the DMM (DMMRead, DMMReadStr) will return the measurement
of the output voltage. This function acts on the main 12 bit source DAC. Two ranges are
available in VAC_SRC mode, the 0.9 V and the 7 V.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
ldVolts
double
ldFreq
double
Return Value
Value
Signametrics
Meaning
128
Example
DMM_OKAY
Negative Value
Error code
129
Signametrics
DMMSetAperture
SM2060 SM2064
Set the measurement Aperture.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMSetAperture(int nDmm, int iAperture)
This function sets the measurement Aperture. This is the the integration time of the A/D
or the timer during which the A/D makes a measurement. The allowed values are defined
in the DMMUser.H file. Depending on DMM model and mode of operation, the highest
Aperture can be set as high as 5.066s (APR_5p066s) and the lowest 2.5s (APR_2p5us).
See sections 2.11 and 4.4 for details. See also DMMSetPLC() function.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iAperture
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
ERR_APERTURE
Example
// Set to 16.66ms
DMMSetAutoRange
SM2060 SM2064
Enable/Disable autorange operation of DMM
Description
#include "SMX2060.h"
int DMMSetAutoRange(int nDmm, int bAuto)
This function enables or disables autorange operation of the DMM.
Remarks
Signametrics
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
bAuto
130
Return Value
Example
Value
Meaning
DMM_OKAY
Function succeeded.
Negative Value
Error code
DMMSetBuffTrigRead
SM2060 SM2064
Setup the DMM for Triggered operation.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMSetBuffTrigRead(int nDmm, int iSettle, int iSamples, int iEdge)
Setup the SM2060 for external hardware trigger operation. Following reception of this
command the DMM enters a wait state. After reception of an external trigger edge of
iEdge polarity, the DMM takes iSettle + 1 readings at the set measurement function,
range, Aperture and Read Interval; and stores the last reading in the in an internal buffer.
This process is repeated for iSamples. This function is particularly useful in conjunction
with a triggering instruments such as the SM4042 or SMX4032 relay scanner. No
autoranging, function or ranges changes allowed while the DMM is waiting for triggers.
The number of trigger edges must be equal or greater than iSamples to properly terminate
this mode. Any trigger received following iSamples is ignored. Between the time this
command is issued and the time the buffer is read, no other command should be sent to
the DMM with the exception of DMMDisarmTrigger command, which terminates this
mode, and DMMReady which monitors readyness. This function is usable for VDC,
VAC, Ohms, IAC, IDC and RTD measurements.
Remarks
Use the DMMReady to monitor when the DMM is ready (following trigger(s) and the
reading of iSamples). When ready, you can read up to iSamples, using
DMMReadBuffer or DMMReadBufferStr functions. Once DMMReady returns
TRUE, it should not be used again prior to reading the buffer, since it prepares the buffer
for reading when it detects a ready condition.
Return Value
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iSettle
iSamples
int The number of samples the DMM takes following the same
number of trigger pulses. This number must be between 1 and 80 or
120 depending on aperture.
iEdge
Int The edge polarity of the trigger signal. 1 for Positive, or leading
edge, and 0 for negative or trailing edge trigger.
131
Signametrics
Value
Meaning
DMM_OKAY
Negative Value
Error code.
Example
double Buffer[120];
DMMSetBuffTrigRead(0, 4, 50, 0); // Negative edge, 4
//setteling readings, and 50 samples/trigger
while( ! DMMReady(0) );
// wait for completion
for(i=0; i < 50 ; i++)
// read buffer
j = DMMReadBuffer(0, &Buffer[i]);
DMMSetCapsAveSamp
SM2060 SM2064
Tunes the capacitance measurement function parameters for higher measurement speed.
Description
#include "SMX2060.h"
Int DMMSetCapsAveSamp(int nDmm, int iAverage, int iSamples)
This function should be used carefully since it modifies the capacitance function basic
measurement parameters; the averages value, iAverage, and the number of points
sampled, iSamples. This function is provided only for cases where it is necessary to
improve measurement speed. When using this function keep in mind that the accuracy
specification provided for capacitance is not guaranteed. Also, modifying these values
could have profound efect on the operation of the function. Any time a capacitance range
is change, these values are set to the default values. For instance, values of 1 and 3 for
iAverage, and iSamples will reduce measurement time on the 12nF range from 0.8s to
about 50ms.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iAverage
iSamples
Return Value
Example
Signametrics
Value
Meaning
DMM_OKAY
Valid return.
Negative Value
Error code
132
DMMSetCJTemp
SM2060 SM2064
Set cold junction temperature for thermocouple measurement.
Description
#include "SMX2060.h"
int DMMSetCJTemp(int nDmm, double dTemp)
This function sets the cold junction temperature for subsequent thermocouple
measurements. When measuring temperature using thermocouples it is necessary to
establish a reference or cold junction temperature. This is the temperature at which the
thermocouple wires are connected to the DMM or to the switching cards cooper wires.
One way to do this is by simply entering this value using this function. Another is by
measuring using a temperture sensor located at the connection point. dTemp must be
entered using the currently set temperature units. See DMMSetTempUnits function for
details.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
dTemp
double The cold junction temperature. Must be set between 0oC and
50oC or the corresponding oF.
The return value is one of the following constants.
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code.
Example
DMMSetCJTemp(0, 22.5);
DMMSetCompThreshold
SM2060 SM2064
Description
Remarks
This function sets the output of the Threshold DAC. To use this function, the DMM must
be in AC volts. This function sets the detection threshold of the AC comparator. It is
compared by the comparator to the AC coupled input voltage. This function efffects the
following functions: Totalizer, Frequency counter, Period, Pulse width and Duty Cycle
measurements. ldThreshold range is determined by the selected ACV range. For instance,
when the 240 V AC range is selected, the allowed range of ldThreshold is 500 V to
+500 V. See the specification section for more details.
133
Signametrics
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
ldThreshold
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMSetCounterRng
SM2060 SM2064
Description
Remarks
Signametrics
This function locks the default auto-ranging nature of the built-in frequency counter to a
specific range, fRange. Use this function if the approximate frequency to be measured is
known. This eliminate the time necessary for the counter to step/autorange to the optimal
range for the input frequency. It significantly increases the counter speed by preventing
the ranging, which requires multiple frequency measurements. This function can also be
used to trade off counter resolution for higher measurement speed. For instance, to
improve frequency counter speed while measuring 500Hz, set it to COUNTER_20HZ.
Since this funciton locks the selected range, it is necessary to to issue
DMMUnlockCounter in order to allow th ecounter to autorange. Couner ranges are
defind in DMMUser.H file. Selecting VAC also unlocks the range-lock.
fRange Symbol
fRange
COUNTR_20HZ
1.9 Hz to 19.9
COUNTR_130HZ
19.9 Hz to 128.8 Hz
COUNTR_640HZ
128.8 Hz to 640 Hz
COUNTR_2500HZ
COUNTR_10kHZ
COUNTR_40kHZ
COUNTR_200kHZ
COUNTR_500kHZ
134
Frequency Range
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
fRange
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMSetDCISource
SM2060 SM2064
Set the DCI source output level.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMSetDCISource(int nDmm, double ldAmps)
This function sets the DC current source to ldAmps. The DMM must be in IDC_SRC,
and an valid range must be selected for this function to execute properly. Reading the
DMM (DMMRead or DMMReadStr) will return the voltage measurement at the
terminals. This function acts on the main source DAC. If better resolution is required it
can be accomplished by setting the Trim DAC by using the DMMSetTrimDAC
function. There are five current source ranges. The DMM reads the output (load) voltage
using the 2.4 V range at either the source terminals or the sense terminals, depending on
the state of the mode flag (see DMMSetSourceMode).
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
ldAmps
double
Integer error code.
Return Value
Example
Value
Meaning
DMM_OKAY
135
Signametrics
DMMSetDCVSource
SM2060 SM2064
Set the DCV source output level.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMSetDCVSource(int nDmm, double ldVolts)
This function sets the DC voltage source output to ldVolts. The DMM must be in
VDC_SRC. Reading the DMM (DMMRead or DMMReadStr) will return the
measurement of the output voltage at the DMM terminals. This function acts on the main
12 bit source DAC. If better accuracy is needed it can be accomplished by selecting the
ClosedLoop mode (DMMSetSourceMode). This mode engages the Trim DAC, which
augments the 12 bit DAC to produce 18 effective bits. In ClosedLoop mode, the source
level is adjusted every time the DMM is read, making small corrections until the reading
is equal to ldVolts. However, for the ClosedLoop mode to update the source level, it is
necessary to read the DMM multiple times. Aperture should be set to 160ms or higher,
with Read Interval set to 0 when using the Closed Loop mode. The DMM reads voltages
using the 24 V range.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
ldVolts
double
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMSetFastRMS
SM2060 SM2064
Signametrics
136
Description
#include "SMX2060.h"
int DMMSetFastRMS(int nDmm, int bFast)
This function selects between the fast and slow filter of the RMS measurement function.
The default is FALSE, or slow RMS. Setting bFast TRUE (1) selects the fast responding
filter, which provides for fast 25ms settling time, and limits the low frequency bandwidth
to 400Hz. FALSE (0) selects the slow 500ms settling time, and limits the low frequency
bandwidth to 10Hz.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
bRelative
int TRUE (1) to enter relative mode, FALSE (0) to clear mode.
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMSetFuncRange
SM2060 SM2064
Set the DMM function and range.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMSetFuncRange(int nDmm, int nFuncRnge)
This function provies the ability to set both, function and range in a single instruction.
Using it could save some execution time. The table of values is defined as VDC_240mV,
VAC_2400mV, etc.. The definitions are in the DMMUser.H file.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
nFuncRnge
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
DMM_E_FUNC
137
Signametrics
Example
DMMSetFunction
SM2060 SM2064
Set the DMM function.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMSetFunction(int nDmm, int nFunc)
This function sets the function used by the DMM. The DMMUser.H file contains a table
of values defined as VDC, VAC, IAC, IDC, OHMS4W, OHMS2W etc... Not all functions
are available for all DMM types. DMMUser.H lists the specific function values.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
nFunc
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
DMM_E_FUNC
Example
DMMSetInductFreq
SM2060 SM2064
Set the frequency of the Inductance Source.
Description
#include "SMX2060.h"
int DMMSetInductFreq(int nDmm, double lpdFreq)
This function sets the frequency of the Inductance measurement source. The value of the
frequency should be between 20 Hz and 100kHz. This function overrides the default
frequency for each of the inductance ranges. Therefore, setting a new Inductance
measurement range changes this frequency, and may result in higher error than that at the
default value. Use this function after setting the range.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpdFreq
double
Integer error code.
Return Value
Value
Signametrics
Frequency to be set.
Meaning
138
Example
DMM_OKAY
Negative Value
Error code
139
Signametrics
DMMSetOffsetOhms
SM2060 SM2064
Enable/Disable Offset Ohms operation
Description
#include "SMX2060.h"
int DMMSetOffsetOhms(int nDmm, int bState)
This function enables or disables the Offset Ohms compensation function. The default
value is FALSE, or no Offset Ohms compensation. When set to TRUE the measurement
rate reduced by about a factor of 2 from the set value.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
bState
Return Value
Example
Value
Meaning
DMM_OKAY
Function succeeded.
Negative Value
Error code
DMMSetPLC
SM2060 SM2064
Set the Aperture to a power line multiple
Description
#include "SMX2060.h"
int DMMSetPLC(int nDmm, int iLineFreq, int iMultiple)
This function sets the Aperture to an integer multiple, iMultiple, of the specified power
line cycle. The line frequency, iLineFreq, can be 50Hz, 60Hz or 400Hz. The multiple
range can be 1 to 50. Also see DMMSetAperture().
Remarks
Signametrics
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iLineFreq
int Identifies the powr line frequnecy. Can take a value of 50, 60 or
400.
bMultiple
140
Return Value
Example
Value
Meaning
DMM_OKAY
Function succeeded.
Negative Value
Error code
DMMSetPulseGen
2060 2064
Set the parameter of the pulse generator output.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMSetPulseGen(int nDmm, double dPwidth, double dNwidth, int nPulses)
This function sets the parameters of the pulse generator source. dPwidth sets the positive,
or active width portion of the of the pulse, dNwidth sets the negative (0V) portion of the
pulse. nPulses sets the number of pulses to be generated, as well as the mode. Both
dPwidth and dNwidth are in seconds. dPwidth and dNwidth can be set between 25
(25.0e-6) and 3s (3.0). The value of nPulses can be set between 0 to 32,000. A value of
0 sets the pulse generator to a free running mode. Other values set the number of pulses
in a burst. The DMM must be set to the PULSE_GEN function prior to using this
function. The DMMSetDCVSource function controls the amplitude of the pulse (-10V
to +10V) while in pulse generator mode. If either dNwidth or dPwidth are greater than
0.0655s, the width resolution becomes 100us, and the minimum value of dNwidth and/or
dPwidth is 1.5ms. This function requires Driver version 1.60 and Microcode version 1.29
or higher.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
dPwidth
double Sets the width of the active part of the pulse in seconds.
dNwidth
double Sets the width of the (0V) portion of the pulse in secondss.
nPulses
Return Value
Example
Value
Meaning
DMM_OKAY
Negative Value
Error code
Positive Value
Warning code
DMMSetFunction(0, PULSE_GEN);
DMMSetPulseGen(0, 0.0005, 0.0005, 0); // 1kHz square wave
DMMSetDCVSource(0, 5.0); // 5V amplitued (0V to 5V)
141
Signametrics
DMMSetPXITrigger
SM2060 SM2064 SMX2060 SMX2064
Set the PXI Trigger input and output for the SMX2064.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMSetPXITrigger(int nDmm, int iTrigIn, int iTrigOut)
This function configures the SMX2064 PXI trigger input and output. iTrigIn value sets
the PXI Trigger input to the DMM and iTrigOut sets the PXI Trigger output from the
DMM. The range of values for both parameters is 0 to 7. On startup, the default value for
both is 0, which disconnects both the input and output PXI trigger connections to the
DMM. See section 4.18 for more details.
Remarks
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iTrigIn
iTrigOut
int Selects the PXI Trigger line to which the DMM DMM Trigger
out is connected. Value 0 to 7. 0 default, disconncets the DMM
Trigger oput from the PXI trigger bus.
Integer error code.
Return Value
Value
Meaning
DMM_OKAY
egative Value
Error code
Example
DMMSetPXITrigger(0, 1, 0);
DMMSetRange
SM2060 SM2064
Description
Remarks
Signametrics
This function sets the range used by the DMM for the present function. The table of
values is defined by the _240mV, _2400uA, etc. In general, the lowest range is 0, next is
1 etc. Each function has a pre defined number of ranges as specified in the specification
section of this manual. Not all ranges are available for all DMM types. For instance the
SM2064 has a 24 Ohms and 240Meg range, while the SM2060 and SMX2055 do not.
142
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
nRange
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
DMM_E_RNG
Example
DMMSetRate
SM2060 SM2060 SMX2055
Description
Remarks
This function is only applicable with the SMX2055 DMM. Read the SMX2055 manual
for details.
DMMSetReadInterval
SM2060 SM2064
Set the measurement cycle time parameter.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMSetReadInterval(int nDmm, double dReadInterval)
This function sets the reading interval (the time it takes to make a single reading). For
Apretures between 625us and 5.066s it may be set between 0 to 1s. For Aperture values
between 2.5us and 521us it can be set between 0 to 65ms. This value effects most
measurement functions including the various triggered modes. The default of this
parameter is set to 0, resulting in the fastest measurement rate at the selected Aperture.
Use this function where precise control over the measurement time is necessary.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iReadInterval
Return Value
Value
Meaning
DMM_OKAY
143
Signametrics
Negative Value
Example
Error code
DMMSetReference
SM2060 SM2064
Set measurement reference value for deviation measurements.
Description
#include "SMX2060.h"
int DMMSetReference(int nDmm, double dRef)
This function sets a measurement reference. Unlike DMMSetRelative, which uses the
current measurement as a reference, DMMSetReference provides the facility to set the
reference to dRef. Once set, it is subtracted or divided from subsequent measurements. It
effects both, normal measurements and percent diviation measurements using
DMMRead and DMMGetDeviation functions respectively. The latter can be used for
production sorting. For instance, to reject 1.00k reistors that diviate by 0.5%, set the
reference to 1,000.0. While measuring resistance, ascertain that absolute values returned
by DMMGetDeviation are smaller than 0.5 (0.5%). To cancell the effect of this fuction,
set relative to FALSE using the DMMSetRelative function.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
dRef
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
double error;
int status = DMMSetReferebce(0, 1000.0); // set 1k reference
DMMSetRelative
SM2060 SM2064
Description
Set the DMM relative reading mode for the present function
#include "SMX2060.h"
int DMMSetRelative(int nDmm, int bRelative)
Remarks
Signametrics
This function selects relative or absolute reading mode for the DMM. If the bRelative
parameter value is TRUE (1), the DMM will change to relative reading mode. If
FALSE, the DMM will change to absolute reading mode.
144
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
bRelative
int TRUE (1) to enter relative mode, FALSE (0) to clear mode.
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMSetRTD
SM2060 SM2064
Set the RTD parameters.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMSetRTD(int nDmm, double ldRo)
This function sets the RTD parameters. The DMM must be in RTD measurement
function for this function to execute properly. Connect your RTD using a 4-wire
connection. ldRo sets the RTD Ro (Ice point resistance). Since it modifies the default Ro
parameter for the selected RTD, this function must follow the selection of the basic RTD
type, using DMMSetRange.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
ldRo
double
type.
Integer error code.
Return Value
Example
Value
Meaning
DMM_OKAY
DMMSetSensorParams
SM2060 SM2064
145
Signametrics
Description
#include "SMX2060.h"
int DMMSetSensorParams(int nDmm, double lda, double ldm, double ldb)
This function sets the parameters of the temperature sensor. It effects the cold junction
termerature reading which is defined by ((Vcjs - lda) / ldm) + ldb, where Vcjs is the cold
junction sensor output voltage. This function set the paramters for the sensor as to allow
a wide range of sensors to be used. The default parameters are designed to work with the
Signametrics Temperature sensor found on the SM40T and SMX40T screw terminals.
The cold junction temperature is calculated by converting the sensors voltage to
temperature. For more information read about DMMReadCJTemp().
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lda
double
the a parameter.
ldm
double
the m parameter.
ldb
double
the b parameter.
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMSetSourceMode
2060 2064
Description
Remarks
Signametrics
This function sets the DC voltage sources to either OPEN_LOOP (O, default) or
CLOSED_LOOP (C). In CLOSED_LOOP the sources use the main 12 bit source
DAC. In CLOSED_LOOP the Trim DAC is also used, which augments the 12 bit DAC
to produce 18 effective bits. Open loop updates are very quick. In ClosedLoop mode the
source level is adjusted every time the DMM is read, making small corrections until the
reading is equal to the set voltage. However, for the ClosedLoop mode to update the
source level, it is necessary to read the DMM multiple times. See DMMSetDCVSource
for more details. Another function effected by this function is the DC Currents souce.
When in OPEN_LOOP, the voltage generated by the DC current source is measured at
the source terminals (upper two), when in CLOSED_LOOP the voltage is measured at
the sense terminals (lower two) of the DMM. This allows a 2-Wire or 4-Wire
measurement of the current source.
146
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iMode
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMSetSourceRes
2060 2064
Set the value of the DMMs source resistance.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMSetSourceRes(int nDmm, double ldRs)
This function sets the value of the DMMs source impedance. This value is used by
various source and measurement function. It is normally measured by
DMMOpenTerminalCal() function. This provides an external means to calibrate some of
the measurements such as ESR (DMMReadSR()) and the Sosurce V / Measure I
function, resulting in improved accuracy. The nominal value of ldRs is about 200. It
can be set from 1 to 400. See also DMMReadSR() and the SRC_V_MSR_I function.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
ldrS
double
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Positve Value
Example
DMMSetSync
SM2060 SM2064
147
Signametrics
Description
#include "SMX2060.h"
int DMMSetSync(int nDmm, int bEnable, int iPolarity)
This function enables or disables the Sync output (available at the DIN7). If bEnable is
set TRUE, iPolarity affects the sync output level. iPolarity set to 0 asserts low level, and
1 sets to high level pulse. This signal can be used as a busy signal or to synchronize the
DMM to other instruments. The default is a disabled output, and active low.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
bSync
iPolarity
int Determines the polarity of the output. 0 sets it to active low and 1
to active high level.
The return value is one of the following constants.
Return Value
Example
Signametrics
Value
Meaning
DMM_OKAY
Function succeeded.
Negative Value
Error code
148
DMMSetTCType
SM2060 SM2064
Set Thermocouple type.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMSetTCType(int nDmm, int iType)
This function selects the thermocouple type to be measured and linearized. It must be one
of the following: B, E, J, K, N, R, S or T. See the definitions for these parameters in the
DMMUser.H file. The default type is K.
Remarks
Parameter
Type/Description
NDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iTempUnits
int The thermocouple type to be selected. This value can be set from
BTyppe to TType as defined in the DMMUser.H file.
Return Value
Value
Meaning
DMM_OKAY
Function succeeded.
Negative Value
Error code
Example
DMMSetTempUnits
SM2060 SM2064
Set temperature units to C or F.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMSetTempUnits(int nDmm, int iTempUnits)
This function sets the temperature units to either C or F. This is applicable to both the
on-board temperature sensor and the RTD measurements.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iTempUnits
149
Signametrics
Return Value
Value
Meaning
DMM_OKAY
Function succeeded.
Negative Value
Error code
Example
DMMSetTrigPolarity
SM2060 SM2064
Sets the polarity of the trigger input.
Description
#include "SMX2060.h"
int DMMSetTrigPolarity(int nDmm, int iPolarity)
This function sets the external hardware and soft trigger polarity. For negative edge set
iPolarity to 0, and 1 for positive edge. The default is negative polarity. This effects the
various hardware trigger operations.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iPolarity
int Determines the polarity of the inut edge. 0 sets it to negative and 1
to positive edge.
The return value is one of the following constants.
Return Value
Example
Value
Meaning
DMM_OKAY
Function succeeded.
Negative Value
Error code
DMMSetTrigRead
SM2060 SM2064
Description
Signametrics
150
Remarks
measurements are read back, it is necessary to keep up with the DMM and read all
iSample measurements as fast as they come. Failing to do so will result in
communication overrun. The DMM has a small FIFO to reduce the likelihood of an
overrun. This function is usable for VDC, VAC, Ohms, IAC, IDC and RTD
measurements. Use the DMMReadMeasurement to monitor for data
availability, and to read this data.
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iSettle
iSamples
int The number of samples the DMM takes following the same
number of trigger pulses. This number must be between 1 and 30,000.
iEdge
Int The edge polarity of the trigger signal. 1 for Positive, or leading
edge, and 0 for negative or trailing edge trigger.
The return value is one of the following constants.
Return Value
Example
Value
Meaning
DMM_OKAY
Error code.
Negative Value
double Reading[100];
DMMSetTrigRead(0,4,100,0);// neg. edge, 4setteling readings
// and 100 samples/triggers
for(i=0;i<100;i++)
// read measurement buffer
while( ! DMMReadMeasurement(0, Reading[i]);
151
Signametrics
DMMSetTrimDAC
SM2060 SM2064
Set the Trim DAC level.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int DMMSetTrimDAC(int nDmm, int iValue)
This function sets the Trim DAC to a value between 0 and 100. The trim DAC can be set
to augment the main 12 bit DAC, whenever it is not automatically performed, such as in
VDC and VAC source while OPEN_LOOP mode is selected. An example would be in
DCI source, or when setting the Comparator Threshold. This function consumes a lot of
the on-board microcontrollers resources and must be turned off when not in use. Use
DMMDisableTrimDAC to turn it off. With the Trim DAC the effective resolution of the
composite DAC is increased to 16 bits. See DMMSetDCVSource and
DMMSetACVSource for more details.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iValue
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMStartTotalizer
SM2060 SM2064
Description
Remarks
Signametrics
To use this function the DMM must be in ACV measurement function, and a valid range
must be selected. This function clears the Totalized count, sets the edge sense, and starts
the Totalizer. The totalized value can be read during the accumulation period. However,
it could affect the count by the interruption. If no reads are performed during
accumulation, the input rate can be as high as 30,000 events per second. If reads are
performed during the accumulation period, this rate could be as low as 20,000 events per
second. The Threshold DAC sets the threshold at which signals are counted. During
accumulation, no other command (except DMMReadTotalizer) should be used. When
done, this function must be turned off using DMMStopTotalizer. After the Totalizer is
stopped, the accumulated result can be read using DMMReadTotalizer. A normal
procedure would be to set the DMM to the ACV function, select voltage range, set the
152
Threshold DAC, start the totalizer, after the required time stop and read the accumulated
count. The total number of events is limited to 1,000,000,000. The 2064 product allows
up to 90 kHz input, but reduces the resolution of the count.
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
Edge
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
DMMStopTotalizer
SM2060 SM2064
Description
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
The return value is one of the following constants.
Return Value
Example
Value
Meaning
DMM_OKAY
Negative Value
Error code
153
Signametrics
DMMTerminate
SM2060 SM2064
Terminate DMM operation (DLL)
Description
#include "SMX2060.h"
int DMMTerminate(int nDmm)
Removes DMM number nDmm. This routine is used only where it is needed to terminate
one DMM and start a new one at the same nDmm location. Otherwise, it is not
recommended to use this function.
Remarks
Parameter
Type/Description
nDmm
Return Value
Example
Value
Meaning
TRUE
DMM Terminated
FALSE
DMMTrigger
SM2060 SM2064
Description
Remarks
Signametrics
Following reception of this function takes iSamples readings at the currently set function
and range, and stores them in an internal buffer at the currenly set Aperture and Read
Interval. No autoranging is allowed during this operation. Read Interval must be set
between 0 (default) and 65ms. Aperture must be set between 160ms and 2.5us. The
value of iSamples should be between 1 and 80 for an Aperture of 1.4ms to 160ms. It
can be set between 1 and 120 for Apertures in the range of 625us to 2.5us. The highest
Aperture allowed is 160ms. Between the times the DMMTrigger command is issued and
the time the buffer is read, no other command should be sent to the DMM, with the
exception of DMMReady function, which monitors the completion of the capture
process. When DMMReady returns TRUE, the buffer can be read one reading at a time
using DMMReadBuffer. The value of the Aperture is set using the DMMSetAperture
function, and that of the Read Interval is set using the DMMSetReadInteval.
154
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iSamples
int The number of samples the DMM takes following a trigger pulse.
This number must be between 1 and 80 or 1 and 120. See above.
Return Value
Value
Meaning
DMM_OKAY
DMM_E_INIT
DMM_TRIG_N
DMM_E_DMM
Example
double Buffer[60];
int state;
DMMTrigger(0,60);
while( ! DMMReady(0));
for(i=0; i < 60 ; i++)
state = DMMReadBuffer(0, &Buffer[i]);
DMMTriggerBurst
SM2060 SM2064
Description
Remarks
overrun. This function is usable for VDC, VAC, Ohms, IAC, IDC and RTD
measurements. Use the DMMReadMeasurement to monitor for data
availability, and to read this data
155
Signametrics
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iSamples
iEvents
iEdge
Int The edge polarity of the trigger signal. 1 for Positive, or leading
edge, and 0 for negative or trailing edge trigger.
The return value is one of the following constants.
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code.
Example
double Reading[150];
DMMTrigBurst(0, 10, 100, 0); // Negative edge, 10 samples
//per trigger event, total of 100 events
for(i=0; i < 150 ; i++)
// read buffer
DMMUnlockCounter
SM2060 SM2064
Return the indicated pulse width in string format.
Description
#include "SMX2060.h"
int DMMUnlockCounter(int nDm)
This function unlocks the freqency counter range, allowing it to autorange. See
DMMSetCounterRng for details.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
The return value is one of the following constants.
Return Value
Example
Signametrics
Value
Meaning
Negative Value
Error code
Warning code
156
DMMWaitForTrigger
2060 2064
Put the DMM in a wait state which gets relesed on trigger event.
Description
#include "SM2060.h"
int DMMWaitForTrigger(int nDmm)
Setup the DMM for external hardware trigger (Trigger input DIN7 connector).
Following reception of this command the DMM enters a wait state. It waits until the
selected trigger edge, previously defined by DMMSetTrigPolarity() is detected. During
the wait, no other command except for DMMReady() or DMMDisarmTrigger() should
be issued. Prior to issuing this command the DMM may be set up for a composit
function such as Capacitance or any other measurement mode. Monitor readyness using
the DMMReady() command. While no trigger is received, it will return a FALSE (0). If
trigger event occured it will returne a TRUE (1). It is possible to terminate the wait for
trigger by issuing DMMDisarmTrigger() command. Also see DMMArmTrigger(),
DMMDisarmTrigger() and DMMSetTrigPolarity().
Remarks
Positive Edge is imlied by a transition from 0V to a voltage over 3.5V at the Trigger
input line. Negative edge is implied by transition from a voltage over 3.5V to 0V.
Parameter
Type/Description
nDmm
Return Value
Value
Meaning
Negative Value
Error code
DMM_OKAY
Normal response
Postive Value
Warning code
Example
DMMWidthStr
SM2060 SM2064
Return the indicated pulse width in string format.
Description
#include "SMX2060.h"
int DMMWidthStr(int nDmm, int iPol, LPSTR lpszNeg)
This function is the string equivalent of DMMReadWidth. The measurement results are
stored at the location pointed to by lpszWidth. See DMMReadWidth for more details.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
157
Signametrics
iPol
lpszWidth
Return Value
Example
Signametrics
Value
Meaning
Negative Value
Error code
Warning code
158
Description
#include "SMX2060.h"
#include "DMMUser.H"
int AC_zero(int nDdmm, int bACZero )
ith bACZero FALSE, the AC zero function is disabled. If TRUE it is enabled. The
default value is TRUE. Diabeling the AC Zero funciton allows the derivation of the value
to be set as offset parameter for the selected ACV range. This function is used during
calibration.
Remarks
Parameter
Type/Description
iDmm
bACZero
Return Value
Value
Meaning
DMM_OKAY
Valid return.
Negative Value
Error code
Example
int err;
Err = AC_zero(0, FALSE); // disable AC Zero.
DMMLoadCalFile
SM2060 SM2064
Description
Remarks
This function provides the capability to reload the calibration record. This is useful in
making limited calibration adjustments, and verifying them. By having a copy of the
original calibration file SM60CAL.DAT open with an editor, modifying calibration
parameters and then reloading using DMMLoadCalFile, one can instantly verify the
corrections made. Make sure the SM60CAL.DAT file itself is not altered since that
will void the calibration.
Parameter
Type/Description
159
Signametrics
int Identifies the DMM. DMMs are numbered starting with zero.
nDmm
lpszCal
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
GetGain
SM2060 SM2064
Retrieve currently set gain.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int GetGain(int nDmm, doulbe * lpdGain)
This function returns the currently set gain,. This is the gain associated with the currently
selected function and range. The value should be the same as that set in the calibration
record for this function and range. The gain is returned as a 64-bit double-precision
floating-point number in the location pointed to by lpdGaint. This function is useful
while performaing calibration. Set SetGain() function for additional details.
Remarks
Parameter
Type/Description
iDmm
Return Value
Example
Signametrics
Value
Meaning
lpdGain
DMM_OKAY
Valid return.
Negative Value
Error code
double gain;
GetGain(0, &gain); // read gain
160
GetOffset
SM2060 SM2064
Retrieve currently set gain.
Description
#include "SMX2060.h"
#include "DMMUser.H"
int GetOffset(int nDmm, doulbe * lpdOffset)
This function returns the currently set offset,. This is the offset associated with the
currently selected function and range. The value should be the same as that set in the
calibration record for this function and range. The offset is returned as a 64-bit doubleprecision floating-point number in the location pointed to by lpdOffsett. This function is
useful while performaing calibration. Set SetOffset() function for additional details.
Remarks
Parameter
Type/Description
iDmm
Return Value
Value
Meaning
lpdOffset
DMM_OKAY
Valid return.
Negative Value
Error code
Example
double offst;
GetOffset(0, &offst); // read gain
SetFcomp
SM2060 SM2064
Set the ACV Frequency compensation factor
#include "SMX2060.h"
Description
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iFcomp
161
Signametrics
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
SetOffset
SM2060 SM2064
Set the the offset correction factor
Description
#include "SMX2060.h"
int SetOffset(int nDmm, double dOffset)
This function sets the value of the offset correction factor for the currently set function
and range..
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
dOffset
Return Value
Example
Value
Meaning
DMM_OKAY
Linearize_AD
SM2060 SM2064
Description
Signametrics
162
If bLinerize is set to FALSE disables the A/D Linearization correction. The default value
is TRUE. Diabeling allows for the derivation of the parameters for calibration purposes.
This function is used during calibration.
Remarks
Parameter
Type/Description
iDmm
bACZero
Return Value
Value
Meaning
DMM_OKAY
Valid return.
Negative Value
Error code
Example
int err;
Err = Linearize_AD(0, FALSE); // disable AC Zero.
Read_ADcounts
SM2060 SM2064
Read A/D offset counts.
#include "SMX2060.h"
Description
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
Integer error code.
Return Value
Value
Meaning
Any value
Example
WrCalFileToStore
SM2060 SM2064
Description
Remarks
This function copies the specified calibration file, pointed to by lpszCal, to the on-board
none volatile store of the DMM. This is appropriate following calibration operation. The
currently stored on-board record is replaced with the contents of the speified file. Make
sure that the calibration file only contains only one record, for the specified DMM.
163
Signametrics
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
lpszCal
Return Value
Value
Meaning
Example
WrCalStoreToFile
SM2060 SM2064
Transfer the contents of the on-board cal store to a file.
#include "SMX2060.h"
Description
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
mode
lpszCal
Return Value
Example
Signametrics
Value
Meaning
164
Description
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
iTest
iNumber
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
Example
ClearBuffer
SM2060 SM2064
Clears the contents of the internal buffer.
Description
#include "SMX2060.h"
int DMMClearBuffer(int nDmm)
This function clears the internal buffer. It is useful when experimenting with the various
trigger functions.
Remarks
Parameter
Type/Description
nDmm
int Identifies the DMM. DMMs are numbered starting with zero.
Integer error code..
Return Value
Value
Meaning
DMM_OKAY
Negative Value
Error code
165
Signametrics
Example
0// no error
-1// cannot find valid calibration file
-2// High Speed Guard Crossing error
-3// Dmm not initialized
-4// DMM not responding
-5// DMM Not found on PCI bus
-6// cannot find valid calibration record
-7// A/D does not respond. H/W error
-8// can't access H/W, wrong address of fail
-9// can't find cal record for DMM
-10// Can't read ID from DMM
-11// Trigger circuit error
-12// Communication error with DMM uP
-13// process timed out Error
-14// Guard crossing is broken
-15// Microcontroller communication error
-16 // Communication Overrun error
-17 // Communication Frame error
-18 // Com receive Fifo error
-19 // Com parity error
-20 // Wrong Cal record for DMM type
-21 // MCU Firmwhare does not support operation
-22// cant open PCI device. Already open?
-23// Card does not have all PCI items.
-24 // General Error
-25 // High speed Out Guard comm not operating/available
-26 // Error reading Cal record from local storage
-27 // Can't create named cal file to write to
-28 // Can't open cal file for reading cal record
-29 // Can't create on-board Cal Record
-30 // Error reading cal file.
-31 // OutGuard Local Loopback comm test fail
101
102
103
DMM_CNT_RNG_2060
DMM_E_IS_INIT_2060
CAP_RATE_ERR_2060
ERR_FUNC_2060
ERR_APERTURE_2060
TRIG_SAMPL_ERR_2060
ERR_PARAMETER_2060
UN_CALIBRATED_2060
#define TOO_COLD_2060
#define TOO_HOT_2060
#define BAD_TC_TYPE_2060
#define MC_STOP_2060
#define POS_FS_2060
#define NEG_FS_2060
#define BUSY_2060
FUNC_INACTIVE_2060
NOT_OPEN_2060
READ_INTERVL_2060
FAIL_OPEN_CAL_2060
CAL_2usOffset_2060
CAL_2usGain_2060
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
0
5
10
14
22
29
37
43
44
52
57
58
60
65
68
63
75
78
81
82
91
98
100
DC Volts
AC Volts
AC Current
DC Current
2-Wire resistance
4-Wire resistance
Diode test
DMM Internal temperature
Capacitance
4-Wire RTD
Source DC Voltage
Source AC Voltage
Source DC Current
Leakage test
Inductance
Source Voltage, Measure Current
Extended Ohms
Synthesized Resistance (not implemented yet)
Thermocouple Temperature
In-Circuit Capacitance
10Meg High V ranges input resistance measure (open terminals)
Source VDC to +/-10V & measure IDC to +/-24mA
Measures the resistance in a series RC network
167
Signametrics
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
24
25
26
27
28
29
31
32
33
34
35
36
37
#define DIODE_1u
38
// 1uA
#define DIODE_10u
39
// 10uA
#define DIODE_100u
40
// 100uA
#define DIODE_1m
41
// 1mA
#define DIODE_10m
42
// 10mA (2064 only)
// All functions below are only for 2064 type DMM.
// Module internal temperature sensor
#define LOCAL_TEMP
43
// Internal temperature measurement
/* Ramp type Capacitance */
#define CAPS_1200p
44
// 1,200pF range
#define CAPS_12n
45
// 12,000pF range
#define CAPS_120n
46
// 0.12uF range
#define CAPS_1200n
47
// 1.2uF range
#define CAPS_12u
48
// 12uF range
#define CAPS_120u
49
// 120uF range
#define CAPS_1200u
50
// 1,200uF
#define CAPS_12m
51
// 12,000uF
// RTD Types. Resistance 4 wire config. Set Ro parameters
// to be set using DMMSetRTD(nDmm, Rzero)
#define pt385
52
// pt385 RTD
#define pt3911
53
// pt3911 RTD
#define pt3916
54
// pt3916 RTD
#define pt3926
55
// pt3926 RTD
#define cu
56
// 10 or 100 Ohms Copper RTD
// VDC source
#define VDCSource
57
// VDC source 0 to +/-10V
// VAC source
#define VACSrc900mV
58
// VAC source 0 to 3.3V RMS
#define VACSrc8V
59
// VAC source 0 to 7.25 RMS (20V p-p)
// DC Current source ranges. User DMMSetIDCSource() to set value
#define IDCSource1200n
60
// IDC source 1.25uA
#define IDCSource12u
61
// IDC source 12.5uA
#define IDCSource120u
62
// IDC source 125uA
#define IDCSource1200u
63
// IDC source 1.25mA
#define IDCSource12m
64
// IDC source 12.5mA
// Leakage test with variable Voltage
#define Leak240n
65
// Leakage 240nA range, 0 to +/-10V source
#define Leak2400n
66
// Leakage 2.4uA range, 0 to +/-10V source
#define Leak24u
67
// Leakage 24uA range, 0 to +/-10V source
// Inductance Function
#define Induct33u
68
// 33uH range for inductors
#define Induct330u
69
// 330uH range for inductors
#define Induct3300u
70
// 3.3mH range for inductors
#define Induct33m
71
// 33mH range for inductors
#define Induct330m
72
// 330mH range for inductors
#define Induct3300m
73
// 3.3H range for inductors
//
#define VsourceIsense
74
// Source +/-5V, measure current (<20mA)
//
// Extended Ohms ranges using the three internal shunts as current limiters
#define ExOhms400k
75
// 400k range with 24uA current limit
#define ExOhms4M
76
// 4Meg range with 2.4uA current limit
#define ExOhms40M
77
// 40Meg range with 240nA current limit
//
// Synthesized Resistance using the three internal shunts as references
169
Signametrics
#define SynthRes400k
78
// Synthesized Resistance, 400k range with 24uA limit
#define SynthRes4M
79
// 4Meg with 2.4uA limit
#define SynthRes40M
80
// 40Meg with 240nA limit
//
#define ThermoCouple
81
// Thermocouples
// AC based capacitance measurement function
#define AC_Cap24n
82
// AC based capacitance 24nF range
#define AC_Cap240n
83
// AC based capacitance 240nF range
#define AC_Cap2400n
84
// AC based capacitance 2.4uF range
#define AC_Cap24u
85
// AC based capacitance 24uF range
#define AC_Cap240u
86
// AC based capacitance 240uF range
#define AC_Cap2400u
87
// AC based capacitance 2,400uF range
#define MsrRin
91
// Measure 10Meg input divider. Open all terminals for this.
0
5
10
14
22
29
37
43
44
52
57
58
60
65
68
74
75
78
81
82
91
98
100
//DC Volts
//AC Volts
//Current
//Current
//2-Wire resistance
//4-Wire resistance
//Diode test
//DMM Internal temperature
//Capacitance
//4-Wire RTD
//Source DC Voltage
//Source AC Voltage
//Source DC Current
//Leakage test
//Inductance
// V Source I Sense (for future implementation)
//Extended Ohms
// Synthesized Resistance (for future implementation)
//Thermocouple Temperature
//In-Circuit Capacitance
//10Meg input resistance measure (w / open terminals)
//Source 0 to +/-10V and measure upto +/-24mA
//Measure R of a series RC network
0
1
2
3
4
170
// AC Current
#define _2400uAAC
0
// 2.4mA
#define _24mAAC
1
// 24mA
#define _240mAAC
2
#define _2400mAAC
3
// 2.4A
// DC Current
#define _240nA
0
// 240nA (2064 only)
#define _2400nA
1
// 2.4uA (2064 only)
#define _24uA
2
// 24uA (2064 only)
#define _240uA
3
// 240uA (2064 only)
#define _2400uA
4
// 2.4mA
#define _24mA
5
// 24mA
#define _240mA
6
// 240mA
#define _2400mA
7
// 2.4A
// 2 Wire and 4 Wire Ohms
#define _24
0
// 24 Ohms range (2064 only)
#define _240
1
#define _2400
2
#define _24k
3
#define _240k
4
#define _2400k
5
// Two Meg range
#define _24MEG
6
// 2-Wire
#define _240MEG
7
// 2-Wire (2064 only)
// Diode test
#define _D100n
0
//Test current = 100nA
#define _D1u
1
// 1uA
#define _D10u
2
// 10uA
#define _D100u
3
// 100uA
#define _D1m
4
// 1mA
#define _D10m
5
// 10mA test current (2064 only)
// Capacitance: Standard Ramp type
#define _1200p
0
// 1,200pF range
#define _12n
1
// 12nF
#define _120n
2
// 120nF
#define _1200n
3
// 1.2uF
#define _12u
4
// 12uF
#define _120u
5
// 120uF
#define _1200u
6
// 1,200uF
#define _12m
7
// 12,000uF
// Capacitance: AC Based Caps.
#define _10n
0
// 0.01uF (10nF)
#define _100n
1
// 0.1uF
#define _1u
2
#define _10u
3
// 10uF
#define _100u
4
#define _1m
5
#define _10m
6
// 4-wire RTDs: five basic types. No auto-ranging allowed
// Use DMMSetRTD to modify the default Ro form 100 Ohms
#define _pt385
0
// pt385 100 ohms
#define _3911
1
// pt3911 100 ohms
#define _3916
2
// pt3916 100 ohms
#define _3926
3
// pt3926 100 ohms
#define _cu
4
// cooper 9.035 Ohms
// VAC Source two ranges
171
Signametrics
#define _900mVsrc
0
// selectes the 900mV range
#define _8Vsrc
1
// select the 8V range
// IDC Source five ranges
#define _1uA
0
#define _10uA
1 // 10uA source (to 12.5uA)
#define _100uA
2
#define _1mA
3
#define _10mA
4
// 10mA source (to 12.5mA)
// Inductance measurements: six ranges
#define _33uH
0
#define _330uH
1
#define _3300uH
2
#define _33mH
3
#define _330mH
4
#define _3300mH
5
// Extended Resistance and Synthesized Resistance ranges
#define _400k
0
#define _4M
1
#define _40M
2
172
#define APR_260us
#define APR_130us
#define APR_2p5us
28
29
30
6.0 Maintenance
Warning
These service instructions are for use by qualified personnel only. To avoid electric shock, do not perform
any procedures in this section unless you are qualified to do so.
This section presents maintenance information for the DMM.
Test equipment recommended for calibration is listed below. If the recommended equipment is not available,
equipment that meets the indicated minimum specifications may be substituted. In general, the calibration
equipment should be at least three times more accurate than the DMM specifications.
Recommended Test Equipment
173
Signametrics
Instrument Type
Minimum Specifications
Recommended Model
Signametrics
174
Fluke 5700A
Range
Input
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
240 mV
240 mV
240 mV
2.4 V
2.4 V
2.4 V
24 V
24 V
24 V
240 V
240 V
240 V
330 V
330 V
330V
0V (short)
200 mV
- 200 mV
0V (short)
2V
-2V
0V (short)
20 V
- 20 V
0V (short)
200 V
-200 V
0V (short)
300 V
-300V
Minimum Reading
- 000.00200 mV
199.98800 mV
- 200.01200 mV
-0.0000050 V
1.9999300 V
- 2.0000700 V
-00.000015 V
19.998700 V
-20.001300 V
-000.00050 V
199.98750 V
-200.01250 V
-000.00080 V
299.95430 V
-300.04580 V
175
Maximum Reading
00 0.00200 mV
200.01200 mV
- 199.98800 mV
0.0000050 V
2.0000700 V
- 1.9999300 V
00.000015 V
20.001300 V
- 19.998700 V
000.00050 V
200.01250 V
- 199.98750 V
000.00080 V
300.04570 V
- 299.95420 V
Signametrics
Range
24.000000
24.000000
240.00000
240.00000
2.4000000 k
2.4000000 k
24.000000 k
24.000000 k
240.00000 k
240.00000 k
2.4000000 M
2.4000000 M
24.0000 M
24.0000 M
240.000 M
240.000 M
Input
00.000000
10.000000
000.00000
100.00000
0.0000000 k
1.0000000 k
00.000000 k
10.000000 k
000.00000 k
100.00000 k
0.0000000 M
1.0000000 M
00.0000 M
10.0000 M
000.000 M
100.000 M
Minimum Reading
00.000000
09.997200
000.00000
099.98700
0.0000000 k
0.9999070 k
00.000000 k
09.999050 k
000.00000 k
099.98800 k
0.0000000 M
0.9995300 M
00.0000 M
00.0998 M
0.00000 M
098.650 M
Maximum Reading
00.002000
10.002800
000.00600
100.01300
000.00003 k
1.0000950 k
00.000350 k
10.000950 k
000.00500 k
100.01200 k
0.0000700 M
1.0004700 M
00.0006 M
10.0206 M
000.050 M
101.350 M
Note: Some ranges apply to 2064 only. Please refer to chapter 2.0 (Specification).
Signametrics
176
Range
24.000000
24.000000
240.00000
240.00000
2.4000000 k
2.4000000 k
24.000000 k
24.000000 k
240.00000 k
240.00000 k
2.4000000 M
2.4000000 M
24.0000 M
24.0000 M
Input
00.000000
10.000000
000.00000
100.00000
0.0000000 k
1.0000000 k
00.000000 k
10.000000 k
000.00000 k
100.00000 k
0.0000000 M
1.0000000 M
00.0000 M
10.0000 M
Minimum Reading
00.000000
09.98200
000.00000
099.98800
0.0000000 k
0.9999070 k
00.000000 k
09.999050 k
000.00000 k
099.98800 k
0.0000000 M
0.9995300 M
00.0000 M
00.0998 M
Maximum Reading
00.001000
10.001800
000.00500
100.01200
000.00003 k
1.0000930 k
00.000350 k
10.000950 k
000.00500 k
100.01200 k
0.0000700 M
1.0004700 M
00.0006 M
10.0206 M
Note 1: Some ranges apply to 2064 only. Please refer to chapter 2.0 (Specification).
Note 2: The use of 4-wire Ohms for resistance values above 300 k is not recommended.
177
Signametrics
Range
Input
Minimum Reading
009.86500 mV
1
240 mV
10 mV
189.59500 mV
2
240 mV
190 mV
0.0987350 V
4
2.4 V
100 mV
1.8975650 V
5
2.4 V
1.9 V
0.9862700 V
6
24 V
1V
18.973130 V
7
24 V
19 V
9.8640000 V
8
240 V
10 V
9
240 V
190 V
189.75600 V
10
330V
10V
9.7620000 V
11
330V
300V
299.53000 V
Note: Some ranges apply to 2064 only. Please refer to chapter 2.0 (Specification).
Maximum reading
010.13500 mV
190.40500 mV
101.26500 V
1.9024350 V
1.0137300 V
19.026870 V
10.136000 V
190.24400 V
10.238000 V
300.47000 V
Range
Input
Minimum Reading
009.0400 mV
1
240 mV
10 mV
178.96000
mV
2
240 mV
190 mV
0.0927000 V
4
2.4 V
100 mV
1.7973000 V
5
2.4 V
1.9 V
0.9360000 V
6
24 V
1V
18.504000 V
7
24 V
19 V
9.3800000 V
8
240 V
10 V
9
240 V
190 V
183.62000 V
10
330V
10V
9.2800000 V
11
330V
300V
290.00000 V
Note: Some ranges apply to 2064 only. Please refer to chapter 2.0 (Specification).
Signametrics
178
Maximum reading
010.9600 mV
201.0400 mV
0.1073000 V
2.0027000 V
1.0640000 V
19.496000 V
10.620000 V
196.38000 V
10.720000 V
310.00000 V
Range
Input
Minimum Reading
Maximum reading
240.0000 A
000.0000 A
-000.0600 A
1 [1]
240.0000 A
200.0000 A
199.6000 A
2 [1]
240.0000 A
-200.0000 A
-200.4000 A
3 [1]
2.400000 A
0.000000 A
-0.000150 A
4 [1]
2.400000 A
2.000000 A
1.995650 A
5 [1]
2.400000 A
-2.000000 A
-2.004350 A
6 [1]
24.00000 A
0.000000 A
-0.000800 A
7 [1]
24.00000 A
20.00000 A
19.97320 A
8 [1]
24.00000 A
-20.00000 A
-20.03680 A
9 [1]
240.000 A
0.000000 A
-0.400000 A
10 [1]
240.000 A
240.000 A
199.4000 A
11 [1]
240.000 A
-240.000 A
-200.6000 A
12 [1]
2.40000 mA
0.00000 mA
-0.00055 mA
13
2.40000 mA
2.00000 mA
1.99805 mA
14
2.40000 mA
- 2.00000 mA
-2.00195 mA
15
24.0000 mA
0.00000 mA
-0.00055 mA
16
24.0000
mA
20.0000
mA
19.98345 mA
17
24.0000
mA
20.0000
mA
-20.01655
mA
18
240.000 mA
0.00000 mA
-0.00008 mA
19
240.000 mA
200.000 mA
199.790 mA
20
240.000 mA
-200.000 mA
-200.210 mA
21
2.40000 A
0.00000 A
-0.00009 A
22
2.40000 A
2.00000 A
1.99091 A
23
2.40000 A
-2.00000 A
-2.00909 A
24
[1] Note: Some ranges apply to 2064 only. Please refer to chapter 2.0 (Specification).
179
000.0600 A
200.4000 A
-199.6000 A
0.000150 A
2.004350 A
-1.995650 A
0.000800 A
20.03680 A
-19.97320 A
0.400000 A
200.6000 A
-199.4000 A
0.00055 mA
2.00195 mA
-1.99805 mA
0.00055 mA
20.01655 mA
-19.98345 mA
0.00008 mA
200.210 mA
-199.790 mA
0.00009 A
2.00909 A
-1.99091 A
Signametrics
Range
Input
Minimum Reading
Maximum reading
2.4 mA
0.1 mA
0.095710 mA
0.104290 mA
2.4 mA
1 mA
0.993100 mA
1.006900 mA
24 mA
1 mA
0.995400 mA
1.004600 mA
24 mA
10 mA
9.981000 mA
10.01900 mA
240 mA
10 mA
9.760000 mA
10.24000 mA
240 mA
100 mA
99.58000 mA
100.4200 mA
2.4 A
100 mA
0.09565 A
0.10435 A
2.4 A
1A
0.99250 A
1.00750 A
Note: Some ranges apply to 2064 only. Please refer to chapter 2.0 (Specification).
AC Current Test
All Inputs are at 10KHz
Step
Range
Input
Minimum Reading
1
2
3
4
5
6
7
8
2.4 mA
2.4 mA
24 mA
24 mA
240 mA
240 mA
2.4 A
2.4 A
0.1 mA
1 mA
1 mA
10 mA
10 mA
100 mA
100 mA
1A
0.093800 mA
0.993800 mA
0.956000 mA
9.992000 mA
9.560000 mA
99.20000 mA
0.09450 A
0.99000 A
Maximum reading
0.106200 mA
1.006200 mA
1.044000 mA
10.08000 mA
10.44000 mA
100.8000 mA
0.10550 A
1.01000 A
Note: Some ranges apply to 2064 only. Please refer to chapter 2.0 (Specification).
Signametrics
180
Range
Input
Minimum Reading
Maximum reading
1,200 pF
100 pF
0099.6 pF
0100.4 pF
1
1,200 pF
1,000 pF
0998.3 pF
1001.8 pF
2
12 F
1 F
10.994 F
01.620 F
3
12 F
10 F
09.938 F
10.017 F
4
120 F
10 F
009.90 F
010.10 F
5
120 F
100 F
099.00 F
101.00 F
6
1.2 F
0.1 F
0.0990 F
0.1010 F
7
1.2 F
1.0 F
0.9900 F
1.0100 F
8
12 F
1 F
00.990 F
01.010 F
9
12 F
10 F
09.900 F
10.100 F
10
120
F
10
F
009.90
F
010.10 F
11
120 F
100 F
099.00 F
101.00 F
12
1.2 mF
0.1 mF
0.0988 mF
0.1020 mF
13
1.2 mF
1 mF
0.9880 mF
1.0200 mF
14
12 mF
1 mF
00.988 mF
01.020 mF
15
12 mF
10 mF
09.880 mF
10.200 mF
16
Note: Some ranges apply to 2064 only. Please refer to chapter 2.0 (Specification).
181
Signametrics
Step
If you have not done so, install the DMM and place the covers back on to the computer. Ensure that the
computer has been on for at least one-half hour, with the covers on, before conducting this test.
Connect the test leads that you plan to use for the DMM V, +&- terminals. Leave the other end of the test
leads open.
Select the Inductance measurement function and a suitable range.
Perform an Open-Cal with the DMM.
After Open-Cal is completed, connect the test leads to a short circuit. Observe how much inductance the
DMM reads, and then turn on the relative button.
Connect the DMM to the test inductor you wish to measure, and take your reading
Range
24 H
1
24 H
2
240 H
3
240 H
4
2.4 mH
5
2.4 mH
6
24 mH
7
24 mH
8
240 mH
9
240 mH
10
2.4 H
11
2.4 H
12
Note: Applies to 2064 only.
Signametrics
Input
10 H
22 H
100 H
220 H
1.0 mH
2.2 mH
10 mH
22 mH
100 mH
220 mH
1.0 H
2.2 H
Inductance Test
Minimum Reading
09.499 H
21.499 H
096.99 H
216.99 H
0.9749 mH
2.1749 mH
9.7980 mH
21.795 mH
096.70 mH
216.34 mH
0.9300 H
2.0880 H
182
Maximum reading
10.500 H
22.500 H
103.00 H
223.00 H
1.0250 mH
2.2250 mH
10.202 mH
22.204 mH
103.30 mH
223.66 mH
1.0700 H
2.3120 H
Range
Input
1
2
3
4
5
6
240 mV
2.4 V
24 V
330 V
240 mV
24 V
33 mV, 40 Hz
240 mV, 40 Hz
2.4 V, 40 Hz
24 V, 40 Hz
250 mV, 100 kHz
25 V, 100 kHz
Minimum Reading
39.9952 Hz
39.9952 Hz
39.9952 Hz
39.9952 Hz
99.996 kHz
99.996 kHz
Maximum reading
40.0048 Hz
40.0048 Hz
40.0048 Hz
40.0048 Hz
100.004 kHz
100.004 kHz
Range
Input
1
2
3
3.3 mA
33 mA
330 mA
330 uA, 40 Hz
15 mA, 40 Hz
150 mA, 40 Hz
Counter Reading
183
Tolerance
Signametrics
6.10 Calibration
Each SM2060/64 DMM uses its own SM60CAL.DAT calibration record to ensure the accuracy of its
functions and ranges. The SM60CAL.DAT file is a text file that contains the DMM identification
number, calibration date, and calibration constants for all DMM ranges. When the DMM is installed this
file is generated from an internally stored record. Once extracted, the DMM reads it from a file rather than
from its on-board record, since it is faster to read from a file. For most functions, the calibration constants
are scale factor and offset terms that solve an "y = mx + b" equation for each range. An input "x" is
corrected using a scale factor term "m" and an offset term "b"; this gives the desired DMM reading, "y".
Keep in mind that for ranges and functions that are unavailable for a particular product in the SM2060
family, the calibration record contains a placeholder. An example SM60CAL.DAT is shown:
card_id 10123 type 2064 calibration_date 06/15/1999
ad
#A/D compensation
72.0
20.0 0.99995
vdc
#VDC 240mV, 2.4V,24V, 240V, 330V ranges, offset and gain parameters
-386.0 0.99961
-37.0
0.999991
-83.0
0.999795
-8.8
1.00015
44.5
1.000001
vac
#VAC 1st line - DC offset. Than offset, gain and freq each range240mV to 330V
5.303
0.84
1.015461
23
0.0043 1.0256
23
0.0
1.02205
0
0.0
1.031386
0
1.2
0.994999
2
idc
# IDC 240nA to 2.5A, 8 ranges, offset and gain
-22.3
1.000030
33.4
0.999939
32.0
0.993499
-54.3
1.000102
-1450.0 1.00103
-176.0 1.00602
-1450.0 1.00482
-176.0 1.00001
iac
# IAC 2.4mA to 2.5A ranges, offset and gain
1.6
1.02402
0.0
1.03357
1.69
1.00513
0.0
1.0142
2w-ohm #Ohms 24, 240, 2.4k,24k,240k,2.4M,24M,240Meg ranges, offset and gain
1.27e+4 1.002259
1256.0 1.002307
110.0
1.002665
0.0
1.006304
0.0
1.003066
0.0
1.001848
0.0
0.995664
0.0
1.00030
The first column under any function, e.g.,"vdc", is the offset term "b", expressed as a value proportional
to analog-to-digital (a/d) counts. The second column is the scale factor term "m". Within each function,
the "b" and "m" terms are listed with the lowest range at the beginning. For example, under "2w-ohm"
above, "1.27e+4 1.002259" represents the offset term for the 33 range, and "1.002259" is the scale
factor for this range. This record must be for the 2064 since the 2060 does not have the 33 Ohms range,
and therefore these values will be set to 0.0 and 1.0.
For the ACV function, the first line in the calibration record is the DC offset value. The rest of the lines
contain the RMS offset, gain correction factor, and a third column that represents a digital code from 0 to
Signametrics
184
31 that controls the high frequency performance of each AC function. A large value, e.g., 31, implies
high attenuation.
The SM60CAL.DAT file is created by performing external calibration. The general calibration
algorithm consists of applying a zero value to the DMM followed by a value of 2/3rd of the top of each
range. Calibration of your SM2060/64 is best performed using calibration software available from
Signametrics.
When using multiple DMMs in a single chassis, the SM60CAL.DAT file must have a calibration record
for each DMM. You can combine the unique calibration records of each DMM into one
SM60CAL.DAT file using any ASCII text editor such as notepad.exe.
185
Signametrics
8.0 Accessories
Several accessories are available for the SM2060/64 DMMs, which can be purchased directly from
Signametrics, or one of its distributors or representatives. These include:
Signametrics
186