www.klatchroasting.com: USBC champion, voted 2009 'best micro-roaster'

Arduino-based espresso machine controller [WIP]

Postby aindfan on Wed Feb 02, 2011 3:41 pm

Unfortunately, I got the idea in my head that the simple and working controls are not enough on my rebuilt Elektra. This means that it's time to start a project: control the machine with an Arduino. I will be using this thread as a project log.

Some background:

The only things that can be controlled (as outputs of the controller) on the machine are:

- Boiler solenoid
- Group solenoid
- Heating element
- Pump

Activating these four items in different sequences/patterns allows full control over the machine. At the most basic level, the Arduino can act as a PID controller for the boiler, and by the nature of the platform, it is easy to add features as I go along by loading new code via USB. The inputs to the controller can be:

- Boiler thermocouple
- Group thermocouple (tucked into group bell gasket)
- Buttons (shot, temperature +/-, etc.)

Ideally, there will be a small LCD screen involved.

A potential feature list (in order of implementation priority):

- PID boiler temperature control
- On/off schedule timer
- Line-pressure preinfusion (pump delay)
- Shot timer
- Autofill override (prevent autofill during shot)
- Remote control via wifi (only half kidding)

I'm looking forward to seeing where this goes, and as always, I appreciate anyone's comments.
Dan Fainstein
LMWDP #203
PSA: Have you descaled lately?
aindfan
 
Posts: 639
Joined: Jun 12, 2007
Location: Beacon, NY

Postby randytsuch on Wed Feb 02, 2011 4:15 pm

Hi Dan
Last year I started a similar project for my Gaggia Classic, but I haven't made any progress in a while. I hope to revive it, maybe in a few months. (maybe sooner if you encourage me :D )

I used the TC input board described in this thread
http://homeroasters.org/php/forum/viewthread.php?thread_id=1774&rowstart=0

You don't have to read that long thread, it is a four input TC board, designed to interface with an Arduino on the I2C interface.

I already wrote a coffee roasting PID program
http://homeroasters.org/php/forum/viewthread.php?thread_id=1989&rowstart=0

So, I already had a PID algorithm, I should be able to tweak it to work in a espresso machine without much problem.

My project will include 4-5 push buttons, a LCD display, all housed in a little chassis I bought for this.

I have less to control in my classic, but I am looking for having features like automatic turn on, so it is ready in the morning, shot timer, steam temp control and pressure and heater control during the shot,

Randy
randytsuch
 
Posts: 255
Joined: Aug 11, 2009
Location: Los Angeles
www.chriscoffee.com: quality & service, second to none
www.chriscoffee.com: quality & service, second to none

Postby napierzaza on Wed Feb 02, 2011 4:23 pm

I am also starting such a quixotic project.

What are planning to have the buttons do? Just wondering because I'm still speccing out what features I want to setup. My guess you want a shot timer, and maybe preset temperatures? Or are they controls based on the display?
napierzaza
 
Posts: 102
Joined: Dec 05, 2010
Location: montreal

Postby aindfan on Wed Feb 02, 2011 6:40 pm

Thanks. I'm getting started on putting together a parts list for the PID Implementation:

Arduino Mega2560 - get a nice beefy Arduino to take care of everything at once
20x4 LCD screen
Auber 25A SSR
Some kind of K-type thermocouple... Maybe this 4" 1/4 NPT probe from Auber?
K-type thermocouple digital amplifier

Now here's where things get more complicated, and I'll defer to the plumbing fitting experts for some help:

I would like to keep the pressurestat installed, so I need a tee somewhere. Or, I can drill a hole in the spare fitting of my boiler that is currently sealed off, as long as this fitting (suggested in Nicolas' thread) will offer a proper seal. Ideally, I would like a tee fitting to replace the over-pressure safety valve to have the safety valve orthogonal to the boiler and the probe attached at the top of the tee (so the probe dips down into the boiler), though something tells me that a trip to Home Depot won't get me the fittings that I need. Once again, fitting experts - I hope you can help!

I'm going to look into the possibility of pulling the Arduino supply voltage from the Gicar box, or wiring in an AC/DC adapter. I plan to have all of the electronics in the plastic box where they currently live (except for the SSR, perhaps, to better sink the heat).

I will also need some good wiring - this should do the trick (12AWG wire rated to 600VAC/54A).
Dan Fainstein
LMWDP #203
PSA: Have you descaled lately?
aindfan
 
Posts: 639
Joined: Jun 12, 2007
Location: Beacon, NY

Postby Carneiro on Wed Feb 02, 2011 9:31 pm

I use the TC4 from Jim and Bill on my Quest roaster, and have to say it's great.

If only I had this before I bought the Oscar brain box for the one I'm restoring...

Márcio.
User avatar
Carneiro
 
Posts: 668
Joined: Jul 16, 2009
Location: Brazil

Postby JimG on Wed Feb 02, 2011 9:58 pm

Watch out for self heating effects with the MAX6675. I scrapped my original design because of this. Bill's design (implemented on the TC4) using the MCP3424 and MCP9800 is superior, IMO.

Jim
JimG
 
Posts: 561
Joined: Jun 11, 2006
Location: Lexington, KY

Postby aindfan on Wed Feb 02, 2011 10:14 pm

I was just looking over the datasheet for the Analog Devices AD595A, which works with K or T type thermocouples, but it sounds like it's only accurate to +/- 1C (not good enough for us here!). But maybe it is - if the pressurestat deadband is much higher than that, that tolerance should be fine. I'll take a look at Bill's design now.
Dan Fainstein
LMWDP #203
PSA: Have you descaled lately?
aindfan
 
Posts: 639
Joined: Jun 12, 2007
Location: Beacon, NY

Postby napierzaza on Thu Feb 03, 2011 12:57 am

Actually, I was designing a circuit using the MCP3424 and the AD595. Can you tell me where to find Bill's design? I'm having some trouble getting started, I have to work out some bugs before I make PCBs becuase I don't want to have to make 100 revs because I'm horrible at making PCBs.
napierzaza
 
Posts: 102
Joined: Dec 05, 2010
Location: montreal

Postby aindfan on Thu Feb 03, 2011 1:20 am

Nathan, the project page is here. It includes the schematics, code, and even an unpopulated PCB that you can buy.

Another chip that I have come across is the AD8494, which also provides +/-1C precision. I will look up the Arduino analog inputs' capabilities tomorrow in case an A2D is not needed. Otherwise, my implementation will likely be an adaptation of the TC4 project (subject to open source license verification) with changes for my needs.
Dan Fainstein
LMWDP #203
PSA: Have you descaled lately?
aindfan
 
Posts: 639
Joined: Jun 12, 2007
Location: Beacon, NY

Postby mhoy on Thu Feb 03, 2011 2:04 am

Carneiro wrote:I use the TC4 from Jim and Bill on my Quest roaster, and have to say it's great.

If only I had this before I bought the Oscar brain box for the one I'm restoring...

Márcio.


Nifty indeed, with this I could update my HotTop. :)

Mark
User avatar
mhoy
 
Posts: 1120
Joined: Jan 09, 2008
Location: Sunnyvale, CA

Next

Return to Espresso Machines