Skip to content
Chris-Milford edited this page Apr 9, 2024 · 42 revisions

logo

Project Leads: Chris Milford

Project Members: Bryce Truong

Past team members Annika Sundstorm, Brenda Fasse, Colin Hale-Brown

Interested in the project? Email us at: milfordc@oregonstate.edu, truonbry@oregonstate.edu

To return to the OPEnS Lab wiki click HERE.

Overview

Currently, small streams are often ignored in hydrological modeling by entities that generate public data of water resources. This is primarily due to the high cost of stream surveying equipment typically only available to large organizations that can afford them. This is an issue because the water quality, habitability, and flow of large streams are significantly impacted by the many small streams flowing into them. With these data many things become possible including tracing sources of pollution, observing animal behavior, and identifying weather events.

Smart Rock aims to create a low-cost device to monitor remote streams through the ideals and goals of citizen science. The device could be used as a learning tool for students, teachers, and other citizen scientists. Deploying Smart Rock in streams will allow for more accurate data collection of small and seasonal streams.

Cover

Description

The Smart Rock is a submersible sensor suite that monitors water depth, temperature, turbidity, and electrical conductivity of streams over time and is designed to be built by anyone with or without extensive experience in electronics. The device currently costs ~ $250 with these specifications and custom parts and takes about 10 hours to assemble and program.

Device Components Info

Adafruit Feather M0 Basic Proto

General Description/how it works: The Feather M0 Basic Proto is an Arduino-compatible microcontroller that runs on 3.3 volts. A 3.3 volt regulator allows for a 3.7 volt lithium polymer battery to be used. The feather has a 500mA peak current, has 20 GPIO pins, 10 analog inputs, and 1 analog output. These pins allow users to connect their sensors and motors to the controller to program readability and functions with Arduino.

Smart Rock Use Validation: The Feather M0 Basic Proto acts as the main microcontroller for Smart Rock. Integrated into the electronics stack, the feather gives inputs to sensors and other electronics and reads outputs. Sensors operate on the I2C interface and analog inputs. The Feather saves data to SD in a spreadsheet from the stream on Hypnos.

Pressure/Temperature Sensor

General Description/how it works: The pressure sensor runs on 3 volts from a microcontroller or direct source. The MS5803 Pressure sensor uses piezoresistivity to output pressure readings. Piezoresistivity is the change in electrical resistivity of a semiconductor when mechanical strain is applied. The sensor converts an analog output into a 24 digit output that runs on the I2C protocol. The sensor additionally provides a 24 digit output for temperature. The sensor has been calibrated at 2 temperatures and 2 pressures and 6 coefficients are calculated and stored in a 128-bit PROM. When taking new readings, the device first reads this calibration data. The digital pressure data (D1) and digital temperature data (D2) are read and temperature and pressure are then calculated. Temperature is calculated in two steps: subtracting the read temperature from the reference temperature and comparing to the temperature coefficient from calibration. Then, the electrical sensitivity is read and the actual temperature calculation is used in another calculation regarding the pressure offset caused by temperature. Following I2C protocol communication, SDA (Serial Data) output conveys the pressure and temperature readings to a microcontroller.

pressure

MS580302BA Water Level Spec

Pressure Condition Min Max Unit
Operating Range Full Accuracy 300 1100 mbar
Extended Range Linear Range 10 2000 mbar
Absolute Accuracy at 25°C mbar
Absolute Accuracy at 25°C mbar
Absolute Accuracy at 25°C mbar
Absolute Accuracy at 25°C mbar
Maximum Error VDD=1.8V...3.6V -2.5 +2.5 mbar
Stability -1 +1 mbar/yr

MS580302BA Water Temperature Spec

Temperature Condition Min Max Unit
Range -40 +85 °C
Absolute Accuracy at 25°C -0.8 +0.8 °C
Absolute Accuracy -20...85°C -2.0 +2.0 °C
Absolute Accuracy -40...85°C -4.0 +4.0 °C
Maximum Error VDD=1.8V...3.6V -0.5 +0.5 °C

The data above is from the data sheet provided by the manufacturer, a complete data sheet for the sensor can be found here if you are interested in more details.

Smart Rock Use Validation: The pressure and temperature gives a two for one. Costing $20.53, this sensor provides the two primary measurements we need with one sensor. Measuring temperature and depth of a stream are the most useful in determining basic data about a remote and unknown stream. With a custom PCB designed for this sensor, connecting the sensor to the microcontroller is made easier. Following I2C protocol, the sensor is already implemented into our LOOM_Library. This allows for the programming of the system to be simple. The sensor gives accurate and useful data within our budget. The size of the sensor is also fairly small and easy to make water proof.

Turbidity Sensor

General Description/ How it works: General Description/ How it works: Turbidity is the measurement of cloudiness in a liquid due to suspended solids. This sensor uses light transmittance to measure the cloudiness and determine the total suspended solids (TSS) in a liquid. Turbidity (measured in JTU) and TSS can be a good indication of the cleanliness of a water sample as well as a way to detect erosion and some pollutants. The sensor gives an analog output that can be converted to a measurement in JTU.

Smart Rock Use Validation: Smart Rock Use Validation: Turbidity in a stream gives us some insight into the overall quality of the water the amount of erosion occurring. Adding this sensor to the Smart Rock is both cheap and simple. This sensor from DF Robot costs $9.90, making it easy to keep Smart Rock inexpensive. The sensor can be hooked up to the Smart Rock through three easy connections; 3V power, GND, and an analog port. Implementing the sensor board to the electronics is relatively simple because it comes with a PCB that can be wired to the Smart Rock EC Breakout Board.

