Engineering a part nobody asked for to fix an obsolete welder you can't buy anymore. The DIY ESAB inverter module saga.

 Working in the welding business has its benefits. Sometimes you get to keep old welders that are deemed unrepairable. Some times the machine is too cheap to repair so it's uneconomical. Other times the part is no longer sold, so sourcing one is not possible anymore.

Well I've happened to receive two welders that are both too expensive to repair and have no parts available. Well, the latter is not entirely true, because the part to fix the welder can still be bought. Unfortunately this part alone costs more than the welder is worth and is increasingly hard to source from the manufacturer. The welders in question are the ESAB CADDY, namely the TIG2200i and another one with more buttons but still based on the same inverter platform. 

These welders have a funny thing about them - all of the inverter power semiconductors are located entirely in a single module, named the PM1. 


 This module does the input rectification, power factor correction, soft start and has the 2 switch forward converter with its switches and diodes all in the form of bare silicon dies planted on a printed circuit board, all joined by bond wires to the tracks and pins of the module. The PCB itself is not your regular FR4. It uses aluminum oxide ceramic as the substrate, which is bonded to a thick copper backing plate to conduct the heat that these dies generate into the heatsink, where it can be dissipated.

But why did they make it all into a single module? My guess is that it was more compact than just using discrete semiconductors. I mean the module has 20 large silicon dies in it, in a tiny 69x29mm area. And for a big company, ordering a custom module like this might not be that big of a deal even. Economy of scale does wonders to custom designs.

Whatever the reason may be, the module explodes. It blows up and when it blows up your only choice is to shell out close to 400€ or more for the entire inverter board with the module already installed on it. And it won't even fix your problem. Why? because most of the time the inverter module fails due to the diode bridge shorting out on the secondary of the transformer. Of course not always, because, of the two welders I have, only one had a shorted diode module. Yet both have blown inverter modules regardless.

To a company these welders are uneconomical to repair, but to me they still have value. Moreover, i took it as a challenge to achieve what ESAB could not, and set out to engineer a module that would have all the functionality of the original and could be used as a direct drop-in, pin-compatible replacement for the original PM1 module. To achieve that I have to know what each pin does and that comes with it's own challenge. The schematic I've included above is only a high level overview of the topology and it's the most I could find. Yet it already gives away some crucial details. First is the soft start using an SCR, where other welders might use a relay. And then the most important detail is the topology of the inverter. This one happens to be a two-switch forward converter, which is a very reliable topology, that is easy to drive and achieves a pretty good power density. It also takes up less space than an equivalent full bridge converter, giving more hope for the project. I was not able to find a full schematic with a pinout of the inverter, so it was up to me to extract the module from the inverter board, tear it apart and see what's inside.



The module was difficult to desolder, courtesy of the large amounts of copper in the inverter board, but i managed to get it out without ruining the board itself. I'll need the inverter board once I'm done building the replacement module. Once the module was out I was able to open it up to reveal the goodies inside and as expected everything is glooped over generously with self healing soft silicone potting compound. This is actually great news, because for starters the compound is perfectly clear so the insides can be seen without removing it, but in order to probe and test each connection I wanted to clean the potting out. Most cross linked potting compounds, such as the silicone inside the PM1 module, are nearly impossible to wash out with thinners or other chemistry. But the silicone inside this module was very soft, so I thought of a crazy idea. What if I tried to blow it all out with a pressure washer? And you know what? It actually worked! Almost all of the silicone, including most of the bond wires (oops) washed right out and left the inside of the module perfectly clean of any sticky mess.



After the module was cleaned out I drew the layout of all the copper planes and silicon dies on a piece of paper and began marking out what each die is and what connections go where. After a couple hours of reverse engineering the design I had all components identified and all connections marked. Some components were harder to identify, because they were blown up. For example all of the inverter transistors were blown and shorted but I managed to measure the dies by breaking off the burned parts of the silicon die and measuring the small parts that were left. I only needed to know which node was the emitter and which is the collector. As a final step, once the layout was confirmed I drew a rough schematic of the module and mapped out all the pins. Now that I have this info I can start looking for components to build my new module.

In total there are 20 silicon dies inside the PM1 module separated into two aluminum ceramic PCB's. Four are for the full bridge rectifier. Which go to one die, which is the SCR for the soft start. Then there are four dies in parallel, which are the transistors for the active PFC, which then go to a single PFC diode die. This concludes the contents of the first aluminum ceramic PCB. On the second PCB, there are eight identical transistor dies separated into two groups of four in parallel. There are the high and low switches of the two-switch forward converter. And last but not least are two dies for the high and low side core reset diodes. Since there are many dies in parallel, the total number of individual components is eleven. With all of these crucial details refined I was able to finally open up KiCAD and draw up a schematic, which I can use to build by own inverter module.


Once the schematic is drawn up in KiCAD it starts looking very simple and there seems to be barely any components in there. Of course obtaining the schematic diagram of the module is actually the easy part. Next I need to decide what components I'll be using and I'll need to then fit them into the limited footprint of the original PM1 module. Then I'll need to connect those components to the pins of the module I am making so that it's a drop-in replacement to the original. And that's the hard part...

I sourced my components from TME, since they're close and often have niche components that other distributors don't. They also ship quickly, which is important when developing a project. It helped alot having some components on hand. This way I could place some TO-220 and TO-247 components on the module and on the heatsink to see how they fit. Fortunately there seems to be enough space for large TO-247 packages. This I great, because most high power transistors come in TO-247 or similar packages, so not being able to fit them would be a huge setback for the project, perhaps even enough to kill it. To hold the pins of the new module and to connect everything inside it together I made a custom PCB. This took many revisions, since I had to not only place components but also to route all traces in an efficient manner to maximize width and minimise length. Best component placement would work against trace routing and best trace routing would work against best component placement, so it was a constant balancing act to achieve the best combination of both. Add on top any component changes and this turned into quite the ordeal. Fortunately I was able to design a board I was happy with and sent it out to get manufactured. 


The design was simple and fit fine on a single sided board, but double sided boards cost the same so I just mirrored all high current copper planes onto the second layer and stitched everything with a generous number of vias. Originally there were four transistors in the inverter stage, so there are four gate drive pins. In my design each is connected to a single gate through a resistor. Since I've found that when the PM1 module gives up it can damage the gate drive, this design allows me to pick any that still work. The footprint of the board fits into the 10x10cm square envelope that most PCB manufacturers base their lower price range on. Going over this 10cm dimension would only increase the cost of the PCB without any significant benefit to functionality.

Okay so I have my components laid out and board designed, but how do I attach them to the heatsink without drilling any holes in it? After all the plan was to make a drop-in replacement, not a drill-out-then-tap-then-screw-in replacement. And nobody wants to drill and tap eleven M3 holes into an aluminum heatsink. For that I came up with a solution. I would use a 4mm thick aluminum heat spreader as an intermediate layer between the semiconductor components and the heatsink. Sort of like the IHS in a computer CPU. There's also another important point to mention. Each component has to be isolated from the heatsink. Most components in my design have a bare copper pad for cooling and it is almost always connected to one of the pins. Since these components rest on the primary side of the inverter, they need to be completely isolated not only for safety, but also because they would become shorted together in between each other and would most definitely blow up in an instant. Perhaps causing even more damage to the main inverter board. To achieve that I used a silicone thermal pad, which I took from a blown up hoverboard motor driver. The driver also had an aluminum heatsink plate, which had just enough material to make a heat spreader for one inverter module.

I had to come up with some way to keep my components pressed against the aluminum heat spreader. At first there was no heat spreader and my idea was that I could 3D print a bracket that would press all my components against the heat sink with a thermal silicone pad in between. But I quickly realized that it would be just too messy and unreliable. My idea with the bracket was that it would press against the components with springs in between to keep pressure, but it was hard to keep everything secured in place and installing the module would be a mess. 3D printed springs would deform and lose pressure over time, making the design into a ticking time bomb and metal springs are tedious to make. If I ever wanted to produce and sell this module it would lead to lots of user error induced failures too, but the user error would be caused by my bad design, so it's on me to make it idiot-proof



This is where I shifted my design away from any springs. I drilled holes in the plate and countersunk them so that I can put in screws from the bottom side. Then the components go on the top side on the plate. There's a large silicone thermal pad covering the entire plate to isolate my components and once they're all in place they get tightened down with nuts and washers. The screws on the bottom are countersunk in a way that they don't stick out, so that the heat spreader can make full contact with the heatsink. A 3D printed template was used to drill the holes in the right spot. 



