Project in progress
Aquaneers

Aquaneers

Automated colour transmission and reflection measurement system for quantifying results of measurements with a colour change.

  • 2,232 views
  • 1 comment
  • 3 respects

Components and supplies

Necessary tools and machines

3drag
3D Printer (generic)

Apps and online services

About this project

The Aquaneers project is a feat of aquarium engineering. We aim to create a full suite of monitoring sensors and actuation tools, and incorporating these into the XOD framework.

Chemical sensing can be done electronically. There are electronic pH sensors readily available, and the ionic content of water can be measured with a conductivity sensor. Many water quality tests (e.g. ammonia content, nitrate content) involve adding an indicator chemical to a sample and observing the colour.

We have built a sensor to measure the transmission and reflection of different colours in a water sample. This is usable for many aquarium water quality measurements, and any other biological or chemical measurement resulting in a change of colour.

We aim to build tools for dispensing food, and tools for adding chemicals with quantities, and timing controllable via a touchscreen interface. This display will also show recent water quality measurements, and advise on any necessary human intervention.

Code

Colour sensor test codeArduino
This code cycles through red, green, blue, and 'white' transmission and reflection measurements and transmits readings back to a serial console.
#define redLED 3
#define greenLED 6
#define blueLED 5

/* Note the colours of the sensors below correspond to the wire colours used in my build*/
#define yellowSensor 0 
#define purpleSensor 1
#define pinkSensor 2

#define delayTime 100

struct SensorReading{
  int pink;
  int yellow;
  int purple;
};


void setup() {
  // put your setup code here, to run once:
  pinMode(redLED, OUTPUT);
  pinMode(greenLED, OUTPUT);
  pinMode(blueLED, OUTPUT);

  digitalWrite(redLED, HIGH);
  digitalWrite(greenLED, HIGH);
  digitalWrite(blueLED, HIGH);

  Serial.begin(9600);
}

void loop() {
  // put your main code here, to run repeatedly:
  SensorReading s;
  char buffer[200];
  
  redOn();
  delay(delayTime);
  readSensors(s);

  sprintf(buffer, "Red %d %d %d",s.pink, s.purple, s.yellow);
  Serial.println(buffer);
  
  greenOn();
  delay(delayTime);
  readSensors(s);
  
  sprintf(buffer, "Green %d %d %d",s.pink, s.purple, s.yellow);
  Serial.println(buffer);
  
  blueOn();
  delay(delayTime);
  readSensors(s);

  sprintf(buffer, "Blue %d %d %d",s.pink, s.purple, s.yellow);
  Serial.println(buffer);
  
  whiteOn();
  delay(delayTime);
  readSensors(s);

  sprintf(buffer, "White %d %d %d",s.pink, s.purple, s.yellow);
  Serial.println(buffer);

  delay(5000);
}


void redOn(){
  digitalWrite(redLED, LOW);
  digitalWrite(greenLED, HIGH);
  digitalWrite(blueLED, HIGH);}

void greenOn(){
  digitalWrite(redLED, HIGH);
  digitalWrite(greenLED, LOW);
  digitalWrite(blueLED, HIGH);}

void blueOn(){
  digitalWrite(redLED, HIGH);
  digitalWrite(greenLED, HIGH);
  digitalWrite(blueLED, LOW);}

void whiteOn(){
  digitalWrite(redLED, LOW);
  digitalWrite(greenLED, LOW);
  digitalWrite(blueLED, LOW);}

void readSensors(SensorReading& s ){
  s.pink = analogRead(pinkSensor);
  s.purple = analogRead(purpleSensor);
  s.yellow= analogRead(yellowSensor);
}

Custom parts and enclosures

Sensor and tube holder - Paremetric
openScad file for making sensor and tube holder. Has holes for one RGB LED and up to 4 LDRs for transmission and reflection measurements.

Parametric file can be edited for other tube sizes.
biomakers_sensor_lxBFnLnejy.scad
Sensor and tube holder - 5ml tube
STL file ready to 3D print.
Recommended 25% infill 0.2-0.4mm nozzle

Schematics

Colour sensor Schematic
Circuit layout, and arduino pins used for the automated colour sensor
colour_sensor_schematic_GqEbvqKg6i.fzz

Comments

Similar projects you might like

Microbial Bioreactor

Project in progress by Team Open Bioeconomy Lab

  • 8,937 views
  • 11 comments
  • 49 respects

Color Sensor Prototype: Detect Color Name from Objects

Project tutorial by moretticb

  • 4,250 views
  • 4 comments
  • 28 respects

Smart Bird Feeder

Project showcase by Team ESIEE-Amiens Students

  • 3,312 views
  • 9 comments
  • 14 respects

How to Use an RGB LED

by MisterBotBreak

  • 3,198 views
  • 0 comments
  • 19 respects

Pressure Pad Interfacing with Arduino

Project tutorial by Ashish Kumar Senapati

  • 2,751 views
  • 0 comments
  • 11 respects

Advance Automatic Railway Crossing System

Project showcase by Pawan singh and Akansh Saxena

  • 2,549 views
  • 1 comment
  • 13 respects
Add projectSign up / Login