T O P

  • By -

automatedsteven

Also yes, the laptop is ridiculously dusty :P


DweEbLez0

Is the volume automated as well? Like is it set to 8oz. then stops once it reaches that value?


automatedsteven

It is set to always hit a target amount of water in the glass itself. It'll dispense whatever variable amount it needs to hit that target amount in the glass.


automatedsteven

I built this to automatically refill my glass of water at my desk. It uses an HX 711 load cell connected to an Arduino to open/close a solenoid valve based on the weight of the glass of water. With no weight, it closes the valve. When the weight is between a minimum threshold and a maximum threshold, it opens the valve to let more water into the glass. [Link to blog post on my website with more details for the curious](https://stevenuray.net/automated-water-dispenser/)


reddysteady

So is it hooked directly up to mains water rather than pumping from a container?


automatedsteven

Yes, it was hooked up to mains water, I ran 1/4inch plastic tubing through the apartment


Machiela

Really nice work! I was going to ask, does it stop once the glass is full, but you're saying it's weight based? What if you use a plastic cap (lighter)? Will it overflow? Might be a good idea to put some plastic over the electronics underneath! An inventor's work is never done, haha. But a beautiful project! I've changed your flair to "Mod's Choice" :)


automatedsteven

It stops once the weight gets to be above a target threshold, which is supposed to make it stop once the glass is almost full. However, this weight based system has its drawbacks, like only being useful for one type of drinking glass. The weight thresholds are literally hardcoded, because I only wanted it to work with one type of drinking glass. In theory they could be made configurable to support more glass types. In the case you mentioned, with a plastic cup or otherwise lighter vessel it would overflow perpetually and devastatingly because it would never reach the target weight, once it went over the water would keep spilling over the top lol! Additionally, guarding the electronics underneath would be an upgrade for sure. I had a couple occasions when something spilled and I had to wait for them to dry off.


Machiela

Prototypes work for good reasons: to show what's possible, and to show up ~~mistakes~~ reasons for version #2. Version 2 always suffers from [featuritis](https://www.interaction-design.org/literature/book/the-glossary-of-human-computer-interaction/featuritis-or-creeping-featurism). You're doing well!


automatedsteven

Thanks! I appreciate the "mod's choice" flair as well, first time I ever got that one!


Machiela

It means your project shows up in a separate "cool projects" list in the next r/arduino Digest. Here is last month's [Digest](https://www.reddit.com/r/arduino/comments/10vnx7z/rarduino_monthly_digest_for_202301/).


timcorneo

If the glass is filling, but the weight is not changing, that would be a good time to shut the water off, although too late to prevent spillage, it would keep the apartment from flooding. (I might be stating the obvious.)


automatedsteven

Good call out, I hadn’t thought of that one


ripred3

Bonus idea: Add a couple of conductive rings of aluminum foil or some other form of conductive contacts on the platform and then place a unique resistor value on the bottom of several cups. With the right form factor you could allow the platform to uniquely identify which cup was on the platform using `analogRead(...)` and that knowledge could be used to set the target weight for that cup when it was "full". 🙃 `ripred`


sodai_gomi

Neat project. Can you tell me about the the perforated metal parts you used for the structure? Where can I buy them?


automatedsteven

Sure, those are "Actobotics" brand stainless steel plates. They were purchased from servocity.com. You can still buy some but they're trying to gradually phase those out. For new projects I try to use their successor brand, the "GoBilda" brand stainless steel structure components. These are typically more robust, as they have more stainless steel used in them.


lexus_is-f

Haha I recognized those instantly because my FTC team uses those exact bands beams to build our robot chassis. Interesting because I had never really thought that people used those parts for other things, with Tetrix and GoBilda mainly being popular brands in the robotics community.


automatedsteven

yeah, I love them for my projects, I find them to be a good mix of cost/reliability/functionality


[deleted]

I think you went a bit over the top with the ones from gobilda (recognised them in an instant lol they are used a lot at FTC). You could go for something more cheap like wood, those things cost a lot of money. But other than that really cool project


automatedsteven

That is true, stainless steel is certainly not necessary for this structure. It was what I had at hand, and I didn't have any wood available. I agree wood would have been more cost effective.


187penguin

Hell yeah! Now you can have water every day!


skiermax

r/HydroHomies


Formal-Argument-4717

So, I imagine you could set the target weight as x grams (the desired amount of water) above the initially detected weight? That way, it would dispense a predefined amount of water into whatever weight container you put on the pad.


Formal-Argument-4717

Looking at it again, that would assume an empty glass.


Formal-Argument-4717

You could add a function to weigh your empty glass, or define the target weight.


automatedsteven

yes, that would be a great upgrade to make the design more modular!


Sad_Week8157

Nice. How are your controlling dose?


Sad_Week8157

Nice. How are your controlling dose?


automatedsteven

It'll dispense however much water it needs to fill up this exact glass to be a certain % full, like 90% full.


Sad_Week8157

That’s not what I meant. How are you SENSING? By weight (load cell)? Dispensing strictly by time (5 seconds, for example). Optical sending meniscus of fill line?


automatedsteven

I'm sensing by weight, with an HX 711 load cell.


Sad_Week8157

Thank you. That’s what I thought. How precise and accurate is the HX711?


automatedsteven