At this point I wasn't very concerned about the thermals. The logic in my head was based on basic checks. So as long as the components have a thermal interface to the heat spreader I thought it would be good enough. You can consider this as subtle foreshadowing. 

Once all components were secured on the heat spreader, a 3D printed bracket was placed on top. This bracket also acts as a separator for the PCB, which locates it on the pins and keeps it mechanically coupled to the aluminum plate. Once the PCB is placed on top I soldered the pins on the components and then soldered the pins for the module to join into the inverter board. The pins for the module were taken from a standard connector. Each pin had to be placed individually because the spacing of the pins on the PM1 module doesn't fit any standard connector pitch.





Once the module is finished it can be inserted into the inverter board and soldered. But not before setting the alignment of the module. Since it is so rigidly mounted to the inverter board, it has to be aligned to come into contact with the heat sink without deforming the inverter board. The module is adjusted so that each corner of the heat spreader is approximately 17.5mm away from the inverter board and then the pins get soldered.



And just like that the welder is fixed right? Well not so fast. When the PM1 module failed, it also shorted the gate to the drain and source for a short moment. This fed all kinds of overvoltages into the gate drive circuit. The inverter board has four gate drives each for the low and high side transistors and these gate drives each have protection diodes. What I had found is that some of these diodes fails when the PM1 module explodes. Simply removing them is enough to make the inverter board work again. 

Now we can finally put the board back into the welder. So I slathered the back side of the module heat spreader with thermal paste and installed the board. The module was then tightened down with some longer M5 bolts. All wires and connectors were plugged back into the board and the welder was ready to test out. This was by far the most stressful part up to this point. This was the very first start of my new inverter module. And what made it worse was that there was no way to soft start it, or test it piece-by-piece. I had to plug the welder into the outlet, turn it on and expect everything just works and nothing blows up. It took a lot of standing around and contemplating before I could muster up the courage to turn the welder on. I mean, if the module blows up I would have no idea why, since everything would happen all at once. But as I said, eventually I brought myself to flip the switch and find out if this thing really works or not. So I flip the switch and.... uhhhh... no kablamo? Actually nothing happened at all besides the front panel lighting up, which it did even with the blown up module. So far the start seemed very peaceful. I was even doubting myself if this thing was working at all. But to make sure I switched the welder to MMA mode, which keeps the inverter running at all times and measured the output. Lo and behold I have output voltage! So the module works. I then measured the PFC voltage and it was boosted above the 330V rectified mains. This is starting to look promising! Then I took my portable oscilloscope to measure the gate drive signals on the PFC and the inverter and they all had very nice square wave gate drives without any abnormalities. It is important to use an isolated scope in this case, because I am measuring components on the primary side of the inverter. 

Of course the proof of the pudding is in the welding and an inverter running at no load would not really prove that it can weld. So I brought the welder to the welding table and tried welding. First test was at 80A, since there's no point in going any lower. I took a welding electrode and, with the welder in MMA mode, starter welding. Everything went quite well and the welder seemed to have no problem welding at 80A. The next step was to increase the current and try 140A. This time the welder started welding but about ten seconds in suddenly stopped. The welder had shut down and would not turn on again.

At this point I already knew what had happened and to be honest I was a little disappointed yet strangely excited. Perhaps it's the discovery that I was looking forward to, because the module was completely untested up until now and was merely a product of my imagination. Now I had the opportunity to investigate what failed and how to see what next step I can take to make it better. So I took the welder apart and desoldered the module. Desoldering the module was also a bit of an experience, since I didn't want to ruin either it or the main board. So I actually desoldered the pins first. I would heat the pin of the module until the solder melted on the inverter board and the module board at the same time. Then the pin would simply pull out. Once the last pin was pulled out, the module simply fell out.

