DIY bean doser

Want to talk espresso but not sure which forum? If so, this is the right one.
Kran

#1: Post by Kran »

I was staring at my parts bin a few weeks ago and decided the easiest way to organize was to use some of the parts for a build. Depending on the stepper speed/aggressiveness of the auger I get pretty good results, maybe overshooting by a hand full of beans using the simplest if/then code. I think I can get it more precise with a little additional math. Eases the monotony of filling bean cellars.



★ Helpful

User avatar
BaristaBoy E61

#2: Post by BaristaBoy E61 »

That looks pretty good and you're off to an amazing start. If it's set for 15g and you have 15.1g then you're off by about 1-bean!

Keep us posted - Great work!
"You didn't buy an Espresso Machine - You bought a Chemistry Set!"

prof_reCAPTCHA_model

#3: Post by prof_reCAPTCHA_model »

Awesome !

User avatar
another_jim
Team HB

#4: Post by another_jim »

Congrats; I think you are as spot on as can be:

My dose weighing experience over the last 15 years is that you run between 6 to 9 beans per gram, depending on roast degree and screen size. So a perfect bean doser will be within 0.1 grams. For instance, you can conventionally say that a 15 gram does will deliver between 15 and 15.1 (that's how I weigh), or between 14.9 and 15. Greater accuracy than this is impossible.
Jim Schulman

User avatar
BaristaBoy E61

#5: Post by BaristaBoy E61 »

Greater accuracy would be impractical and too heavy a 'lift', so to speak.
How many seconds does it take to dose out 15-grams?
"You didn't buy an Espresso Machine - You bought a Chemistry Set!"

Pressino

#6: Post by Pressino »

another_jim wrote:Congrats; I think you are as spot on as can be:

My dose weighing experience over the last 15 years is that you run between 6 to 9 beans per gram, depending on roast degree and screen size. So a perfect bean doser will be within 0.1 grams. For instance, you can conventionally say that a 15 gram does will deliver between 15 and 15.1 (that's how I weigh), or between 14.9 and 15. Greater accuracy than this is impossible.
If the "average" number of beans per gram runs between 6 to 9, I'm surprised this machine gets the dose for 15g within an error range of +/- 0.1g. The machine has to dose a whole number of beans and I don't see how it can achieve such accuracy consistently, especially given the wide range of bean size variance. :?:

User avatar
bostonbuzz

#7: Post by bostonbuzz »

Neat! Lots of work here with a load cell and stepper motor and coding etc.

If you have no commercial ambitions posting a parts list and the code would be fun for DIYers.

Plain bearings would be a bit simpler and cheaper.

I think ideally your auger would do 1 bean at a time and be super fast for accuracy. Within 2 beans I think I
is fair.

What did you use as an auger? Maybe a simple big spring would be more durable than a 3d printed part?

Just thought if you could add a little "tipper" or trap door to pour the beans to the side you could bolt this on top of any grinder!
LMWDP #353

User avatar
another_jim
Team HB

#8: Post by another_jim »

Pressino wrote:If the "average" number of beans per gram runs between 6 to 9, I'm surprised this machine gets the dose for 15g within an error range of +/- 0.1g. The machine has to dose a whole number of beans and I don't see how it can achieve such accuracy consistently, especially given the wide range of bean size variance. :?:
Um, you are thinking about the variance in weight of a fixed number of beans; this problem is how close you can get to a fixed weight with a variable number of beans. if it's 5 beans precisely per gram, you'll get 14.8, 15.0, and 15.2 every time. If the beans vary from 5 to 9 per gram, you can randomly chose beans, and stop when you reach either 15 or 15.1. Since no bean weighs more than 0.2 grams; you cannot skip from 14.9 to 15.2 with one bean.

If you can pick and chose, you can get even more precise. For instance, when you buy a three pound package of onions at the grocery, each onion is about 1/3 pound, but the package is usually within an ounce or two, since the sorting machines do some weight sensitive picking and choosing
Jim Schulman

Kran (original poster)

#9: Post by Kran (original poster) »

Lot of good points here so let me elaborate a bit.

On a moderately conservative dosing scheme I'm typically at overages of 1-5 beans, for the current variety I'm testing with. You'll see 15.1 in the last picture but 15.2 in the middle picture, fragments will also affect this. The goal isn't to get to 15.0 spot on, as most people have pointed out this would be very challenging. The goal is to consistently hit a 1 bean overage in a manageable amount of time, which I'm not at yet. The issue is how long do you want to wait to have your dose distributed. If I go super slow I can hit a 1 bean overage almost every time. With the 1-5 bean overage it takes ~18s. I'd prefer to be more in the 5-10s range, which is the target for this current design.

A lot of it is in the design of the auger (how many beans feed per rotation), dealing with the inconsistent drop times into the collecting cup and how fast can you sample the load cell without it bogging down everything else. All this is really to get a baseline for what I really want to try, which is adding some machine learning/vision with a large enough training data set that would allow a weight prediction based on size/shape/color.

A lot of work for sure but I also get to learn a lot along the way.


Kran (original poster)

#10: Post by Kran (original poster) »

bostonbuzz wrote:Neat! Lots of work here with a load cell and stepper motor and coding etc.

If you have no commercial ambitions posting a parts list and the code would be fun for DIYers.

Plain bearings would be a bit simpler and cheaper.

I think ideally your auger would do 1 bean at a time and be super fast for accuracy. Within 2 beans I think I
is fair.

What did you use as an auger? Maybe a simple big spring would be more durable than a 3d printed part?

Just thought if you could add a little "tipper" or trap door to pour the beans to the side you could bolt this on top of any grinder!
No commercial intentions, just have a deep down tinkerer mentality. Really parts are all from what I had lying around (arduino uno, adafruit stepper shield, sparkfun load cell amp, load cell, mini oled, rotary encoder, stepper motor, makerbeam XL extrusion). The most time consuming was the design and 3D printing of the parts.

The auger is 3D printed, if you check out the link below there are some images of the way back original design. The trick is that the auger is multiple parts printed in different materials and with standard hardware attached (SS pin into the bearing and flex coupling on to the stepper). I found that if I used rigid materials I crushed a lot of beans. But if you have a more flexible material where then beans get loaded then you may misload but won't end up with a bunch of fragments. Bean/auger calculation is tough since you have to account for differing sizes of beans you might use. And Admittedly I've been too lazy to go back and iteratively change the size of the auger to see what works best. It took maybe 10-20 for the current design.

On hopper was the original manual design, see Slow feeding beans for single dosing? (as seen in James Hoffman re-grinding coffee video)