At 3:32 into this video https://www.youtube.com/watch?v=cR4S8Bqjmsg you can see the simple mechanism used on a similar vibratory feeder in a US plant to separate zipper pulls facing in the wrong direction. There are common tricks used with vibratory feeders to separate parts. That part is wider at one end than at the other, and has a big hole and a small hole. There are standard vibratory feeder tricks to separate th…
The amount of work the mechanical engineer designing the mechanisms went to, and the tiny, seemingly insignificant details that make such a huge difference in the end, were mindblowing. And this machine (a subassembly of a larger machine) had a target failure rate of no more than 1 jam per million cycles. Don't know that we ever achieved that, but we did come up with some clever automatic jam recovery algorithms. And then there was his description of the process the software should follow in order to properly dispense the units.
Debugging was interesting. I already had a fair amount of machine control experience before this task, but it was the first time I needed a high-speed video camera to debug my software! I discovered pretty quickly that in software I could optimize for throughput, or for reliability, but one was always at the expense of the other.