Хабрахабр

Контактная сварка для аккумуляторов 18650

Небольшая статья про самостоятельное изготовление аппарата для контактной сварки аккумуляторов (18650 и аналогичных). С помощью подобного устройства можно в домашних условиях и из подручных материалов сваривать и ремонтировать аккумуляторные батареи и сборки. Дешево, сердито и доступно каждому.


Приветствую всех!

Точечная сварка является разновидностью контактной сварки (источник).

Проще самостоятельно изготовить вариант «под себя». Есть покупные варианты, тот же SUNKKO, но практически все варианты требуют доработки под свои материалы и нужны — увеличения тока, замены таймера и так далее.

Какие вам нужны — такие и предусмотрите.
Базовые и проверенные варианты DIY строятся на базе мощного трансформатора (понижающего) и таймера с реле. Преимущества — вы получаете заведомо функциональный вариант, с заложенными характеристиками. Есть возможность сделать еще проще — просто электроды с питанием от автомобильного аккумулятора, но это не самый удобный вариант.

Конкретно требовалось:

  • высокий ток сварки (до 600...900А);
  • двойной импульс сварки;
  • подстройка длительности импульса (доли секунды);
  • питание платы без вспомогательного трансформатора;
  • открытая прошивка (Arduino) и возможность корректировки кода.

Выбранный вариант платы управления реализован на базе микроконтроллера ATmega. В плюсах — наличие преобразователя питания (Hi-Link) и гальванической развязки низковольтной части схемы.

Для самостоятельного изготовления печатной платы (ЛУТ) прикрепляю файл dot_svarka.lay6. Плату управления можно найти в сборе, так и отдельно (печатную плату).

Дополнительно был куплен энкодер KY-040 для управления меню и внесения регулировок.

Этот вариант корректно работает с библиотеками Arduino, и внешне прилично выглядит. Для удобства был выбран OLED дисплей с диагональю 0,96" и шиной I2C (4pin). Можно использовать и другие варианты, при условии соответствующих правок.

Это простое двух проводное подключение. Для подачи сигнала сварки используется кнопка или микропереключатель (концевик).
Подойдет и простая педалька, тут кому и что удобно.

А у запасливого самодельщика должно быть в наличии. Дополнительно потребуются провода, предохранители, вилка, коннекторы, вентилятор и так далее… Мелочевка, которую можно найти под рукой или в ближайшем радиомагазине.

Потребуются расходные материалы, например, никелевая лента для сварки элементов.

2 w/button). Есть неплохая модель 3D-печатной ручки для контактной сварки (Spot Welder Handle ZBU-4.

Ссылка на скетч welding__dot.ino.

Часть кода обработки энкодера

// encoder pin and interrupt
const byte encoder_A_Pin = 3;
const byte encoder_B_Pin = 2;
const byte encoderButtonPin = 4;
const byte interruptA = 1;
const byte interruptB = 0; boolean encoder_rotate = false;
// last state encoder A pin
boolean currentA = false; // last state encoder B pin
boolean currentB = false; // Timeout for different long and short button on
const unsigned long timoutHoldButton = 9000; // 9 sec
// Timeout for bounce protect encoder button
const unsigned long debounceEncButton = 20; // 20 ms
// Time on encoder button
unsigned long timeOnEncButton = 0;
// Time off encoder button
unsigned long timeOffEncButton = 0;
unsigned int buttonEncCurrentVal = HIGH;
unsigned int buttonEncLastVal = HIGH;
boolean ignoreEncOff = false; void setup() { // encoder init pinMode(encoder_A_Pin, INPUT); digitalWrite(encoder_A_Pin, HIGH); pinMode(encoder_B_Pin, INPUT); digitalWrite(encoder_B_Pin, HIGH); pinMode(encoderButtonPin, INPUT); digitalWrite(encoderButtonPin, HIGH); // enable encoder change interrupt attachInterrupt(interruptA, onA, CHANGE); attachInterrupt(interruptB, onB, CHANGE);
} ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// increment rotate
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
void onA() encoder_rotate = false; }
} ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// decrement rotate
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
void onB(){ if ( encoder_rotate ) delay (1); if( digitalRead(encoder_B_Pin) != currentB ) { currentB = !currentB; if( currentB && !currentA ){ Serial.println("- encoder"); } encoder_rotate = false; }
} ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// main loop
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
void loop() { CurrentTime = millis(); ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// ENCODER BUTTON encoder_rotate = true; buttonEncCurrentVal = digitalRead(encoderButtonPin); // Test for button pressed and store the down time if (buttonEncCurrentVal == LOW && buttonEncLastVal == HIGH && (CurrentTime - timeOffEncButton) > long(debounceEncButton)){ timeOnEncButton = CurrentTime; } // Test for button release and store the up time if (buttonEncCurrentVal == HIGH && buttonEncLastVal == LOW && (CurrentTime - timeOnEncButton) > long(debounceEncButton)){ if (ignoreEncOff == false){ Serial.println(F("short enc")); }else{ ignoreEncOff = false; } timeOffEncButton = CurrentTime; } // Test for button held down for longer than the hold time if (buttonEncCurrentVal == LOW && (CurrentTime - timeOnEncButton) > long(timoutHoldButton)){ Serial.println(F("long enc")); ignoreEncOff = true; timeOnEncButton = CurrentTime; } buttonEncLastVal = buttonEncCurrentVal;
}

Сборка устройства не является затруднительной. Наиболее затратно для меня было найти хороший мощный понижающий трансформатор. Один из самых доступных вариантов — трансформатор от СВЧ-печи, вместо вторичной повышающей обмотки которого наматывается 1,5...2 витка толстого медного провода (сечение 50...70 кв. мм).

Обычно используют корпуса для РЭА или от старых устройств. Сознательно не пишу про корпус устройства — никаких особых требований нет. От себя могу порекомендовать экранировать корпус изнутри от помех импульса, а также предусмотреть вентилятор охлаждения трансформатора, который прилично нагревается при длительной работе.

Схема платы сварки выглядит следующим образом.

В моем случае использован медный провод 6 кв. После сборки лучше всего провести тесты и определить оптимальные значения длительности импульса. мм в качестве электродов.

На отрыв держит не хуже заводской сварки. Двойной импульс проваривает хорошо, длительность подбираем в зависимости от толщины ленты.

Теперь можно без проблем собрать большую батарею для электровелосипеда, отремонтировать батарею для гироскутера и модернизировать шуруповерт.

Видео тестирования самодельной контактной сварки.

Процесс сварки элементов 18650 в батарею.

Для меня подобный вариант обошелся практически в два раза дешевле, чем заводские. Которые все равно требуют доработки. Да и результат дает самодельная контактная сварка отличный.

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть