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 February 2005 Rev 1.
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.
TABLE OF CONTENTS 1.0 INTRODUCTION .................................................................................................................................................8 1.1 SAFETY CONSIDERATIONS..........................................................................................................................8 1.2 MINIMUM REQUIREMENTS .........................................................................................................................9 1.3 FEATURE SET ................
.1 VOLTAGE MEASUREMENT........................................................................................................................32 4.1.1 DC Voltage Measurements ....................................................................................................32 4.1.2 True RMS AC Voltage Measurements ...................................................................................32 4.1.3 AC Peak-to-Peak and Crest Factor (SM2064) ............................................................
.5 USING THE SM2060 DLL WITH LABWINDOWS/CVI®............................................................................60 5.6 WINDOWS COMMAND LANGUAGE ...........................................................................................................60 DMMArmAnalogTrigger ................................................................................................................60 DMMArmTrigger.....................................................................................................
DMMReadCJTemp .........................................................................................................................97 DMMReadCrestFactor ...................................................................................................................98 DMMReadDutyCycle ......................................................................................................................99 DMMReadFrequency...................................................................................
5.8 MAINTANANCE COMMANDS ..................................................................................................................138 GrdXingTest..................................................................................................................................138 5.7 ERROR CODES ........................................................................................................................................138 5.8 WARNING CODES ..................................................
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 (DMM’s) 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.
1.2 Minimum Requirements The SM2060 series of system DMM’s are precision plug-in modules that are compatible with IBM type personal computers (PCs), PXI and cPCI chassis. It requires as a minimum a Pentiums computer. They require a half-length expansion slot on the PCI bus or 3U PXI slot. A mouse must be installed when controlling the DMM from the Windows Control Panel. The SM2060 comes with a Windows' DLL, for operation with Windows' Version 95/98/Me/2000/XP and NT4.0. 1.
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. 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. 2.
2.3 Resistance Measurements 2.3.1 2-wire Accuracy ± (% of reading + Ω) [1] Range [4] 24 Ω[3] 240 Ω 2.4 kΩ 24 kΩ 240 kΩ 2.4 MΩ 24 MΩ 240 MΩ[3] Full Scale 7 ½ Digits 24.000000 Ω 240.00000 Ω 2.4000000 kΩ 24.000000 kΩ 240.00000 kΩ 2.4000000 MΩ 24.0000 MΩ 240.000 MΩ Resolution 1 µΩ 10 µΩ 100 µΩ 1 mΩ 10 mΩ 100 mΩ 100 Ω 1 kΩ Source current 10 mA 1 mA 1 mA 100 µA 10 µA 1 µA 100 nA 10 nA 24 hours 23°C ± 1°C 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.
2.3.4 Extended Resistance Measurements (SM2064) Characteristics • Test Voltage Adjustable between -10V and +10V in 5mV steps Accuracy ± (% of reading + Amps) [1] Range Resol Current Limit [3] 90 Days One Year 23°C Measurement range 23°C ± 5°C ution ± 5°C 25µA 0.2 + 50Ω 400kΩ 1kΩ to 100MΩ 10Ω 0.33 + 90Ω 0.3 + 350Ω 4MΩ 10kΩ to 1GΩ 100Ω 2.5µA 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).
AC Volts Accuracy with Fast RMS disabled (default). With Fast RMS disabled, settling time to rated accuracy is within 0.5 Accuracy ± (% of reading + Volts) [1] Range 240 mV 2.
Fast RMS settles to rated accuracy within 50ms. Accuracy ± (% of reading + Volts) [1] Range 240 mV 2.4 V 24 V 240 V 330 V Frequency 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 24 hours 23°C ± 1°C 0.6 + 150 µV 0.13 + 100 µV 0.
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 Typical Accuracy 23°C ± 5°C One Year [1] 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 [1] Signal frequency range 30 Hz to 60 kHz. 2.4.3 AC Crest Factor Measurement (SM2064) • Measures the crest factor (CF) of a repetitive waveform ACV Range 240 mV 2.4 V 24 V 240 V 330 V Lowest specified input voltage (Vp-p) 0.1 V 1.
Input Characteristics • Crest Factor 4 at Full Scale, increasing to 10 at Lowest Specified Current • Protected with 2.5 A Fast Blow fuse Range Full Scale 6 1/2 Digits 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 Resolution 1 nA 10 nA 100 nA 1 uA Accuracy ± (% of reading + Amps) Range 2.4 mA 24 mA 240 mA 2.
• Ro: Variable from 10 Ω to 10 kΩ • Measurement Method: 4-Wire • Temperature units: Selectable oC or oF RTD Type 0.01°C Temperature range -150 to 650°C Temperature Accuracy 23°C ± 5°C [1] One Year ±0.06°C 500, 1 kΩ 0.01°C -150 to 650°C ±0.03°C Less than 12 Ω 0.01°C -100 to 200°C Higher than 90 Ω 0.01°C -100 to 200°C ±0.18°C for temperatures ≤ 20°C, ±0.05°C otherwise ±0.10°C for temperatures ≤ 20°C, ±0.
Range 1,200 pF 12 ηF 120 ηF 1.2 µF 12 µF 120 µF 1.2 mF 12 mF Full Scale Reading 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 Resolution 0.1 pF 1 pF 10 pF 100 pF 1 ηF 10 ηF 100 ηF 1 µF One Year 23°C ± 5°C 1.5 ± 0.25 pF 1.2 ± 5 pF 1.0 1.0 1.0 1.0 1.2 2 [1] Within one hour of zero, using Relative control. Accuracy is specified for values higher than 5% of the selected range with the exception of the 1,200 pF range.
2.9.3 Capacitance, In-Circuit Method (SM2064) • Adjustable Peak Voltages Stimulus 100mV to 1.3V • Minimum Parallel Load Resistance 100Ω Accuracy ± (% of reading + Farads) [1] Range Full Scale 3-½ Digits 23.99 ηF 239.9 ηF 2.399 µF 23.99 µF 239.9 µF 2.399 mF 23.99 mF 24 ηF 240 ηF 2.4 µF 24 µF 240 µF 2.4 mF 24 mF Resolution 10 pF 100 pF 1000 pF 10 ηF 100 ηF 1 µF 10 µF One Year 23°C ± 5°C [2] 2.7 ± 100 pF 2.5 ± 500 pF 2.
2.10.2 Frequency and Period Measurement ACV Mode • Input Impedance 1 MΩ with < 300 pF Frequency Range Resolution Uncertainty is ±0.002% of reading ± adder shown Input Signal Range [1] 2 Hz - 100 Hz 1 mHz 4 mHz 100 Hz-1 kHz 10 mHz 20 mHz 1 kHz-10 kHz 100 mHz 200 mHz 10 kHz-100 kHz 1 Hz 2 Hz 100 kHz-300 kHz 1 Hz 5 Hz 10% - 200% of range 10% - 200% of range 10% -200% of range 10% - 200% of range 45% -200% of range [1] Input RMS voltage required for a valid reading. Do not exceed 250 V RMS input.
2.10.5 Totalizer • Active edge polarity: Positive or negative transition • Maximum count: 10^9 • Allowed rate: 1 to 30,000 events per second • Uses Threshold DAC 2.11 Trigger Functions 2.11.1 External Hardware Trigger (at DIN-7 connector) Trigger Input voltage level range Trigger Pulse Width Minimum trigger input current Internal Reading Buffer Isolation of trigger input +3 V to +15 V activates the trigger. Minimum = 1/Aperture + 50µS 1 mA Circular; 80 or 120 readings depending on resolution.
Interval(s) / max meas. rate(Hz) Aperture 60Hz 50Hz 400Hz 5.1200s [1] 5.121s / 0.2 √ √ √ 5.0666s [1] 5.0677s / 0.2 √ 2.08s [1] 2.081s / 0.5 √ √ 2.0s [1] 2.001s / 0.5 √ √ √ 1.06666s [1] 1.067s / 1 √ 960ms [1] 0.9605s / 1 √ √ 533.33ms [1] 533.6ms / 2 √ 480ms [1] 480.2ms / 2 √ √ 266.666ms [1] √ 268ms / 4 160.0ms 166ms / 6 √ √ √ 133.33ms 134ms / 8 √ 80.00ms 80.4ms / 13 √ √ 66.6667ms 67.2ms / 15 √ 40.00ms 40.4ms / 25 √ √ 33.333ms 33.643ms / 29.72 √ 20.00ms 20.098ms / 49.76 √ √ 16.6667ms 16.77ms / 59.6 √ 10ms 10.
The SM2060 has are 26 A/D apertures available, ranging from 5 Seconds to 625uSec. The following table contains all available measurement apertures corresponding minimum read intervals and measurement rates. Power Line Rejection Command/Response mode min. Read Interval(s) / max meas. rate(Hz) Aperture 60Hz 50Hz 400Hz 5.1200s [1] 5.121s / 0.2 √ √ √ 5.0666s [1] 5.0677s / 0.2 √ 2.08s [1] 2.081s / 0.5 √ √ 2.0s [1] 2.001s / 0.5 √ √ √ 1.06666s [1] 1.067s / 1 √ 960ms [1] 0.9605s / 1 √ √ 533.33ms [1] 533.
• • • Isolated to 300 V DC from the Chassis Current can be paralleled with multiple SMX2064s Voltage can be put in series with multiple SMX2064s 2.13.1 DC Voltage Source Parameter Output Voltage range Typical Current source/sink at 5V output DAC resolution Accuracy 23°C ± 10°C One Year Typical settling time Typical source resistance Closed Loop [1] Open Loop -10.000 V to +10.000 V 5 mA 5 mA 18 bits 12 bits 1.0% ± 35 mV 0.
Important: all accuracy specifications for DCV, Resistance, DCI, ACV, and ACI apply for the time periods shown in the respective specification tables. To meet these specifications, Self Calibration must be performed once a day or as indicated in the specification table. This is a simple software operation that takes a few seconds. It can be performed by calling Windows command DMMCal(), or selecting S-Cal in the control panel.
Accessories Several accessories are available for the SM2060 series DMM’s, which can be purchased directly from Signametrics, or one of its approved distributors or representatives. These are some of the accessories available: • DMM probes SM-PRB ($15.70) • DMM probe kit SM-PRK ($38.50) • Deluxe probe kit SM-PRD ($95.00). • Shielded SMT Tweezers Probes SM-PRSMT ($24.90). • Multi Stacking Double Banana shielded cable 36” SM-CBL36 ($39.00).
3.0 Getting Started After unpacking the DMM, please inspect for any shipping damage that may have occurred, and report any claims to your transportation carrier. The DMM is shipped with the Digital Multimeter module; Installation CD and a floppy disk that contain the calibration and verification files. Also included is the Certificate of Calibration. 3.1 Setting the DMM The SM2060 series DMM’s are PCI plug-and-play devices and do not require any switch settings, or other adjustments prior to installation.
3.4 DMM Input Connectors 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. Figure 3-1. The DMM input connectors.
TRIG / GUARD Both the Trigger and Guard functions are at the DIN-7 connector. This group of pins includes the positive and negative hardware trigger input lines and the two SM2064 Guarded Measurement Force and Sense signals. The external trigger initiates reading(s) into the onboard buffer, and the 6W guard signals facilitate incircuit resistor measurements by means of isolating a loading node. The DIN-7 plug can be ordered from Signametrics and is also available at many electronic hardware distributors.
Note: The SM2060 front panel powers up in DCV, 0.5s Aperture, 0 Read Interval and 240 V range. If the DMM is operated in Autorange, with an open input, it will switch between the 2.4V and 24V ranges every few seconds, as a range change occurs. This is perfectly normal with ultra high impedance DMM’s such as the SM2060. This phenomenon is caused by the virtually infinite input impedance of the 2.4V DC range.
“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.
4.0 DMM Operation and Measurement Tutorial Most of the SM2060 measurement functions are accessible from the Windows Control Panel (Figure above). All of the functions are included in the Windows DLL driver library. To gain familiarity with the SM2060 series DMM’s, run the Windows ‘SETUP.EXE’ to install the software, then run the DMM, as described in the previous section. This section describes in detail the DMM’s operation and measurement practices for best performance. 4.
Figure 4-1. Make Voltage ACV measurements with the source ground attached to the SM2060 V,Ω - to minimize “Common Mode” measurement problems. 4.1.3 AC Peak-to-Peak and Crest Factor (SM2064) Measurement of Peak-to-Peak, Crest Factor and AC Median values requires a repetitive waveform between 30 Hz and 100 kHz. The DMM must be in AC voltage measurement mode, with the appropriate range selected. Knowing the Peak-to-Peak value of the waveform is useful for setting the Threshold DAC (described below).
4.2.1 Extended DC Current Measurements (SM2064) In addition to the 2.4mA, 24mA, 240mA and 2.4A, the SM2064 has also four DC current ranges; 240nA, 2.4uA, 24uA and 240uA ranges. The lower three ranges are implemented with a “Virtual Zero Shunt” technology, commonly associated with specialized Micro Amp meters. It has an ultra low noise low leakage that renders it useful for measuring down to few Pico-amperes.
4.3 Resistance Measurements Resistance is measured using eight (six in the SM2060) precision current sources, with the DMM displaying the resistance value. Most measurements can be made in the 2-wire mode. The 4-wire ohms is used to make low value resistance measurements. All resistance measurement modes are susceptible to Thermo-Voltaic (Thermal EMF) errors. See section 4.3.5 for details. 4.3.1 2-Wire Ohm Measurements The DMM measure using 240Ω to 24 MΩ ranges.
Figure 4-3. The I- and I+ sense leads should be closest to the body of the resistor when making 4WΩ measurements. 4.3.3 Using Offset Ohms function (SM2064) Inadvertent parasitic leakage currents, Thermo-voltaic voltages and other sources of voltage errors in a circuit can be the cause of inaccuracies in resistance measurements. This is common particularly when making measurements of active circuit.
Figure 4-4. 6-wire guarded in-circuit ohms measurement configuration. The current compliance of the Guard Force is limited to a maximum of 20 mA and is short circuit protected. The resistor connected between the low of the 4-wire terminals and the guard point is the burden resistor, or Rb. Due to the limited guard source current, this resistor can not be lower than Rbmin: Rbmin = Io * Rx / 0.02, where Io is the ohms source current for the selected range, and Rx is the resistance being measured.
Additional applications include testing high value resistive elements such as cables, transformers, and other leaky objects such as printed circuit boards, connectors and semiconductors. Range Measurement range Resolution Voltage Range Current Limit 400kΩ 1kΩ to 100MΩ 10Ω ±0.02V to ±10.0V 25µA 4MΩ 10kΩ to 1GΩ 100Ω ±0.02V to ±10.0V 2.5µA 40MΩ 100kΩ to 10GΩ 1kΩ ±0.02V to ±10.0V 250nA Figure 4-7.
3.3 MΩ 33 MΩ 330 MΩ 1 uA 100 nA 10 nA 1Ω 100 Ω 10 kΩ 10 Ω 100 Ω 1 kΩ 100 Ω 1 kΩ 10 kΩ 10 Ω 100 Ω 100 kΩ 4.3.7 Guarding High Value Resistance Measurements (SM2064) Measuring high value resistors using the 2-Wire function require special attention. Due to the high impedances involved during such measurements, noise pickup and leakage could be very significant. To improve this type of measurement it is important to use good quality shielded cables with a low leakage dielectric.
DMMSetDCVSource(). Leakage current is read using DMMRead(), DMMReadStr() or DMMReadNorm() functions. Figure 4-10. Leakage test configuration; reverse diode leakage at 5V. 4.5 Measurement Timing 4.5.1 Aperture The SM2060 and SM2064 DMM’s have several parameters governing measurement timing, including Aperture, Read Interval and Overhead time. To maintain low noise and high accuracy, the DMM shuts down all communications and other operations while converting.
Figure 4-11. Anatomy of a measurement Power Line Rejection Aperture 60 Hz √ √ 50Hz Command/Response mode min. Read Interval(s) / max meas. rate(Hz) H/W Trigger mode min. Read Interval(s) / max meas. Rate (Hz) 400Hz 5.1200s [1] 5.121s / 0.2 √ √ 5.0666s [1] 5.0677s / 0.2 2.08s [1] 2.081s / 0.5 √ √ 2.0s [1] 2.001s / 0.5 √ √ √ 1.06666s [1] 1.067s / 1 √ 960ms [1] 0.9605s / 1 √ √ 533.33ms [1] 533.6ms / 2 √ 480ms [1] 480.2ms / 2 √ √ 266.666ms [1] √ 268ms / 4 160.0ms 166ms / 6 √ √ √ 133.33ms 134ms / 8 √ 80.
Power Line Rejection Aperture 60 Hz √ √ 50Hz Command/Response mode min. Read Interval(s) / max meas. rate(Hz) H/W Trigger mode min. Read Interval(s) / max meas. Rate (Hz) 400Hz 5.1200s [1] 5.121s / 0.2 √ √ 5.0666s [1] 5.0677s / 0.2 2.08s [1] 2.081s / 0.5 √ √ 2.0s [1] 2.001s / 0.5 √ √ √ 1.06666s [1] 1.067s / 1 √ 960ms [1] 0.9605s / 1 √ √ 533.33ms [1] 533.6ms / 2 √ 480ms [1] 480.2ms / 2 √ √ 266.666ms [1] √ 268ms / 4 160.0ms 166ms / 6 √ √ √ 133.33ms 134ms / 8 √ 80.00ms 80.4ms / 13 √ √ 66.6667ms 67.
source that can be used concurrently with DCV measurement (see “Source Current / Measure Voltage”). This allows a variable current from 10 ηA to 12.5 mA. The maximum diode voltage compliance is approximately4 V. Applications include I/V characteristics of Diodes, LEDs, Low voltage Zener diodes, Band Gap devices, as well as IC testing and polarity checking. Typical current level uncertainty for diode measurements is 1%, and typical voltage uncertainty is 0.02%. 4.
plugged into the DMM, with the other end open. See figure 4-12 above for connection. If not modified by the DMMSetACCapsLevel() function, when making a measurement the DMM uses a default voltage of 0.45Vpk, which means that a sine wave that has a peak-to-peak amplitude of 0.9V. This level is used during both, open calibration and measurements. Since the DMM is optimized for this value, and it is well below most semiconductors on voltage, it is recommended not to change the level from this default value.
is filled, there will be some NULL readings in the buffer, followed by pre-trigger and post-trigger readings. Following capture use the DMMGetTriggerInfo() function to retrieve information such as the number of NULL readings, Pre-Trigger samples and buffer fill cycles. 4.13.1.
4.13.3.1 Burst Read Operation In response to the DMMBurstRead(nDmm, iSettle, iSamples) command, the DMM enters a tight measurement loop, where it samples the input and returns measurements to the calling S/W. For each measurement sent, it takes iSettle + 1 samples, sending only the last sample. A total of iSamples * (iSettle + 1) are taken by the DMM, and iSamples are sent back.
4.13.3.4 Triggered Burst Capture This function is similar to the Burst Read operation above. In response to the DMMSetTrigRead (nDmm, iSettle, iSamples, iEdge) command, the DMM enters a tight loop, where it responds to a trigger edge. On each of these edges triggers the DMM to capture and send back a measurement. The total of trigger edges and measurement being equal to iSamples. For each hardware trigger edge, the DMM takes iSettle + 1 measurements, sending the last one.
In Figure 4-13, the DMM is set to 2.4 ACV range, while the input is a 10% duty-cycle wave with 5 V peak-topeak. Due to AC coupling, the input at the comparator is –0.5 V to + 4.5 V. The Median Value is +2.0 V, which would be the optimal Threshold value. Figure 4-14. Comparator and Threshold DAC Settings 4.14.2 Frequency and Period Measurements Both Freq. and Per. check boxes are only visible when ACV or ACI functions are selected. These check boxes are used to make frequency or period measurements. Freq.
The Threshold DAC can be set for a negative or positive voltage value. See Threshold DAC above for more details. Example One: To monitor and capture the AC line for positive spikes which exceed 10% of the nominal 120 V RMS value, first select ACV 250 V range, than set the Threshold DAC to 186.7 V. This value is the peak value of 120 V RMS plus 10% (120V + 10%) X times this value was exceeded. 2 ).
Figure 4-15. Sourcing DC voltage. Monitoring of the output in closed loop operation. 4.15.2 AC Voltage Source The AC voltage source is fully isolated. It has two modes of operation: fast settling or closed loop. In the ClosedLoop mode, the source voltage is monitored, and corrections are made to the composite 16-bit DAC at a rate proportional to the set measurement rate. An aperture of 160ms or higher is recommended for the ClosedLoop mode. The ClosedLoop mode offers the best accuracy.
Figure 4-16. Generating AC voltage. Monitoring of the output in closed loop operation. 4.15.3 DC Current Source The SM2064 has a fully isolated unipolar DC current source with five ranges. It uses the 12-bit DAC to control current level. This source function is useful for parametric component measurements as well as for system verification and calibration, where a precise DC current is necessary to calibrate current sensing components. For improved resolution of the current source, use the Trim DAC.
Figure 4-16. Trigger interfacing connection to an SM2060 class of DMM’s. 4.16.2 Multiplexing with the SM2060 DMM’s For two wire measurements, the SM2060 DMM must be connected to the A-Bus or the scanner, or to both, the ABus and C-Bus for 4-Wire measurements (assuming an SM4040 or SM4042 scanner). It is important to consider system-settling time when making measurements. Time delays exist in any measurement system. These delays are contributed by various sources.
While DMMReady(nDmm) = NO Wend For I = 0 to nReadings -1 while(DMMReadBuffer(nDmm, reading(I)) Next SCANOpenAllChannels(nScan) While SCANReady(nScan) = NO DoEvents Wend ‘ wait for the DMM to indicate completion ‘ read values stored in the buffer ‘ Store each reading ‘ Good idea to open all channels when done ‘ Since AutoScan is a polled operation, ' Make sure Scanner is ready There are several SM2060 family commands to be considered for this operation: DMMSetTrigRead(), DMMSetBuffTrigRead(), DMMReadMeasur
4.18.2 Selecting PXI Trigger Inputs The trigger input to the DMM is the wired-ored signal of the trigger input from the DIN-7 connector and the selected PXI bus trigger. Make sure that no signal is connected to the DIN-7 trigger input while the PXI trigger bus is in use. When using the DIN-7 trigger input make sure the trigger input is Disabled (iTrigInput = 0).
5.0 Windows Interface The Windows interface package provided with the SM2060 series DMM is a 32bit DLL based modules, which includes both, a DLL and a windows Kernel driver. This package is sufficient for most windows based software being used to control the DMM. 5.1 Distribution Files The distribution diskette contains all the necessary components to install and run the DMM on computers running any of the Microsoft® Windows™ operating systems.
File Description SM2064.exe Visual Basic DMM control panel executable Msvcrt.dll System file. Installs in your C:\WINDOWS\SYSTEM directory. Windrvr.vxd Win98/95/Me Virtual Device Driver. Installs by ‘setup’ in your C:\WINDOWS\SYSTEM\VMM32 directory. Windrvr.sys Win NT Virtual Device Driver. Installs by ‘setup’ in your C:\WINNT\SYSTEM32\DRIVERS directory. Install.doc Installation instructions in MS Word Important Note about the SM60CAL.DAT file: The file SM60CAL.
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. 5.
* A simple Windows .EXE example for demonstrating the SM2060,64 * DMM’s using "C" * Sets Function to VDC, Range to 24V, Aperture set to 160ms. * Display five measurements using a Message box. *********************************************************************** * Make sure SM206032.lib is included in the libraries. For Microsoft * Version 4.0 C++ and above, place under 'Source Files' in the * Workspace, along side with Exmp2060.
The freq and per check boxes are context sensitive and appear in ACV and ACI. When freq is enabled, the frequency and amplitude are shown at the same time. In this mode, the reading rate is slower than indicated. When per is enabled, the period is shown. The SM2064 panel have additional capabilities, which are disabled if an SM2060 is detected. The source code file GLOBAL.
5.4 Windows DLL Default Modes and Parameters After initialization, the Windows DLL default modes and parameters on your DMM are set up as follows: • • • • • • • • • • • • • • • Auto ranging: Off Function: DC Volts Range: 240V Relative: Off Measurement Aperture: 533.33ms Read Interval: 0ms Temperature units are set to °C Offset Ohms: Off In-Cirtuite Caps level: 0.45V Peak.
Arm DMM for analog level trigger operation. Description #include "SM206032.h" int DMMArmAnalogTrigger(int nDmm, int iPostSamples, double *dThresh) 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.
DMMArmAnalogTrigger(0,80,1.5); while( ! DMMReady(0)); for(i=0; i < 80 ; i++) j = DMMReadBuffer(0, &Buffer[i]); DMMArmTrigger SM2060 ; SM2064 ; Arm DMM for external trigger operation. Description #include "SMX2060.h" #include "SMX2060.h" int DMMArmTrigger(int nDmm, int iPostTrig) Setup the DMM for external hardware trigger mode (input at DIN7 connector).
Negative Value Example Error code. double Buffer[70]; DMMArmTrigger(0,70); while( ! DMMReady(0)); for(i=0; i < 70 ; i++) j = DMMReadBuffer(0, &Buffer[i]); DMMBurstBuffRead SM2060 ; SM2064 ; Setup the DMM for Triggered operation. Description #include "SM206032.h" #include "DMMUser.
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 DMM’s // on-board buffer j = DMMReadBuffer(0, &Buffer[i]); DMMBurstRead SM2060 ; M2064 ; Setup the DMM for multiple readings operation, sending back measurements as they come. Description #include "SM206032.h" #include "DMMUser.
Example double Reading[250]; DMMBurstRead(0, 10, 250); // settle 10 reads., 250 samples for(i=0; i < 250 ; i++) // read 250 meas.
Internally calibrate the DMM. Description #include "SM206032.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.
iCycles int The number of times the relay contact is shaken. 1 to 1000. nDmm int Identifies the DMM. DMMs are numbered starting with zero. Integer error code.. Return Value Value Meaning DMM_OKAY Operation successfully completed. Negative Value Error code Example int status = DMMCleanRelay(0, 2, 100); // Shake K2 1000 DMMClearBuffer SM2060 ; SM2064 ; Clears the contents of the internal buffer. Description #include "SM206032.
Integer error code.. Return Value Value Meaning DMM_OKAY Operation successfully completed. Negative Value Error code Example int status = DMMClearMinMax(0); DMMClosePCI SM2060 ; SM2064 ; Close the PCI bus for the specified DMM. Not for user applications. Description #include "SM206032.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.
Delay of dTime seconds. dTime must be a positive double number between 0.0 and 100.0 seconds. Remarks Parameter Type/Description dTime double Delay time in seconds. The return value is one of the following constants. Return Value Value Meaning DMM_OKAY Operation successfully terminated Negative Value Error code Example DMMDelay(1.2); /* wait for 1.2 Sec */ DMMDelayedTrigger SM2060 ; SM2064 ; Description Arm DMM for delayed external trigger operation. #include "SMX2060.h" #include "SMX2060.
Parameter Type/Description nDmm int Identifies the DMM. DMMs are numbered starting with zero. dDelay double This post-trigger delay value can be 0.0 to 1.0 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. Example double Buffer[50]; //Delay 0.1s, take 50 samples DMMDelayedTrigger(0, 0.
Return Value Parameter Type/Description nDmm int Identifies the DMM. DMMs are numbered starting with zero. Integer error code Value Meaning DMM_OKAY Operation successfully completed. Negative Value Error code DMMDutyCycleStr SM2060 SM2064 ; Return percent duty cycle of an AC signal in string format. Description #include "SM206032.h" int DMMDutyCycleStr(int nDmm, LPSTR lpszReading) This function is the string version of DMMReadDutyCycle.
Parameter Type/Description iErrorCode int Error code. iBuffLength int The maximum available length of the string buffer lpszError LPSTR Points to a buffer (at least 64 characters long) to hold the error/warning string. The return value is the length of the error string or one of the following constants.
Negative Value Example Error code char cBuf[64]; int status; status = DMMFrequencyStr(0, cBuf); DMMGetACCapsR SM2060 SM2064 ; Return the resistance component of the last AC Caps measurement. Description #include "SM206032.h" int DMMGetACCapsR(int nDmm, double *lpdResult) This function retrieves the resistive component from last reading of the In Circuit (AC based) Capacitance measurement.
lpdAperture double * Pointer where the aperture is saved to. Integer value version code or an error code. Return Value Value Meaning Negative Value Error code Example int status; double aperture; status = DMMGetAperture(0, & aperture); DMMGetBufferSize SM2060 ; SM2064 ; Return the currently selected internal buffer size. Description #include "SM206032.h" #include "UseroDMM.h" int DMMGetBufferSize(int nDmm, int * lpiLength) This function returns the currently set buffer size.
nDmm int Identifies the DMM. DMMs are numbered starting with zero. bus int * a pointer to integer at which the bus number is stored (0 to 255) slot int * A pointer to an integer where the slot number is stored (0 to 15) The return value is one of the following constants. Return Value Value Meaning DMM_OKAY Operation was successful.
Value Meaning any positive number Length of the date string Negative number Error code Example char cBuf[64]; int status; status = DMMGetCalDate(0, cBuf); DMMGetdB SM2060 ; SM2064 ; Get dB deviation from the reading at the time relative was activated. Description #include "SM206032.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.
Parameter Type/Description nDmm int Identifies the DMM. DMMs are numbered starting with zero. lpszDB LPCSTR Points to a buffer (at least 64 characters long) to hold the result. The return value will consist of a leading sign a floating-point, and a ‘dB’ units specifier Integer string length if successful, or an error code..
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. Parameter Type/Description nDmm int Identifies the DMM. DMMs are numbered starting with zero.
Get DMM range code. Description #include "SM206032.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 Parameter Type/Description nDmm int Identifies the DMM. DMMs are numbered starting with zero. Integer value corresponding to the currently set DMM function/range, or an error code. The following are a few examples of the returned value.
Get DMM firmware version. Description #include "SM206032.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. Integer value. The return value is the version value or an error code.
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 Parameter Type/Description nDmm int Identifies the DMM. DMMs are numbered starting with zero. Integer value card ID code (serial number) or an error code. Return Value Value Meaning DMM_E_DMM Invalid DMM number.
DMM_OKAY Operation was successful. DMM_E_DMM Invalid DMM number. Example int month, day, year, status status = DMMGetManDate(0, &month, &day, &year); DMMGetMax SM2060 ; SM2064 ; Get Maximum reading history. Description #include "SM206032.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.
lpszReading LPSTR Points to a buffer (at least 64 characters long) to hold the result. The return value is one of the following constants, or the string length is OK. Return Value Value Meaning DMM_OKAY Valid return. Negative Value Error code Example char cBuf[64]; int status = DMMGetMaxStr(0, cBuf); DMMGetMin SM2060 ; SM2064 ; Get Minimum reading history. Description #include "SM206032.
Returns the minimum as a formatted string. Description #include "SM206032.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 Parameter Type/Description nDmm int Identifies the DMM. DMMs are numbered starting with zero.
DMMGetReadInterval SM2060 ; SM2064 ; Get Read Interval value. Description #include "SM206032.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 double * Pointer where the Read Interval is saved. Integer error code.. Return Value Value Meaning DMM_OKAY Operation successfully completed.
Example double f; int status = DMMGetSourceFreq(0, &f); DMMGetTCType SM2060 ; SM2064 ; Get the themocouple type currently selected. Description #include "SM206032.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.
DMM type Integer or an error code. Return Value Value Meaning iNullCount The number of empty buffer location can be 0 to 120 or 80 depending on set conversion resolution. iPreTrig The number of available pre-trigger samples. This value can be be 0 to 1 or 80 depending on set conversion resolution. iBufCycles The number of times the buffer filled prior to trigger. This value can be 0 0 to 65,280.
nDmm int Identifies the DMM. DMMs are numbered starting with zero. lpfResult double * Pointer to the location which holds the version. Integer error code. Return Value Value Meaning Negative Value Error code Example int status; double ver; status = DMMGetVer(0, &ver); DMMInit SM2060 ; SM2064 ; Initialize a DMM. Description #include "SM206032.h" int DMMInit(int nDmm, LPCSTR lpszCal) This function or DMMQuickInit() must be the first function to be executed.
Get the status of the autorange flag. Description #include "SM206032.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. TRUE, FALSE or an error code. Return Value Value Meaning TRUE Autoranging mode is selected. FALSE Autoranging mode is not selected. DMM_E_DMM Invalid DMM number.
Get the status of the Relative flag. Description #include "SM206032.h" int DMMIsRelative(int nDmm) This function returns the DMM Relative flag state. Remarks Parameter Type/Description nDmm int Identifies the DMM. DMMs are numbered starting with zero. Integer TRUE, FALSE or an error code. Return Value Value Meaning TRUE Relative mode is selected. FALSE Relative mode is not selected.
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.
Negative Value Example Error code int status = DMMOpenterminalCal(0); DMMPeriodStr SM2060 SM2064 ; Return the next DMM period reading, formatted for printing. Description #include "SM206032.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.
Tests the DMM for ready status, and returns the next floating-point reading. Description #include "SM206032.h" int DMMPolledRead(int nDmm, double FAR *lpdResult) DMMPolledRead polls the DMM for readiness. If the DMM is not ready it will return FALSE. If the DMM is ready with a new reading it will return TRUE, and the reading will be placed at the location pointed to by lpdResult. See DMMPolledReadCmd for more details. Do not use DMMReady to check for readiness since it will cause communication failure.
Parameter Type/Description nDmm int Identifies the DMM. DMMs are numbered starting with zero. DMM_OKAY if command accepted, else FALSE or an error code. Return Value Value Meaning FALSE DMM is busy and can’t execute a polled read command. DMM_OKAY Operation successful. DMM entered busy state Negative Value Error code Example int status = DMMPolledReadCmd(0); DMMPolledReadStr SM2060 ; SM2064 ; If DMM is ready, return the next reading from the DMM formatted for printing.
Initialize a DMM without tests. Description #include "SMX2060.h" int DMMQuickInit(int nDmm, LPCSTR lpszCal) This function or DMMInit() must be the first functions to be executed. It opens the driver for the specified DMM. The first DMM being 0, the second 1, etc... It also initializes the DMM hardware. This function is designed for speed and therefore does not perform the various self tests and calibration performed by the DMMInit functions.
Executing the DMMRead function causes the DMM to perform a single conversion and retrieve the result. The DMM, 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. It can read all the Primary functions (those that can be selected using DMMSetFunction() and DMMSetRange() ). Returned result is a scaled value which is normilized to the selected range. That is .
Value Meaning DMM_OKAY Operation successfully completed. 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 "SM206032.
Read the cold juncion temperature sensor for subsequent thrermocouple measurements. When measuring temperature using thermocouples it is necessary to establish a reference or cold junction temperaturem. This is the temperature at which the themocouple wires are connected to the DMM or to the switching card’s cooper wires. One way to do this is by measuring the cold junction sensor using this function. DMMReadCJTemp() function reads the sensor output voltage (0 to +/-3.
Example Value Meaning DMM_OKAY Operation successfully completed. Negative Value Error code double CF; int status = DMMReadCrestFactor(0, &CF); DMMReadDutyCycle SM2060 SM2064 ; Return percent duty cycle of ACV signal. Description #include "SM206032.h" int DMMReadDutyCycle(int nDmm, double *lpdDcy) This is a Secondary function and the DMM must be in AC measurement function, and a valid range must be set. It returns percent duty cycle of the signal.
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.
DMMReadMeasurement SM2060 ; SM2064 ; Return a reading which is the result of DMMSetTrigRead operation. Description #include "SM206032.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.
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.
Return ACV signal’s peak-to-peak value. Description #include "SM206032.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.
This is a Secondary function, that is the DMM must be in ACV measurement function, 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. Remarks Parameter Type/Description nDmm int Identifies the DMM. DMMs are numbered starting with zero. lpdResult double * Points to the location which holds the period.
DMMReadTotalizer SM2060 SM2064 ; Read the totalized value accumulated by the Totalizer function. Description #include "SM206032.h" long DMMReadTotalizer(int nDmm) 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. The return value is the totalized count, or if negative one of the following constants.
DMMReady SM2060 ; SM2064 ; Return the ready state of the DMM following trigger operation. Description #include "SM206032.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.
nDmm int Identifies the DMM. DMMs are numbered starting with zero. ldDelay double The time the DMM is allowed to settle the measurement. Can be set beetween 0 and 10.0 seconds. Integer error code. Return Value Value Meaning DMM_OKAY Operation successfully completed. Negative Value Error code Example DMMSetACCapsDelay(0, 0.25); // Set measurement delay to 0.25s DMMSetACCapsLevel SM2060 SM2064 ; Set the DCV source output level. Description #include "SM206032.h" #include "DMMUser.
Set the ACV source output level and frequency. Description #include "SM206032.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.
Parameter Type/Description nDmm int Identifies the DMM. DMMs are numbered starting with zero. iAperture int A pre-defined constant corresponding to the desired integration time. The return value is one of the following constants. Return Value Value Meaning DMM_OKAY DMM initialized successfully. Negative Value Error code ERR_APERTURE Invalid aperture value. Example status = DMMSetAperture(0, APR_16p67ms); // Set to 16.
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.
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.
DMM_OKAY Operation successfully terminated Negative Value Error code. Example DMMSetCJTemp(0, 22.5); DMMSetCompThreshold SM2060 SM2064 ; Set the Threshold DAC level. Description #include "SM206032.h" #include "DMMUser.h" int DMMSetCompThreshold(int nDmm, double ldThreshold) 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.
removing the requirement to make multiple frequency measurements in order to allow the counter to range. All ranges are defind in DMMUser.h file. fRange Symbol fRange Value Frequency Range COUNTR_20HZ 7 1.9 Hz to 19.9 COUNTR_130HZ 6 19.9 Hz to 128.8 Hz COUNTR_640HZ 5 128.8 Hz to 640 Hz COUNTR_2500HZ 4 640 Hz to 2.56 kHz COUNTR_10kHZ 3 2.56 kHz to 10.24 kHz COUNTR_40kHZ 2 10.24 kHz to 40.96 kHz COUNTR_200kHZ 1 40.
Parameter Type/Description nDmm int Identifies the DMM. DMMs are numbered starting with zero. ldAmps double DC current to be set. Can be 0 to 1.25 X the selected range Integer error code. Return Value Value Meaning DMM_OKAY Operation successfully completed. Negative Value Error code Example DMMSetRange(0, _1uA) DMMSetDCISource(0, 1.1e-6); // Select 1uA source range // Set source to 1.1uA DMMSetDCVSource SM2060 SM2064 ; Set the DCV source output level. Description #include "SM206032.
DMMSetFastRMS SM2060 ; SM2064 ; Set the DMM RMS filter response time. Description #include "SM206032.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.
Negative Value Error code DMM_E_FUNC Invalid DMM function. Example status = DMMSetFuncRange(0, VDC_3V); DMMSetFunction SM2060 ; SM2064 ; Set the DMM function. Description #include "SM206032.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.
nDmm int Identifies the DMM. DMMs are numbered starting with zero. lpdFreq double Frequency to be set. Integer error code. Return Value Value Meaning DMM_OKAY Operation successfully completed. Negative Value Error code Example int status = DMMSetInductFreq(0, 10e3); // Set source to 10kHz DMMSetOffsetOhms SM2060 ; SM2064 ; Enable/Disable Offset Ohms operation Description #include "SM206032.
both is 0, which disconnects both the input and output PXI trigger connections to the DMM. See section 4.18 for more details. Type/Description nDmm int Identifies the DMM. DMMs are numbered starting with zero. iTrigIn int Selects the PXI Trigger input source. Value 0 to 7. 0 – default, deselects all trigger inputs from the PXI bus. iTrigOut int Selects the PXI Trigger line to which the DMM DMM Trigger out is connected. Value 0 to 7.
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.
double Reference value. dRef Integer error code.. Return Value Value Meaning DMM_OKAY Operation successfully completed. Negative Value Error code Example double error; int status = DMMSetReferebce(0, 1000.
Set the DMM relative reading mode for the present function. Description #include "SM206032.h" int DMMSetRelative(int nDmm, int bRelative) 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. Remarks Parameter Type/Description nDmm int Identifies the DMM. DMMs are numbered starting with zero.
DMM_OKAY Operation successfully completed. Negative Value Error code Example DMMSetFunction(0, RTD); // RTD measurement function DMMSetRange(0, 1 _pt385); // Select RTD DMMSetRTD(0, RTD_4_W, 1000.0); // Set Ro = 1k Ohms DMMSetSensorParams SM2060 ; SM2064 ; Set the cold junction temperature sensor equation parameters. Description #include "SM206032.h" int DMMSetSensorParams(int nDmm, double lda, double ldm, double ldb) This function sets the parameters of the temperature sensor.
Set the DCV and ACV sources to ClosedLoop, or OpenLoop mode. Description #include "SM206032.h" #include "DMMUser.h" int DMMSetSourceMode(int nDmm, int iMode) This Secondary function sets the DC voltage sources to either OPEN_LOOP or CLOSED_LOOP. 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 16 effective bits. Open loop updates are very quick.
The return value is one of the following constants. Return Value Example Value Meaning DMM_OKAY Function succeeded. Negative Value Error code int status = DMMSetSync(0, TRUE, 1); //positive sync DMMSetTCType SM2060 ; SM2064 ; Set Thermocouple type. Description #include "SM206032.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.
iTempUnits int Temperature units can be either DEG_F for °F, or DEG_C for °C. The default is °C. The return value is one of the following constants. Return Value Value Meaning DMM_OKAY Function succeeded. Negative Value Error code int status = DMMSetTempUnits(0, DEG_F) // set units to °F Example DMMSetTrigPolarity SM2060 ; SM2064 ; Enables and sets polarity of DMM Sync output. Description #include "SM206032.
Setup for external hardware trigger operation. Following reception of this command the DMM enters a wait state. In response to the detection of the selected iEdge polarity on its external trigger, the DMM makes iSettle + 1 readings and sends the last reading to the PC. It does it at the currently set measurement function, range, Aperture and Read Interval. This process is repeated for iSamples times. Therefore, iSamples Trigger pulses must be issued to complete this process.
the on-board microcontroller’s 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. Parameter Type/Description nDmm int Identifies the DMM. DMMs are numbered starting with zero. iValue int Amplitude can be set from 0 to 100, corresponding to 0% to 100% Trim DAC level. Integer error code.
Integer error code. Return Value Value Meaning DMM_OKAY Operation successfully completed. Negative Value Error code Example int status = DMMStartTotalizer(0, LEADING); DMMStopTotalizer SM2060 SM2064 ; Terminate the accumulation process of the Totalizer. Description #include "SM206032.h" int DMMStopTotalizer(int nDmm) This function stops the accumulation process. Following this function, the totalized value can be read. For details see DMMStartTotalizer.
Terminate DMM operation (DLL) Description #include "SM206032.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 int Identifies the DMM to be suspended. The return value is one of the following constants.
DMM_E_INIT DMM is uninitialized. Must be initialize prior to using any function. DMM_TRIG_N Measurement count is out of allowed range. DMM_E_DMM Invalid DMM number. 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 Hardware multi sample trigger operation. #include "SM206032.
Setup for external hardware trigger operation. Following reception of this command the DMM enters a wait state. In response to the detection of the selected iEdge polarity on its external trigger, the DMM makes iSamples readings and sends them back. It does it at the currently set measurement function, range, Aperture and Read Interval. This process is repeated for iEvents times.
iPol Int This value indicates the polarity of the pulse to be measured. 1 indicates positive, 0 negative. lpszWidth LPSTR Points to a buffer (at least 64 characters long) to hold the positive width result. The return value is one of the following constants. Return Value Example Signametrics Value Meaning DMM_OKAY Valid return.
5.7 Calibration Service Commands AC_zero SM2060 ; SM2064 ; Disable AC measurement zero funciton. Description #include "SM206032.h" #include "UseroDMM.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.
Parameter int Identifies the DMM. DMMs are numbered starting with zero. nDmm LPCSTR Points to the name of the file containing the calibration constants for the DMM. lpszCal Return Value Type/Description The return value is one of the following constants. Value Meaning DMM_OKAY Cal record loaded successfully. Negative Value Error code Example /* Load a modified copy of the original calibration file to verify correction made to a specific entry */ int i = DMMLoadCalFile(0, "C:\CAL_A.
Retrieve currently set gain. Description #include "SM206032.h" #include "UseroDMM.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.
DMM_OKAY Operation successfully completed. Negative Value Error code Example SetFcomp(0, 12); // set the frequency compensation SetOffset SM2060 ; SM2064 ; Set the the offset correction factor Description #include "SM206032.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.
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 "SM206032.h" Description int Read_ADcounts(int nDmm) This function returnes the A/D raw counts. It is useful for retrieving the offset parameter for various functions, including VDC, 2-W and 4-W ohms and DC current. It is limited for service use. Remarks Parameter Type/Description nDmm int Identifies the DMM.
5.8 Maintanance Commands GrdXingTest SM2060 ; SM2064 ; Perform the specified test #include "SM206032.h" Description int GrdXingTgest(int nDmm, int iNumber, int iTest) Perform the specified test as indicated by iTest. Repeat it for iNumber times. This function is used to perform basic H/W tests. Remarks Parameter Type/Description nDmm int Identifies the DMM. DMMs are numbered starting with zero. iTest int Test type. 0: Basic Read/Write. 1: Toggle Reset line iNumber times.
OVERRUN FRAME RCV_FIFO PARITY WRONG_TYPE WRONG_GRD_VER CANT_OPEN_PCI PCI_ITEMS GENERAL_ERR NO_HS_OG CAL_STORE CREAT_CAL_FILE OPEN_CAL_FILE CREAT_CAL_RCRD -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 // Communication Overrun error // Communication Frame error // Com receive Fifo error // Com parity error // Wrong Cal record for DMM type // MCU Firmwhare does not support operation // Can't open PCI device. Already open ? // Card does not have all PCI items.
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.
6.1 Performance Tests This test compares the performance of the SM2060/64 DMM with the specifications given in Section 2. The test is recommended as an acceptance test when the instrument is first received, and as a verification after performing the calibration procedure. To ensure proper performance, the test must be performed with the SM2060 installed in a personal computer, with the covers on. The ambient temperature must be between 18°C and 28°C.
6.3 Resistance Test, 2-wire The following procedure may be used to verify the accuracy of the 2-wire function. 1. If you have not done so, install the SM2060/64 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. 2. Connect the SM2060/64 V,Ω + & - terminals to the calibrator HI & LO Outputs. Output 0 Ω from the calibrator. Allow the DMM to settle for a few seconds, and perform the Relative function.
6.4 Resistance Test, 4-wire The following procedure may be used to verify the accuracy of the 4-wire function. 1. If you have not done so, install the SM2060/64 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. 2. Connect the DMM V,Ω + & - terminals to the calibrator HI & LO Output. Connect the DMM’s I, 4WΩ + & terminals to the HI & LO Sense terminals. 3.
6.5 AC Voltage Test The following procedure may be used to verify the accuracy of the ACV function: 1. If you have not done so, install the SM2060/64 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. 2. Apply the following AC voltages to the V, Ω + & - terminals. Check to see that the displayed reading on the DMM is within the indicated readings range.
6.6 DC Current Test The following procedure may be used to verify the accuracy of the DCI function: 1. 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. 2. Remove all connections from the DMM inputs. Select the DCI function and range. Allow the DMM to settle for a second, and perform the Relative function. 3.
6.7 AC Current Test The following procedure may be used to verify the accuracy of the ACI function: 1. 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. 2. Remove all connections from the DMM inputs. Select the ACI function, Autorange. 3. Apply the following AC currents to the I,4Ω + & - terminals.
6.8 Capacitance Test (SM2064 only) The following procedure may be used to verify the accuracy of the Capacitance function. 1. 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. 2. Connect the DMM V,Ω + & - terminals to the calibrator HI & LO Outputs. Attach the test leads to the DMM, leaving the other end open circuited.
6.8 Inductance Test (SM2064 only) The following procedure may be used to verify the accuracy of the Capacitance function. 1. 2. 3. 4. 5. 6. 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.
6.9 Frequency Counter Test ( SM2064 only) The following procedure may be used to verify the accuracy of the Frequency Counter: 1. 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. 2. Select the ACV function, autorange. Turn freq on. 3. Apply the following AC voltages to the V, Ω + & - terminals.
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.
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. P P 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.
7.0 Warranty and Service The SM2060, SM2064, SMX2060 and SMX2064 are warranted for a period of one year from date of purchase. Removal of any of the three external shields or any attempt to repair the unit by other than unauthorized Signametrics service personnel will invalidate your warranty. Operating the Signametrics products outside their specified limits will void the warranty.