Welcome to Rayz.com

Aquarium Sensors

For the Arduino automated aquarium project to work, the system must have sensors and the sensors have to connect to the Arduino. Of course, knowing how the aquarium is suppose to work is the first thing to consider. What is the aquarium suppose to do?

Any aquarium’s purpose is to provide a Eco-system for aquatic life. My aquarium is to do that for saltwater life and reduce some maintenance chores by slipping in some automation to help with some of the more routine items like topping off the tank when needed. To do this, I had to provide the aquarium and the Arduino some sensors to monitor several different parameters.

Sump Sensors:
I setup three float sensor switches in the sump. Two are necessary, one is extra. (See Pic 1) The two that are the most necessary are the bottom two.

Pic 1 - Sump Sensors

Pic 1 – Sump Sensors

  1. The bottom most sensor is the “I’m dry” sensor. Even though this is a “Wet/Dry” sump, the location of the bottom sensor should have water. It sits between the bottom shelf and the top shelf and monitors the water level where the activated carbon sits. That location should always show full.
  2. The next location is above where the main filter material sits and monitors the water level there.¬†This sensor is the “Sump Level High” sensor. The float should always be down indicating that there is no water. If that float goes high, then the sump is taking on water and someone should have a look soon. An alarm will sound when this happens.
  3. The top most sensor is the “Flooding is eminent” sensor. When this sensor floats, an alarm sounds indicating that the “Sump Level High” sensor was¬†ignored and are but seconds from overflow. This is not good and the rug will get wet.

Top-off Tank Sensors:
The top-off tank has three sensors. Again two are necessary and one is extra. Like the sump, the bottom two are the most important to the Arduino.

Pic 2 - Top Off Tank Sensors

Pic 2 – TopOff Tank Sensors

  1. The bottom float switch is the “Top-off Tank Dry” sensor. When this float isn’t floating, then the Arduino will sound an alarm and will not run the top-off pump.
  2. The next sensor is the tank full sensor. This sensor indicates to the Arduino that the tank is full.
  3. The third sensor is an afterthought I put in to light an LED so when the tank is being filled, it comes on just in time to quit preventing water running all over the carpet.

Main Float Sensor:
The main float sensor is discussed on another page and will not be discussed here, but will be listed here along with the other sensors.

Temperature Sensors:
There are three main temperature sensors and a CPU temperature sensor.

  1. The first temperature sensor is to report the main tank water temperature to the Arduino. If it decides the water is too cold, it will turn on the main tank heater. If it decides the water is too warm, then it will turn on the water chiller which I do not have yet but will have in the program. I do plan to have a mechanical heater in the tank for a backup set to just below the temperature where the Arduino kicks in.
  2. The second temperature sensor is in the sump. This is a backup for the main temperature sensor.
  3. Pump motor temperature sensor. The pump runs 24/7 and can get really hot. If the motor gets a bit too hot,it is usually because it is ready for a bit of oil. Arduino will sound an alarm when this occurs, and turn on a fan to begin to cool the pump. If the motor gets way too hot, the Arduino will turn off the pump, turn on a fan to try to cool the pump motor and sound an alarm. If the pump temperature cools down below a set temperature below the trigger point, Arduino will turn the pump back on. This is a really bad situation if the pump stops as it is the water flow is what keeps the tank alive.
  4. CPU temperature sensor monitors the Arduino controller inside the case for the controller and can set off an alarm if the Arduino temperature gets too high.

I used two 15 pin VGA connectors on the back of the Arduino case to tie in all the sensors. Like the two power controls I used some VGA cables I have laying around for the connections to the sensors. I simply cut off one end of the cable and stripped off a length from that end and put on some crimp-on connectors. Then I attached the cables to the sensors and plug the 15 pin VGA plug into the Arduino.

To keep this page from becoming too long and going forever, I’ll outline the sensor connections on another page.