the gist
the production line's press cycle was manual: an operator lowering and raising a heavy plate by hand, every cycle, with depth and dwell set by feel. i took the press from prior static CAD to a working software-controlled prototype. it homes against a limit switch, descends to a commanded depth, holds, and retracts on its own, repeatable to the step.
the press is real now. it has run full cycles on actual starch, in the actual shop, with an operator other than me at the joystick. current work: tuning the retract against mold suction, raising the starch bed so every mold reaches full depth, and finishing the sifter's hinge and latch. the remaining modules follow from there.
what i did
- everything, end to end. CAD, prototyping, sourcing, motor and driver selection, wiring, firmware, testing. building on prior CAD from two previous engineers.
- drive selection. compared four architectures (timing belt, dual motors, worm-gear cross-shaft, single center actuator) and sized a NEMA 17 against a 21.5 N·cm requirement. sized, not over-specified.
- food-safe geometry. split the plate into a two-plate sandwich: the backing plate carries every hole, every fastener and the motor, whose screw climbs through a fixed nut in the crosshead; the product-contact plate stays completely solid, bolted at the perimeter only.
- contamination-resistant motion. PTFE-lined self-aligning bushings (no raceways to clog, runs dry), hardened guide rods, and a parametric TPU bellows generated by a python script.
- firmware. C++ on arduino, open loop with a trapezoidal acceleration ramp, plus a programmed jiggle-retract that breaks vacuum suction on the mold. tunable parameters live in one settings block so a non-programmer can adjust the machine.
by the numbers
two weeks in july
the short version of the build diary, from the work log. the machine fought back, and then it gave in.
- jul 16, the diagnosis. the plate binds on its guide rods. not a parts problem: off-center load tilts the bearings, and a tilted bearing is a brake.
- jul 20, brute force. found two steel support bars, drilled them, hand-tapped every hole for hours. bolted on. still stuck.
- jul 23, the low point. new bushings made it worse, friction without stability. very close to giving up. refused the lubricant shortcut: grease plus starch makes clumps, and this machine's whole premise is running dry.
- jul 24, glides like butter. the fix was the manual press's old wheel guides, re-mounted mid-frame to catch the moment before it reaches the bearings. ten hours at the bench: motor, screw, nut, limit switches, all in.
- jul 25, it was never the motor. the stall was the old driver folding back current as it heated. a TB6600 and a 24V supply fixed it for zero dollars. full cycle test: works, very well.
- jul 26, the manual. a machine is finished when someone who didn't build it can run it. wrote the operator manual.
- jul 27, first starch. better than expected. product clings on retract; vibration made it worse, which confirmed suction as the cause. slow peel added, tuning continues.
- jul 30, first feedback. aaron: some molds don't press deep enough. fix: raise the starch bed on two rods instead of redesigning the press. screw fully sealed in the bellows.
- aug 03, settling in. bed rods mounted, bigger electronics box installed. the machine lives at the shop now.
the best lesson
i proposed swapping the actuator for a cheaper cable-and-pulley lift. checked with the production team first and learned the force is applied after the plate is fully lowered, so the shortcut would have failed in production. asking first turned a wasted build into a half-hour conversation.
the full write-up, with the interactive system map, cross-sections and the live firmware panel, lives on the new site: the deep dive →
this summary describes my engineering contributions and the design reasoning behind them. specific details of case chocolates' production process, formulations, and proprietary methods are intentionally omitted.
← back to projects