This is a web blog about me sharing my ideas (sometimes outrageous) based on a “boiling pot” of electronics, programming and manufacturing. Again, I would like to state that some of my ideas may be out there as I love to brain storm, in the physical sense. My ultimate goal is to learn by creating. To do so, I need to actually build stuff instead of thinking about building stuff. I hope that this stuff will become useful to me and to others that may casually browse to my page.
My secondary goal (more like hope) is that others may learn from what information I provide and, maybe, help me learn by providing some information. Some of the projects I present may seem like I am spinning the wheel with the, “Been there, done that before” mentality. But, I do it with a reason–to learn. I intend to build things that I would consider useful, interesting, and low-cost. My thoughts are, why explore something if it will not provide a suitable return (function and knowledge).
So, stay tuned for what I plan to offer.
Hello – nice work here. I want to spend more time building and programming robots but life gets in the way. My most recent approach has been to try and combine robotics and gardening, mainly by building a nice colorful workspace to test robots. You temperature probe is cool – I might add something like that to a chassis in the next few weeks, to check temps
in planters and wirelessly send values to my pc. Why? Why not?
Anyhow I will check out what you have got going on here. Keep it up.
Cheers
Dave
I second that. And what a prolific designer! Just beginning the process of building this project: Hobbybotics Reflow Controller V8.03. Even though you’re working on yet another one this unit will definitely work for me. I’m always trying to save $$$ thus went to MicroCode Studio for their basic software (free for personal use only). Had no issues there that I was unable to resolve thus the project compiled and generated HEX… so time to put some hardware together! Basically going with your flow there (but no serial port as I only require a standalone unit for my purposes). IF C# (once again the freebee version) had USB support though I’d go for that but alas it only appears to support a serial port (but could use a converter I suppose… busted port on the MB though). anyhow I can always install it later if I locate a workaround somewhere. I procured the exact same oven that your project is using (they are still available as of May, 2013). Nice oven 1500 watts, convection fan. yeah that works. hopefully I won’t need to purchase the MEL ICD programmer as it appears that MicroCode Studio supports Microchip’s PicKit2 as I’d gain the advantage of having the actual debugger (without having to spend additional $$). Wish the source was assembly though as these higher level compilers gobble up RAM like there’s no tomorrow. Solution? build a bigger “box”! Anyhow notwithstanding was very fortunate to run across this project. Save $$, gain some insight what’s a better deal than that?
-Lee
Sweet blog! I found it while surfing around on Yahoo News.
Do you have any suggestions on how to get listed in Yahoo News?
I’ve been trying for a while but I never seem to get there! Appreciate it
Curtis… couldn’t find the 8.03 lead so here I am! Anyhow on this reflow oven the saga continues. Lastly I reported on my attempt with using heat gun coils. Well you cannot install them within the box that you’re attempting to heat (like the original coils). After a few days the coils self-destruct. Got to thinking about it. Heat guns are like a lot of coil windings. they require ambient or at least cooler air to pass over them. the key is the nichrome wire can’t get white hot!
So what to do? A couple of options come to mind so I’m trying the cheap route first. a couple of heat gun guts kinda “strapped” to the outside of the box… but directing the business end very, VERY hot air into the box via some fabricated sheet metal. Right now I just have one 750 watt coil & it gets pretty hot in that box fairly quick. now these heat guns have a 1500 watt setting and I’m gonna be using 2 of them. yeah need to plug this into either a 30A, 220 outlet or 2 separate 115VAC circuits. (as 3000 watts total is gonna trip a 20A breaker in short order).
the reason I like these coils is that they sport a very quick response due to lack of overall mass. for that reason we can’t use an electric range top coil as those things take way too long to heat up or cool down (too much mass). I notice that the pro ovens use ceramic infrared heaters for the most part with BIG fans for cooling once a setpoint is being approached. they also of course use PID.
What I’m going to try first is use the 750 watt settings on the heat guns (via their switches that I’ll make available at the back of the unit). if 1500 watts does the job (I think it will) then we can leave it at that and subsequently use just a single 115VAC, 20 amp circuit. will let you know how this setup works.
Lee, have you tried circulating air across the coils? My idea would be to put them into a metal or aluminum tube with some slits or holes cut along the length of the tube. Then, I would put a fan at each end to blow air across the coils and pull it out the other side. sorta like how the heat guns natively work except, the air would not be moving as fast.
Curtis
Curtis… right. something similar is to simply leave the coils within their designed containment. however if you slow the air movement very much more than likely over time those coils are going to suffer some dire consequences. better to keep the air flowing full bore across them and use diverters to spread the business end out of a larger area to slow it prior to actually entering the box. I’ve built a box within a box to cut down on the cubic inches required to heat. so what I’ve done was to mount each containment assembly (the round metal tube that contains the coils) one to each side of the metal box. now these metal tubes receive ambient air which blows across the coils which in turn gets very, VERY hot (the only thing missing is the outer plastic case). I then direct this hot air into the box with a couple of simple diverters on either side of the box (the input to the box is about 3X the size of the business ends of the metal tubes so it really slows the air). the results is a very hot box indeed. however a problem I’m now having is this rather wimpy convection fan. it needs to be replaced otherwise the heat will not be distributed throughout the box evenly enough as my input is in the lower front side quadrants of the box.. another issue is outflow. air needs to continually escape or the coils are gonna wind up getting too hot. so one needs at least some escape route here when pressure builds up within the box. I think enough gets out around the door though as this does not seem to be an issue.
Right now I’m running each coil set at 750 watts which keeps the total amperage within range of a 20 amp breaker. I’ve also insulated the inner box somewhat to keep this heat better contained. the idea here is to have a ramp up of at least 1.5C/sec (which is the minimum requirement from soak to reflow on ROHS profile). note that 1.5C/sec is also just about ideal for initial ramp up. however I’d like to have a bit quicker ramp to reflow as this a bit less stress on everything. I’d then scale the ramp up back on the initial pre-heat (by cycling both coils off/on for a brief period, as necessary). note that both coils will always be on/off coincidentally. yeah hopefully the 750 watts will work. if no then I gotta go with 1500 watts on each side which of course requires the oven to be plugged into either 220VAC or as an alternate plugged into 2, 115VAC separate circuits. I’ve already tried the 1500 watt settings and tell you what the box gets really hot, really quick! thus as a worse case scenario its gonna be brute force with 1500 watts on each side. right now waiting on a larger convection fan assembly before moving on to actual ramp testing. once I get this problem corrected its on to other things here.
first I need to replace the MCU with a drop-in (16F887 works here). reason? I need more flash as its incredible how much RAM gets sucked up with this compiler (compared to assembly). one of the reasons for this is I need a summary to display after reflow completes. I also need a Fahrenheit display (I’ve designed a close proximity algorithm for that as this compiler is integer only). I also need an up counter on the ramps. and finally I’d like a counter on how many times the thermostatic fan cycles on a reflow. and I’m down to about 250 bytes remaining right now with only the Fahrenheit display covered. so the 16F877A hasta go.
also talked with FAB. they indicated that a high heat PCB is available for only a tad more $$$ (specifically for ROHS). this is out of China. reason is that at 235C I’m smoking the test PCB’s fabricated for thru-hole. the problem may NOT be the PCB’s though as ramp has been taking way too long previously which of course over stresses same.
-Lee
Lee, a new version of the firmware is up on my Github site. It’s labeled reflowPID5H. There was an issue identified with the bake routine that prevented it from working properly.
Let me know how this works out for you.
Curtis
Curtis… I’m not using that procedure as its not needed for my purposes. I’ve also modified your code so heavily that you’d recognize it being the author. but probably only just barely! and I’m not done with it nowhere close. was looking at swordfish as they have an unrestricted freebee version with the only thing being no bank switching. no matter as 256 bytes of read/write RAM is a lot more than most projects need thus this is not really a significant limitation. not only that bank switching is a REAL pain-in-the-ass to be perfectly frank about it. reminds me of the old 16 bit days (prior to win2000) when trying to build apps to run under windows.
anyhow swordfish has some significant upsides and unfortunately, downsides. upside is they support real numbers. but they only support the PIC18F family. however its a structured compiler. big plus there, no spaghetti code. variables can be separate entities (with the same name within differing procedures)… I can deal with this so far. however I like everything supported within the IDE and microstudio does that. well not the freebee version (no ICD but at least its available for $$$… may be another solution here though!). swordfish you gotta go outside to have ICD (MPLAB). anyhow more research but more than likely would go this way on any new project as I like BASIC for doing this kinda work (but never used it for embedded work).
There may also be a workaround for no ICD support under MCS. legacy (2.5) version. I can load a clean version of that under winXP (this box has just about every PC based OS known to common man on it).
Yeah, I like PicBasic Pro but, I don’t like the non-support for real numbers. I prefer C but, didn’t like the commercial options/support at the time of purchase. That’s why I have moved a lot of my projects over to AVR.
Curtis
Curtis.. for high level languae usage my preference is actually Delphi under windows and Lazarus under linux. that’s for rather large apps though (several years removed). these are object pascal based (Microcode studio is written under Delhpi 4, btw). one reason I like pascal over C or C++ is its very strong typecasting… a place where C really falls flat. I also hate the string handling within C/C derivitives. whereby pascal has very strong string handling in comparison.
but no I don’t like the absence of real numbers either. that’s why I gotta look at swordfish a bit here when I have more time. its structured and supports real. but alas its part support is relatively narrow. the plus side though is most of my stuff regarding MCUs uses the PIC18F family anyhow (as I really prefer assembly there).
yep, to each his own. there probably are as many coding styles out here as their are coders! I write too much for example. however the advantage to that is if I come back to something years later I can actually figure what it was I was doing at the time.
-Lee
Yep, pascal is a favorite of mine also. I like to throw in fortran and atlas to boot. For Microcontrollers I prefer C but for x86 and such I prefer C++, C# and assembler. I agree with you on C’s horrible string handling
Curtis… well you’re up on me, that’s for sure. fortran? and I don’t even know what “atlas” is. and x86 assembly is a nightmare and especially for me as I got a memory much akin to a pile of pooh (as even the instruction set of the PIC18F family is taxing on the poor thing enough!).
you know this digital evolution is not really infinite even though in the early go it appeared to be. I mean we’re now up to 64 bits as the default standard (even though the majority of my OS’s are still 32 bit). I’ve forsaken all the 16 bit stuff though a few years back. yeah the big red delete button came out on those. I wasn’t the only one glad to see 16 bit go bye-bye as it gave MS fits regarding stability.
in 2004 I started loading up ubuntu and now linux (but not ubuntu) has become my default OS. I’ve found right from the get-go that linux had several BIG advantages over windows. however in saying that win7 took a big step forward regarding stability… and it almost (but not quite) now rivals linux in this regard. but the big downside still exists (NTFS). yeah. linux’s file system just blows windows completely away and there is NOTHING MS can do about this due to the huge installed base (the concept of the C: drive suddenly becoming sda1, sda3, sda7 would also definitely be a gray-matter challenge as most windows users are in fact, novices (regardless of how long they’ve been using it).
anyhow I talk too much…
-Lee
Lee, this is good stuff. Atlas is more geared towards instrumentation where you are controlling a bunch of test equipment under computer control mostly using an HP GPIB interface.
I also use Linux and find it far more stable and advance than Windows. I still use Unix which is where I started with Fortran. Keep up the good work and I’m looking forward to seeing how your beast of a project turns out.
Curtis… beast is aptly named! a coupla weeks ago something nasty got into the controller and blew the picKit 2, the MCU & I just found out, the max6675. replaced the formers but after doing so I got no datastream out of the 6675. so back again in wait mode. once I receive the replacement (hopefully thurs) serious testing begins as the new convection fan package appears to be working great. this is a two, perhaps three step process. I first need to determine which setting on the dual heat gun business ends I’m going to need (750 or 1500 watts). hopefully the 750 watt setting will get it done here. but without a working 6675 anywhere nearby I have no clue. ideally I’m looking for 2C/sec on the reflow ramp up. if so that should work on the initial ramp as well because ambient here is reading 23C, 24C and it needs to ramp to 200C within what? 2 minutes, minimum? these profiles seem to vary considerably though. one of them wants 150C in 60 secs. that would be about a 125C rise or almost exactly 2C/sec. so that’s what I’m shooting for. so what I’ll do is ramp at that rate (via either 750 or 1500 watts on each gun). then slow it down by cycling the guns off/on for the remainder of the ramp to 200C. then hit it again at full bore from there to reflow (235C)
Secondly I need to test how even the heat is being dispersed within the box. to do this I’ll toast a piece of white bread with the crust removed. I’m looking to burn that bread evenly across.. or nearly so.
anyhow win7 is pretty stable. its only gone south on me a coupla times in the past year or so, believe it or not. its a lot better than any incarnation in many other respects too. but its slow compared to linux.. and its ostracised a lot of legacy hardware (an issue linux just does not seem to have). and the more you run it the slower it gets. I’m also looking over my shoulder regarding security (I don’t access the internet from there except for security updates). linux simply rocks in comparison. just so much easier to do stuff & the sheer amount of open-source packaging is unreal. I like putting distros on usb sticks and testing without installing.. just another no-no regarding windows. Fortran & unix, huh? worked with unix a bit years ago and I do mean years… 60’s. this was at RCA when they were still in the big boy computer business. the PSU’s for those guys only weighed about 3… TONS. remember one time dropping a large screwdriver across +5VDC & ground. blew the screwdriver in half… never even powered the thing down. 440VAC, 3 phase was the input.
-Lee
Curtis… this project is now complete. however I was checking ebay & they have some infrared heater china units (specifically the 1962A’s for around $250) available that look pretty good. however upon reading reviews maybe not so good.
anyhow the project taught me a lot and the result is I have a really nice working (but NOT nice “looking”) reflow oven. it draws a lot of power though. 3KW that needs to be plugged into two separate 115VAC circuits… not just two receptacles. alternately the user could connect via a single 115VAC @ 30amps but then one would require a receptacle & wiring to support this.
the heat gun business ends worked great but the 1500 watt wirings needed to be used on two guns wired to separate circuits as mentioned above. these do not seem to be nearly efficient as these infrared heaters but I never bothered to research them.. the noted unit above only uses 800 watts though & checking around it seems that may be the way to go. I didn’t go there though!
these two guns though work great. and the new 3 1/4″ diameter convection fan being driven at 1800 rpm keeps my testing white bread perfectly even indeed. both sides evenly tanned all the way across and when I ate it the bread was crunchy all the way through (like a saltine cracker).. that’s going to be a downside with the China units.
per the ROHS reflow report the initial ramp up was too fast with these guns… about 60 secs to arrive at 150C and this was from room temp initially. I slowed that down by cycling every 4 sec off for one sec & popping on the thermo fan for that sec as well. I didn’t bother putting that choice in code for user changeability but instead hard-coded it as I’m the only guy in town that’s gonna be using it anyway. and besides I’d have to up the flash anti anyway (via the 16F887) if I were to go that route as only about 250 bytes remain.
the ramp from 200 to 237 takes about 20 sec just about dead on specs. if I keep the door closed on cooldown it cools a bit slow with all this insulation packed around so now I open the door & have about a 4C/sec cooldown. I cool the thing all the way down to 36C by default. bang-bang keeps the temp within 4 degrees of setpoint but if I had to do it all over I’d probably forsake that for your original PID. that bottom mounted thermo fan comes in mighty handy though especially during cooldown.
if you wanna see the rather ugly (but very efficient) “assets” of this please let me know how to go about it. oughta be a way to attach some pics around there but I can’t find it.
-Lee
Lee, congrats on finishing the project. If you email me your pics with a brief description, I will add a post for your project. I don’t believe wordpress allows pictures in comment posts.
Curtis
Curtis… well I’m not finding an email address anywhere and no, wordpress doesn’t allow attachments. kinda strange there but maybe they simply don’t have the server headroom. anyhow I was doing some research on those China units. they’re using ceramic infrared elements but those things are slow to respond. only thing I can think of is that they’re placing the PCB very close to the element(s). and the reviews indicate that hot spots are a serious issue (which my design does not have). one item I found the hard way is that one needs a “serious” convection fan… not the wimpy thing that came with the original oven.
today I ran a test with a very small PCB (3/4″ X 2″). stuck a coupla 0603 sized components on there with some ROHS paste and it worked perfectly (the PCB didn’t move from air stir either). the reflow process didn’t smoke the PCB in any way and the components flowed quite nicely. thus a standard FR4 type PCB works. cooldown is too quick with the door open at beep though so I leave it closed until the temp drops below 217C (I’m sitting there watching it). but as soon as it passes 217C going south I open the door. at first the temp crashes (about 5C/sec) upon doing that but after a bit of time passes the venting slows appreciably. it takes about 5 minutes to cool it down to setpoint (which I have set to 36C) so I can comfortably reach in and grab the PCB with my bare hands.
One of the problems with this I believe is that the chamber is still way too big… the reason for 1500 watts being required on both guns). its 6 X 6 1/4 X 9″. it seems that the professional units (and that chinese unit) sports a much smaller cubic inch area. the upside to the relatively large area though is perfectly even temps throughout (as determined by a few “bread” tests).
On Sat, Aug 10, 2013 at 11:57 PM, Hobbybotics
Lee, you can email me at Curtis.h.brooks@gmail.com.
Thanks for the good documentation on the solder reflow oven controller. I built a clone, the built is documented at http://www.steeman.be/posts/Solder%20reflow%20oven/ in case you want to check it out. It works like a charm!
Thanks again and keep up the good work!