04.01.2015 Views

CR1000 Manual - Campbell Scientific

CR1000 Manual - Campbell Scientific

CR1000 Manual - Campbell Scientific

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Section 8. Operation<br />

Unless a Calibrate() instruction is present in the running CRBasic program, the<br />

<strong>CR1000</strong> automatically performs self-calibration during spare time in the<br />

background as an automatic slow sequence (p. 138), with a segment of the<br />

calibration occurring every 4 seconds. If there is insufficient time to do the<br />

background calibration because of a scan-consuming user program, the <strong>CR1000</strong><br />

will display the following warning at compile time: "Warning when Fast Scan x is<br />

running background calibration is disabled".<br />

The composite transfer function of the instrumentation amplifier, integrator, and<br />

analog-to-digital converter of the <strong>CR1000</strong> is described by the following equation:<br />

COUNTS = G * Vin + B<br />

where COUNTS is the result from an analog-to-digital conversion, G is the<br />

voltage gain for a given input range, and B is the internally measured offset<br />

voltage.<br />

Automatic self-calibration only calibrates the G and B values necessary to run a<br />

given CRBasic program, resulting in a program dependent number of selfcalibration<br />

segments ranging from a minimum of 6 to a maximum of 91. A typical<br />

number of segments required in self-calibration is 20 for analog ranges and 1<br />

segment for the panel temperature measurement, totaling 21 segments. So, (21<br />

segments) * (4 s / segment) = 84 s per complete self-calibration. The worst-case is<br />

(91 segments) * (4 s / segment) = 364 s per complete self-calibration.<br />

During instrument power-up, the <strong>CR1000</strong> computes calibration coefficients by<br />

averaging ten complete sets of self-calibration measurements. After power up,<br />

newly determined G and B values are low-pass filtered as follows.<br />

Next_Value = (1/5) * New + (4/5) * Old<br />

This results in<br />

• 20% settling for 1 new value,<br />

• 49% settling for 3 new values<br />

• 67% settling for 5 new values<br />

• 89% settling for 10 new values<br />

• 96% settling for 14 new values<br />

If this rate of update for measurement channels is too slow, the Calibrate()<br />

instruction can be used. The Calibrate() instruction computes the necessary G<br />

and B values every scan without any low-pass filtering.<br />

For a VoltSe() instruction, B is determined as part of self-calibration only if the<br />

parameter MeasOff = 0. An exception is B for VoltSe() on the ±2500 mV input<br />

range with 250 μs integration, which is always determined in self-calibration for<br />

use internally. For a VoltDiff() instruction, B is determined as part of selfcalibration<br />

only if the parameter RevDiff = 0.<br />

VoltSe() and VoltDiff() instructions, on a given input range with the same<br />

integration durations, utilize the same G values but different B values. The 6<br />

input-voltage ranges (±5000 mV, ±2500 mV, ±250 mV, ±25 mV, ±7.5 mV, ±2.5<br />

mV) along with the three different integration durations (250 μs, 50-Hz halfcycle,<br />

and 60-Hz half-cycle) result in a maximum of 18 different gains (G), and<br />

18 offsets for VoltSe() measurements (B), and 18 offsets for VoltDiff()<br />

290

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!