I am trying to make my own battery spot welder from a car battery, car starter solenoid, and an Arduino to drive them. I came up with my concept and schematic and built the thing. The problem is that one of the two parallel MOSFETs burns when turned on. The coil features a very low resistance of 0.3 Ohms, I added a flyback diode across it but it doesn't help. The current flowing is quite high and for a short amount of time. I am thinking that the MOSFETs are switched for a too short amount of time and they don't have time to heat up and equalize their resistances to spread the load effectively so always one takes it all. Are my MOSFETs (IRFZ44N) too weak for the job? Should I put a resistor in series with the coil and use it that way if it works? Any help would be very appreciated, thank you!
This is a common mistake. Let's check the MOSFET datasheet:
Notice RdsON is only specified for Vgs=10V. Typically this means that some of these FETs may turn on when driven with 5V Vgs, but not all of them will, and most of them will be in linear mode, with a high RdsON. In your application, they will burn. So when you want to drive a MOSFET with 5V, make sure it's a "logic level MOSFET" -- check the datasheet specifies RdsON for Vgs=4.5V.
So you either need a new MOSFET or a driver that can apply a full 12V to the grid or your IRFZ44. Here's a random one from my hard drive:
Remove R5, add a base resistor for Q1, R4 is of course your relay, and VCC is 12V.
This will also switch faster, which spends less time in the high-dissipation "neither on nor off" zone.
I'd set R3 to around 220R, giving a good drive current of 36mA, R1 and R2 to 2-5k, and any switching BJT will do, like PN2904, BC547, whatever you have already.