I got introduced into the world of Arduino when two friends informed me about this little device independently from each other. I read about it and was sold immediately. What if I had this so many years ago, how much would I have invented already, what would I have made? What would my house have looked like?

I ordered one directly and there I was playing with lights, sensors, etc. But then? ..... it has the potential to control everything, but what? What should I make?

I think this is where more people get stuck. What should I do with it?

Coincidently I just finished constructing a coffee roaster, made from an ordinary popcorn machine. In basic it works by a fan blowing air past a heating element through the green coffee beans. By controlling the fan speed, I was able to control the temperature of the air roasting the beans. But, the roasting process turned out to be quite hands on, as the temperature needed to be kept constant following a profile, which was done by measuring the temperature the whole time and adjusting the fan speed with a pot meter.

That, I thought, should be automated....

Step 1: Materials Used

For this project I used:

-1x  Arduino Duemilanove
-1x  Arduino protoshield v2 (sparkfun) with breadboard
-1x 12x2 LCD screen (use a parallel one, would recommend a serial LCD)

-1x  electric popcorn machine
-4x  1KOhm resistors
-1x  small push button
-2x  1KOhm potmeter variable resistor
-1x  IRF540N
-1x  temperature sensor ZTK 33 V/7 mA
-1x  solid state relais S216S02 (sharp)

-19V adapter (used the one of my laptop)
-plugs, wires, etc