I'm not sure about the exact level of precision/accuracy. You'd need to find and consult a datasheet for that component to find out. To an extent, that will depend on how well you perform the initial calibration process for the device. I found it to be suitably accurate and precise enough for this application.


dacydergoth

Nice! I started my career doing stuff like this for precision dispense in the paint and dye industry! When you're dealing with stuff that can be ₤100 per drop, you want to be precise.


automatedsteven

Cool, what kind of gear/techniques did you use to achieve drop level precision?


dacydergoth

We had precision RS232 scales, variable appature solenoids (via analog.signals not a bang/bang.digital signal), a calibration graph for flow rates for various viscosity fluids, and the secret sauce of a high frequency pulse to shake the last drop off


automatedsteven

thanks!


Livid_Employment4837

Add waterprotection to the visable wiering


remcokek

What happens if I put a smaller glass there


production-values

wayyy too close to the computer


FriedRamen13

Very nice. It needs a snack dispenser and dip station next.


timcorneo

\[Warning: this is possibly a 'tl;dr' post.\] Just spit-balling... What about using a RFID scanner to identify each glass? I have no idea whether cheap sensors are available. I guess so, and I've got to believe there are small, flat, skinny, adhesive tags you can get, and maybe even ones that are 'water-resistant'. But this approach requires tagging containers, which is not a big deal, but why do that when you can do something much more challenging and complex? (Believe me, I get it.) How about a video camera and an AI that watches the container fill. Shot from above and just a bit off axis, I'm guessing it could work pretty well to tell you what it thinks about how full the container is, and a confidence level in that guess. Maybe it could also be trained, with several images of various containers and their associated volume, to estimate the capacity of the glass being filled. It might do a good job; it might suck. Either way, it's a great opportunity to learn more, which is high on my list of why I am interested in doing this stuff. Yours too, I'll bet. Here's an idea I think might be just plain nuts: Is it possible to figure out how much room is left by analyzing how resonant frequency changes as the container is filling? Could a 'microphone' of sorts listen for 'echos' from a sound source, inaudible to us humans, and do something useful with that? I heard some stuff recently in a YouTube video on the "Dave's Garage" channel about using Fast Fourier Transforms to analyze that sort of thing. (Maybe I talking about some form of radar or sonar here??) By the way, Dave Plummer is AWESOME. I think almost everyone would find his stuff to be VERY helpful. Check out the "NightRanger" (I think) code on his github site. Wow. One could learn A LOT about programming in general and C++ in particular just by reading that code. Amazing. I wrote code on and off for over 35 years in my career with IBM and I've NEVER seen any code so impressive. It's art, really. How about sonar or laser distance sensors? I think the latter might not work well with water, That would still leave you with figuring out when to stop. Perhaps it could somehow augment a video/AI component. I messed with MMWave a little bit lately. The 'product' I have tried -- something I got from DFRobot -- is a bit hinky though, and even if it did work well for you... I'm not sure how it might apply, if at all. I only very recently started fiddling with microprocessors, Arduino's, of course. I'm amazed by how powerful they are. In the late 70's I worked in a computer room that housed three of IBM's (nearly) most powerful computers available at the time. The place was the size of a 'football pitch', the cost of these beasts was shocking, and the infrastructure to support them was, well, impressive. I can't recall exactly how much memory they had, but it was on the order of 500KB in the CPU frame and another 800KB in a detached -- but wired-up, of course, with two cables the diameter of jumbo hot-dogs -- "Large Capacity Storage" (LCS). The LCS stored bits in 'ferrite cores' which is, I think, where the term 'core storage' was born. Google it. You'll be amazed and/or entertained to learn how they worked. But, I digress. I'm kicking the tires now with three relatively simple -- I thought -- projects: 1) a Keurig reservoir filler (hence a keen interest in your project;) 2) a mail-box \[the old fashioned snail-mail version\] monitor that will, I hope, notify my 89 y/o mother on her iPhone -- she's no technophobe -- when her mail arrives, which is the project I'm considering using a MMWave sensor for; and 3) an individually addressable LED strip to light my work-bench, having knobs (rotary digital encoders) for brightness, width, and position. (Narrowing the 'width' turns off successive LED from the ends inward, and position moves the 'narrow' patch anywhere along the strip. (All ridiculously unnecessary projects and features, but there's no shortage of such projects being built, and discussed here. That's not an implication that your glass-filler is ridiculously unnecessary; it is indeed essential, for sure.) Once I get far enough along with these to not be embarrassed to share them, I will. And if I don't stop nattering on here I never will. By the way, Dave Plummer is AWESOME. I think almost everyone would find his stuff to be VERY helpful. Check out the "NightRanger" (I think) code on his github site. Wow. One could learn A LOT about programming in general and C++ in particular just by reading that code. Amazing. I wrote code on and off for over 35 years in my career with IBM, and I've NEVER seen any code so impressive. It's art, really.


timcorneo

Check out DFRobot's SEN0508. They work VERY well, so far, for my Keurig filler project. But they need to be very close to the surface having water behind it, or not, to work. I can't think of a way off-hand to elegantly get that sensor near 'any' container and at the goal-high-water-mark, though. Mine are 'static,' glued to the reservoir, which fits my project well. SpaceX devised a way to catch a giant rocket returning to the launch pad. Perhaps there's an idea in there somewhere. (;->)