I have just read through this thread for the first time.
I've been putting some thought into doing my own PID (the $200 kits seem high). While I previously understood the theory at a basic level, I now see some of the deeper implications, as well as some implementation hurdles.
I must say, thank you to those who have contributed to this thread.
Don't let us put you off, remember that this thread is named Super-DIY PID. It's not hard to get an off the shelf controller and make it work 10 times better than anything that the manufacturers are putting together. We in this thread are theorizing the best controller for this job, and sometimes get caught up in the minutia. If I was to buy an off the shelf controller to do this, I'd first look at size, probably 1/32 DIN. Next on the wish list would be a digital input for dual setpoints. That way we could use the original switch to change from brew to steam. Lastly, I'd look for feedforward, to clean up any lag from idle to brew. I'll poke around a bit and see if there are any controllers that meet those specifications.
Posted Tue Oct 7, 2008, 7:22am Subject: Re: Anyone done a Super-DIY PID (starting with IC's and such)?
wenus2, In case you haven't come across it, this wiki page has links to some software and docs (more documentation is on the way) on how to hand roll a PID mod based on the Arduino microcontroller.
The most basic form of PID setup requires a Solid State Relay (~$15 surplus), Arduino board ($20 - $35 depending on type and if you don't mind soldering together a kit), a temperature sensor ($13 - $20 depending on if you choose a thermocouple or IC temp sensor), and a power supply of some kind (household to 9V dc) ($5 - $10). So for $60 - $80 you can do a complete setup that allows you to tweak your machine from your laptop. There is also a free companion app (will work on any computer via the processing, see processing.org) for your laptop/desktop that you can use to graph your temperatures and tune your PID via USB.
wenus2 Senior Member Joined: 2 Oct 2008 Posts: 213 Location: Portland, OR Expertise: I like coffee
Espresso: Conti Club 1 Grinder: Mazzer SJ
Posted Tue Oct 7, 2008, 1:20pm Subject: Re: Anyone done a Super-DIY PID (starting with IC's and such)?
SteinDrive Said:
Don't let us put you off, remember that this thread is named Super-DIY PID. It's not hard to get an off the shelf controller and make it work 10 times better than anything that the manufacturers are putting together. We in this thread are theorizing the best controller for this job, and sometimes get caught up in the minutia. If I was to buy an off the shelf controller to do this, I'd first look at size, probably 1/32 DIN. Next on the wish list would be a digital input for dual setpoints. That way we could use the original switch to change from brew to steam. Lastly, I'd look for feedforward, to clean up any lag from idle to brew. I'll poke around a bit and see if there are any controllers that meet those specifications.
Don't worry Dave, it isn't the least bit off-putting. I find it intriguing really, I'm no engineer, but I"m having no trouble following the conversation either ;-)
I've looked around some and don't see a commercial PID that fits these criteris for less than $125. Undoubtedly you are aware of better sources (or more refined search criteria), so if there are better deals to be had, perhaps you can point me in the right direction.
wenus2 Senior Member Joined: 2 Oct 2008 Posts: 213 Location: Portland, OR Expertise: I like coffee
Espresso: Conti Club 1 Grinder: Mazzer SJ
Posted Tue Oct 7, 2008, 1:33pm Subject: Re: Anyone done a Super-DIY PID (starting with IC's and such)?
manyrobots Said:
wenus2, In case you haven't come across it, this wiki page has links to some software and docs (more documentation is on the way) on how to hand roll a PID mod based on the Arduino microcontroller.
The most basic form of PID setup requires a Solid State Relay (~$15 surplus), Arduino board ($20 - $35 depending on type and if you don't mind soldering together a kit), a temperature sensor ($13 - $20 depending on if you choose a thermocouple or IC temp sensor), and a power supply of some kind (household to 9V dc) ($5 - $10). So for $60 - $80 you can do a complete setup that allows you to tweak your machine from your laptop. There is also a free companion app (will work on any computer via the processing, see processing.org) for your laptop/desktop that you can use to graph your temperatures and tune your PID via USB.
I have browsed around some, this is admittedly more work than I was intent on, but it seems the economical choice. It could also prove to be more fun, and it certainly has more "tinker" factor.
I'm not excited about coding, in any language, but there appears to be quite a bit readily available. It would just be a matter of pieceing it together for ones desired functionality.
I see your project has control for brew and steam temp, water level alarm, clock/timer. Is that correct? This is more than adequate, as more myself I can really only "justify" the "need" for temp control at this point.
Posted Tue Oct 7, 2008, 8:18pm Subject: Re: Anyone done a Super-DIY PID (starting with IC's and such)?
In terms of the code, I especially appreciate the challenges of picking through someone else's code. In addition to a schematic, I think I need a similar structural description of the code to aid in the process of breaking off of the parts you want and their reuse. Also, I would be happy to answer specific questions about the code, especially through documentation improvements.
My setup in particular is indeed a bit of a kitchen sink. The features you list are all present.
There is a barebones code base that should cover your temperature-only initial requirement. That code is here: http://www.growdown.com/coffeetronics/BBCC_Core/ If you choose to add stuff later, this initial setup will act as a good base. In this BBCC_Core folder, BBCC_Core.pde is the parent file. Essentially, it starts the program with setup() and runs the program with loop(). My aim is to essentially have one line of code in each of these two functions (a setupBlah and an updateBlah) associated with any one component. Reading in now, that is not quite the case! There is some cleanup I can do that will clarify that considerably. Most of what you see should be inside a setupPID(), and updatePID() function calls. Changes to come...
The 3 SSRs go to the heating coil, pump, and solenoid. All of that is an effort to gain total control of the machine, switching all functionality from the arduino. For nearly all functions, a single SSR on the heater will suffice. That setup does uniquely allow remote control and some other questionably useful features.
Symbols: = New Posts since your last visit = No New Posts since last visit = Newest post
Forum Rules: No profanity, illegal acts or personal attacks will be tolerated in these discussion boards. No commercial posting of any nature will be tolerated; only private sales by private individuals, in the "Buy and Sell" forum. No cross posting allowed - do not post your topic to more than one forum, nor repost a topic to the same forum. Who Can Read The Forum? Anyone can read posts in these discussion boards. Who Can Post New Topics? Any registered CoffeeGeek member can post new topics. Who Can Post Replies? Any registered CoffeeGeek member can post replies. Can Photos be posted? Anyone can post photos in their new topics or replies. Who can change or delete posts? Any CoffeeGeek member can edit their own posts. Only moderators can delete posts. Probationary Period: If you are a new signup for CoffeeGeek, you cannot promote, endorse, criticise or otherwise post an unsolicited endorsement for any company, product or service in your first five postings.