As someone who disassembles and repairs hardware, [Aad] eventually ended up with a huge collection of mixed bolts and screws. This led to creating the automatic bolt and screw sorting system you see here, although in a way it is just a proof of concept. Bolts and screws happen to be a useful application for now, but the system is capable of sorting just about any small objects.

Mixed pieces go onto a large conveyor belt, shown on the right. This feeds a few screws at a time down a chute, where they roll onto an illuminated platform.
Above the lit platform is a camera, and machine vision is used to detect the size and shape and orientation of each screw. A robotic gripper on a gantry picks the screws up one by one — separating them first if they happened to clump together — and places each in a drop-off cart. The cart drops the object into a receptacle with its brethren, making sure similar ones are grouped together. Watch it in action in the video, embedded below the page break.
It’s a great build that shows fancy components aren’t necessary for good results. Servos and steppers are controlled with an ESP32-WROOM board, and a piezo sensor detects screws falling off the conveyor. Some of you may have noticed a repurposed Ultimaker 3D printer serving as the bulk of the system, its hot end having been replaced with a gripper that can raise and lower. The overhead camera is an ESP32-CAM adapted to accept M12 lenses so it can focus on the platform.
There’s one more feature worth mentioning — the system also has the ability to measure the weight of a picked object by placing it onto a moveable inspection platform, which can optionally put it under a USB microscope for a closer look. Everything is controlled by a nearby PC, so there’s a lot of flexibility built into the system.
We suppose that once all the screws and bolts in a shop are sorted, it only makes sense to sort all the nuts. Are there other objects besides screws and bolts that would be useful to sort with a system like this? If you have any ideas, don’t keep them to yourself! [Aad] would love to hear your comments and ideas, so share them below.

Lego parts sorting? Feed it a parts list, your stock of assorted pieces.. Or let it sort everything. Needs good color recognition.
I’m. Interested in the method used for part outline, I’m building a patterning system with vision that needs a reliable outline
I need one I can dump a whole building into.