Coffee Level Sensor

I am looking to tackle a project here within my office that has to do with detecting the level of coffee left in a coffee pot. I have never worked with an arduino so need all the help I can get. As of now the idea is that i would hook up weight sensors that would detect the different between the coffee pot at empty weight and it's current weight, ultimately giving an estimate of percentage of coffee left. Does anyone know of someone who has done this previously and has literature on their steps somewhere on the internet? Or does anyone have any suggestions as to what steps to take to get this thing rolling? Any info will help.

What kind of coffee pot? The kind that sits on a heater to keep the coffee warm?

There have been several posts that suggest that kitchen scales can be disassembled for the sensors, but I'm not sure that they are suitable in a hot environment.

It is a Mr. Coffee FTX33GTF. It does in fact use the idea of the heater to keep the coffee warm. After discussing with another, it looks as if an arduino and a weight sensor, along with possibly a temperature sensor, would do the trick. But I am very new at this and need any additional info possible.

If you used a small linear CMOS sensor array on one side of the coffee pot, and a light on the other side (maybe a linear array of LEDs), you could detect the change in light levels between "no coffee" (lots of light) and "coffee" (little light, depending on the brew strength); the problem would be finding such a sensor and then interfacing to it?

How accurate does it need to be? Maybe a linear array of phototransistors or LDRs on one side, and a linear array of LEDs on the other side? Such an arrangement could give you at least "full", "half-full", and "refill" levels...

:slight_smile:

I do think weight (of the entire thing, not trying to weigh the pot by itself) is the easiest, although if someone filled the tank without pressing brew it would read full.

However, I have the following ideas:

  1. Ultrasonic sensor on a cheapie stepper motor on side of pot: sonar scanner for density difference.
  2. Photodiode on same cheapie stepper: linear color scanner. May need a narrow angle lens
  3. USB camera, pick out one vertical line, look for color gradation
  4. 4-8 photodiodes on a vertical stick, or even better, conformal to pot shape. Interpolate for how much brown. Need to subtract ambient light
  5. ultrasonic sensor pointing straight down into pot. Look for gradient of air/water interface

We thought about what would differentiate between the coffee maker just being full of water, preparing to brew, and actually brewed and ready to go. It seemed at if setting up a temp sensor would allow us to accomplish this. If the put is at a temperature close to room temp (say 100deg F or lower), then we know it is not yet brewed. But if it is above the chosen temp, then we can track the data. this also helps account for when the heater has turned off and the coffee begins to head towards room temperature - nobody wants to drink that.

I believe that the route of an arduino, weight sensors, and a temp sensor is the best route at this point.

My next questions would be which parts are suggested to use? Has anyone used weight sensors or temp sensors that have worked well? And where did you get them from?

The origional network solution:

For an accurate weight, you use a load cell
http://www.seeedstudio.com/depot/load-cell-500g-p-525.html?cPath=6

Probably, what you want to do is use a pressure sensor like:
http://www.digikey.com/scripts/us/dksus.dll?keywordsearch?vendor=375&mpart=MPX10GP

and connect it to a sealed tube you run under the coffee maker.

I have used the TM36 temperature sensor from Adafruit. It has a range of -40 C to +150 C.
Very easy to implement.

I wonder if you could do something simple with a light sensor (photocell), if it is a clear carafe coffee pot.

Don't wish to spoil anyone's fun but, isn't this just a little bit silly.
May I suggest a) a glass coffee pot or b) looking inside the pot
As a professional engineer I'm all for inovation, having fun, and doing things just for the sake of it, but there are limits.

Perhaps you could fit a small gamma source to one side of the pot and fit suitable sensors to the opposite side. Or a temperature profile monitor down the pot side. Either of these brilliant (but equally stupid) suggestions will detect the interface between coffee and air.

OK I'm a boring and grumpy old git.
jack

I can appreciate why someone might want to make something like this. I worked in an office where folks got very heated over the last of the coffee being taken, and no one refilling it.

The problem could easily escalate. The usual hope is that the culprit will be ashamed, and fill the coffee pot instead.

Options:

  1. Sense everything about the coffee pot, but still have the problem of someone taking the last of the coffee, or
  2. Install a video camera/recorder so the offender is detected, then have the problem of what to do about it, or
  3. install a way to make good coffee quickly so no one cares

Just an opinion
GB

I'd do 2 :wink:

What size is the coffee maker? How far are you located from the coffee maker? I'd use a inexpensive wireless webcam to watch the pot, and connect the wireless receiver to a video capture gizmo connected to a computer. Use a free webcam application like webcam2000 on the computer so you and everybody on your network can observe the coffee pot for its status. Another trojan room coffee cam.

Though the webcam idea seems to be the easiest (and probably smartest) solution to the problem, the main reason I am attempting to tackle this project is to be able to use an Arduino. The uses of an Arduino are endless, and to me this seems like a good project to dive into to begin with. Though the webcam is a great solution, the knowledge of using an Arduino is my actual final goal.

Dowbek6

Though the webcam is a great solution, the knowledge of using an Arduino is my actual final goal.

Yea, thought it might be :wink:

Summary:
Differentiate between an empty or near empty coffee pot, coffee pot with water but no coffee, and coffee pot with coffee.

You could go a different path from measuring the fluid level directly.

The Mr. Coffee FTX33GTF appears to have a temperature controlled warmer plate, so if the water heater cuts off when the water is hot enough, then you would get an estimate of the amount of fluid in the pot by measuring how long the power is on. It should reduce each time the liquid level is reduced. It might increase when it is making coffee too. You could check out this theory if you have a Kill-a-watt power monitor.

You might look at Ladayada's tweet-a-watt for the mains power end.

You might detect the water level in the 'tank' optically so you can tell when it is brewing, but there may be a very definite power profile for this anyway.

Just a thought about a different way to go. The extra fun is this would use Zigbee :slight_smile:

HTH
GB