InSituRDO.h file
Contains the InSituRDO sensor subclass and the variable subclasses InSituRDO_
- Reference
-
Detailed Descriptions
These are for the In-Situ RDO PRO-X digital dissolved oxygen sensor.
This depends on the SDI12Sensors parent class.
Classes
- class InSituRDO
- The Sensor sub-class for the In-Situ RDO PRO-X dissolved oxygen sensor.
- class InSituRDO_DOmgL
- The Variable sub-class used for the dissolved oxygen concentration output from a In-Situ RDO PRO-X dissolved oxygen sensor.
- class InSituRDO_DOpct
- The Variable sub-class used for the dissolved oxygen percent saturation output from a In-Situ RDO PRO-X dissolved oxygen sensor.
- class InSituRDO_Temp
- The Variable sub-class used for the temperature output from a In-Situ RDO PRO-X dissolved oxygen sensor.
- class InSituRDO_Pressure
- The Variable sub-class used for the oxygen partial pressure output from a In-Situ RDO PRO-X dissolved oxygen sensor.
Defines
- #define INSITU_RDO_NUM_VARIABLES = 4
- Sensor::
_numReturnedValues; the RDO PRO-X can report 4 values. - #define INSITU_RDO_INC_CALC_VARIABLES = 0
- Sensor::
_incCalcValues; we don't calculate any additional values.
Sensor Timing
The sensor timing for an In-Situ RDO PRO-X.
None of these values are specified in the documentation for the sensor; this is all based on SRGD's testing.
- #define INSITU_RDO_WARM_UP_TIME_MS = 125
- Sensor::
_warmUpTime_ms; ~125ms in SRGD tests. - #define INSITU_RDO_STABILIZATION_TIME_MS = 0
- Sensor::
_stabilizationTime_ms; the sensor is stable as soon as it can take a measurement. - #define INSITU_RDO_MEASUREMENT_TIME_MS = 850
- Sensor::
_measurementTime_ms; ~775 minimum. - #define INSITU_RDO_EXTRA_WAKE_TIME_MS = 0
- Extra wake time required for an SDI-12 sensor between the "break" and the time the command is sent. We give the RDO an extra 10ms.
Dissolved Oxygen Concentration
The DO concentration variable from an In-Situ RDO PRO-X
- Range is 0 to 50 mg/L concentration
- Accuracy:
- ± 0.1 mg/L from 0 to 8 mg/L
- ± 0.2 mg/L of reading from 8-20 mg/L
- ± 10% of reading from 20-50 mg/L
Construct a new InSituRDO_
InSituRDO_DOmgL(InSituRDO* parentSense,
const char* uuid = "",
const char* varCode = INSITU_
Parameters
parentSense
The parent InSituRDO providing the result values.
uuid
A universally unique identifier (UUID or GUID) for the variable; optional with the default value of an empty string.
varCode
A short code to help identify the variable in files; optional with a default value of "RDOppm".
- #define INSITU_RDO_DOMGL_RESOLUTION = 2
- Decimals places in string representation; dissolved oxygen concentration should have 2 - resolution is 0.01 mg/L.
- #define INSITU_RDO_DOMGL_VAR_NUM = 0
- Variable number; dissolved oxygen concentration is stored in sensorValues[0].
- #define INSITU_RDO_DOMGL_VAR_NAME = "oxygenDissolved"
- Variable name in ODM2 controlled vocabulary; "oxygenDissolved".
- #define INSITU_RDO_DOMGL_UNIT_NAME = "milligramPerLiter"
- Variable unit name in ODM2 controlled vocabulary; "milligramPerLiter" (mg/L)
- #define INSITU_RDO_DOMGL_DEFAULT_CODE = "RDOppm"
- Default variable short code; "RDOppm".
Dissolved Oxygen Percent Saturation
The percent saturation variable from an In-Situ RDO PRO-X
- Range is 0 to 50 mg/L concentration
- Accuracy:
- ± 0.1 mg/L from 0 to 8 mg/L
- ± 0.2 mg/L of reading from 8-20 mg/L
± 10% of reading from 20-50 mg/L
InSituRDO_DOpct(InSituRDO* parentSense, const char* uuid = "", const char* varCode = INSITU_
RDO_ DOPCT_ DEFAULT_ CODE) explicit Construct a new InSituRDO_
DOpct object. Parameters parentSense The parent InSituRDO providing the result values. uuid A universally unique identifier (UUID or GUID) for the variable; optional with the default value of an empty string. varCode A short code to help identify the variable in files; optional with a default value of "RDOpercent".
- #define INSITU_RDO_DOPCT_RESOLUTION = 2
- Decimals places in string representation; dissolved oxygen percent saturation should have 1.
- #define INSITU_RDO_DOPCT_VAR_NUM = 1
- Variable number; dissolved oxygen percent is stored in sensorValues[1].
- #define INSITU_RDO_DOPCT_VAR_NAME = "oxygenDissolvedPercentOfSaturation"
- Variable name in ODM2 controlled vocabulary; "oxygenDissolvedPercentOfSaturation".
- #define INSITU_RDO_DOPCT_UNIT_NAME = "percent"
- Variable unit name in ODM2 controlled vocabulary; "percent" (% saturation)
- #define INSITU_RDO_DOPCT_DEFAULT_CODE = "RDOpercent"
- Default variable short code; "RDOpercent".
Temperature
The temperature variable from an In-Situ RDO PRO-X
- Range is 0° to 50°C (32° to 122°F)
- Accuracy is ± 0.1°C typical
Construct a new InSituRDO_
InSituRDO_Temp(InSituRDO* parentSense,
const char* uuid = "",
const char* varCode = INSITU_
Parameters
parentSense
The parent InSituRDO providing the result values.
uuid
A universally unique identifier (UUID or GUID) for the variable; optional with the default value of an empty string.
varCode
A short code to help identify the variable in files; optional with a default value of "RDOtempC".
- #define INSITU_RDO_TEMP_RESOLUTION = 2
- Decimals places in string representation; temperature should have 2 - resolution is 0.01°C.
- #define INSITU_RDO_TEMP_VAR_NUM = 2
- Variable number; temperature is stored in sensorValues[2].
- #define INSITU_RDO_TEMP_VAR_NAME = "temperature"
- Variable name in ODM2 controlled vocabulary; "temperature".
- #define INSITU_RDO_TEMP_UNIT_NAME = "degreeCelsius"
- Variable unit name in ODM2 controlled vocabulary; "degreeCelsius" (°C)
- #define INSITU_RDO_TEMP_DEFAULT_CODE = "RDOtempC"
- Default variable short code; "RDOtempC".
Oxygen Partial Pressure
The oxygen partial pressure variable from an In-Situ RDO PRO-X
Construct a new InSituRDO_
InSituRDO_Pressure(InSituRDO* parentSense,
const char* uuid = "",
const char* varCode = INSITU_
Parameters
parentSense
The parent InSituRDO providing the result values.
uuid
A universally unique identifier (UUID or GUID) for the variable; optional with the default value of an empty string.
varCode
A short code to help identify the variable in files; optional with a default value of "RDOppO2".
- #define INSITU_RDO_PRESSURE_RESOLUTION = 2
- Decimals places in string representation; pressure should have 3.
- #define INSITU_RDO_PRESSURE_VAR_NUM = 3
- Variable number; temperature is stored in sensorValues[3].
- #define INSITU_RDO_PRESSURE_VAR_NAME = "vaporPressure"
- Variable name in ODM2 controlled vocabulary; "vaporPressure".
- #define INSITU_RDO_PRESSURE_UNIT_NAME = "torr"
- Variable unit name in ODM2 controlled vocabulary; "torr".
- #define INSITU_RDO_PRESSURE_DEFAULT_CODE = "RDOppO2"
- Default variable short code; "RDOppO2".