Zero compensation – Measurement Computing Data Acquisition Systems rev.10.4 User Manual
Page 33

Zero Compensation
Zero compensation removes offset errors
while a program is running. This is useful
in systems where the offset of a channel
may change due to temperature changes,
long-term drift, or hardware calibration
changes. Reading a shorted channel on the
same card at the same gain as the desired
channel removes the offset at run-time.
Note: Zero compensation is not available
for all expansion cards. The DBK19 has
channel 1 permanently shorted for zero
compensation; other cards require a
channel to be shorted manually.
The zero-compensation functions require a
shorted channel and a number of other
channels to be sampled from the same card
at the same gain as the shorted channel.
These functions will work with cards
(such as the DBK12, DBK13, and DBK19)
that have one analog path from the input to
the A/D converter. Other cards do not
support the zero compensation functions
because they have offset errors unique to
each channel. The DBK19 is designed
with channel 1 already shorted for
performing zero compensation.
The
daqZeroSetup
function configures the location of the shorted channel and the channels to be zeroed
within a scan, the size of the scan, and the number of readings to zero compensate. (This function does not
do the conversion.) A non-zero return value indicates an invalid parameter error.
In this example, several Daq device channels will be read using various gains and zero-compensated to
remove any offset errors. This example assumes that channel 0 of the Daq device has been manually
shorted. Expansion cards could perform the same type of zero compensation as this example by shorting a
channel on the expansion card and specifying card channel numbers. First list the configuration:
Channel
Channel Type
0 Shorted
Channel
1
Voltage1 @ X1 gain
2
Voltage2 @ X2 gain
3
Voltage3 @ X2 gain
4
Voltage4 @ X2 gain
Now specify the scan, the sequence of channel numbers, and gains that are to be gathered as one burst of
readings. In this example, we will first read the shorted channel at each gain that we plan on using, in this
case ×1 and ×2. All the channels at each gain will be read together to make the actual zero compensation
easier.
Scan
Position
Channel Type
Channel
Gain
Code
0
Shorted Channel @ X1
0
DgainX1
1
Shorted Channel @ X2
0
DgainX2
2
Voltage1 @ X1 gain
1
DgainX1
3
Voltage2 @ X2 gain
2
DgainX2
4
Voltage3 @ X2 gain
3
DgainX2
5
Voltage4 @ X2 gain
4
DgainX2
Programmer’s Manual
988594
API Programming, General Models 2-23