<p>iam a total noob in electronics (interested in coffee :D ) so i wanted to ask if i can use my arduino uno r3 instead of the arduino Duemilanove?</p>
<p>You should be able to use whatever Ardunio/Microcontroller you want to as long as you have enough input/output pins. I haven't looked into the diagrams of this project in particular, but the Uno is almost exactly the same as the Duemilanove (just a bit faster boot load time), so you should be fine with an exact substitute. </p>
just thought about this, did a search and instruct ables came up. great job! I was wondering if you can hear 1st and second cracking over the sound of the fan. I was thinking of incorporating an audible sensor that would listen into that frequency and apply that into the equations for roasting... <br><br>My first thought was to use a heat gun with an air stream temperature monitor, is air roasting better than direct contact and turning?
<p>You could use a pressure sensor at the fan outlet. This should give you a reasonably steady state signal between the two flow regimes for static beans (higher pressure), and fluidised beans (lower pressure). I'm not sure if the relationship will be linear, but there will be a relative pressure drop (pressure over fan speed) once the beans fluidise. You could slowly increase fan speed until you notice a step change in pressure.</p>
would a better way to do this be to always run the fan at full and use PWM + solid state relay to adjust power input to the heating element? Seems to me like this would offer more direct temperature control and could overcome minimum fan speed problem.
He chose the easier problem, since the heating element requires way more power to regulate. It would be a whole other issue putting your board in the way of that.
<p>Why did you run the fan off of 19 volts not 240 from the wall?</p>
what program do you used in step 5 to make some pid graph? I'm in progress to make some incubator and need to plot the response. Roby
Hi Roby,<br>That is the PID Front-End that was developed by the guy that made the PID library. It is written in processing and works very nicely. You should be able to find it here: http://playground.arduino.cc/Code/PIDLibrary<br><br>regards,<br>rutger<br><br>p.s. let me know if you document your works somewhere, Ill be interested to have a look :)<br>
<p>A microphone could not only tell if the beans were moving but could also tell when they crack :)</p>
Nice idea. But the fan would make too much noice to hear the difference between moving and non-moving beans. I thought about an infrared sensor to measure bean movement, but you would be blowing hot air against the sensor and I dont think that will be succesfull either<br />
Piezoelectric sensor will be enough to pick up cracks and bean movements. <br>Just JB Weld it to the outer cup,or to the case of popcorn popper. <br>It is used to detect knocks on some security systems(such as window break sensor),and it's fairly cheap(on RadioShack,search for piezoelectric speaker,and buy some of them and pry open the case. You can reverse it to make speaker,or the contact microphone.). <br>Hope this helps. <br> <br>&quot;tilas75&quot; said this first,but it was too short to give some solutions.
ah just read lower comment about max temp not being achieved with fan on full. Makes sense. Guess other approach could be set fan at speed that would allow adequate top temp and then adjust heat source.
If the beans lift up a bit, you could set up what is known as a 'reed switch'. Two thin strips of metal, say Stainless steel, 1/16th apart. As the beans lift up they close the switch. That would make the logic easy. Or even bump it over and over, as long as it is closing and opening the controller would know that they were moving. <br><br>To add function, mount it on a threaded rod so you can tune the level easily. <br><br>This is the method used in polyethylene plants to measure the level in holding tanks. Poly is made as small pellets, shaped like a coffee bean but smaller. Of course they don't move around, just fill or drain.
Nightlife - noticed you temperature were in Celsuius so your 300dC resistor would be able to measure 572dF - plenty!<br><br>Again, great job.
Some coffees require temperatures of 420-440 deg F for a successful second crack. The temperature sensor needs to read at least 450 deg or 500 degrees.<br><br>Is there a recommended substitute that will read this higher temperature?<br>Thanks. I'm definitely going to study this -- I haven;t even experience with Arduino.
Maybe use a sensitive vibration detector. you can even make one.
How about a piezoelectric sensor?
How does the temperature sensor work?&nbsp;<br /> Where do you put the probe?<br /> Whats the maximum temperature that this sensor can read?<br /> <br /> I was thinking of building something similar. But using the&nbsp;<br /> max6675 thermocouple amplifier. Is there any advantage to your approach over the max 6675? The 6675 is about $12.00 ( from sparkfun.)&nbsp;
Hi,<br /> Sorry for the late reply. The temperature sensor is a T sensitive resistor which can measure up to 300C if I am not mistaken. I got it from a local electronics supplier and choose this one as it was the only one this width measuring range. The sensor is located in the metal tin inwhich the popcorn or beans are roasted, just above the air sleaves. <br /> Recently I have been unsatisfied with the temp readings. When I roast beans and measure the temp externally during the process with the thermometer I also used to calibrate the sensor, I get a deviation of about 10C, which is way too much. Therefore I am now also considering a thermocouple and already got myself the MAX6675. The pins on this chip are however soo short that you need a small breakboard to attach it to and extend its pins (also orderable from sparkfun I think). I dont have any experience with thermocouples, but as they are used widely in industry, I assume they are more reliable to the thermistor I now use. Due to limited time at this moment, I am not sure when I will start with it. <br /> Let me know what your progress is<br /> <br /> Regards, Rutger<br />
According to the datasheet for the temperature sensor, it can only work up to 150 C. <br /> <br /> A T/C will be a lot better.<br /> <br /> Steve<br />
Hi<br /> I am 3/4 of the way through building your system.<br /> Do you have an alternative for the sharp relay as it is proving difficult to source in Australia and there are some issues about importing them into the country due to local sharp licensing issues.<br /> Thanks<br /> <br />
Hi,<br /> It isn't important which brand of relay you use. I prefer to use a solid state one , but see no reason why anormal one wouldn't work. The most important is that it is able to switch the high current of the coil. You can calculate the amperage you need. You can find many types on ebay, although some are quite bulky.<br /> <br /> Recently I made some modifications to the roaster, but I have been to busy to finish it and put them online. In the program currently in this instructable I start the roasting by directly turning on the heat control. Because the T is below the setpoint of 150C, the fan speed is automatically turned low and you need to fiddle with the min fax speed settings to keep the beans moving. I adjusted this by heating up the beans till 150C degrees while having the fan at max speed. This works without a problem, it just takes some seconds longer to reach 150C, but the whole min fan speed issue is solved. The reason for this is that once the beans reach 150, a lot of water has evaporated and their density is much lower.<br /> <br /> I still want to change the temp sensor for a thermocouple, as I am in doubt about the accuracy of the one I use now. <br /> <br /> Hope this is of any help to you. I would be very interested in the final result, so keep it posted.<br /> Rutger<br />
Maybe a webcam, and some optical recognition software.&nbsp; That sounds really complicated, but probably the best bet. <br />
Why did you elect to modify the fan speed and not the temperature in your design? I would think you would control the temperature up and down rather than the fan, that way you can leave the fan running at a constant speed (and cool the beans afterwards), and adjust the heat as needed...<br />
Hi, need to correct my previous remark. I have been working on this for a while and forget that I actually thought of controlling the heat in the beginning. Problem is that my popcorn machine isn't able to reach high enough temperature with the fan at max speed and that is why the fan speed was controlled and not the heating coil. <br /> <br /> It would be possible to solve the minimal fan speed settings when combining both heating and fan speed control, as the coil is able to heat the beans enough for the water to evaporate and them to get lighter. So first controlling the heat with the coil untill the temperature cannot get higher and then switch to fanspeed control. Although this only requires software changes, it is a bit more complicated. I'll think about it :)<br />
Is this just because the popcorn roaster speed is &quot;regulated&quot; by a temp sensor?&nbsp;I built a roaster from a convection oven and had to disable this temperature governor by disabling this sensor. Of course you run into the safety issue of not having ANY&nbsp;temp control other than your arduino, but s long as you're being reasonable with it, I&nbsp;don't suppose you could damage anything.<br /> <br /> Anyway, I'd be curious to see this done...I'd like to mod mine to do something similar...<br />
The popcorn machine isn't really high quality. I wasn't even able to make popcorn with is. I bypassed the build-in bimetal temp control (which switches the heating coil on and off), but still the temperature could not reach high enough with the fan at max.<br /> <br /> I surely wouldn't leave it running unattended, but with some common sense you will not burn down the house. <br />
Good point, as I come to think of it. <br /> Since I came from an already working system (see the other instructable), this was the more logical way to go for me. But your solution would solve the minimal fan speed problem.<br /> <br /> Controlling the heating coil with the Arduino would be easiest to connect the solid state relais with a PWM port. I am not sure if the solid state relais and the heating coil (1200W) could handly very frequent on/off switching. (My electronic knowledge is rather limited).<br />
Good application but this technology is making consumers lazy and more lazy.
I disagree. If that were true 4000 years ago we'd be saying the same thing about domesticating plants. Access to leisure time is what creates the technological insights that we've enjoyed since the dawn of civilization. <br />
Why would that be? Instead of making yourself lazy Senseo coffee substitute or buying overhyped starbucks coffee, with this (and a good coffee machine and grinder) you can discover what coffee is about and develop your own taste. <br />
What a project. What a feat.&nbsp; What an instructable!<br /> <br /> Wowed.<br /> Justin<br />
I'm too lazy to read all of this... :P<br /> Does/how hard would it be to make it do this every morning at 7, make the coffee, pour it, and add cream?<br />
You wouldn't want to do this every morning.&nbsp; After roasting, the beans need to rest for a few hours.&nbsp; Usually, I wait 4-6 hours, or over night.&nbsp; I've got a different home-brewed roaster setup, which does about a pound of coffee.&nbsp; I use a stopwatch and listen to the popping and crackling, and sort of guess at when they are done enough.<br />
But could this be set up so it roasts the beans, Grinds them, and makes the coffee overnight?<br />
Might be a start, but you should probably read up some on the roasting process.&nbsp; Just how lazy are you anyway?&nbsp; I roast at around 428 F, wouldn't leave it unattended, something goes wrong, potential fire hazard.&nbsp; Green coffee comes with a thin membrane on each bean, which splits, and blows off.&nbsp; It's best to roast outdoors, didn't mention the smoke and steam, or strong aroma.&nbsp; Roast enough to last a week or two, grind before you brew.<br />
You can find some info on the roasting process with links on my other instructable. This one is just about making the manual coffee roaster in an automated one, that is able to follow a temperature profile instead of just up to x degrees.<br />
&nbsp;Great (proof of) concept! &nbsp;I would be curious how you think you could scale it up to do batches in the 1+ KG range, which would be much more practical?&nbsp;
<big><strong>COFFEE!!!</strong></big>&nbsp; What a most excellent application, and well written, too.<br />

About This Instructable




More by nightlife31:A fully automatic coffee bean roaster (Arduino) Popcorn machine made into a high class  coffee roaster 
Add instructable to: