Show HN: A Digital Twin of my coffee roaster that runs in the browser (autoroaster.com)
I built this website to host a data-driven model of my coffee sample roaster.
I realized after 20 or so batches on the machine that while the controls are intuitive (heat, fan, and drum speeds), the physics can be unintuitive. I wanted to use my historical roast data to create and tune a model that I could use to do roast planning, control, and to help me build my own intuition for roasting. This website lets you interact with my roaster in a virtual, risk-free setting!
The models are custom Machine Learning modules that honor roaster physics and bean physics (this is not GPT/transformer-based). Buncha math.
The models are trained on about a dozen real roasts. The default bean model is an Ethiopian Guji bean.
My next steps are to add other roasters and the ability to practice control/reference tracking.
26 comments
[ 3.1 ms ] story [ 41.8 ms ] threadIf you ever did a writeup on how your ML modelling worked and what real-life data you needed, I'd learn so much point of view of someone who's applied a little bit of control theory to robotics and aquarium controllers, but with traditional models. (Hell, I'd even pay $CUP_OF_COFFEE_PRICE for it, since I'd get that much learning time out of it.)
Also: you advertise custom models for roasters. But can you make a digital twin of my toaster?
Cool website !
>Drum 745°C
(Nice work! This is really nifty. I wish I knew more about coffee so I could better understand the dynamics of the controls and how to achieve a perfect roast.)
A Tuboencabulating Roaster
Can we stop using the expression "Digital Twin" ?
I used to run a coffee roastery and roasted several thousand batches. This is pretty much how it works. I spent hours of trying to match those curves to the target profile.
Back in the day we had software called Artisan and a few probes inside the machine. It would have benefited of from having much more data being recorded.
For example: environment humidity, the number of the batch (machine itself heats, so batch 1 of the day is very different than batch 11), bean temp and moisture before going in, actions the roaster takes etc.
It seems like I have forgotten some nuances.
I've never paid attention to the minute differences, but if you're the kind of roaster who believes in the art of it versus the science, I think it'd be cool to try to map this model to certain outcomes - eg more or less fruity, chocolate, etc. Or actually throw in stuff like humidity, bean age, time of day, etc.
I've done a few hundred roasts, but by hand cranking a flour sifter over a heat gun. My model inputs are noise, smell, appearance. I've never been interested in pursuing a roast curve or profile, because I'm a barbarian.