|
Home Page >
FAQ Index >
Data Acquisition Answers
This page contains answers to frequently asked
questions about data acquisition in general including both
generic background questions and general SR A/D questions..
For to questions about data acquisition for specific A/D products see the
USBxCH,
SER1CH-UA or
PARxCH FAQ pages.
For a list of the questions, please return to the main
FAQ Index
page. If you still have questions after reading this page,
email them to info@symres.com
and we'll be glad to answer them for you.
Q: What do abbreviations like DAQ, DAS, A/D, ADC, D/A, DAC mean ?
When it comes to data acquisition equipment, there is a confusing
array of acronyms and abbreviations. Adding further confusion is the
fact that there are no accepted standards for these abbreviations.
They vary from one manufacturer to another, and even within the same
conversation.
Generally,
| | DAQ | = Data Acquisition |
| | DAS | = Data Acquisition System |
| | A/D | = Analog to Digital |
| | ADC | = Analog to Digital Converter |
| | D/A | = Digital to Analog |
| | DAC | = Digital to Analog Converter |
The big confusion sets in with DAS and DAC. Is a DAS a D/A system or
an A/D system? Does DAC really mean D/A converter or is it a Data
ACquisition system? Typically, we will use the abbreviations A/D
and D/A, and type out the word 'System' when referring to a complete
product.
Q: What is the difference between instrument and audio grade A/D converters ?
A/D converters are generally divided into two distinct classes,
instrument grade and audio grade. It is important to pick a system
with a converter from the class that is appropriate for your
application.
Instrument grade converters seek to maintain linearity and minimize
missing codes. If you are monitoring a sensor such as a pressure
transducer, weigh scale, or thermocouple, you will probably want an
instrument grade converter. It guarantees the digital values will
closely track the sensor readings, and not introduce a source of
error. Instrument grade also usually denotes accuracy down to DC.
Audio grade converters seek to have characteristics that are
appropriate for the human ear. Since the human ear is not a linear
device, nor does it have a DC response, audio grade converters can
sacrifice these parameters. Instead they emphasize low cost and wide
dynamic range even with missing codes.
Depending on your application either type of converter may be
appropriate. SR products feature instrument grade converters for
industrial sensing. Read your converter spec sheets carefully! You
can find links to A/D converter spec sheets on our
Third Party Component Specs page.
Q: Why is memory buffering important for A/D systems ?
Despite their popularity, Win98, Win2K/XP, and Linux offer some
problems for real time data acquisition. Among the worst difficulties
are interrupt, task, and network latencies.
Under DOS, you could be pretty sure an interrupt would be serviced in
about a microsecond. Acquisition hardware could get away with very
small data buffers if it was willing to interrupt the system almost
continuously. Under Win2K/XP interrupt latencies may be worse,
depending on the system, and for any system, continual interrupts to
move a few bytes of data is terribly inefficient.
Furthermore, task latency, the amount of time it takes the system to
switch from the program running in one window to a program running in
another window is a problem too. In the real world we have often found
task switching latency to be as bad as 1 second! This can become
particularly acute for systems with heavy network traffic.
Long latency is a serious fact for real time data acquisition. Data
keeps coming in whether the PC can accept it or not. If it can't,
data will be lost. The only robust solution is for the acquisition
equipment to have a deep buffer, so data is saved until the PC can
service the acquisition task. Many SR A/D products are equipped with
buffering to be compatible with these latencies.
Q: How do oversampling and signal averaging affect resolution ?
An A/D converter with a constant input voltage never returns exactly
the same count value on successive conversions. Even though the count
value should theoretically be constant, in real life it is not. At
best a distribution of count values around a central value is
returned.
This distribution is due to processes within the A/D chip itself.
Even with perfect board design, you will still get the distribution.
It is a fact of life for A/Ds converters of all types.
Can any rule of thumb be given? Well, of course you have to consult
the spec sheet for any particular part, but generally expect about 4
bits of uncertainty in the count. Thus, for a 16 bit A/D converter
this means there are only 12 reliable constant single sample bits! 16
bit systems without signal averaging rarely return any more than
12-13 bit single sample resolution.
Higher resolutions can be obtained by oversampling and signal
averaging. The input is simply converted many times, and averaged to
get a more reliable central count value. The longer the averaging
time, the more accurate the result. This technique is used in one way
or another in virtually every high resolution A/D converter on the
market.
So for example, on the DSPA64/HLF system, the DSP32C can compute a
running average on the incoming data. With suitable signal averaging
you can actually get a true 15 bits of final single sample accuracy.
In the case of the PAR24B, the A/D converters use the sigma delta
conversion technique. They are sampling their input in the kHz range,
and doing the averaging internally to return 23 bits at a final 10Hz
sampling rate.
Q: Why does sigma delta A/D resolution vary with sampling rate ?
A reasonable working model for how a sigma delta converter works is
that it oversamples its input and then signal averages down to the
final sampling rate. The extreme signal averaging of the technology
results in its high resolution.
On most sigma delta converters, the input oversampling is done at a
fixed rate. The amount of time between output samples defines how
much signal averaging can be done. If output samples are requested
at higher rates, then there is less time for signal averaging and the
resolution decreases.
We quote typical information for the tradeoff on our systems, but
interested users may also wish to consult the IC manufacturers spec
sheets. Most of the IC manufacturers include detailed tables in
their spec sheets listing the sampling rate versus resolution trade
off. Our systems closely follow those results. Please follow the
links from our site to the respective IC data sheets if you are
interested in these specs.
Q: What is analog multiplexing ?
Multiplexed A/D systems have a single A/D converter and a front end
switching network allowing the A/D to be connected to any desired
channel. In effect, it is as if the test leads of a voltmeter were
connected to various inputs under hardware/software control.
The advantage of analog multiplexing is that it provides a high
channel count at low cost and uses the minimum board space. Only a
single (usually expensive) A/D converter is required, and typically 8
differential channels can be multiplexed per mux chip.
The disadvantage of multiplexing is that the A/D will typically see
widely varying inputs as the system switches from one channel to
another. For example, in a two channel system, if one channel has a
DC +V and the other 0V, the A/D and buffering circuitry will see a
square wave as input. The system must settle quickly to the new
voltage or else crosstalk will occur. It is ironic, that even though
the inputs are DC, the downstream hardware must have excellent AC
characteristics to deliver good performance. This requirement becomes
critical if the per channel sampling rates are very high at all.
Carefully designed muxed A/D systems like the DSPA64 that minimize
settling time perform very well. However, multiplexed systems seldom
offer resolution beyond 16 bits, and can never match the crosstalk
and settling performance of systems like the PARxCH and PAR24B with a
single A/D per channel.
Q: What does aggregate sampling rate mean for a multiplexed system ?
For acquisition systems with a single A/D converter and a
programmable analog multiplexer, quoting a per channel acquisition
rate can be tricky.
The best number to quote is the raw sampling rate of the single A/D.
In the case of the DSPA64/HLF system, this is usually 138 kHz, and
is referred to as the aggregate sampling rate. How this is spread out
over the input channels is under program control and up to the user.
For example, if the 138 kHz on the DSPA64 is spread out evenly over
the 64 input channels, then a sampling rate of 138/64 = 2.15 kHz
results on each channel. Of course the entire 138 kHz can be put on a
single channel if you like, with any other combination in between
being acceptable too.
Q: What is the trouble with high impedance analog inputs ?
While many users need high impedance inputs (perhaps even in the 100+
Mohms range), we have found that it is not a good idea to put them
directly on the A/D system.
The reason is this: High impedance inputs run on any length of real
world cabling invite noise problems. Essentially high input impedance
means that very small signal currents are flowing. These small
currents will have to compete with every other noise source that may
be present in your system. And the higher the input impedance, the
smaller the signal currents. It is much better to run at a reasonable
input impedance and keep the high impedance interface up as close to
the physical sensor as possible.
For users of active sensors this has already been done by the sensor
manufacturer. The words "active sensor" usually equate to a high input
impedance op amp being included directly with the sensor. The low
impedance output of the active sensor op amp results in a good match
to our A/D inputs.
Our amplifier systems such as the AMP4CH-DF have high impedance op amp
inputs and accommodations for a resistor to be placed in parallel with
the signal input to control the impedance. Additional considerations
and advantages for including an AMP4CH-DF amplifier in the signal path
are described in the second part of the Amplifier FAQ
"Why would I need an amplifier with a 24 bit A/D converter ?"
Q: What is an active sensor ? What is a passive sensor ?
The analog world is filled with a huge variety of sensors. Yet one
generic classification that can be used is whether they are "passive"
or "active".
An active sensor is easy to identify. It usually has some circuitry
packaged with it, has an op amp output, and requires some power in
order to function. The op amp output means that the sensor can
properly drive its analog signals down long cables, has a known full
scale response, and also has a high impedance input up very close to
the physical sensor mechanism where sensitivity and signal to noise
ratio will be best.
Passive sensors are usually simple raw physical devices, having no
associated circuitry, and requiring no power. Two examples would be
thermocouples and magnetic transducers such as geophones. These
kinds of sensors have small outputs and are easily influenced by
their electrical environments. They invariably require some sort of
signal conditioning to turn their outputs into useful signals.
Q: What are differential inputs ?
Differential inputs probably cause more confusion on the part of new
analog users than any other topic. In an ideal world without noise,
most people would be happier with single ended signaling. Yet in the
real world, with noise, differential signaling provides a significant
improvement in noise immunity. Enough improvement, so it is worth the
effort to master it.
The basic idea is simple. Rather than have one wire whose signal value
is its voltage with respect to system ground, have two wires, and let
the signal be the difference between the voltages on these two wires.
If the two wires are running through the same environment then any
common noise impressed on both of them will be removed when the
difference is performed at the input of the A/D converter.
Common mode noise can come from a variety of sources. It could be
EMI (electromagnetic interference) from 60Hz power lines or a nearby
radio station. It could also be ground loop noise from currents
flowing on the system ground. It can even be leakage currents on the
cabling connecting the analog inputs. No insulator is perfect. At
high resolution it is easy to measure the errors introduced by less
than perfect cabling. As long as the signals are running through
similar cable and differenced, most of the common mode effects are
removed.
So, the theory is nice. But troubles set in when theory is put into
practice. First, keep in mind that the A/D electronics can only
difference the signals within limits. If the absolute voltage on one
of the differential inputs becomes too large it will pin the input
circuitry on that wire and the A/D and differencing stops. You
cannot put 100v on the + wire and 99v on the - wire
and expect the A/D to difference them with a 1v result. Both the +
and - inputs of the differential pair must be within
the +/-10v input range with respect to the analog ground of
the A/D system.
If a few basic rules are followed, differential signaling is a
powerful and worthwhile noise reduction technique. The next few FAQs
cover additional tips on differential signaling.
Q: What are balanced differential inputs ?
For differential inputs, the digital count output from the A/D
converter is proportional to the difference between the voltages on
the + analog input pin and the - analog input pin. And this is true
as long as the inputs are not overdriven with respect to analog ground
as discussed in the FAQ
"What are differential inputs ?"
above.
However, to make the best use of differential inputs and gain the full
benefit of differential noise reduction techniques, the differential
inputs should be balanced.
Suppose you have analog signals on the + and - input pins that are
exactly opposite in voltage. So, for example, +1 volt on the + pin,
and -1 volt on the - pin. The beauty of this arrangement is that
however many electrons are flowing in on the + pin are exactly
balanced by a similar number flowing out on the - pin. There is no
current forced through the analog ground system at all. The signal is
entirely confined to the +,- input pins for that channel.
Clearly this is a desirable arrangement, avoiding different channels
sharing ground currents on cable shields and such. Many active
sensors automatically have this type of balanced signaling with equal
and opposite voltages on the +,- wires. It is also not hard to set up
if you are constructing your own amplifiers. It can be as simple as
having a non inverting buffer on the + signal and an inverting buffer
on the - signal, both driven from the same single ended sensor output.
It can also be achieved with a pair of crossed instrument amplifiers.
Balanced differential signaling leads to +/-10 volt inputs as one
standard in precision work. If the + and - inputs are each driven
from an op amp with +/-12 power supplies, then the output of each can
swing to +/-10 volts allowing for op amp headroom. It is remarkable
that this type of signaling leads to a total 40 volt span for full
scale response, resulting in tremendous signal to noise ratio, along
with no currents in the AGND system. See the FAQ
"What is the input sensitivity of the PARxCH ?"
below for additional comments.
Q: My sensor only has two pins, what do I do for differential AGND ?
Suppose you have a passive sensor with only two output pins and no pin
marked analog ground. How should this be connected to a differential
A/D input with +,-,AGND connections?
You might think you could connect the two pins from the sensor to the
differential +,- inputs and not make any connection to the A/D AGND.
But, this can be a prescription for trouble. Differential inputs must
be referenced to the A/D AGND, and you have no guarantees that the
sensor's pins are within +/-10v of the A/D AGND. In fact, many sensors
will float around if not referenced to AGND, creating the confusing
situation that things will appear to work for awhile and then stop
after the sensor has floated to the rails of the A/D.
A proper connection with a two pin sensor would connect a 100K ohm
resistor from the + terminal of the sensor to AGND and another 100K
ohm resistor from the - terminal of the sensor to AGND. This would be
done along with connecting to the +,- A/D input pins. The 100K
resistors make sure the sensor stays referenced to the AGND of the A/D
converter, and using a balanced pair makes sure that the common mode
rejection of the A/D is not compromised.
Some SR A/D products have these resistors included in their front
ends. For example, the PARxCH and AMP4CH-DF products do, and two
terminal passive sensors can be directly connected to their +,-
input pins with no AGND connection. Other SR products such as the
DSPA64 do not have these ground referencing resistors. The user must
add them on themselves. Consult the circuit diagram for your
particular product to determine the correct usage.
Q: How do I calibrate the A/D converters ?
Even though an input range of +/-10v, or other range as appropriate,
may be generally spoken about for an A/D converter, calibration is
always required for precise counts/volt measurements on a particular
system.
Calibration is required because input signal processing usually
involves resistors, and even precision tolerance resistors are only
available in stock catalog values. In addition, some of our systems
such as the PARxCH bias their inputs with a permanent offset for best
performance.
Our software for any particular system includes a program called
meter. The meter.c source code discusses how to perform a straight
line calibration for that system.
Q: Is twisted pair good for analog inputs ?
Yes. Even though some SR A/D products have some intrinsic 60 and 50 Hz
rejection, it is better to avoid power line noise in the first place.
Twisted pair for the input signals is one of the best ways to do so.
Long red and black test leads typically used with voltmeters create
large open loops which easily pick up power line noise. Even simple
steps such as loosely twisting the red and black test lead pairs
together can substantially reduce power line noise pickup. Jacketed
twisted shielded pair round cable is even better.
Foil shielding does not do much good against 60/50Hz noise. Foil
shielding does help protect against static discharge damage and RF
noise. At 60/50Hz it is the twist that does the job.
Q: How much crosstalk is there between channels on your A/D products ?
Crosstalk is a common performance spec to worry about. You don't
want a valid signal on one channel to be erroneously corrupting and
appearing on other channels even at a small level.
Of course how much crosstalk a system has depends on the system
architecture. Our 24 bit products with an individual A/D per channel
basically have crosstalk that cannot be measured. The channel to
channel isolation is so complete that it doesn't exist. Undeniably,
multiplexed systems, like our DSPA64 are more susceptible to
crosstalk, but with careful design they do well too at the 16 bit
level.
Measuring crosstalk is simple. First, set up a full scale sine wave
signal generator on one channel and then short out (or use another
low impedance source on) the remaining channels. Then start up the
SCOPE application program provided with the system and crank up the
bit resolution being displayed. When the shorted traces start to
show signs of the sine wave signal, you're seeing crosstalk.
The bit resolution at which crosstalk starts to appear is the same as
the ratio between the signal generator amplitude and the signal on
the quiet channel. So, for example on the DSPA64, where you will
find the crosstalk does not appear until the 15 bit level the
crosstalk in dB is:
20 * log( 2^15 ) = 90 dB down.
That's pretty good for a multiplexed system! On our 24 bit systems
you won't find there is any, even at the 24 bit level.
If you are doing this experiment, be sure to adhere to the following
in your setup:
1) Do not drive the input sine wave beyond the maximum input
amplitude of the system. If the amplitude is too great, input
amplifiers may saturate and you won't get valid results.
2) Drive all inputs with low impedance sources or short them. On
multiplexed systems like the DSPA64 the importance of this cannot be
stressed enough. Charge from a signal channel cannot be drained by a
floating channel when the multiplexer switches and will appear as a
fake signal. Short unused channels and use low
impedance inputs!
Q: Do your A/D products have any digital input/output capabilities ?
Our PARxCH 1/4/8 channel 24 bit A/D systems have four digital input bits
and four digital output bits available on a DB15 connector on the
front panel. The output bits are latched while the input bits are
polled. In addition, the system also has a front panel LED that can
be toggled to provide a visual output. These bits are intended for
general purpose control applications of external equipment in
conjunction with analog data acquisition.
The digital input bit values can be accessed on the PAR1CH and PAR4CH
in a polled fashion by calling the ParXchUserIoRd library function
from software. While the PAR8CH supports this polled style of digital
input too, it has enhanced firmware to automatically sample the
digital input each time a new piece of analog data is acquired.
Our PAR24B 8 channel 24 bit A/D system has a digital output byte
available on a 13x2 pin header. The output value is latched, and can
be updated in the 100's of kHz range. The system also has an on board
LED to indicate the value of the lowest bit of the output byte.
Q: Do your A/D products work with European 220 vac power sources ?
The boards themselves require the following power supply voltages:
PARxCH: 9 vac or +12 vdc
PAR24B: 9 vac or +/-12 vdc
DSPA64: +/-12 vac and +5 vdc
We normally provide external wall style transformers that convert US
110 vac wall voltages to these board level requirements.
For the PARxCH or PAR24B we will (on request) provide wall
transformers with 220 vac Continental European style wall plugs, or
220 vac chassis mount transformers with wire leads for custom
installations.
For the DSPA64 we have only 110 vac type power supplies. For that
product users must provide a separate 220 to 110 vac step down
transformer.
Q: Do your A/D products work with Win2K/XP or Linux ?
They do. We provide kernel mode device drivers which allow application
programs running on Win2K, WinXP or Linux to communicate with
our A/D hardware. We also provide some simple utility programs to make
installing and removing the driver very easy.
Q: Do your A/D products work with National Instruments LabVIEW ?
They do. And for the PARxCH A/D's, we even provide a second level of
LabVIEW support.
Both the SER1CH-UA and PARxCH families of A/D's come with function
libraries written in C and available as DLL's. These functions
perform tasks such as initializing the A/D and reading acquired data.
They can be called from LabVIEW by setting the properties of a Call
Library VI to match the name and arguments of the DLL functions.
For the PARxCH A/D's, we also provide "Virtual Instrument" diagrams
and applications. The VI applications are complete LabVIEW programs
that can be immediately run to acquire data. We supply a "scope"
application that displays its data as horizontal traces on the screen
and saves it to disk. We also supply a "meter" application that
displays the current A/D values as an LED display on the screen.
The source code for both the LabVIEW diagrams and applications is
supplied so users can modify it as necessary for their custom
applications. Note that our LabVIEW applications are distinct from
our scope and meter programs written in C/C++. Those are stand alone
programs that do not require LabVIEW to run.
Q: What is the format of your data files ?
Our SER1CH-UA digital volt meter program DVM saves data to hard disk
files in ASCII text format. See the User Manual for an example.
Our PARxCH acquisition programs simp and scope save their data to hard
disk files with one of two binary formats, .out or .dat.
The .out format is very simple and was the first format we supported.
We introduced the .dat format when we added GPS time stamping and
digital recording to our products. See the following FAQ questions
for more information about each format.
Utility programs in the \sr\parxch\convert directory are available for
converting the binary .out and .dat data files into other formats such
as ASCII text, IASPEI SUDS, and etc.
Q: What is the format of OUT files ?
The .out file format contains the binary analog data values in
multiplexed format exactly as they come from the A/D board. For our
16 bit DSPA64 product data values are stored as 16 bit integers, while
for our 24 bit products they are stored as 32 bit integers.
The data is organized with the data for the first time point for each
channel, followed by the data for the next time point for each channel
and so on. This is referred to as time multiplexed format. All data
is written out in little-endian PC byte order, where the low byte is
written first.
When simp and scope write .out files, they also write a single
separate header file with a .hdr extension. This file contains
information such as sampling rate and number of channels that apply to
all the .out data files. The format of this header file can be seen by
looking at the HDR_data structure in the simp.h file in the
\sr\parxch\simple directory.
An easy way to see the information in a .out file and its
corresponding .hdr file is to use the out2asc utility program. This
utility converts a binary .out file into an ASCII text file you can
examine with any text editor. Out2asc is located in the
\sr\parxch\convert\ascii directory.
Q: What is the format of DAT files ?
The .dat file format is more complicated than the .out format because
it includes GPS time stamping information along with digital
recording. The best discussion of the .dat file format and the
defines and C structures used to implement it can be found in the
comments in \sr\parxch\include\srdat.h. But, here is a short overview:
The .dat file format is comprised of a leading header followed by data
records of differing types. All data is saved in standard
little-endian PC byte order, with the low byte written first.
The leading header is 4096 bytes long, and has the structure
SrDatHdrLayout as covered in srdat.h. The header includes information
for things such as sampling rate, number of channels and etc, which
are common across the file.
Following the leading 4096 byte header are the data records. Each
data record starts off with a short 128 byte RecordTag structure
identifying the format and size of the data following in the record.
The allowed data record formats currently include 24 bit analog, PPS,
and RS232 serial NMEA data. The most detailed of these is the 24 bit
analog record type, which besides 24 bit analog A/D data, may also
contain GPS marks and digital recording. See the comments in
\sr\parxch\include\srdat.h and \sr\pargps\include\pargps.h for
details.
An easy way to see the information in a .dat file is to use the
dat2asc utility program. This utility converts a binary .dat file
into an ASCII text file you can examine with any text editor. Dat2asc
is located in the \sr\parxch\convert\ascii directory.
Q: Do you have a view and playback program ?
Yes, besides the PARxCH scope and simp programs that run the data
acquisition and generate files, we also have a viewing and playback
program for later viewing of data files. The view.exe Windows GUI
program is included with the standard PARxCH software distribution at
no additional cost.
View can also be used to excellent advantage across networks to check
in on "headless node" systems.
For viewing acquired SER1CH-UA data, we recommend the free GnuPlot
plotting utility described on our
Third Party page.
Return to the
FAQ Index
for links to more answers.
|