• Why not take a moment to introduce yourself to our members?

Djbetterly

Advanced Reefer
Location
Nutley, NJ
Rating - 100%
12   0   0
So considering I travel a lot, I really wanted to always know how much water was in my ATO. After a bit of research I found just the tools for the job, Arduino and e-Tape. I just finished putting everything together and lone behold, I am able to transmit water level to the internet. Currently it only works via a website called Cosm.com. I'm hoping that I will be able to set it up in the future as an rss feed or something though.

I've attached a few pics of the assembly.
 

Attachments

  • IMG_2633.jpg
    IMG_2633.jpg
    68.8 KB · Views: 403
  • IMG_2635.jpg
    IMG_2635.jpg
    33.3 KB · Views: 394
  • IMG_2634.jpg
    IMG_2634.jpg
    54.3 KB · Views: 391

Djbetterly

Advanced Reefer
Location
Nutley, NJ
Rating - 100%
12   0   0
Here is the hardware list from Adafruit.com
1 x Arduino Uno R3 (Atmega328 - assembled)[ID:50] = $29.95 1 x Arduino Ethernet shield R3 with micro SD connector = $45.00 1 x 8" eTape Liquid Level Sensor + extras[ID:463] = $39.95

Connect pin #2 of the sensor to ground, then pin #3 to a 560 ohm resistor. The other side of the 560 ohm resistor to VCC (3.3V or 5V for example) to create a resistor divider. The ADC pin connects to the point between the resistor and sensor.

The programming I used, which I'm working on refining a bit, but it reads perfectly fine.

Code:
int sensorMin = 680;
int sensorMax = 783;
void setup() {
  // initialize serial communication at 9600 bits per second:
  Serial.begin(9600);
}

// the loop routine runs over and over again forever:
void loop() {
  // read the input on analog pin 0:
  int sensorValue = analogRead(A0);
  Serial.println(sensorValue);
  // Convert the analog reading (which goes from 0 - 1023) to a voltage (0 - 5V):
  float depth = sensorMax - sensorValue;
  Serial.println(depth);
  float depth2 = sensorMax - sensorMin;
  Serial.println(depth2);
  float percentFull = (depth / depth2) * 100;
  Serial.print("Percent Full %");
  Serial.println(percentFull);
}

This is a response I received from someone regarding the code I'm using.

Like lots of analog reads that you can either average (solving your problem) or decimate to actually potentially get better resolution than 10 bits out of your 10-bit ADC. Google Decimation and Atmel, go over the paper published by Atmel and learn how right-shifting can become very interesting indeed.

He's responding to my question about my values shifting a bit, literally by .05 in either direction, this amount is completely negligible for what I'm using this for.

From there I used cosm.com for displaying the results. Its quite easy, you sign up, and create your device and it gives you all the code.

Let me know if you need to know anything else? I'm going to enclose the etape in some sort of tube to make sure it stays vertical, thats basically all I have left to do.

Let me know if you have any more questions.
 

Sponsor Reefs

We're a FREE website, and we exist because of hobbyists like YOU who help us run this community.

Click here to sponsor $10:


Top