It's still very much a work in progress, but it does work fairly well as is.
The final version will be stackable, so if you need, say, two different sizes of bolts and nuts in each bag you could stack four of them up it will not move on until all are counted and in the bag. It will also have a bagger that automatically collects all the parts, seals the bag, and moves another bag into position and starts counting all over again.
For all the haters out there, it uses an Arduino and a Adafruit motor shield. Code for the Arduino is also a work in process.
The disks that it uses are all laser cut and can be swapped out for a different one quickly and easily. Need to count a new size bolt or screw? Just make a few changes to the pattern, slap a piece of acrylic in the laser, and you're ready to rock.
Most of the pieces needed to make this counter are laser cut, with a few 3D printed. Electronics knowledge needed is minimal. Hell, if I can do it, I'd have to say just about anyone can. It does make use of a small breakout board I slapped together on breadboard. That will eventually have to have a PCB board designed and made up for it, something that will be a first for me. Life's about learning, right? Hell yes!
I'm using a NEMA 17 stepper motor instead of a regular DC motor for two reasons. The first is I wanted direct drive, avoiding complicating the design with gears or a pully and belt arrangement, and mounting is easy. I'm usually disappointed with the torque and control I get with regular DC motors when run at slow speed, no matter how good the controller is. The other reason is I have some ideas on indexing that using a stepper would make easy.
Current status is I'm actively working on this. The bowl is working well enough for now, so I'm trying out different sensors and mounting arrangements. I've already found out that keeping the sensor as close to the bowl as I can is a good idea. When I had it farther down the exit chute there were times when more than one part was falling through at the same time, and I was getting extra parts in the bag. Not that I'm a perfectionist or anything, but if I tell it I want ten parts in a bag, I don't want to wind up with eleven. Exact count, please!
Performance wise, the fastest I've seen it count ten parts is about eight seconds. The average time to put ten parts in the cup is probably about twice that, maybe a little more. Usually the slowdowns are caused by jamming, and I'll work on that as soon as I nail down the 'what sensor and best mounting for it' questions.
The sensors I'm working with now are the SEN-00241 infrared emitters and detectors I got from Sparkfun. They work okay, and are easy to interface to the arduino. They're also cheap enough, even for me. I really want to try a ring inductive sensor but the commercial versions are way to expensive. I started to design my own, but with my limited electronic abilities it may take a while before I get it working. Not going to stop trying, though, as time permits.