{"id":304,"date":"2011-04-18T23:32:24","date_gmt":"2011-04-18T15:32:24","guid":{"rendered":"http:\/\/www.rocketscream.com\/blog\/?p=304"},"modified":"2013-07-06T12:55:52","modified_gmt":"2013-07-06T04:55:52","slug":"arduino-based-reflow-oven-controller-%e2%80%93-testing-progress","status":"publish","type":"post","link":"https:\/\/www.rocketscream.com\/blog\/2011\/04\/18\/arduino-based-reflow-oven-controller-%e2%80%93-testing-progress\/","title":{"rendered":"Arduino Based Reflow Oven Controller \u2013 Testing &#038; Progress"},"content":{"rendered":"<p>No, this post is not about Megatron looking for energon cubes. We just love labeling all our tools and machines with characters from the show we heart when we were young. Alright, finally there&#8217;s some progress on the reflow oven controller. I know many of you guys are asking when they&#8217;ll be available, I hope the waiting is going to be over pretty soon! \ud83d\ude42<!--more--><\/p>\n<p>While working on the reflow oven controller firmware, we came across some sample codes from <a href=\"http:\/\/www.adafruit.com\">Adafruit<\/a> (Thanks LadyAda!)\u00a0posted on <a href=\"https:\/\/github.com\/adafruit\/Reflowduino\">GitHub<\/a> (GitHub rocks!). We grab the codes and make some changes on it to suite our hardware setup and the results are pretty amazing. The implementation of the PID control is pretty straight forward and simple to understand. But, it would be advisable to go through this <a href=\"http:\/\/en.wikipedia.org\/wiki\/PID_controller\">article<\/a> to get a better understanding especially on the\u00a0theoretical\u00a0part.<\/p>\n<p>We are using a <a href=\"http:\/\/www.crydom.com\/en\/Products\/Catalog\/s_1.pdf\">10 A SSR from Crydom<\/a> which can be controlled from a 3-32 VDC line (just nice for Arduino) to control the oven. The following image shows our setup for the SSR interface with the AC high voltage (<span style=\"color: #ff0000;\">be extra careful when dealing with high voltage, please make sure you know what you are dealing with<\/span>). I would not advise using this setup for safety reason as we tripped the whole power line supply when we accidentally causes some leak from either the live or neutral line to earth!<\/p>\n<p><a href=\"http:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/ssr.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-306\" title=\"ssr\" alt=\"SSR Setup\" src=\"http:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/ssr.jpg\" width=\"600\" height=\"402\" srcset=\"https:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/ssr.jpg 600w, https:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/ssr-300x201.jpg 300w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<p>Upon uploading the example codes onto the Arduino Uno, we hook everything up together with a type K thermocouple stuffed inside the oven. The serial-USB of Uno is connected to the PC with a serial terminal program to log the temperature curve for analysis purposes.<\/p>\n<p><a href=\"http:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/setup.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-309\" title=\"setup\" alt=\"Reflow Oven Controller Setup\" src=\"http:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/setup.jpg\" width=\"600\" height=\"425\" srcset=\"https:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/setup.jpg 600w, https:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/setup-300x213.jpg 300w, https:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/setup-260x185.jpg 260w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/a><\/p>\n<p>The sample codes allows a start of reflow process to be triggered by a push button and a valid thermocouple wire must be attached in order for the process to be executed. Before starting the reflow process, we push the temperature and timer knob of the oven to maximum.<\/p>\n<p><a href=\"http:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/fullBlast.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-311\" title=\"fullBlast\" alt=\"Full Blast\" src=\"http:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/fullBlast.jpg\" width=\"402\" height=\"600\" srcset=\"https:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/fullBlast.jpg 402w, https:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/fullBlast-201x300.jpg 201w\" sizes=\"auto, (max-width: 402px) 100vw, 402px\" \/><\/a><\/p>\n<p>At each stage of the reflow stage, the stage name, time in seconds and current temperature in the oven will be displayed on the LCD. At the same time, the data will also be sent to the PC over the serial line. The data is useful for reflow curve analysis to perform further tweaking. So, time for some baking now. \ud83d\ude42<\/p>\n<p><a href=\"http:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/preheat.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-312\" title=\"preheat\" alt=\"Preheat Stage\" src=\"http:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/preheat.jpg\" width=\"471\" height=\"600\" srcset=\"https:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/preheat.jpg 471w, https:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/preheat-236x300.jpg 236w\" sizes=\"auto, (max-width: 471px) 100vw, 471px\" \/><\/a><\/p>\n<p><a href=\"http:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/reflowDebug.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-313\" title=\"reflowDebug\" alt=\"Reflow Debug\" src=\"http:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/reflowDebug.png\" width=\"443\" height=\"573\" srcset=\"https:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/reflowDebug.png 443w, https:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/reflowDebug-232x300.png 232w\" sizes=\"auto, (max-width: 443px) 100vw, 443px\" \/><\/a><\/p>\n<p>Once the reflow process is completed, the temperature in the oven drops down to room temperature. We slowly open the oven door to help the cooling down process. Data collected from the serial is plotted to check the outcome of the reflow process. This is a 1st run without making any tweaks to most of the parameters used in the code. We are pretty happy with the result and we can&#8217;t wait to bake some real PCB. We just ran out solder paste as 2 solder paste jars in our storage are way too hard to be used. It&#8217;s time to get some new solder paste together with a <a href=\"http:\/\/usb.brando.com\/prod_detail.php?prod_id=00286\">mini cooler storage<\/a>.<\/p>\n<p><a href=\"http:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/reflowCurve.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-316\" title=\"reflowCurve\" alt=\"Reflow Curve\" src=\"http:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/reflowCurve.png\" width=\"847\" height=\"501\" srcset=\"https:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/reflowCurve.png 847w, https:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/reflowCurve-600x355.png 600w, https:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/reflowCurve-300x177.png 300w, https:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/reflowCurve-768x454.png 768w, https:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/reflowCurve-845x501.png 845w, https:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/reflowCurve-705x417.png 705w\" sizes=\"auto, (max-width: 847px) 100vw, 847px\" \/><\/a> Judging from the reflow curve, we didn&#8217;t achieve the peak temperature for lead-free reflow process. The sample code comes with a default 232\u00a0\u00b0C peak reflow temperature which probably more suitable for leaded reflow process. Some adjustment is required on few parameters and the application level codes. We&#8217;ll post it up once it&#8217;s completed. We are attaching the schematic for the reflow oven controller for your reference.<\/p>\n<p><a href=\"http:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/RS-REFLOW-CONTROLLER-SHIELD-1R00.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-large wp-image-327\" title=\"RS-REFLOW-CONTROLLER-SHIELD-1R00\" alt=\"Schematic\" src=\"http:\/\/www.rocketscream.com\/blog\/wp-content\/uploads\/2011\/04\/RS-REFLOW-CONTROLLER-SHIELD-1R00-1024x723.png\" width=\"640\" height=\"451\" \/><\/a><\/p>\n<p>At time of writing, we have completed making changes to the PCB design for the final revision. This includes some pin swapping for easier firmware implementation and rearrangement of components especially the push button in order for it to be more accessible for users. We hope everything will be ready by early next month and the lead time of components doesn&#8217;t change. Take care.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>No, this post is not about Megatron looking for energon cubes. We just love labeling all our tools and machines with characters from the show we heart when we were young. Alright, finally there&#8217;s some progress on the reflow oven controller. I know many of you guys are asking when they&#8217;ll be available, I hope [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":305,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"footnotes":""},"categories":[14,16],"tags":[151,12,11,17],"class_list":["post-304","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-projects","category-reflow-oven-controller","tag-arduino","tag-prototype-pcb","tag-reflow-controller","tag-shield"],"_links":{"self":[{"href":"https:\/\/www.rocketscream.com\/blog\/wp-json\/wp\/v2\/posts\/304","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rocketscream.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rocketscream.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rocketscream.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rocketscream.com\/blog\/wp-json\/wp\/v2\/comments?post=304"}],"version-history":[{"count":14,"href":"https:\/\/www.rocketscream.com\/blog\/wp-json\/wp\/v2\/posts\/304\/revisions"}],"predecessor-version":[{"id":1456,"href":"https:\/\/www.rocketscream.com\/blog\/wp-json\/wp\/v2\/posts\/304\/revisions\/1456"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.rocketscream.com\/blog\/wp-json\/wp\/v2\/media\/305"}],"wp:attachment":[{"href":"https:\/\/www.rocketscream.com\/blog\/wp-json\/wp\/v2\/media?parent=304"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rocketscream.com\/blog\/wp-json\/wp\/v2\/categories?post=304"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rocketscream.com\/blog\/wp-json\/wp\/v2\/tags?post=304"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}