Westpol
Published

DIY CD Spot Welder - Part 1

I want to make a CD spot welder for battery packs or other stuff that cannot be soldered.

IntermediateWork in progress26,883
DIY CD Spot Welder - Part 1

Things used in this project

Hardware components

Arduino Micro
Arduino Micro
×1
RGB Backlight LCD - 16x2
Adafruit RGB Backlight LCD - 16x2
×1
Rotary potentiometer (generic)
Rotary potentiometer (generic)
×2
Pushbutton switch 12mm
SparkFun Pushbutton switch 12mm
×1
LSP-1403
For charging, I used a lab bench power supply, but you can use any kind of charging method.
×1
Perf+ 2
Crowd Supply Perf+ 2
×1
Supercap 50F
×4
Resistor 100k ohm
Resistor 100k ohm
×2
Resistor 220 ohm
Resistor 220 ohm
×1
100W Mosfet
×1

Software apps and online services

Arduino IDE
Arduino IDE

Hand tools and fabrication machines

Soldering iron (generic)
Soldering iron (generic)

Story

Read more

Schematics

The scematic

The scematic

Code

CD_spot_welder_Serial.ino

C/C++
I fixed all problems, but it's not cleaned up. The full code comes with part 2.
int MOSFETpin = 3;
int footswitchorbutton = 2;

int dlay = 0;
unsigned long timetilnext;
unsigned long locksec;
int oneafterlocked;
int prevdlay;
int prevlock;

void setup() {
  pinMode(MOSFETpin,OUTPUT);
  pinMode(footswitchorbutton,INPUT_PULLUP);
  pinMode(A5,INPUT);
  Serial.begin(9600);
  timetilnext = millis();
  locksec = 0;
}

void loop() {
  
  if(millis() <= timetilnext){
    locksec = (timetilnext-millis())/1000;
    if(locksec != prevlock){
    Serial.print("locked for:");
    Serial.print(locksec);
    Serial.println("s");
    prevlock = locksec;
    }
    oneafterlocked = 1;
  }
  
  
  dlay = map(analogRead(A5),0,1023,1,15);
  dlay = dlay*10;
  
  if(millis() >= timetilnext){

  if(dlay != prevdlay || oneafterlocked == 1){
  Serial.print("Pulse:");
  Serial.print(dlay);
  Serial.println("ms");
  oneafterlocked = 0;
  prevdlay = dlay;
  }
  if(digitalRead(footswitchorbutton) == LOW){
    digitalWrite(MOSFETpin,HIGH);
    delay(dlay);
    digitalWrite(MOSFETpin,LOW);
    timetilnext = 5000+millis();
  }
  }
  
}

Credits

Westpol

Westpol

8 projects • 22 followers

Comments