Introduction: Simple DIY Dual Pulse Spot Welder With Arduino Controller and Screen (microwave Transformer Based)
So you want to build your own spot welder? I did too! I found lots of good how-tos out there, but most of them require hard to find parts, custom PCBs, or some other such barriers to entry. So I decided to take the principles that I learned from reading all those how-tos and make my own version of them. I tried to make this spot welder as simple yet robust as possible.
This spot welder sports the following features:
- Simple construction (they all do really)
- Stock arduino and components
- Recycled parts (of course)
- Single button menu system with definable preset options as well as a manual use setting
- Temperature sensor to prevent catastrophic/dangerous failure
- Handheld button or foot pedal activation
The only thing that might be hard to find is an enclosure for your 16x2 LCD screen. I 3D printed mine since I have a printer, but really you can make one out of wood or plastic or whatever you have lying around. Most of the parts I used were recycled from garbage or left over from some other project. Everything else I bought on Amazon or at a local electronics parts store. You can make this spot welder for less than $50 if you play your cards right. While I used some power tools for parts of my build, everything I did can be done with hand tools and a little more elbow grease. In fact, the case I cut by hand since I did it late at night and I live in an apartment. It's a little rough, but looks ok.
While I took lots of pictures, let me apologize for a lack of step by step pictures. I'll try to make up for it with awesome descriptions. There are 5 main parts to this build: a MOT (microwave oven transformer), an arduino (any type will do), a solid state switch, a 5v power adapter, and a 16x2 LCD screen (again, any type will do). I'll include a full parts list in the next step.
I added a temperature sensor after I "finished" the thing to prevent any heat damage or shorts, and I encourage you to use one too. If not, just take care to let it cool after several long manual pulses. It will get hot if used in manual mode. There are pictures of the temperature sensor, but it isn't shown in the video.
FYI: I only just finished this how-to. Let's consider this version 1.1 (originally 1.0). If there are any changes I'll make them and update this number here. Please inform me of confusing sections or missing information and I'll update ASAP.
Changelog: 1.1 - updated the prototyping step to correct D3. It should connect to the negative SSR terminal. I also added a note to the MOT preparation to recommend connecting the transformer core to a ground prong on your power cord.
Step 1: Required Materials and Tools
Here's the list of things I used to make this spot welder. You can substitute anything for whatever you happen to have nearby. If you have the basics with a close enough match, it is bound to work. (After typing this out it seems like a lot, but I'm being overly thorough. You can get by with less.)
- soldering iron w/ solder
- small hack saw
- small wood saw
- rotary tool with cutting bit (diamond or whatever)
- screw driver (electric or not)
- electric hand drill with assortment of bits (2-6mm metal and wood)
- 3D Printer (if you want to print the LCD case; otherwise build a small case)
- wire strippers
- wire cutters
- channel lock plier or other pliers
- chop saw (optional but faster)
- drill press (optional but straighter holes)
- crescent wrench (for holding the long bolt; more pliers would work)
- general knife or hobby knife (cutting insulation, carving wood)
- wood glue (fast dry is good)
- prototyping gear for electronics (optional but useful: bread board and wire)
- small gas blow torch (for soldering the jumper cable optional if you do something mechanical)
- hot glue gun with hot glue (for random insulating and securing things)
- level (small is good, for leveling the top arm: optional if you have a good eye/don't care)
- multimeter/voltage meter/continuity tester
- heat gun (for the heat shrink tubing, optional: hair dryer is ok or a lighter or torch)
Materials (no specific sizes. I used what I had on hand then bought what I needed)
- MOT (Microwave Oven Transformer) 2kv or something from a high watt MO.
- Arduino (I prototyped on an Uno but embedded a Nano since they're cheaper)
- 16x2 LCD (The sketch is set for I2C, but can be modified for parallel)
- tactile temporary button switches with long buttons (short are ok, but harder to press) x2
- 10k thermistor (needs a range of at least 20C~90C; larger range is better)
- 10k resistors (x3: 2 for buttons, 1 for temp sensor)
- perf board (prototyping board for soldering)
- copper rod (mine was 7mm. I think 5-8mm is the range you'll want maybe smaller if for batteries)
- power cord (from the mircrowave or whatever)
- AC to 5VDC power supply/adapter (mine is 1 amp)
- 40Amp SSR (Solid State Relay; get one that matches your location mine is 32-360VAC or something with 3v signal at 30ma)
- a little extra power cabling (the same size or thicker than the power cord)
- some scrap wire (maybe 50 cm or less of random small wire more info later)
- scrap wood for a base, arms, and case (new wood also ok, how much/big is up to you)
- 1200 amp jumper cables (or other large guage copper wire; thicker = cooler and more amps)
- 1-2m of USB cable (for wiring electronics)
- 1m of 2 core insulated wire (for wiring the buttons)
- copper battery terminals (usually a set of 2, which is perfect)
- long M6 bolt (this metric stuff can be substituted with whatever you think works)
- M6 washers (wide)
- M6 nylon lock nuts (2)
- zip ties (as many as you want for securing your cables. I only used 3 for the thermistor cable)
- Heat shrink tubing (you'll need enough/right size for re-insulating your jumper cables and a little for small wires I used 10mm and 4mm)
- wood screws to secure whatever wood you use
- small screw hooks like for hanging things on the wall x2 (this is for a tension spring for the top arm)
- a spring that will fit the space between you top arm and base
If I have left anything out, I'll add it ASAP. Please tell me if it seems like something is missing.
Step 2: Prototype Your Electronics
Since I built this using only the basic principles of other builds, I tested everything for viability as I went. I encourage you to do the same since it can save you time and money if things don't work out for whatever reason. First, lets get our electronics in order. This was my #1 priority in this build. I wanted a simple interface to determine the pulse widths without using a dial. If this isn't so important to you, you could cut out all the electronics and just attach a momentary switch between the AC line in to the transformer. Minimal is best, but only as long as the desired functionality is maintained.
If you have a bread board, this will be a snap. If not, some perfboard (the blank pcbs with all the holes) will work, but mistakes will be harder to correct.
The first step I recommend is the LCD screen. I used an I2C based LCD. This cuts down on the number of wires required, but isn't the cheapest or only option. It does, however, require a bit more setup with the software and the Arduino IDE. Here is the website that taught me everything I know about this LCD and it's proper use:
You will need to install the "NewliquidCrystal_1.3.4.zip" library if you are using an I2C LCD (described in the above link). If not, the built in LiquidCrystal library will be fine with a parallel communication LCD. The instructions for this step are in the above link. The most important information is that Arduino A4 goes to the LCD SDA pin, and Arudino A5 goes to the LCD SCL pin. While building my welder I had a little trouble getting the screen to work at first, but the solution was very surprising. Don't try to run the LCD to the RAW 5V rail directly. It wouldn't work with my screen. Tap into the Arduino's 5v output pin. Also be sure to select the correct Arduino and port in the IDE. I prototyped on an Uno but embedded a Nano, and that caused a little trouble until I realized my mistake. These things can be easy to overlook and difficult to figure out. I spent about 2 hours troubleshooting before I tried changing the 5v supply to the Arduino output 5v pin. That was very frustrating and even more so when the answer seemed so ridiculous.
Now load up the attached Arduino sketch named spot_welder.ino. Again, if you're using I2C, you'll need to update your library, if not, you'll need to modify the lcd commuication declarations at the top of file. If that is too much for you, be sure you get an I2C LCD.
Now lets connect the buttons. If you're not sure about connecting buttons to an arduino, you need to attach a 10k ohm resistor in order for the Arduino to recognize them properly. The menu button connects to D4 on the Arduino, and the weld button connects to D2. Here's more info on how to connect the buttons properly: https://www.arduino.cc/en/Tutorial/Button
Now for the SSR (Solid State Relay). D3 on the Arduino should go to the positive DC terminal on the relay, and the negative DC terminal will connect to ground. Don't connect anything to the AC side yet, we're just testing. The LED on the relay will light up when it is activated. NOTE: I'm referencing a constructed relay that includes circuit protecting components. If you simply buy a relay chip, you'll have to build the rest of the protection circuit or the transformer could potentially destroy your Arduino or at least that one pin that it is connected to. Use a pre-constructed switch circuit in a housing with the little LED and the screws. Check Amazon. You shouldn't need a heat sink since the transformer is rarely turned on in comparison to the amount of time the Arduino stays on. There should be little time for it to heat up and plenty of time for it to cool down. At any rate, there's built in temperature protection that will help limit any heat buildup in any of the components. If you're a stickler, do your thing.
Finally, attach the thermistor. The thermistor attaches to A0 on the Arduino. In order to properly attach a thermistor, please look at this page: http://playground.arduino.cc/ComponentLib/Thermistor2 ... You have to make a voltage divider out of a 10k resistor and the 10k thermistor. What this means is that you connect one side of the resistor to ground, one side of the thermistor to +5v, and the remaining legs of the resistor and thermistor meet in the middle and where they meet you run a wire to the Arduino. When the temperature of the thermistor changes, its resistance changes. Since the resistor is of an equal resistence, the voltage should be very regular based on the temperature. That code is already in the sketch. As long as you wire this part properly you'll see the temperature in Celsius as soon as you turn on the Arduino.
Since this is a prototyping step, and the instructions for what to connect to where are also located in the Electronics construction step, I'll just include a pin-out here. I spent some time in fritzing trying to get a nice diagram, but wasn't happy with it. I'll try again and post it if I get it done. =) After building this thing and writing up this whole how-to, fighting with fritzing is the last thing I want to do right now. By looking at the pictures above and having a breadboard, I'm sure you can figure this out. If not, skip it. It isn't THAT important.
- A0 - Thermistor divided voltage
- A4 - LCD SDA
- A5 - LCD SCL
- D2 - Weld Button
- D3 - SSR DC negative(-) terminal
- D4 - Menu Button
- 5V - LCD 5v power rail, thermistor, buttons, SSR positive (+) terminal
- VIN - AC-5VDC adapter output positive ONLY
- GND - AC-5VDC adapter output negative AND all other ground connections
I think that's it for the prototyping. If I see something is missing or if you think I left something out, please let me know and I'll update it ASAP. This should give you control over the menu, display room temperature, and allow you to simulate welding.
Step 3: MOT Preparation
Let's be brutally honest for a second. This step sucks. It's hard. It hurts your hands. It won't be as beautiful as you think it will, but if we're careful, it will be successful.
I am going to assume you have already pulled the transformer from your old microwave. Be sure to use a junker microwave, because it's almost impossible for the transformer to be damaged through normal use and it is much more ecological/economical to salvage than buy new. I found mine on the side of the road. =D HOWEVER! Please be careful when pulling the MOT. It can be very dangerous to open a microwave. The HV (high voltage) capacitor and surrounding components can kill you if you touch them when they're charged. When in doubt, let it sit.
If you need more information on pulling the transformer here's an instructable about that.
There are 2 windings on a transformer: the primary and secondary. We need to preserve the primary in perfect condition and remove the secondary winding. The primary winding is going to look like bare copper wound around the transformer block (it's not bare, it's insulated and needs to stay that way), and the secondary is probably wrapped in paper. The primary winding also will have 2 little terminals next to each other whereas the secondary winding will have a couple to few of wires that come out (probably) in different places.
Between the two windings is a layered metal shunt. Try to keep the shunt in good shape. It acts as a barrier between the windings to prevent shorts or surges in power. I've read where some people recommend removing it for increased welding power, but I prefer to err on the side of safety, and once you get the thing built, you'll realize it is plenty powerful with the shunt in place.
Take a hack saw or rotary tool (I used both) and carefully cut off one side of the secondary winding. Don't bother to remove the paper, it'll come off easily enough as you go. Be careful not to damage the transformer block (the big hunk of layered steel) too much, but a little damage is ok (scratches, light gouges, etc). Again, the primary winding needs the remain insulated and intact to prevent shorts and catastrophic failure/death. If you damage the primary winding, I recommend finding a new transformer and trying again (or rewind the primary using proper transformer wire. Good luck with that).
Here's where I differ from others on the best way to remove the remaining portion of the secondary winding. I tried hammering with a wooden block, but that sucks and the wood just crumbles. I tried prying from the opposite side, but that's a fools errand. Get a 3-6mm drill bit and a sturdy drill. Drill right into the middle of that (insert favorite swear here) and work the bit in and out until you've removed a good portion of the copper wiring on each side. Don't be afraid to push it all the way through. This will actually make it even easier. Then grab the opposite (still protruding) side of the secondary winding one corner at a time and pull little bits out until the whole thing gives. This saves a lot of time compared to other techniques I've seen described. It is a messy technique, but save all that copper and recycle it or melt it down and use it for something else like a nice bit of jewelry or something.
Now we have to rewind the secondary winding. I bought some cheap 1200 amp jumper cables for buses/boats and hacked off about a meter and a half (4 & 1/2 feet?). My cable insulation was too thick to even fit through the transformer once, so I knew I would have to re-insulate the wire. I bought some heat-shrink insulation rated for 125C and simply cut off the old insulation. Be sure to tape the ends with some electric tape or something before you cut off the insulation to keep your copper strands from separating and becoming a big unworkable mess. You'll end up with something that looks like a huge lock of hair tied with rubber bands on each end. Try to keep it twisted and slide it through the heat shrink insulation. If your insulation is sold in shorter lengths than you hoped, just let them overlap by a couple of centimeters (an inch) and you'll be fine. A tip for rewinding: Don't heat shrink your cable until AFTER you get it wound around the transformer (except for overlaps, shrink those to prevent them from sliding). We want to wind the new secondary wire around the transformer in a helical fashion for 2-3 windings. By waiting to shrink my insulation, I was able to flatten the copper strands as I wound them, allowing me to get 3 windings when originally it wouldn't even fit 1. Be VERY careful not to damage the heat-shrink. If you tear a hole, it could short out on the metal transformer block and cause you BIG trouble. After you finish pushing it through and around the transformer block, I recommend pulling out a voltage meter and test for continuity. What we're looking for is not whether one end of the cable is attached to the other, but whether or not any of the copper inside the insulation is touching the transformer block. Find a scratched portion of your transformer block (it is also insulated) and test it against the inside of the cable. If you get no beeps and you're sure you did it right, you're golden.
*** Important Note*** As Rosco_31 pointed out in the comments, whenever possible, you should connect your transformer core to the ground prong on your power cord. Where I live three prong plugs are very rare, and finding a wall socket that has a ground pin is even harder to come across. Usually you only see a screw for an independent ground wire near washing machines or other such devices. As I used the cord that originally powered the microwave and it didn't have a ground prong, I forgot to mention this. Thanks, Rosco_31! I will go back in and add a ground wire as soon as I get moved into a workshop.
We can now test our transformer for voltage. To do this, take your voltage meter and stick one probe into each end of your new secondary winding and plug your transformer into a socket. Make sure the meter is set to low range AC power, and I recommend using a fused power strip with an embedded switch to do this test. I used the cord from the microwave I stripped to connect my transformer to power. It even had little covered terminals that fit perfectly over the transformer terminals after just being split down the middle. Just make sure there are no shorts and that the wires don't slip off or cross. You don't want 100+VAC shorting in your face or hands. Plug everything in, keep your hands off and press the switch on your power strip. Your voltage should read between 1-3 VAC. In all honesty, this part scared me. I hadn't worked with AC power in this way before (nothing beyond lamps). Take every precaution not to touch anything until you're sure things are safe. Of course you'll never want to touch the input terminals with your hands, and you don't really want to grab your bare secondary winding and complete the circuit across your hands and subsequently your chest and all it contains. "You gotta play it safe around electricity."
On to the next step!
Step 4: Building Our Base and Electrodes
Once you have your MOT prepared we need to build a base to which we will attach it, and we will need some well attached electrodes. I used some scrap wood that I had left over from when I built my CNC. Any old wood will work, and you shouldn't try to make it look exactly like mine because I just made it without any type of measurements taken beforehand. The base to which I screwed my transformer is something like a 5cmx5cm thick random length of wood that I cut into thirds and glued/screwed together. This gave me a 15cmx5cmx30cm base (as I later learned). Then I took a smaller piece of wood and cut it half. This bit became my arms.
The arms need to be prepped before we can attach them to the base. If we don't prepare them first, we may not get a flat closed position, and our electrodes will not meet up properly. I bought a 7mm diameter copper rod on Amazon and used that for my electrodes. I estimated how long I wanted them to be, and that turned out to be 3.5mm. You can cut them with a metal chop saw or a rotary tool, just try to keep it as square as possible. To hold the electrodes, I bought some car battery terminals at the hardware store. They weren't made for this, so I had to get creative to make them work.
The part that the cable is normally secured by is the part that I used to hold the copper electrodes (the part with 2 screws holding the little plate). The part that has a bolt for tightening the terminals onto the battery is the part that I used to secure my secondary winding. No, I didn't put the wire into the terminal and tighten the bolt ;). I removed the bolt and pushed the wire through the bolt hole. If you need to, you can use a drill to widen that hole a bit. Then I used a little gas bottle blow torch to solder those wires in place to the terminals. Don't hold the torch on the terminal for too long or the terminal will begin to melt. Push as much solder into that wire as it needs until it seems to hold securely. Also be sure to have them facing the proper direction in relation to the wire. This secondary winding won't want to accommodate you, so you have to accommodate it. The upper wire needs to allow the electrode to face down and the bottom wire needs to allow the electrode to face up. Double check it before soldering. I didn't the first time and it was annoying.
Now we should have our electrodes attached and they'll look like the following description: The secondary winding will be inserted into the tightening bolt hole of the large battery terminal hole, the battery terminal hole will be empty, and the wire catch will have an electrode in it.
Take a screw of an appropriate length and one of the wide M6 washers and screw it tightly through the large battery terminal hole to the wooden arm. Voila! We have an electrode attached securely to our wooden arm. Try to attach them to about the same location on each arm, but since we haven't drilled our arm holding holes yet, it doesn't need to be exact.
The bottom arm I attached first; again with glue and screws. Just eyeball it and aim for the middle of your base. Make sure the bottom electrode faces up. This allowed me to position the wooden risers that I used for securing the upper arm. I used the same size wood as I used in my base. I cut them to length based on holding my upper arm with the electrode facing down. Put a level on top as you hold the upper arm and allow the electrodes to touch (you don't have it plugged in do you!?). This will give us the perfect distance to secure our upper arm. Mark the center of the upper arm and the corresponding place on the risers. I used my drill press to put some straight holes through the wooden risers. Make sure they're straight or you'll have trouble lining up your electrodes. I used a 6.5mm bit to make the holes, and used a 50mm M6 bolt to hold the upper arm. Be sure to put wide M6 washers between each bit of wood to allow it to move freely, and secure it with a washer and M6 nylon lock nut. This will let the arm move without coming unscrewed. Don't cut off the part of the bolt that sticks out, we'll use that later to secure our screen.
Secure the risers to the base after mocking up the screw assembly to ensure we have space for all those washers. Do it however you want, but I glued it and held it till they stopped threatening to fall off, then screwed them on from the bottom of the base. It took a bit of waiting, but this way I was sure my electrodes lined up evenly and the risers were the proper distance from the arms.
Finally, attach a couple of screw hooks and a spring to the top-back of the top arm and the base just behind the bottom arm. You can put it right in the middle since the secondary windings tend to run to either side.
I really hope that all makes sense.
Congrats! You now have an operable spot welder. BUT WAIT! There's MORE!
Step 5: Electronics (the Crowd Pleaser)
The best parts of this project and what really set it apart are the simple electronics and the intuitive menu system.
I'm a bit of an impatient person when it comes to projects I build. I don't like waiting extra days to try things out. As a result I had a temporary power supply system until I could get to the electronics parts store (there was a holiday) and get a cheap AC to 5VDC power supply. The first picture shows the temporary system and the second shows the permanent.
Briefly, here's what's happening. The old power cord for the microwave connects to both the deconstructed AC-5VDC adapter, the AC switching side of the solid state switch (relay), then on to the transformer. This way, when plugged in, the Arduino gets power (5VDC) at all times, and the transformer only gets power when the Arduino tells the switch (relay) to turn on the transformer.
Now for the long version.
First, we need to solder up our buttons and screen. Follow the directions for connecting your screen to your Arduino and solder that baby on. I used a length of scrap USB cable. It's nice because it's shielded and should prevent any unlikely interference from the transformer. I like to attach my Arduino to perfboard (protoboard) first so I can solder multiple wires more easily than trying to keep 2-3 wires on one little pin at the same time, but you do you. The Arduino sketch that I provide uses standard wiring for the screen. That means A5 on the Arduino goes to SCL on the LCD screen and A4 goes to SDA. VIN goes to 5V on the Arduino and GND to GND. Don't use the raw 5V from the adapter to power the screen. I tried that and spent 2 hours wondering why my screen wasn't working. Just use the 5v pin. It doesn't use that much power anyway. I think there's probably a filtering problem or something that prevents the screen from working properly when attached to raw 5VDC. If you have the same screen as me, or one like it, check this website for more information on connecting and programming it: http://arduino-info.wikispaces.com/LCD-Blue-I2C
Next, wire up your buttons. Don't forget to use the 10k resistors. This is another reason why perfboard is a convenient choice. Again, according to my sketch, the menu button goes to D4, and the weld button goes to D2, but you're welcome to change that to make things easier on yourself. Just don't forget to update the sketch or you'll be left wondering why it isn't working. Make the wires for this the appropriate length for where you want to position the buttons. If you put the menu button next to the screen like I did, make that wire the same length as the USB cable for the screen. I used 2 core insulated unshielded wire for the buttons and have had no problems. It was even really thin wire. No trouble at all. For more info on wiring buttons, check here: https://www.arduino.cc/en/Tutorial/Button
Now for the temperature sensor. Grab your 10k thermistor and wire it up to A0 on the Arduino using a 10k resister on the negative side (GND), the thermistor on the positive side (+5v), and the signal wire where they meet. This will make a voltage divider that fluctuates with the resistance provided by the thermistor. I put the resistor and the thermistor on the same end of another bit of USB cable and heat-shrink insulated only the wire portion. Since we need 3 wires and thermistors are sensitive, I used USB cable to be sure of success. The thermistor itself is allowed to contact the outer heat-shrink insulation of the secondary winding right next to the top electrode. Don't touch it to the wire or electrode itself just in case it shorts out and blows something. It's the temperature of the heat-shrink insulation that we're monitoring more than the temperature of the actual wire or electrodes, anyway. If the heat-shrink insulation gets too hot and melts away, we will end up with a broken welder or worse. To keep it clean, I attached the thermistor to the cable with a few cable ties. The sketch will lockout welding if the insulation reaches 80C (which is rated for 125C), and won't allow welding until it cools down to 40C (the same temp as bath water). More info on the wiring can be found here: http://playground.arduino.cc/ComponentLib/Thermistor2 or here: http://playground.arduino.cc/ComponentLib/Thermistor
Our second to last step for the Arduino is quite easy. D3 and GND from the Arduino connect to the positive and negative terminals (respectively) on the DC side of the solid state switch (relay). If you search for info on attaching relays, you'll find lots of important information that doesn't really apply to solid state relays. Be sure to use solid state, or you'll have trouble getting it to switch at the high speeds we require. Also, please forgive my tendency to call a relay a switch. X)
Finally for the Arduino, take apart your AC-5VDC adapter. Heat up the soldering iron and remove the AC (probably red?) wires that connect it to the plug prongs from the PCB, but remember where those holes are. Next, cut the 5VDC wire (probably black and black+white?) to a proper length for the inside of your welder and solder those to the "VIN" (voltage in / positive / + / raw) pin and GND (ground / negative / -) pin on your Arduino. The black should go to negative/GND. Black+white or red should go to positive/VIN. Check with a voltage meter to be sure which is which. The old holes for the AC power need to get some new wires. Find some insulated wire that is about the same thickness as the ones you just removed. Make them long enough to reach the old microwave cord. I made mine a little longer than I thought I'd need just to be sure. It's not like it's going to be cramped in there. It's mostly empty space. I recommend using heat-shrink insulation here as well. 100+VAC power is something we don't want banging around into things. Solder these wires to the old microwave cord with their lengths and stripped ends facing the same direction. This will let us slide the heat-shrink over them easily and cleanly when the time comes.
To finish up the AC side, get a short length of 2 wire power cable of about the same or larger thickness as the power cord. We will solder one end of one side of this wire to the power cord (and Arduino power wire) and one end of the same side to one terminal of the transformer. Heat shrink those after you get them soldered. The other side of the cable needs to be cut in the middle and stripped on all ends. This middle section will be screwed to the switch (relay). It will simply go in one side of the switch (relay) and out the other. There is no backwards. The opposing ends of this wire will go to the transformer and power cord. Finish that up with heat shrink, and guess what? We're done with the electronics.
I know this description can be hard to follow. Sorry, there's just a lot going on here. Please see the picture and diagrams for clarification. Simple things can seem difficult when explained in detail. It's really quite easy.
Step 6: Outer Case and Screen
Finally, and the shortest step of all, cover that thing up. It's fun to have our electronics hanging out there for all the world to see, but we're dealing with dangerous levels of power and voltage here. The last thing we need is for some metal filings or screws to get stuck down in our electronics and start a fire. You don't have to seal it up tight, just make sure it is mostly covered and nothing will accidentally fall into your inner workings. I used some VERY cheap 6mm thick wood from the hardware store, since I didn't have any scrap that would work. Use some wood glue if it's really thin, screws if it's thicker. Be sure to screw it to your base as well so it doesn't slide off and break something when you try to move it.
In the picture, you can see how I connected my screen to the base and how I cut some space in the right side wall to leave room for the screen to move around. There are two nylon lock nuts on the long end of the bolt. One holds the risers to the upper arm, and one holds the screen to the other nut. Make the first one just loose enough that the arm can stay raised by a spring (which you should install now if you haven't already) and move freely, while the other should be tight enough that the screen doesn't fall out of position on its own.
The entire enclosure was cut by hand with a little wood saw and I just held a piece of wood up and then marked it where I wanted it to be cut. I used a spare piece of wood as a square so I could make straight lines between my markings.
The screen itself is enclosed in a 3D printed enclosure that I found on thingiverse.com and modified to work for my purposes. I could have made it myself, but why reinvent the wheel, right? It wasn't perfect as the holes on my screen didn't match up to the scew holes printed into the case, but I just hot glued it in place along with the button for changing the menu. I added a mounting bar and outputted a back cover from his sizes. I didn't put the button hole in the 3D model so that I could decide on where I wanted it later. I chose to go for the place with the most empty space, but I should have gone for stability. If I had a chance to do it again, I'd move the button to the bottom right corner. A quick drill with a 4.5mm bit will leave you plenty of space for clicking. If it's still snug, just wiggle the drill bit around. If you don't have a 3D printer, find any little plastic box that is about the right size, cut a window for the screen, drill a hole for the button, and screw it to the side or top of your case. You're only limited by your imagination. :)
I'll include my modified files here, but also, here's the link to the original case on thingiverse: http://www.thingiverse.com/thing:168391
Thanks to NilsRoe for his work on that. His files are licensed under CC Attribution - Non-commercial, so if you want to build and sell these, you should either design your own LCD case for printing, or go another route.
Step 7: That's IT!
Well thanks for viewing my instructable. I've been making things as my hobby for most of my life, but only got into electronics in the past 5 years or so. Before that it was just a little light video game console modding. I hope you're able to build this and my instructions are clear. If you have any questions, please ask. I'll do my best to reply, but please don't ask beginner things like which end of the soldering iron you should hold or which end of the resistor should face the Arduino. If you're that green, you shouldn't be playing with HVAC (high voltage AC).
Congrats and thanks!
Participated in the
Metal Contest 2016
Participated in the
Wood Contest 2016
4 years ago
I want to build this project but am having some trouble with the sketch. I attempt to compile it and get the error - 'POSITIVE' was not declared in this scope.
I have i2c libraries installed but something isn't right here on my end and I can't figure it out.
Reply 4 years ago
the library has been changed since this was written. You need to change the line with 'POSITIVE' in it to this:
'lcd.begin(16,2); // Turn on the lcd. My LCD...'
that will solve your compile errors. I haven't tried it yet so not sure the LCD actually works but at least it compiles! LOL
p.s. I should have this built in a week or so.....am working on my transformer now!
Reply 3 years ago
Thanks nsb807! Library changes are quite annoying when using old how-tos.
Reply 2 years ago
Not actually you can use also these three libraries to use the same code "
You can download these libraries from this link :https://github.com/fdebrabander/Arduino-LiquidCrystal-I2C-library
Question 2 years ago
Can you PLEASE make a circuit diagram? I'd love to build a welder like yours, but it's driving me mad to figure out where which component connects to what and what purpose they fill. I've read through all your text several times and tried to make a list of where everything goes.
My work flow isn't going to be exactly like yours, but if I had a circuit diagram I would have no problem making all the electronics just like yours. Again:
Can you PLEASE draw a circuit diagram? It doesn't have to be perfect with official symbols for everything.
5 years ago
Thank you for a great project. I cannot press the "I made it" as my transformer is not ready yet. I used free Fritzing to put everything on breadboard. It helps me to visualize the connection and connect everything properly.
In my version, I used ds18b20 One Wire Digital Temperature Sensor and its libraries and removed the math.h. I used the HD44780 LCD, as that was what I've got.
I also made slight changes to the code. I put a While loop when the weld button is pressed so I do not accidentally keep pressing the weld in the same place. The loop checks if the button is pressed and if it is, waits for it to be released after which it tests for temerature and if everything is OK the weld can be pressed again.
Reply 3 years ago
(The loop checks if the button is pressed and if it is, waits for it to be released after which it tests for temerature and if everything is OK the weld can be pressed again.)
Dear friend, can you share the code with me?
Question 4 years ago
Hi, im complete newbie... Anyway this is really nice project. I have started to build one as well similar to yours but I'm using a timer which can go only to 0.1s. However this value seems too long? Now trying to compensate for the money I lost. I would like to ask if I have to get the display or if I can just program somehow the arduino on its own without the display. Its just cost saving... i will likely use these on 40pcs of 18650 and then it will be never used again. So its about cost... Thank you so much for your replies.
Answer 3 years ago
You can absolutely set the timer to a single pulse length and never use a screen. Good luck! Be aware that the screen library seems to have been updated and my code doesn't work out of the box. nsb807 gives the fix in a reply to JaredE just below.
5 years ago
Looks great. Two questions though. (1) SSRs are zero-crossing, so your Arduino won't know when the welder actually came on very accurately. It will come on at the next zero-crossing. (2) SSRs don't like reactive loads liek this transformer.
I am curious - do either of these things matter in your experience? If not - I'll build it!
Reply 4 years ago
Chris, I'm not the author, but I'll try to answer:
1) At 60Hz AC frequency, you get 16.66 ms for each full cycle and 8.33 each half cycle. The "prewelding" time used in the author's arduino program is 50 ms. Even if the SSR waits for next zero-crossing to turn on or of, the duty time will be 6 half cycles.
2) In fact, SSR's don't like reactive loads. There is a Instructable similar to this one where the author mecanicafina don't use SSR, he uses a custom built circuit (image in this post) with a snubber network (a capacitor and a resistor). Since the snubber is connected with the transformer, I think that it is possible to use this snubber with a SSR. I do intend to use the snubber with a SSR.
Reply 3 years ago
Wow, I've been away for a long time. You bring up a very good point, and ManoelG3 answered it very well and better than I probably could. I can simply add that I haven't had any trouble with the SSR. It works fine in my experience. Am I simply ignorant of how much better it could be working? Probably. Look below at Bverysharp's build. He uses the same snubber network mentioned above and it seems to work well according to his comment.
4 years ago
I just started on a project like this. I would just like to point out the x-fmer doesn't have to be from a microwave. I'm using the transformer core from an old 1000w metal MH light fixture, big, heavy, low impedance. Your just after the primary windings in the first place anyways. It is still a good idea to ground the core. Im looking forward to being able to tic the built it on this little project!!
4 years ago
Dear i want to know about this awsome project.. i want to build this but because i have children in my house so i wanna ask you about safety precausion.. that if welder power is on so if i touches the two copper needle with my bear hand welder will spark or not..
Reply 4 years ago
No, it won't spark, and you can even touch the two copper needles even when the welder is turned on, and nothing harmful happens to you.
It really seems strange, since the same needles could weld and metals (and they became SO hot), but, as long as you are not made of metal (you are not, right?), and the voltage is SO low (just a few volts), your body will not conduct an electrical current that could hurt you.
There are many Youtube videos about making this kind of spot welding machine. In one of them (I made a fast search now but I didn't found the right one), the maker is indeed geting his bare hands in the needles of the active equipment.
5 years ago
Thanks for a Great instructable. I have built my own version based on your Arduino sketch, which I really like. I used the Triac switching circuit from the welder that Mecanicafina designed.
I modified the sketch to give me up to 1 second, of welding time and it is easily able to weld 14g wire. The arms fold up when not in use, to minimise its footprint.
5 years ago
Now I built this welder. It's a good job. Thanks to the author. In my version, I change the thermistor to a simple resistor of 10k, so it looks like 24 degrees - all the time;). But I constantly use 5v to power the 12v fan. There is a difference between the text description and the sketch description. This is about the SSR. In my case, I connected D3 to the positive terminal SSR, and I connected "-5v" to the negative terminal SSR, also written in the program description. Everything works fine.
6 years ago
I try it to proteus but didn't work :D
6 years ago
6 years ago
good spot welder, but here is one doubt for me
is it possible to weld higher conductive material like silver using these copper electrodes.
hey psyberjock, can you please check it.