Sensor measurement

The CRBasic instruction, SDI12Recorder(), measures the HygroVue 5 sensor using the Start Measurement (M!), Concurrent Measurement (C!), or Continuous Measurement (R!) commands. The SDI‑12 commands relevant to making measurements are shown in HygroVue 5 SDI-12 measurement commands. SDI-12 sensor support describes all the SDI‑12 commands that are supported. Additional SDI‑12 information is available at www.sdi-12.org .

HygroVue 5 SDI-12 measurement commands

SDI-12 Command
(a is the address)

Values returned

aM!, aC!, aR0!, aMC!, aCC!, aR0C! Temperature (°C), relative humidity (%)
aM1!, aR1!, aMC1!, aRC1! Dewpoint (°C) of the air
aM3!, aR3!, aMC3!, aRC3! Temperature (°C), relative humidity (%),
dewpoint (°C), and vapor pressure (kPa)

When entering the command in a CRBasic program, the address and command are entered as separate parameters. The SDI-12 command is entered as a string, excluding the address but including the terminator character (for example “M!”).

When a measurement is initiated with the M! or C! commands, the sensor responds with the maximum time delay for measurement availability and the number of values to be returned. The delay is 1 second for this sensor. For the M! commands, Campbell Scientific data loggers interpret the response and automatically send one or more D! commands after the sensor indicates data is ready and writes it to the result variables. The whole measurement normally delays the data logger by about 400 milliseconds with the standard M! command.

The C! command differs as the data logger does not wait after sending the command and continues with other instructions in the program. It automatically collects the data the next time the SDIRecorder() instruction runs in the next scan. This allows measurements for several different sensors to be triggered and made concurrently, but the measurements seen in the data logger are effectively one scan period old. For the HygroVue 5, this instruction is rarely used because the instruction takes longer to execute than the M! or R! commands.

The R! command switches the sensor to automatically make measurements every 10 seconds, based on the sensor internal clock. Note, this command must be entered as R0 (a single R alone is invalid). For the data logger, this instruction usually takes less than 220 milliseconds to execute, so this causes the least delay to program execution. However, for programs which operate with scans longer than 10 seconds, the power consumption by the sensor will be higher when using this mode of operation. The automatic measurement mode and its consequent power consumption can only be canceled by powering down the sensor to reset it.

With the standard commands (M!, C!, and R0!), the sensor returns two values: temperature (°C) and relative humidity as a percentage (0 to 100). The sensor also supports some additional variants of the measurement commands; see HygroVue 5 SDI-12 measurement commands.

Dewpoint and vapor pressure are calculated using formulas from:

Alduchov, O. A., and R. E. Eskridge, 1996: Improved Magnus form approximation of saturation vapour pressure. J. Appl Meteor., 35, 601-609.

These optional outputs are provided mainly for non-Campbell data logger applications. Campbell data loggers have built in functions to calculate these derived variables and making the calculations in the data logger will be quicker and take less power, as it takes the sensor much longer to perform the calculations required than the data logger.

The HygroVue 5 also supports the MC!, CC!, and RC! instructions, which are the same as the M!, C!, and R! instructions, but a cyclic redundancy check (CRC) is added that validates the data. Use of the checksum option is only normally necessary for long cable runs.

The factory-set SDI-12 address for the HygroVue 5 is 0. See Change address command (aAb!) for instructions on changing the SDI-12 address through the data logger. SDI-12 sensor support gives full details of the additional commands and details of the SDI-12 protocol.