Campbell cs215 Instruction Manual - page 19
CS215 Temperature and Relative Humidity Probe
7.4.2 Measurements at Fast Scan Rates
7.4.2.1 CRBasic Dataloggers
CRBasic dataloggers that support the SlowSequence() function (CR800,
CR850, CR1000, CR3000, and CR5000) can run the SDI-12 instruction
entirely as a background process causing minimum interference to other
measurements that use the analog hardware.
This is implemented by including the measurement in a SlowSequence()
section of the program, thus allowing faster programs to run as the main scan.
For the CR5000 use a control port rather than the SDI-12 port to
allow the SDI12recorder instruction to run in the slow sequence.
NOTE
The example program provided in Section 7.4.3.4, CR5000 Program for
Measuring One Sensor Every 30 Seconds, shows how the SlowSequence() can
be used to make measurements from the CS215 while the main scan can run at
a much faster rate.
7.4.2.2 Edlog Dataloggers
The aM! command takes about 700 milliseconds in total to make a
measurement from the CS215. If it is included in the main program table
(table 1) the program will be delayed for this interval which will limit the
maximum scan rate for fast running programs.
For Edlog dataloggers, it is possible to put the SDI-12 instruction in table 2,
which allows table 1 to interrupt and pause the SDI-12 instruction letting it run
other instructions. However, table 1 cannot interrupt the instruction while
SDI-12 communications are taking place, only when datalogger is waiting for
the sensor to take the measurement. As the initiation of the sensor and also the
transfer of data from the sensor each take approximately 200 milliseconds this
limits the scan rate of table 1 to about 250 milliseconds, and only then if table 1
itself takes little time to execute.
The aC! concurrent measurement command can also be used where the sensor
measurement is initiated with one command and data is collected after a
minimum delay of one second or any time thereafter. With Campbell
Scientific dataloggers this is done by using the SDI-12 recorder instruction
with the aC! command. The datalogger will return -99999 for the temperature
reading for the call of the instruction that initiates the measurement. At the
next call of the instruction the datalogger will request the data and record the
correct temperature.
Using the aC! command requires more detailed programming to ensure the out
of range values are not recorded as real temperatures. It also has similar
limitations to running the instruction in table 2 when trying to make other
measurements at a fast scan rate. This is because the program will still be
delayed by approximately 200 ms for both the initiation of the measurement
and the subsequent reading of data from the sensor. Using the aC! command
can be useful where predictable timing of the program is required (without the
complications of working out how different program tables will interrupt each
other).
13