SuBastian Scientific Instruments
All sensors are in a constant calibration rotation, latest calibration documents for each sensor are available in cruise data structure at CruiseData/Docs/ROV - SuBastian Sensors Calibration Documents/
CTD
CTD SBE 49 FastCat
Seabird FastCat49 CTD
Conductivity is a measured value - this is the preferred source
Sound velocity is derived from temperature and conductivity - use uvSVX values if available
Internally OutputFormat=3(default, engineering units in decimal), ProcessRealTime=Y(cell thermal mass effect aligned, filtered, and corrected for), OutputSal=Y(realtime salinity output), OutputSV=Y(realtime sound-velocity output)
Outputs and Specifications
Files:
FKtYYMMDD_sb_ctd_sbe49_SXXXX.txt
Timestamp | Temperature_C | Conductivity_S/m | Pressure_dbar | Salinity_ppt | SoundVelocity_m/s |
---|---|---|---|---|---|
2024-06-01T10:40:10.482364Z | 17.3875 | 3.06420 | 1.716 | 22.6797 | 1499.997 |
FKtYYMMDD_sb_ctd_sbe49_depth_corr_SXXXX.txt
Timestamp | Depth_m |
---|---|
2024-06-01T10:40:11.173719Z | 1.71 |
Output | Unit | Accuracy | Resolution | Range |
---|---|---|---|---|
Temperature | deg C | +-0.002 | 0.0001 | -5-35 |
Conductivity | S/m | +-0.0003 | 0.00005 | 0-9 |
Pressure | dbar | +-0.1% range | 0.002% range | 0-7000 |
Salinity | PSU | derived | derived | derived |
SoundVelocity | m/s | derived | derived | derived |
CTD uvSVX
Description
Secondary CTD Valeport uvSVX
Sound velocity is a measured value - preferable over SBE49
Salinity and density are not measured values - derived from sound velocity - use SBE49 values if available.
Files
FKtYYMMDD_sb_ctd_uvsvx_S0XXXX.txt
Timestamp | Header | Instrument_Address | Serial_Number | Pressure_dbar | Depth_m | Depth_unit | Temperature_C | SoundVelocity_m/s | Salinity_PSU | Density_kg/m3 | Checksum |
---|---|---|---|---|---|---|---|---|---|---|---|
2024-06-01T10:37:48.175763Z | $PVSVX | 10 | 81173 | 9.957 | -0.181 | d | 15.864 | 0.000 | 0.000 | 0.000 | *37 |
FKtYYMMDD_sb_ctd_uvsvx_depth_corr_SXXXX.txt
Timestamp | Depth_m |
---|---|
2024-06-01T10:37:50.011630Z | 9.9 |
Fields
Output | Unit | Accuracy | Resolution | Range |
---|---|---|---|---|
SoundVelocity | m/s | +-0.02 | 0.001 | 1375-1900 |
Pressure | dbar | +-0.01% range | 0.001% range | 0-6000 |
Temperature | deg C | +-0.01 | 0.001 | -5-35 |
Salinity | PSU | +-0.05 | derived | derived |
Density | kg/m3 | +-0.05 | derived | derived |
Dissolved Oxygen
Aanderaa DO optode 4831
Engineering data are calculated by firmware in the sensor based on measured raw data and sets of calibration coefficients stored in the sensor:
- The Oxygen content is presented in µM (1 Molar = 1 mole/litre). Conversions to other commonly used engineering unit values are:
- 1 ml/l = 44.66 µM, (real gas STP)
- 1 mg/l = 31.25 µM.
A simple “plug & play” deployment without in situ reference easily gives data biased by >20 hPa (>10% O2 saturation, >20–30 μmol kg–1)
Please observe that to obtain absolute concentrations of oxygen these values need to be salinity and pressure compensated (see below).
- The relative Air Saturation is presented in % relative to the nominal air pressure (1013.25 hPa). These values do not need to be salinity compensated.
- The ambient Temperature is presented in ºC.
The optode raw data are the phase and amplitude of the returned signal after the luminophore quenching:
CalPhase(deg)
: Calibrated phaseTCPhase(deg)
: Temperature compensated phaseC1RPh(deg)
: Phase measurement with blue excitation lightC2RPh(deg)
: Phase measurement with red excitation lightC1Amp(mV)
: Amplitude measurement with blue excitation lightC2Amp(mV)
: Amplitude measurement with red excitation lightRawTemp(mV)
: Voltage from thermistor bridge.
Air Saturation Values Exceeding 100%
Reasons for air saturation values in excess of 100% from the Aanderaa DO optode 4831:
Supersaturation: In some aquatic environments, especially in highly productive areas with significant photosynthetic activity, the dissolved oxygen concentration can exceed the equilibrium saturation level. This means that the water contains more dissolved oxygen than it would if it were in equilibrium with the atmosphere at the given temperature and pressure. Supersaturation can occur when oxygen production by photosynthesis outpaces the rate of oxygen exchange with the atmosphere.
Pressure effects: The optode measures the partial pressure of oxygen, which is then converted to air saturation percentage relative to nominal air pressure (1013.25 hPa). However, if the actual ambient pressure is higher than the nominal pressure (e.g., at greater depths), the air saturation value can exceed 100%. This is because the higher pressure allows more oxygen to dissolve in the water than would be possible at the nominal pressure.
Temperature effects: The solubility of oxygen in water decreases with increasing temperature. If the water temperature decreases rapidly (e.g., due to upwelling or mixing of cold water), the actual dissolved oxygen concentration can temporarily exceed the equilibrium saturation level at the new temperature, resulting in supersaturation.
Calibration and compensation: As mentioned in the sensor description, to obtain absolute concentrations of oxygen, the measured values need to be salinity and pressure compensated. If these compensations are not applied or are inaccurate, the calculated air saturation values may exceed 100% even if the actual dissolved oxygen concentration is not supersaturated. See comment above on expected accuracy of optode measurements.
It’s important to note that while air saturation values above 100% can occur in real-world situations, it’s always a good idea to double-check the sensor calibration and data processing steps to ensure the accuracy of the measurements.
Files
Raw data from sensor serial feed in:
FKt240524_sb_oxygen_S0679.txt
Timestamp | Header | Measurement | Measurement | Concentration_umol | Saturation_% | Temperature_C | CalPhase_deg | TCPhase_deg | C1_RPH_deg | C2_RPH_deg | C1_AMP | C2_AMP | RawTemp_mV |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
2024-06-01T10:37:48.750825Z | MEASUREMENT | 4831 | 582 | 304.878 | 101.721 | 17.335 | 33.220 | > |
Corrected/compensated data in:
FKt240524_sb_oxygen_corr_S0679.txt
Timestamp | O2_Concentration | O2_Saturation |
---|---|---|
2024-06-01T10:40:11.452531Z | 256.32 | 98.13 |
Aanderaa O2 Optode Salinity and Pressure Compensated Data
When available, ROV CTD data are used to provide corrected data.
Oxygen correction implementation available for review on GitHub
Solubility and salinity compensation calculation based on:
Garcia and Gordon (1992). “Oxygen solubility in seawater: Better fitting equations.” Limnology and Oceanography, 37(6): 1307-1312.
Pressure Compensation based on:
Hiroshi Uchida, Takeshi Kawano, Ikuo Kaneko, and Masao Fukasawa (2008). “In-Situ calibration of optode-based oxygen sensors.” Journal of Atmospheric and Oceanic Technology, December 2008.
Potential density not compensated for.
Salinity and Solubility Constants \[ \begin{aligned} B_0 &= -6.24097 \times 10^{-3} \\ B_1 &= -6.93498 \times 10^{-3} \\ B_2 &= -6.90358 \times 10^{-3} \\ B_3 &= -4.29155 \times 10^{-3} \\ C_0 &= -3.11680 \times 10^{-7} \\ S_s &= 0 \quad \text{(Salinity setting, default 0)} \end{aligned} \]
Raw values from sensor and CTD \[ \begin{aligned} c_i &= x \quad \text{(O}_2 \text{ concentration uncompensated)} \\ t &= x \quad \text{(Temperature)} \\ D &= x \quad \text{(Depth)} \\ S &= x \quad \text{(Salinity)} \\ P_{\text{atm}} &\approx 1013.25 \quad \text{(Atmospheric pressure)} \end{aligned} \]
Scaled temperature \[ t_S = \log \left( \frac{298.15 - t}{273.15 + t} \right) \]
Pressure compensation factor \[ CF_P = \left| \frac{D}{1000} \right| \times 0.032 + 1 \]
Salinity compensation factor \[ K_{\text{sal}} = \exp \left( (S - S_s) \left( B_0 + B_1 t_S + B_2 t_S^2 + B_3 t_S^3 \right) + C_0 (S^2 - S_s^2) \right) \]
Salinity and Pressure compensated O2 in μmol \[ \begin{aligned} c_{ic} &= c_i \times K_{\text{sal}} \times CF_P \\ c_{ic} &= \text{round}(c_{ic}, 2) \end{aligned} \]
02 Solubility product constant (the atmospheric pressure part cancels out as we operate at sea-level and factoring in real-time pressure effect is 0.0032% per dbar so it is disregarded here) \[ \begin{aligned} K_{sp} &= \left( \frac{P_{\text{atm}}}{1013.25} \right) \times 44.659 \times \exp \left( 2.00856 + 3.224 \log \left( \frac{298.15 - t}{273.15 + t} \right) + 3.99063 \left( \log \left( \frac{298.15 - t}{273.15 + t} \right) \right)^2 + 4.80299 \left( \log \left( \frac{298.15 - t}{273.15 + t} \right) \right)^3 + 0.978188 \left( \log \left( \frac{298.15 - t}{273.15 + t} \right) \right)^4 + 1.71069 \left( \log \left( \frac{298.15 - t}{273.15 + t} \right) \right)^5 + S \left( -0.00624097 - 0.00693498 \log \left( \frac{298.15 - t}{273.15 + t} \right) - 0.00690358 \left( \log \left( \frac{298.15 - t}{273.15 + t} \right) \right)^2 - 0.00429155 \left( \log \left( \frac{298.15 - t}{273.15 + t} \right) \right)^3 \right) + -0.00000031168 S^2 \right) \end{aligned} \]
Compensated O2 airsat \[ O_2 \text{sat} = 100 \times \frac{c_{ic}}{K_{sp}} \]
Depth
Pressure-depth conversion
Different instruments from various manufacturers use different math to convert pressure to depth thus all pressure sensors are logged as or converted back to pressure (dbar) and then converted to depth using Gibbs Seawater Equations TEOS-10 height from pressure 75-term equation gsw_z_from_p
. This ensures uniform application of constants and corrections and makes readings from different instruments comparable and repeatable.
SOI pressure to depth conversion python implementation is public on GitHub.
Simplified equation is used where:
\(z_{corr}\) = gsw.z_from_p(pressure, latitude, geo_strf_dyn_height=0, sea_surface_geopotential=0)
It is traditional to ignore dynamic height anomaly and sea surface geopotential \(\Psi + \Phi_0\) when converting between pressure and height, and this can be done by simply calling this function with only two arguments, as in gsw_z_from_p(p, lat)
. Ignoring \(\Psi + \Phi_0\) makes a difference to \(z\) of up to 4m at 5000 dbar [1].
The calculation is reversible to machine precision with the exact inverse function gsw_p_from_z
.
Pressure Depth Sensor Paroscientific DigiQuartz 8000 Series
Initial accuracy 0.01% of full scale 10000psia
Depth(instrument internal calculation pressure psi x 0.7030696 = depth meters) and absolute pressure(psi)
_corr values calculated with constant pressure(psi) x 0.689475728 = pressure(dbar), then Gibb’s Seawater Equations used(see above)
No tare value is set - atmospheric pressure needs to be substracted
Files
FKt240524_sb_paro_S0679.txt
Timestamp | Header | Pressure_psia |
---|---|---|
2024-06-01T10:37:48.608260Z | $PARO | 14.434 |
2024-06-01T10:37:48.610970Z | $DPT | -0.182393 |
FKt240524_sb_paro_depth_corr_S0679.txt
Timestamp | Depth_m |
---|---|
2024-06-01T10:37:50.049288Z | 0.16 |
High Temp Probe
Temperature probe – PT100 up to 600℃
Files
FKt240524_sb_hightemp_pt100_S0679.txt
Timestamp | Header | Temperature_C |
---|---|---|
2024-06-01T10:37:48.641677Z | $HT | 16.2598 |
pH Sensor
AMT Deep Water Sensor Outputs raw sensor counts that need to be calibrated against a known solution at the beginning of every cruise(preferably every dive) it is used.