Pulling the module apart revealed some things. First was that it's difficult to disassemble. Of course disassembling it was never really a consideration. The module was supposed to be installed permanently. But it irks me that it's hard to take apart so I noted that for the next version. Second thing i noticed was that the inverter side had completely blown up together with the PFC diode, yet the PFC transistor and SCR and the diode bridge survived, including the core reset diodes also. OK so that means one of two failure modes. First is that the PFC diode failed and caused the inverter to blow. Second is that the inverter failed and the rush of current blew the PFC diode. In the first case, if the diode flew first, then I believe the PFC transistor would have blown before the inverter, since a shorted diode would cause the PFC transistor to short out the main DC filter capacitor, which I think would make it explode quite violently due to unlimited current dumping into the transistor. The second failure mode is more likely as indicated also by the transistors themselves. The thermal tab of the IGBT shows signs of molten tin plating, which means this component overheated quite heavily. Cracking open the IGBT revealed a failure I had not seen before. The IGBT blew so hard it melted a crater into the copper tab of the transistor, which is quite impressive. Of course the transistor failing is terrible, but now I am confident that the failure was caused by insufficient thermal interface, causing the transistor to overheat and then causing it to fail as a result of the excessive temperature rise.



So what do I plan to do about it? Well I want to make the thermal interface better, but how much better can I make it? Just looking at the back of the transistor shows that the silicone pad was not making full contact, that means I was losing performance there and doing some research confirms that thermal performance can be improved about twofold by just applying some thermal paste on both sides of the silicone pad where the transistor is mounted. But I did not like this approach. To me the entire reason  to use a silicone pad was that it required no paste to work, as the silicone itself conforms to the surface and it is cheap and easy to cut into a shape that covers my entire heat spreader. Of course I have since found out that it is not enough, so I started looking for better options. The first thing that came to mind was an aluminum oxide thermal pad or a mica pad. These have great thermal conductivity and are very inexpensive, but I got curious. What other options are out there? Perhaps I had tunnel vision and there was something much better. And I was right to check out my options, because that's how I discovered aluminum nitride. The intrinsic thermal performance of aluminum nitride is about 10x better than aluminum oxide, which seems incredible. Of course there would be bottlenecks elsewhere, like the thermal paste for example, but the net performance would improve significantly just by switching to aluminum nitride. Aluminum nitride pads are not easy to find in local suppliers. Places like TME don't stock them but aliexpress comes to the resque and delivers aluminum nitride thermal pads for my TO-247 transistors for just 1€ a piece, which is quite expensive for a thermal pad, but very reasonable considering the application and the overall cost of my module. The problem with aliexpress is that it takes foreeeever for the parts to arrive. I don't mind paying extra for distributors like TME, because their parts arrive the next day. But aliexpress shipping is slow and I was forced to wait after placing my order.

I could not sit idle while my thermal pads were on their way so I used the time to simulate the inverter stage on LTspice and found some interesting things. First was that, at the switching frequency of the ESAB inverter, which is 64kHz, IGBT's are terribly slow. IGBT's are not really known for fast switching but I figured that, if the ESAB diagram shows an IGBT then that's what I will pick also. But at a simulated output load of about 200A my AOK75NB65H1 IGBT that I had selected for this module would create approximately 220W of heat, which all had to be dissipated into the heat sink. This is absolutely terrible. The IGBT by design can dissipate that much, but there are so many intermediate layers to the thermal interface that I could not possibly expect it to handle switching the inverter at full load without heating up beyond failure. So I started simulating other transistors that I had in stock, like the IKW50N60, which would surprisingly drop the simulated dissipation down to 205W even though it's rated for lower current. Other IGBT's like the BXPD-E75T65HD would drop the dissipation even further to 190W. After testing many more IGBT's I notided a trend - all of them had high power dissipation and any improvements were barely incremental. Testing out MOSFETs rated for similar current reveals some interesting details. MOSFET's like the FGH60N60SMD would immediately drop the power dissipation down to 145W, which is a huge improvement and that aligns with the widely known fact that MOEFET's are better for high frequency switching than IGBT's. I'm not sure why ESAB would switch their IGBT's at 64kHz, because even the high speed IGBT's don't like switching any higher than 30kHz. I selected the FGH60N60 FET for my simulation because I had it on hand, but I filtered out the MOSFET section in TME and found some better options. Among the best were silicon carbide MOSFET's like the S3M0016120D, which are new to me. I knew of gallium nitride, but never noticed silicon carbide. They are about 2-3x more expensive than equivalent MOSFET's/IGBT's with similar current rating, their main selling point being their extremely fast switching times. Plugging this MOSFET into the simulation reveals the truth - 50W power dissipation at the same conditions where IGBT's produce in excess of 200W. This reduction in power dissipation was so dramatic that I thought my simulation just broke or something was wrong, so I double checked everything and it's true. These SiC MOSFET's are just that good. A large part of the improvement is in the faster switching. Spending less time in the transition between ON and OFF reduces losses significantly. Of course they cost a bunch, but to me it might just be worth it, since I'm bound by the footprint of the original module. Normally you can just add more transistors in parallel like in the PM1 module, but in my case I was limited to what I can buy and fit in the available space.

