[SS2S-Main] Re: temperature controller with arduino

  • From: "Lampe, Mattias SLC CT PEK" <mattias.lampe@xxxxxxxxxxx>
  • To: "sugarshot@xxxxxxxxxxxxx" <sugarshot@xxxxxxxxxxxxx>
  • Date: Mon, 30 Jun 2014 09:59:31 +0800

Hi all,

I think the decision whether to use an Arduino or some off-the-shelf PID 
controllers will not influence the total implementation effort too much, since 
the main effort probably goes into following the temperature profile over time. 
Even with an off-the-shelf controller (thermostat?) you still need some piece 
of software to run the profile.

I’m not so sure if PID is really applicable here. You’ll basically just switch 
the heating elements on or off, so it’s a binary control. Unless you need a 
very high accuracy, I’d assume that a simple threshold/hysteresis based scheme 
(as in a household oven) would do fine. I think even the smallest of Arduino 
boards is up to the task.

I agree with Nathan thas some means for logging the temperature data (e.g. an 
SD card) makes sense. An RTC module may be nice to have, but is not so 
essential. Relative time measurements can be done with the internal timers of 
the microcontroller, you just won’t know the exact time of day, which does not 
really make much difference anyway.

DS18B20 temperature sensors are a good choice as long as the temperature does 
not exceed 125 degrees C (257 degrees F ?). They can be bought already mounted 
inside a little stainless steel tube and with a cable attached for around one 
dollar a piece. For higher temperatures your best choice would probably be 
thermocouples, which require some extra amplifier circuitry (not very cheap) to 
get the temperature value.

Regarding heaters and fans: Would it be worth considering the use of electric 
hair driers or hot air guns? That might save some work regarding proper (and 
safe!) mounting of the heating elements. Cost might also be lower than buying 
the components individually.

Have a good day!


From: sugarshot-bounce@xxxxxxxxxxxxx [mailto:sugarshot-bounce@xxxxxxxxxxxxx] On 
Behalf Of Nathan Asdourian
Sent: Monday, June 30, 2014 8:41 AM
To: sugarshot@xxxxxxxxxxxxx
Subject: [SS2S-Main] Re: temperature controller with arduino

I'm a bit on the fence with the whole thing. On one hand ive had a reasonably 
good time helping a guy in france develop and refine an arduino plugin module 
for the home automation program homeseer. When I stumbled upon his project, the 
core module was semi reliable but had connection issues, used up enough of the 
available ram that the ide wasnt too happy, and had horribly duplicated code 
eating up like 80% of the flash. I looked at his sketch and without even really 
understanding all of it, I managed to help him isolate the two pieces which 
function independantly so the compiler knew which set of code to leave out, as 
well as an exhaustive review of his almost sinful was of ram due to which 
datatypes he used and just storage in general.

That said, it should be taken into consideration that you could get an actual 
pid controller for around the same price as an arduino uno r3.
Granted that is direct from china or Taiwan, but really with the available 
budget I dont think being picky is a reasonable thing. About the only thing 
that could keep going with the arduino reasonable is if we(the people in this 
conversation) are willing and able to donate most of the necessary hardware.
The way I see it, we would need an arduino board, uno being the lowest, mega 
offers significantly more memory. Or possibly the due which is much more 
powerful as it is 32bit.
Also needed are compatible thermocouples, I did see someplace you can get 
stainless steel tubes that a ds18b20 slides right into, I just havent checked 
on operating temps vs the temps you will be at.
I imagine a rtc module will be necessary otherwise you may as well base the 
time on when your mother uses the restroom.
An sd card slot should be included to facilitate logging the various temps and 
burner status. This will provide proof of the parameters and eliminate the 
question of if a part was cooked right.

As for what I am prepared to offer up, here goes...
I saw there was already an offer from a someone to write the arduino code, I 
can offer code review and collaboration, assuming your willing to put the code 
up on githib so we can easily communicate back and forth on multiple subjects 
without losing track of things.
Assuming that the ds18b20 is used, I can also relatively quickly set up a test 
setup to validate the code and attempt to pinpoint any issues, which I would do 
with my own hardware I already have or will purchase on my own so no shipping  
Hardware wise I can offer up a combo micro sd and sd adapter board, which has a 
switch to select card type. I also have a spare rtc I can dig out.
Ds18b20's can be aquired for free via maxims samples program, you can order up 
to 2 of each kind, and last time I did it, I think there were 5 different 
versions available, all mostly the same, a couple were surface mount which 
makes using it as a probe difficult.
I can also offer up soldering if needed. I consider myself well above average 
with an iron, and the fact I have a hakko fx-951 certainly doesnt hurt any.

I think that about wraps it up for me, back to lurking unless its decided to go 
the arduino route, in which case just let me know.

On Jun 29, 2014 3:53 PM, "Peter Johansson" 
<rockets4kids@xxxxxxxxx<mailto:rockets4kids@xxxxxxxxx>> wrote:

On Sun, Jun 29, 2014 at 6:36 PM, Vicente Alvero Zambrano
<vicente_alvero_14@xxxxxxxxxxx<mailto:vicente_alvero_14@xxxxxxxxxxx>> wrote:

> My idea is to use an old oven heater like the picture.
> With respect to the PID controller, maybe it is cheaper to do it manually,
> without writing code.

One option to consider -- and an advantage to going with a homebrew
solution -- is to simply read a configuration file containing the
temperature profile and PID tunings over over the serial port.

This way you get the maximal possible control with the minimal
hardware cost and minimal software development time.


Other related posts: