DIY Digital Controller

Started by mhoy, April 21, 2011, 11:07:53 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

jsmanson

Interesting project - I just purchased some Auber parts for a "do-it-yourself" system, and I was thinking about putting together a Picaxe processor and display/keypad as you have done.  I am going to ask the folks at Auber if there is a way to communicate with their PID devices, if so, the processor could tell the PID what temp to maintain, and the PID could do the heater cycling.  I bought one PID to maintain heater cabinet temp, and another one to monitor meat temp, so I'd need to be able to communicate with both PID's.  I'll let you know what I find out....

John

mikecorn.1

:rolleyes:


---
- Sent from my iPhone using Tapatalk
Mike

Tenpoint5

Yep it is fact that this whole thread has me LBS!!! (Lost Bigger than 0e)
Bacon is the Crack Cocaine of the Food World.

Be careful about calling yourself and EXPERT! An ex is a has-been, and a spurt is a drip under pressure!

mhoy

John: I'm very sure I don't understand how you would control two PIDs instead of one.   Why not implement your controls with dual temp probes and control a solid state relay with the picaxe itself?  There is PLENTY of time to compute as the smoker doesn't change temperature all that fast even when full heat is applied (or removed). Once you have this working, add a second temperature probe and you can add smarter software to switch from cabinet temp to meat temp as you go.  Get this working and sell the PIDs (or get a second smoker).

Mark

muebe

mhoy how did your arduino setup finally turn out?

Got any pics of the finished product and details?

There is a guy on another forum who is using a arduino to run his traeger and has a really cool setup. Thanks for posting!
Natural Gas 4 burner stainless RED with auto-clean
2 TBEs(1 natural gas & 1 LP gas)
OBS(Auberins dual probe PID, 900w finned element & convection fan mods)
2011 Memphis Select Pellet Smoker
BBQ Grillware vertical smoker(oven thermostat installed & converted to natural gas)

mhoy

The final setup looks identical to the pix I've posted. Setup has the lid on the box and I've used it a number of times. Makes things pretty darn easy. Been too busy this summer to do much smoking. Time to get back to it.  :-*

Changes I would make:
-removable plug for the thermocouple and hard wire it inside the box.
-figure out how to determine the thermocouple is not present.....(it was forgotten onetime....)
-fix the bug at the 7 to 8 hour mark where it reset to the default (ARGH at least I noticed).
-write a better key board decoder code, it scans the keyboard too slowly (perhaps lock out the temp reading calcs and PID loop while doing keyboard, not sure). The a/d decode isn't all that swift on this setup, but certainly sufficient.

Mark

muebe

Very nice setup. Thanks for sharing ;D
Natural Gas 4 burner stainless RED with auto-clean
2 TBEs(1 natural gas & 1 LP gas)
OBS(Auberins dual probe PID, 900w finned element & convection fan mods)
2011 Memphis Select Pellet Smoker
BBQ Grillware vertical smoker(oven thermostat installed & converted to natural gas)

squirtthecat


Mad Scientist Smokers!    I love it..

OU812

Quote from: Tenpoint5 on September 21, 2011, 09:39:13 AM
Yep it is fact that this whole thread has me LBS!!! (Lost Bigger than 0e)

What Chris said.  ::)

jsmanson

Hi Mark, so I take it that you are doing fine with your project without the PID wired in?  You're just turning the heater on/off either side of the desired temp?  It sounds like the pid's are doing some kind of fancy algorithm stuff, but maybe we can get away without them as you suggest.  Hooking two temp probes should be fine, the meat probe would just be the trigger to turn off the heat or go into a standby mode...  I'll do more research on this, and keep you posted!

mhoy

jsmanson: Correct. Figured I try something simple first and simple was good enough for me (which in this thread is kind of relative I guess). I suspect that adding a PID loop to the code wouldn't be too hard as there is an Arduino library for it. However tuning it and testing a PID does take some time. It worked well enough for some rather tasty pork ribs last night that my wife smoked.  8)   Having an auto-standby mode seems useful... (I have extra thermocouple channels.....)

Give yourself enough room in the box you pick to be able to lay things out nicely. Makes it easier to work on and easier to fix should you need to. Be respectful of the AC circuit since it can fry the electronics if hooked up wrong (and potentially hurt you too).

Mark

jsmanson

Mark, I found this comment on the picaxe forums in the UK, from a guy who was building a PID to control coffee roasting..

This fellow was suggesting, as you have, that a full PID is probably too fancy for the coffee roasting application, similar to our aplication....

"Rather than a PID try using a simple circuit that switches an output on or off as a pulse where the pulse length is proportional to the error between the measured temperature and the set point. Sample the error at period Tp(sec/min) and make the maximum pulse for the maximum error as Tp. ( sec/min). This type of contoller approximates a PID loop but is easier to implement for on/off controls."

Link:  http://www.picaxeforum.co.uk/showthread.php?9027-1st-attempt-at-PID-controller&highlight=max6675


What do you think of that??  I like the simplicty of the approach, and wouldn't need the calibration and learning steps that the full PID needs.  I have found code snippets for writing a full PID implementation, but I thought at least I'd try this simpler approach first.  I also assume that the pulsed heater logic would only come into play when temps got within a defined zone of the set temp, as one wants to get the temps up as quickly as possible.  I can see, though that the one thing this approach would guarantee is that the temps would cycle around the set point as the error would go to zero when the set point is reached, so temps would have to drop before the heater would turn back on - and the PID from what I gather, if properly tuned, would allow the temps to stay right on the set point with the PID figuring out the correct proportion of cycle time to maintain the temp at the set point.

Also Mark, looks like I will need a couple of Max6675 thermocouple amplifiers to provide for the interface to the picaxe, which will read the data through the SPI port on the processor.  Shouldn't be a problem other than having to solder those little soip chips lol!  The Max6675's are about $20 on digikey, so it will be $40 for the interface for two temp sensers.  It looks like I can use the one SPI port to read multiple devices, so I will connect both probes through the SPI, each using a separate Max6675.

I'm going to slide in an eeprom so I can store a range of cooking 'menus', which can be selected by the user on the keyboard at startup.  I think I'll also use the thing to fully control the smoke system as well, I will need to figure out how to bypass those standard digital controls, but it shouldn't be difficult.  a connection to turn on the puck advance motor on every 20 mins, and a connection to turn on the smoke heater when smoke is desired.


mhoy

Long thread you posted to, but the quoted part seems very reasonable. Once everything is built, it's only a matter of software choices.  ::)

My controller also came from the coffee crowd (another hobby). If you could switch to I2C you could use the same board I used (and it's inexpensive) and there is an option to get the surface mount chip pre-soldered, which for my old eyes is wonderful.   ;)

Mark


Joseph Haddad

#29