Turbidity

Electrical Conductivity Sensor

General Description/How it works: Electrical conductivity (in uS/cm) is the measurement of how well a sample of water conducts electricity. This is dependent on the number of dissolved ions in the water which means electrical conductivity is proportional, but not identical to total dissolved solids (TDS). The sensor being used to measure electrical conductivity is a small four probe tab attached to an in house PCB. The in house PCB is a Wenner circuit designed to drive current through the four probes and output voltage and current through the probes in digital values that are easy to convert to uS/cm with a calibration curve.

Smart Rock Use Validation: Having an electrical conductivity measurement on the Smart Rock is cost effective and important to proving the capability of the sensor package. Electrical conductivity can be very good for assessing water quality on a chemical scale and measuring metrics such as pollution, purity, drinkability, and salinity.

EC Breakout

General Description/How it works: The EC Breakout board is the baseboard of the Smart Rock. With headers for the OPEnS Lab Hypnos and Adafruit Feather M0 to stack on, this board hosts the Wenner circuit for the EC sensor as well as routes all sensor data into the ADS1115 (Analog to digital converter) to be sent to the Hypnos through the I2C bus. We are currently developing Smart Rocks using version 5 of the EC breakout board (SmartRock_4-pin_EC_Breakout-v5) shown below.

EC_Breakout

We are currently developing a new EC circuit which has led to promising data that may outcompete the Wenner circuit in both range of operation and consistency. This new circuit will use a "sample and hold" rather than signal rectifier to sample its data points, which increases consistency and allows us to avoid using diodes that limit our minimum signals.

OPEnS Lab Hypnos

General Description/ How it works: The Hypnos board is an attachable precision I2C integrated real time clock and data logger. A crystal is used to keep time and is temperature compensated inside the chip. A coin cell battery is plugged into the board to keep time even when the a feather battery is not connected. Data can be saved and read from SPI or I2C protocol communication.

Smart Rock Use Validation: The Smart Rock is using the Hypnos to keep temperature compensated time as well as storing all the data read by the sensors while in the stream bed. Smart Rock takes data every 15 minutes and this device allows such to happen. The RTC sends a square wave signal to a digital pin on the feather to wake the device from the power sleep to take data. Having this RTC allows for the device to keep time even in a low-power sleep mode.

More information about the Hypnos Board can be found here.

Casing Design

The outer case is made of a piece of PVC with an union fitting at one end and a cap at the other. The union fitting and cap are mounted to the PVC using a layer of primer, then a layer of PVC cement. The smaller diameter, unthreaded, section of the union fitting is discarded and replaced with a circular piece of acrylic. This piece of acrylic has laser-cut holes for the sensors to be epoxied to make water-tight. The o-ring in the union fitting is coated in silicone grease to ensure a waterproof seal when the end of the union fitting is screwed back on with the acrylic. This modded union fitting design is used so that the electronics may be accessed and so that we can have the sensors protruding from one end without getting their wires twisted and tangled when the end is removed.

SmartRock_Enclosure *Note this image is just the PVC enclosure.

The internal structure is made up of an acrylic platform that slides into the PVC enclosure. The electronics are then mounted this acrylic structure and slid into the case. Using the acrylic structure makes it easy to remove/access the electronics and holds everything in place. The electronics stack up on the slide allowing for a compact design.

SmartRock_AcrylicStructure *Note that the image above does not include electronics.

Objectives

  • Low cost

  • Durable

  • Senses underwater pressure for depth

  • Senses stream temperature

  • Senses turbidity

  • Senses salinity

  • Battery life of at least 3 months

  • Clean and user-friendly electronics packaging

  • Keeps time for data collections

  • Connects to user easily

  • Waterproof

  • Remains in the location of placement

  • Safe for the environment

  • Withstand freezing temperatures

  • Easy internal access

  • Easy to retrieve and transport

Outcomes

Current capabilities of Smart Rock sensors are depth measurement with accuracy within 0.13 mbar resolution as compared to an out of water pressure sensor, temperature accuracy of fewer than 0.01°C, turbidity measured in JTU, and a salinity measurement with an accuracy of less than 5 parts per million. Future developments will have flow sensing from the use of multiple high-accuracy pressure sensors. Battery life for Smart Rock is up to 3 months with low power sleep, a function that limits power usage from the device when dormant. This can be extended by taking data less often than once every 20 minutes. The device currently costs ~ $250 with these specifications and custom parts and takes about 10 hours to assemble and program.

Future

The Smart Rock team is developing and revising the Smart Rock to improve the user experience and improve the quality of the Smart Rock.

Resource List

Github repository where code, design files, and guides can be found.

Tutorials

Here are resources from the 2020 and 2021 CUAHSI workshops.

Key Words

OPEnS, SmartRock, Smart Rock, Feather M0, Adalogger, Arduino, Stream, Water Monitor, Hydrological Data, Hydrological Monitoring, Pressure, Temperature, Electrical Conductivity, Dissolved Solids, Turbidity, seasonal streams, small streams

References

Software

  • Fusion 360. (2018). San Rafael, California: Autodesk.

  • EAGLE CAD. (2018). San Rafael, California: Autodesk.

  • Arduino IDE. (2020). Turin, Italy: Arduino

Clone this wiki locally