Starter kit jump starts measurements
We evaluated IOtech’s $995 PCI Data Acquisition Starter Kit. It can let you get mesurements without programming, but it has limitations.
Martin Rowe, Senior Technical Editor -- Test & Measurement World, 2/1/2001
If you’re looking to acquire data in a lab and then analyze your data, you’d probably prefer not to spend time writing a custom application program. If you know you’ll have to write your own application, you’d still like to test a data-acquisition card to verify that its performance will meet your needs. To fill those needs, IOtech offers a data-acquisition starter kit. The company touts, “out of the box data acquisition” as the main benefit of the kit. We decided to put IOtech to the test and see just how “out of the box” the starter kit really is.
IOtech has done a reasonably good job with its starter kit. You can acquire data and analyze it without programming, and the software will let you evaluate the hardware, but don’t expect everything from this kit. The software had an occasional bug that IOtech has fixed, and it could use another feature or two. The ADC wouldn’t run at top speed, but the DAC speed exceeded its specs.
The $995 starter kit (www.iotech.com/catalog/daq/starter.html) includes:
• DaqBoard/2000, a multifunction data-acquisition board. Table 1 lists the board’s features and key specifications.
• DaqView software for configuring the DaqBoard and viewing and saving data.
• DIAdem data-analysis and graphing software. Both DaqView and DIAdem come on one CD-ROM.
• Interconnect board, ribbon cable, and screwdriver for connecting signals to the DaqBoard.
• Basic instruction sheet, a quick-start guide, and a user manual.
| Table 1 DaqBoard/2000 features and specifications | |
|
Analog input channels |
8 differential, 16 single-ended |
|
Maximum sampling rate |
200 ksamples/s |
|
Widest input voltage range |
±10 V; 16-bit resolution |
|
Analog output channels |
2 |
|
Maximum sampling rate |
100 ksamples/s |
|
Voltage range |
±10 V; 16-bit resolution |
|
Digital I/O ports |
Three 8-bit, one 16-bit; 40 I/O channels total |
|
Counter/timer channels |
Four 16-bit channels; two can be combined into one 32-bit channel |
I ran my tests on a 133-MHz PC running Windows 98 with just 32 Mbytes of memory. I was pleased when I installed the software and then the hardware without failures. Getting the DaqView software to control the board, though, wasn’t quite an “out of the box” experience, which I define as simply placing a CD-ROM into its drive, installing the board, and having the product do the rest. I expected the software to identify any IOtech hardware it supports, then report its findings and ask for verification that it found the correct hardware. Instead, I had to select the DaqBoard from a DaqView setup menu and also set a few parameters.
Fortunately, IOtech’s quick-start guide walks you through the process of configuring and selecting the board. The steps are easy, but shouldn’t be necessary. Nevertheless, you should be able to get measurements about 45 minutes after opening the starter kit.
The starter kit’s interconnect board has well-marked terminals that make hookups easy. I found a few minor inconsistencies between the terminal markings on the board and the signal descriptions in the manual, but none that I couldn’t figure out.
After making the physical connections, you should have an easy time obtaining measurements with DaqView, which lets you control the DaqBoard’s ADC, DAC, counter, timer, and digital I/O (DIO) functions. You need to know how IOtech’s software works so you can operate the DaqBoard, so I’ll review the software first, then discuss hardware tests. Setting up your measurement channels is easy through three tabbed property pages: Channel Setup, Acquisition Setup, and Data Destination .
The acquisition setup page lets you select how you want to trigger an acquisition. On this page, IOtech uses the term “Scan Rate” to refer to the actual sample rate you’ll get from the DaqBoard regardless of the ADC’s sample clock speed. The sample rate per channel is the scan rate you enter divided by the number of channels you enable. If you choose a 50,000 scans/s rate and have five active channels, the sample rate is 10,000 samples/s/channel. I’ll refer to scan rate rather than sample rate in this article for consistency with the software.
DaqView gives you several data-display options: a digital meter, an analog dial meter, a level meter, and a chart recorder. The software’s meters or chart recorder continuously display data whenever you activate them. According to IOtech, the chart recorder is fast enough to let you see signals up to about 800 Hz in “real time.” All the indicators except for the chart recorder let you set limits that will cause the indicators to change color, but the limits won’t trigger events.
The DaqBoard/2000 has two analog outputs, and DaqView lets you create basic waveforms such as sine, square, and triangle waves. There’s an arbitrary function, too. To generate an arbitrary wave, you must first capture one with the ADC and save it to a file, then you can load the waveform into DaqView and replay it. There’s no tool to create your own waveforms in software, which I consider a limitation of this product.
DaqView also controls the DaqBoard’s counter and timer channels, which can totalize pulse counts or generate pulse trains, respectively. You can also use counters in electronic applications count the number of occurrences of an interrupt pulse. I’ll discuss the counter and timer channels in my evaluation of the starter kit hardware.
DaqView’s digital DIO port control is simple. When a port is set as an input, software LEDs indicate each bit’s status. In output mode, software switches let you set the state of each bit, or you can set the bits by entering a hex code into a text box.
Having control over DIO ports through a software front panel lets you test the DIO ports, but it’s not otherwise useful. You can’t activate a DIO port’s output in response to a measurement that has exceeded a limit. IOtech engineer told me that if you want to control DIO and analog outputs based on analog inputs, you need to write your own application program.
Set triggers
You can use a DIO port to trigger an acquisition when you want to store data. Digital triggers include greater than a value, less than a value, equal to a value or not equal to a value on any input port. Analog triggers include analog edge, voltage above or below a level, voltage within a window, and voltage outside a window. You can also select a stop trigger, which includes all of the start triggers plus a trigger based on number of scans.
When you wish to save data you can use DIAdem to plot it, but the software left an artifact on the screen. The artifact—part of a dialog box—remained on my screen even when I minimized the DIAdem window and maximized it again. Sometimes, though, the box would disappear as expected when DIAdem completed plotting the data. An IOtech engineer confirmed the bug existed, and a company representative claims it has been fixed.
DIAdem lets you perform mathematical analysis on your data that includes filtering, curve fitting, integration, differentiation, signal processing, and statistics. I used the fast Fourier transform (FFT) and the histogram functions to evaluate the DaqBoard.
Viewing options
DIAdem gives you two options for plotting measured or calculated data. DIAdem-View lets you view raw or calculated data on linear-scale graphs. DIAdem-Graph lets you select from several choices of graphs.
|
| Figure 1. An FFT reveals aliasing from harmonics in the source signal. |
|
| Figure 2. Signal artifacts can introduce errors in multiplexed ADCs, forcing both positive and negative voltages to decrease in magnitude. |
If you need to see the noise floor in an FFT, you need a log scale. In Figure 1, you can see the results of a 4096-point FFT on a sine wave from a B&K Precision 4011 function generator. A log-scale vertical axis prevents the “loss” of noise and harmonics peaks. A linear scale will compress noise and harmonics to levels that won’t appear in the plot.
The FFT shows why you may need antialiasing filters that you can build right on the interconnect board with resistors and capacitors. Although I sampled the sine wave at 50 scans/s, the signal contains enough harmonics to produce aliasing from frequencies equal to and greater than 25 kHz—the Nyquist frequency for that scan rate. Figure 2 shows the 1-kHz fundamental frequency through the 23rd harmonic. Note the double peaks for the harmonics. The aliased harmonic signals above the 25th harmonic “fold back” into the lower harmonics during FFT analysis. The plot clearly shows that even if you sample a signal at 50 times its fundamental frequency, you may still need antialiasing filters. By comparison, a LeCroy Waverunner LT374 DSO, sampling at 50 Msamples/s, showed no aliasing.
IOtech’s software has its limitations. DaqView’s lack of an ability to control outputs based on measurements is perhaps the most significant limitation. For me, DIAdem’s screen artifact was annoying, but you shouldn’t encounter the problem.
Hardware tests
One reason you need to know how to use IOtech’s software is to evaluate the DaqBoard/2000. The DaqBoard is the heart of IOtech’s starter kit. The hardware fared better than the software, but it, too, left some questions.
My DaqBoard tests included DC accuracy, noise, and crosstalk on the ADC circuits. I tested the DAC outputs for speed and accuracy under load. I tested the DIO ports for functionality and then tested the counters and timers for range and accuracy.
I started my evaluation of the data-acquisition board by testing its DC accuracy against a reference meter. Using an Agilent 34401A DMM as a reference, I compared the DMM’s readings to the DaqBoard over the board’s 0 V to 10-V range (Table 2). In each of the 10 measurements, the DaqBoard’s measured voltage was well within its specifications.
| Table 2 DC voltage accuracy measurements | ||||
|
Measurement: DC voltage | ||||
|
Specification: 0.015% of reading +0.005% of range | ||||
|
Range: 0 to +10 V | ||||
|
VOLTAGE |
HIGH LIMIT |
LOW LIMIT |
DAQBOARD |
DMM READING |
|
1 |
1.0055 |
0.9925 |
0.99901 |
0.99799 |
|
2 |
2.0321 |
2.0161 |
2.0241 |
2.0251 |
|
3 |
3.0215 |
3.0025 |
3.012 |
3.0123 |
|
4 |
4.0084 |
3.9864 |
3.9974 |
3.9968 |
|
5 |
5.0586 |
5.0334 |
5.046 |
5.0466 |
|
6 |
5.9926 |
5.9646 |
5.9786 |
5.9792 |
|
7 |
7.014 |
6.983 |
6.9985 |
6.998 |
|
8 |
8.0489 |
8.0149 |
8.0319 |
8.031 |
|
9 |
9.0108 |
8.9738 |
8.9923 |
8.9913 |
|
10 |
9.992 |
9.952 |
9.972 |
9.97 |
The results gave me confidence in the DaqBoard’s reliability when it was taking measurements on a single channel with the other ADC channels disabled and connected to ground. This is a best-case test, but it’s a good starting point.
ADC scanner tests
IOtech, like many of its competitors, uses a single ADC with a multiplexer. You can easily measure the effects of a data-acquisition card’s multiplexer and scan rate on your measurements. Capacitance in the multiplexer may not have time to discharge between samples, and thus can leave artifacts from the previous channel’s signal that alter the current channel’s measurement.
Figure 3. Noise reduces an ADC’s useful bits.
As a worst-case test, I connected voltages at nearly the full range of the ADC to the DaqBoard. I connected +9.9491 V to channel 0 and –9.9590 V to channel 1 using a B&K Precision 1651A triple-output power supply. I checked both voltages with the DMM. With the DaqBoard running at 100,000 scans/s, I measured both channels as the multiplexer toggled between them. Figure 2 shows the results. There’s about a 30-mV difference between the values measured with the DMM and those measured with the DaqBoard. Recall that when I used a single channel, the voltage differences between the DaqBoard and the DMM were a few millivolts. The 30 mV of error might not matter in your application, but it’s enough to throw the DaqBoard out of spec. Still, this type of error is common among multiplexed ADC boards. You can avoid it by using a board with a dedicated ADC per channel, but you can easily pay $1000 more for such a board.
I next looked at the DAQBoard’s noise to get an idea of how many bits I would really get to use. Figure 3 shows the ADC noise. In this test, I shorted all ADC inputs to ground and took 1000 samples at 20,000 scans/s on one channel. Ignoring the extremes as random errors, which could have been caused by EMI from the PC, I found that the DaqBoard loses at least three bits of resolution to noise. That’s not unusual with 16-bit PC plug-in cards.
An IOtech engineer claims the DaqBoard’s ADC digitizes at sample rates up to 200 kHz, but my board wouldn’t exceed 100 100 kscans/s. Through DaqView’s acquisition setup page, I set the DaqBoard’s internal clock speed to 200 kHz. Then I tried to set the scan rate to 200,000 scans/s. DaqView wouldn’t let me enter a value greater than 100,000 scans/s.
I also hit the 100,000 scans/s ceiling when I used an external ADC clock. I used the function generator to generate an external TTL-level clock signal, but the DaqBoard’s driver indicated an error when the clock frequency reached 100 kHz. I asked IOtech about the error. An IOtech engineer claims the DaqBoard will run at 200-kHz ADC clock speeds. My board didn’t.
Figure 4. Artifacts from a 1-MHz square wave (upper trace) appear in a 20-kHz square wave (lower trace).
While I couldn’t get the ADC to run at its rated speed, the DaqBoard’s two 16-bit analog outputs exceeded their speed specifications. IOtech rates these outputs as capable of supplying 10 V at 10 mA with a maximum clock rate of 100 kHz. With a 1-k load resistor, I set the DaqBoard to output a 10-V sine wave. Using an external clock and monitoring the output in the time domain with the DSO, I found the signal lost its shape when clock speeds reached 210 kHz.
Most multifunction data-acquisition boards have counters and timers, as does the DaqBook/2000. You can preload the DaqBoard/ 2000’s four counter inputs, then have it start counting pulses such as hardware interrupts or items passing a point on a production line. If you write your own application, you can program the DaqBoard to generate a pulse if the counter overflows or reaches a preset value. The two frequency/pulse timer outputs produce square waves at frequencies up to 1 MHz. Because the timer divides this reference signal using a binary counter, it’s next highest frequency is 500 kHz.
B&K Precision IOtech LeCroy
Running both timer outputs, I found interaction between them. Figure 4 shows 1-MHz artifacts from timer 0 riding on the 20-kHz output of timer 1 with both timers terminated by 5-k resistors. The peaks that occur while timer 1 is low and the 1-MHz drops while timer 1 is high don’t cross the thresholds for TTL-level signals. If you use both timers, they should work provided your load responds to TTL levels only. Otherwise, you may need to filter the high-frequency components from the noisy signal. IOtech engineers suggest adding a 47 pF or 100 pF capacitor to filter the high-frequency signals.
Test equipment vendors
The following companies supplied test equipment for this project.
Agilent Technologies
34401A digital multimeter
800-452-4844
www.agilent.com
1651A triple output power supply
4011 function generator
714-237-9220
www.bkprecision.com
Data Acquisition Starter Kit
440-439-4091
www.iotech.com
Waverunner LT344L digital oscilloscope
800-453-2769
www.lecroy.com
Buy it?
Should you buy the starter kit? It depends on your application. If you plan to acquire data and analyze it offline, then the starter kit certainly beats writing your own application. I’d say go for it, as long as you don’t need to generate outputs based on measurements or don’t need to view signals over 800 Hz in “real time.” I’d like to see IOtech add the ability to cause actions such as setting a digital output port based on measurements. Now that IOtech has fixed the screen-artifact bug, it has an easy-to-use data analysis tool that will meet many engineering needs.
If you’re taking your own data, then you can buy this kit and use it successfully. If you plan to use the DaqBoard in a factory setting where other people will use it, then you’ll probably want to write your own application. The software in this kit won’t be sufficient; it will give you access to all of the DaqBoard’s features, which you probably don’t want. IOtech does supply drivers for many popular programming languages. All in all, the starter kit will give you a good feel for the DaqBoard’s capabilities. But if you need a scan rate of more than 100,000 scans/s, then be sure to test that function, because it didn’t work for me. T&MW
Martin Rowe has a BSEE from Worcester Polytechnic Institute and an MBA from Bentley College. Before joining T&MW in 1992, he worked for 12 years as a design engineer for manufacturers of semiconductor process equipment and as an applications engineer for manufacturers of measurement and control equipment. E-mail: m.rowe@tmworld.com.

