After a couple weeks of researching and simulating loads of various MOSFET's and IGBT's, my aluminum nitride thermal pads finally arrived. Normally aliexpress shipments come in a baggie with a shipping label stuck on it, but these pads arrived packed in a box with loads of bubblewrap to protect the small bundle of 10 thermal pads in the very center of it all. Taking the pads out was quite and experience because these were the thinnest pads I could buy at 0.5mm thick. The ceramic felt very sharp, not like a knife, but the smoothness of it and the sharp corners made me feel like I'm holding a piece of broken glass. I wasted no more time and went straight to building a new module. This time I would add a pad under each of the inverter transistors leaving everything else on the silicone thermal pad with thermal paste on every component. There was barely enough space for the pads because the transistor screw hole would not let me move the pad away from the mounting hole of the inverter module. A small piece of the pad had to be cracked away to make space for the mounting screw. I assembled the module with the IKW50N60 IGBT's because I did not have any spare AOK75NB65H1's left and these seem to be performing similarly in my simulation. My reasoning being that if these are not enough then any similar MOSFET alternative would be only marginally sufficient if at all and I would immediately have to skip them for the SiC MOSFET's to make sure I have good margins of safety. The last thing I want is for my inverter module to be only just good enough to not blow up right away. Welders are meant to be abused and I want my module to handle that abuse.

With the module assembled and installed I went to test the welder out again. This time starting at 100A and succesfully welding a full electrode's worth. Then I upped the current to 140A, which welded ok. I was a bit careful because that's where the previous test failed, but as I kept welding I was gaining confidence. Seemed like the thermal pads were really working. Of course this wouldn't last for long. I had about half of a 4mm 6013 electrode left and decided to weld it in one long bead, because up to this point I was still making shorter beads. So I struck an arc and just as I was about to finish the remainder of the electrode, the welder shut down again. Exactly the same as the first time. Not great, but you know what? A definite improvement in comparison to the previous test.

So what failed now? Is it the same as before? Well actually no! This time the PFC IGBT failed, which was a pleasant surprise. The diode bridge and the rest of the inverter module survived just fine. So the pads really were doing wonders for my component longevity and thermal performance. I later even managed to use the inverter module to build a two-switch forward converter for a 400Hz inverter that I used to drive a modified 400Hz microwave oven transformer for my inverter spot welder experiment, which produced current pulses of over 3kA. But I digress, the module was not usable for the intended purpose anymore so I had to make a new one. Of course this means I would have to put a nitride pad under the PFC transistor as well to prolong its longevity. 

At this point I was out of IGBT's for a new module, because I bought only enough of each variety for one module. Developing these is expensive so I didn't want to buy a bunch of IGBT's I wouldn't use anymore afterwards. I didn't feel quite confident enough to reorder the same IGBT's again to make another attempt. So I chose to go the MOSFET route and, while there were really good silicon options, those SiC MOSFET's caught my eye and I couldn't stop thinking about them. So I splurged on a few S3M0025120D-SMC MOSFET's, which are not quite as good as the S3M0016120D but are significantly cheaper and are still leaps and bounds above their silicon counterparts.

Not long after placing the order, the courier came knocking at my door - my fancy MOSFET's had finally arrived. To say I was excited would be an understatement, but I was also tired and really wanted this to be the last time I'm making changes to my inverter module. By now I had also changed the 3D model for the 3D printed case of the module so that it would hold the nuts for the screws for my components. Once the PCB is soldered on it's impossible to access these nuts and to hold them from spinning if I ever want to take the module apart and swap one component without desoldering the entire PCB. So the nuts are held from spinning by the 3D printed case. My 3D printer couldn't make the hex holes for the M3 nuts to fit right when printing with PA12 nylon with 15% glass fiber, but a Torx T45 tip works wonders for sharpening those corners to get the M3 nuts to fit just right. The iterative design made the project feel more and more refined with each set of changes.

