Proof of Principle Computer Controlled Poppery Coffee Roaster

Description of the coffee roaster:                                        (updated 8/29/03)

This coffee roaster is a functioning computer controlled roaster capable of precise roasting profiles.   Some of the equipment used in it is a bit excessive,  so I consider it a work in progress, -- lets  call it a proof of principle computer controlled roaster --  but the plan is to eventually replace all of the  interfacing elements with pieces that are of reasonable cost, and general availability.  The roaster itself is a West Bend Poppery I ( the original style).   Pictures below show the computer and roaster set up on my back porch.   Click on the pictures for  200K, better detailed, versions.  Some of the design aspects  are described below, and the programming code is available.

A more detailed discussion of the control algorithms that I have used can be found in the profiles pages


picture of roaster              closer view                
The gear in the picture are:  

The Roaster
Thermometry
The Computer
Equipment List
Code

    The roaster:  A West Bend Poppery I.  It has a copper sleeve for a chamber extension, with a funnel on top of that.  These extensions, combined  with running the fan with 140+ Volts, lets me roast 180 grams of coffee at a time  The fan is run off the blue variac on the floor  (directly in line with the leftmost table leg). -- Hooray for Ebay!    The new length of the  roast chamber  required that the plastic shroud be extended -- that's been done by wrapping  aluminum sheet metal wrapping around the plastic roast cover.  It still blows chaff out pretty well, as seen by the pile of it in the wire  basket.  A 4 inch square glass plate (on top of the popper) makes a nice replacement for the popcorn kernel tray, it's much easier to see through.
               
   Thermometry  comes from two thermocouples in the roaster.  One  measures the heater air temperature, by virtue of its placement  between the internal heating coil and the roast chamber.  It enters the roaster in the back along with the power cords, and enters the chamber through a hole drilled in the aluminum housing.  The second, bean sensing thermometer  snakes in where the chaff blows out, and runs down inside  the roast chamber to within  1.5 inches of the bottom.   The roaster is tilted to get a consistent bean circulation direction, this helps roast uniformity and  aids thermometry.  The thermocouples are directly read by the digital volt-meters seen to the left of the computer on the table.    I actually have four thermocouple in the rig: each of the TC's in the roaster  has a reverse connected TC attached to it,  This helps to eliminate stray thermoelectric voltages, and is, I'm told, the most accurate way to use a thermocouple.   Because of the reverse junction thermocouples, the voltmeters sense the difference between room temperature and the temperature of the sensor.   The use of high quality voltmeters here, with low DC offsets, is important since the TC's generate only 22uV or so of signal per degree F.

    The Computer:  This is an old pentium that was unused.  It has way more than enough horsepower to control the roaster.   It runs DOS.   I used the freely available Borlad Turbo-C 2.01 compiler (see http://community.borland.com/museum/), and a bit of freeware code that allows direct access to the system clock, (PCTIMER, I used  version 1.3) in order to get better timing accuracy than the DOS-standard 18 msec.   The control program divides the roast into a number of segments, each of which has its own pre-planned heater air temperature ramp rate.  Within each segment, the computer  regulates the amount of time that the heater is on,  in order to reach the planned heater air temp. This ON time is calculated with a PID approach twice a second and is implemented every 1/6 second.  (There some were loop stability  problems measuring once per second, believe it or not ..)  The output goes to a d-to-a (barely visible under the bench the roaster is on) which switches a SSR that cycles power on and off to he heater coil.  The SSR is mounted on the side of the Big Variac -- I used to use this for manual control, but now it just gives me 140 Volts for the SSR input.  
             I believe that an important element of my ability to control the roast is how I switch between segments. The decision of when to move onto the next "segment" is determined by one of: time, heater air temp, or measured bean temp. I was very worried that a regular ramp/soak, i.e. just controlling and measuring the heater -- where the end of a segment would be determined independent of the bean temp -- would do a poor job of adjusting for different beans, changes in humidity or ambient temperature, air flow adjustments, and so on.  And I was  also worried that the control loop would be unstable if the input were instead just the bean temperature.  This would certainly be the case in the WBI with its large non-coffee heat capacity.
        So instead I went for a very flexible control algorithm.  I have eleven segments in my implementation of Jim Schulman's modified HotTop style profile:  4 of these switch on bean temperature, two on time alone, and the rest make specific net increases or decreases in the heater air temperature.  Each section has a specific ramp for the heater air target temperature, and has regular PID control of the heater air temperature within that segment.   Roasts are very-very repeatable, even for widely different ambient temperatures.  I was once able to roast at 17 degrees F ambient temperature.

Equipment List:
An old Pentium machine Running DOS,  with an ebay purchased National Instruments GPIB interface card

Two HP34401 digital voltmeters with GPIB interface  (these are expensive, but are borrowed)
       -- these read the thermocouple voltages directly.  

A very old gpib digital-to-analog converter to run the SSR (not nearly as expensive, but still sort of costly)

A Solid State Relay  for controlling the heater duty cycle (Grainger - part number 5Z438 about  $20.00)

One variac is passive - it just makes a 140 V source for the SSR controlled heater.  (A boost transformer would be better here)  The other variac is currently unused.

A Velleman 8003 dimmer is used to operate the fan motor under computer control.  Driving the inductive load of the motor with the triac based controller in this $20 kit took a bit of tweaking.  Prudent placement of resistors to squelch switching voltages, and a 200 ohm resistor in parallel with the motor load seems to have done the trick.  If anyone can steer me to a design for a pulse width modulated AC power source that can be DC controlled, please drop me a line!

Code:

I plan to make the code that I use available here, once I learn how make a link for this. --  In the meantime, send email if you want a copy.


 
Thanks for visiting,   Tom G.  
Web Counter says you're visitor

 Please make comments or suggestions to:  Toms-roaster@columbus.rr.com

return to coffee profiles page


I get my green coffee from:    sweet marias