Atlas EZO-DO topic
- Sensor Datasheet
- Sensor Constructors
- Example Code
- Reference
- Detailed Descriptions
Classes for the Atlas Scientific EZO-DO dissolved oxygen circuit and probe.
The Atlas Scientific DO sensor outputs DO in both mg/L and percent saturation.
Sensor Datasheet
Documentation on the probe is found here: https:/
Documentation on the measurement circuit is found here: https:/
Sensor Constructors
AtlasScientificDO:: AtlasScientificDO(int8_t powerPin,
uint8_t i2cAddressHex = 0x61,
uint8_t measurementsToAverage = 1) explicit
Construct a new Atlas Scientific DO object using the primary hardware I2C instance.
Parameters | |
---|---|
powerPin | The pin on the mcu controlling powering to the Atlas DO circuit. Use -1 if it is continuously powered.
|
i2cAddressHex | The I2C address of the Atlas circuit; optional with the Atlas-supplied default address of 0x61. |
measurementsToAverage | The number of measurements to take and average before giving a "final" result from the sensor; optional with a default value of 1. |
Example Code
The Atlas DO sensor is used in the menu a la carte example.
Classes
- class AtlasScientificDO
- The Sensor sub-class for the Atlas Scientific EZO dissolved oxygen circuit.
- class AtlasScientificDO_DOmgL
- The Variable sub-class used for the dissolved oxygen concentration output from an Atlas Scientific EZO dissolved oxygen circuit.
- class AtlasScientificDO_DOpct
- The Variable sub-class used for the dissolved oxygen percent of saturation output from an Atlas Scientific EZO dissolved oxygen circuit.
Sensor Variable Counts
The number of variables that can be returned by the Atlas DO sensor
- #define ATLAS_DO_NUM_VARIABLES = 2
- Sensor::
_numReturnedValues; the Atlas EZO DO circuit can report 2 values. - #define ATLAS_DO_INC_CALC_VARIABLES = 0
- Sensor::
_incCalcValues; we don't calculate any additional values.
Configuration Defines
Defines to configure and set the address of the Atlas DO sensor
- #define ATLAS_DO_I2C_ADDR = 0x61
- The default I2C address of the Atlas DO sensor is 0x61 (97)
Sensor Timing
The sensor timing for an Atlas DO sensor
- #define ATLAS_DO_WARM_UP_TIME_MS = 745
- Sensor::
_warmUpTime_ms; the Atlas DO sensor warms up in 745ms. - #define ATLAS_DO_STABILIZATION_TIME_MS = 0
- Sensor::
_stabilizationTime_ms; the Atlas DO sensor is stable at completion of warm up (0ms after warm-up). - #define ATLAS_DO_MEASUREMENT_TIME_MS = 600
- Sensor::
_measurementTime_ms; the Atlas DO sensor takes 600ms to complete a measurement.
DO Concentration
The dissolved oxygen concentration from an Atlas DO sensor
- Accuracy is ± 0.05 mg/L
- Range is 0.01 − 100+ mg/L
AtlasScientificDO_ DOmgL:: AtlasScientificDO_DOmgL(AtlasScientificDO* parentSense,
const char* uuid = "",
const char* varCode = "AtlasDOmgL") explicit
Construct a new AtlasScientificDO_
Parameters | |
---|---|
parentSense | The parent AtlasScientificDO 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 "AtlasDOmgL". |
- #define ATLAS_DOMGL_RESOLUTION = 2
- Decimals places in string representation; dissolved oxygen concentration should have 2 - resolution is 0.01 mg/L.
- #define ATLAS_DOMGL_VAR_NUM = 0
- Sensor variable number; dissolved oxygen concentration is stored in sensorValues[0].
- #define ATLAS_DOMGL_VAR_NAME = "oxygenDissolved"
- Variable name in ODM2 controlled vocabulary; "oxygenDissolved".
- #define ATLAS_DOMGL_UNIT_NAME = "milligramPerLiter"
- Variable unit name in ODM2 controlled vocabulary; "milligramPerLiter" (mg/L)
- #define ATLAS_DOMGL_DEFAULT_CODE = "AtlasDOmgL"
- Default variable short code; "AtlasDOmgL".
DO Percent Saturation
The dissolved oxygen percent saturation for an Atlas DO sensor
- Accuracy is ± 0.05 mg/L
- Range is 0.1 − 400+ % saturation
AtlasScientificDO_ DOpct:: AtlasScientificDO_DOpct(AtlasScientificDO* parentSense,
const char* uuid = "",
const char* varCode = "AtlasDOpct") explicit
Construct a new AtlasScientificDO_
Parameters | |
---|---|
parentSense | The parent AtlasScientificDO 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 "AtlasDOpct". |
- #define ATLAS_DOPCT_RESOLUTION = 1
- Decimals places in string representation; dissolved oxygen percent should have 1 - resolution is 0.1 % saturation.
- #define ATLAS_DOPCT_VAR_NUM = 1
- Sensor variable number; dissolved oxygen percent is stored in sensorValues[1].
- #define ATLAS_DOPCT_VAR_NAME = "oxygenDissolvedPercentOfSaturation"
- Variable name in ODM2 controlled vocabulary; "oxygenDissolvedPercentOfSaturation".
- #define ATLAS_DOPCT_UNIT_NAME = "percent"
- Variable unit name in ODM2 controlled vocabulary; "percent" (percent saturation)
- #define ATLAS_DOPCT_DEFAULT_CODE = "AtlasDOpct"
- Default variable short code; "AtlasDOpct".
Define documentation
#define ATLAS_DO_NUM_VARIABLES = 2
#include <src/sensors/AtlasScientificDO.h>
Sensor::
#define ATLAS_DO_INC_CALC_VARIABLES = 0
#include <src/sensors/AtlasScientificDO.h>
Sensor::
#define ATLAS_DO_I2C_ADDR = 0x61
#include <src/sensors/AtlasScientificDO.h>
The default I2C address of the Atlas DO sensor is 0x61 (97)
#define ATLAS_DO_WARM_UP_TIME_MS = 745
#include <src/sensors/AtlasScientificDO.h>
Sensor::
737-739 in tests
#define ATLAS_DO_STABILIZATION_TIME_MS = 0
#include <src/sensors/AtlasScientificDO.h>
Sensor::
#define ATLAS_DO_MEASUREMENT_TIME_MS = 600
#include <src/sensors/AtlasScientificDO.h>
Sensor::
only ~555 measurement time in tests, but keep the 600 recommended by manual
#define ATLAS_DOMGL_RESOLUTION = 2
#include <src/sensors/AtlasScientificDO.h>
Decimals places in string representation; dissolved oxygen concentration should have 2 - resolution is 0.01 mg/L.
#define ATLAS_DOMGL_VAR_NUM = 0
#include <src/sensors/AtlasScientificDO.h>
Sensor variable number; dissolved oxygen concentration is stored in sensorValues[0].
#define ATLAS_DOMGL_VAR_NAME = "oxygenDissolved"
#include <src/sensors/AtlasScientificDO.h>
Variable name in ODM2 controlled vocabulary; "oxygenDissolved".
#define ATLAS_DOMGL_UNIT_NAME = "milligramPerLiter"
#include <src/sensors/AtlasScientificDO.h>
Variable unit name in ODM2 controlled vocabulary; "milligramPerLiter" (mg/L)
#define ATLAS_DOMGL_DEFAULT_CODE = "AtlasDOmgL"
#include <src/sensors/AtlasScientificDO.h>
Default variable short code; "AtlasDOmgL".
#define ATLAS_DOPCT_RESOLUTION = 1
#include <src/sensors/AtlasScientificDO.h>
Decimals places in string representation; dissolved oxygen percent should have 1 - resolution is 0.1 % saturation.
#define ATLAS_DOPCT_VAR_NUM = 1
#include <src/sensors/AtlasScientificDO.h>
Sensor variable number; dissolved oxygen percent is stored in sensorValues[1].
#define ATLAS_DOPCT_VAR_NAME = "oxygenDissolvedPercentOfSaturation"
#include <src/sensors/AtlasScientificDO.h>
Variable name in ODM2 controlled vocabulary; "oxygenDissolvedPercentOfSaturation".
#define ATLAS_DOPCT_UNIT_NAME = "percent"
#include <src/sensors/AtlasScientificDO.h>
Variable unit name in ODM2 controlled vocabulary; "percent" (percent saturation)
#define ATLAS_DOPCT_DEFAULT_CODE = "AtlasDOpct"
#include <src/sensors/AtlasScientificDO.h>
Default variable short code; "AtlasDOpct".