Of course all of this talk about refinement means nothing if the module blows up again and to find out whether it does or not can only be found if I rebuild the welder for the third time. So I did just that and built a new inverter module yet again. This time I added a nitride pad under the PFC MOSFET and under the soft start SCR (might as well, right?). The diodes got a silicone pad, because that seemed sufficient for them and they didn't show any signs of overheating.

 The module was then soldered back into the main inverter board, which was looking a bit tired after all of the desoldering it has gone through, but still functional nonetheless. Quite impressive considering what it has gone through. With the welder assembled back together I tested all the gate drive signals to make sure everything was working right. To my dismay the PFC signal was gone and the bus voltage dropped to 320V. This is not good as PFC is a crucial part of the welder as it allows to make better use of available electricity without blowing breakers, like some other welders do. It is also important in stabilising the voltage for the inverter stage so that it can produce a more controllable and predictable output. The welder would weld even without PFC, but the results would not be representative of the true performance of the welder. So I started probing and testing the components in the PFC circuit. If the PFC transistor blew, then perhaps it damaged the PFC controller and now it's dead? But everything in the gate drive circuit seemed to be ok, all connections made sense and all components would test ok. Then I tested the PFC controller IC and no signal was coming out of it. Perhaps the gate drive is ok and the controller itself is dead? So I probed the power supply for the controller to make sure it's powered on and there was nothing. Strangely, the controller had no power coming to it. But what happened? Did the PFC circuit fail in such a way that it killed the power supply going to it? So I took a look at where the power is coming from into this module and that's when I noticed it. A lone 3-pin connector dangling right next to a vacant 3-pin header on the inverter board. It's the power supply for the PFC circuit and I forgot to plug it in. All this hassle and testing just because I missed one connector. So I plugged it in and the PFC came back online and my gate drive signals were sharp as ever. Hey, at least there's no real damage apart from some wasted time. 

Okay, so with the welder finally assembled and fully working I brought it to the welding table yet again for round 3. This whole procedure had started feeling like a routine by this point. Like the bi-weekly blowing of a homemade inverter module. Unless it actually doesn't blow this time, so let's start cooking. For starters I took a 3mm 7016 electrode, as I did in all previous tests. Turned the current to 100A and started welding. I was most certain that this would be just fine, but had to make sure it works just to set a baseline. Predictably so, the 100A test went smoothly and the welder is a joy to weld with. Next step was to turn it up. So I grabbed the killer 4mm 6013 rod and started laying a bead at 140A, which the welder handled no problem. Felt like the welder did not even break a sweat. So as a final test I took a 5mm 6013 rod and turned the current up to 160A. I did not feel like turning the current up any further because the breaker in the outlet already trips at 140A with machines that have no PFC. So i started welding with short beads, just being careful, but then I thought to myself that there's no point in doing short beads so I leaned in and started burning that electrode in. The welder handled it like a champ and I only had to stop welding because my piece of steel wasn't long enough for a longer bead.

That was enough testing for the day, so next day I took a 15x15cm plate of 10mm steel and decided to give the welder a real stress test. I grabbed a handful 5mm 6013 electrodes and laid beads non stop into the thick plate until it was glowing red and it felt like welding on it any further would make it melt apart. In total I burned three electrodes consecutively without stopping at 160A and I think that is good enough to call this a job well done.

This finally felt like a release from endless iteration. It had gotten tiresome at this point and, as exciting as it is seeing the design evolve and mature, it had to be finished. The entire project was started to serve a purpose after all and it felt like this was it. I was finally confident with my design. They say perfection is the enemy of good enough and it felt like this point was the goodest enough that I could make it before slipping down the slippery slope of perfectionism.


This post kind of shows why I don't post much - there's so much writing. But I do muster enough boredom occasionally to finally do a writeup on one of my projects. That's it for now and thanks for visiting my blog.

Komentarai

Populiarūs šio tinklaraščio įrašai

Infrared RGB LED controller using Digispark (Attiny85).

Playing with junk: the SN29764 (LM1017) 4-bit binary 7-segment display driver.

Modding a laptop power brick into a lithium pack charger and some Manhattan style prototyping.