В жизни каждого «радиогубителя» возникает момент, когда нужно сварить между собой несколько литиевых аккумуляторов — либо при ремонте сдохшей от возраста АКБ ноутбука, либо при сборке питания для очередной поделки. Паять «литий» 60-ваттным паяльником неудобно и страшновато — чуть перегреешь — и у тебя в руках дымовая граната, которую бесполезно тушить водой.
Коллективный опыт предлагает два варианта — либо отправиться на помойку в поисках старой микроволновки, раскурочить её и достать трансформатор, либо изрядно потратиться.
Мне совершенно не хотелось ради нескольких сварок в год искать трансформатор, пилить его и перематывать. Хотелось найти ультрадешёвый и ультрапростой способ сваривать аккумуляторы электрическим током.
Мощный низковольтный источник постоянного тока, доступный каждому — это обычная б.у. АКБ от машины. Готов поспорить, что он у вас уже есть где-то в кладовке или найдётся у соседа.
Чтобы сваривать аккумуляторы током от батареи, нам нужно будет выдавать ток короткими импульсами в считанные миллисекунды — иначе получим не сварку, а выжигание дыр в металле. Самый дешёвый и доступный способ коммутировать ток 12-вольтовой батареи — электромеханическое реле (соленоидное).
Проблема в том, что обычные автомобильные реле на 12 вольт рассчитаны максимум на 100 ампер, а токи короткого замыкания при сварке в разы больше. Есть риск, что якорь реле просто приварится. И тогда на просторах Алиэкспресс я наткнулся на мотоциклетные реле стартера. Подумалось, что если эти реле выдерживают ток стартера, причём много тысяч раз, то и для моих целей сгодится. Окончательно убедило вот это видео, где автор испытывает аналогичное реле:
Моё реле было куплено за 253 рубля (минус семь процентов кэшбека) и доехало до Москвы меньше, чем за 20 дней. Характеристики реле с сайта продавца:
- Предназначено для мотоциклов с двигателем 110 или 125 кубов
- Номинальный ток — 100 ампер сроком до 30 секунд
- Ток возбуждения обмотки — 3 ампера
- Рассчитано на 50 тыс. циклов
- Вес — 156 граммов
Реле приехало в аккуратной картонной коробочке и при распаковке отдало дикой вонью китайской резины. Виновник — резиновый кожух поверх металлического корпуса, запах не выветривается уже который день.
Агрегат порадовал качеством — под контакты выведены два омеднённых резьбовых соединения, все провода — залиты компаундом для водонепроницаемости.
На скорую руку собрал «тестовый стенд», контакты реле замыкал вручную. Провод использовал одножильный, сечением 4 квадрата, зачищенные наконечники фиксировал клеммником. Для подстраховки снабдил одну из клемм к АКБ «страховочной петлёй» — если бы якорь реле решил бы пригореть и устроить короткое замыкание, я бы успел сдёрнуть клемму с АКБ за эту верёвку:
Испытания показали, что машинка работает на твёрдую пятёрку. Якорь очень громко стучит, а электроды дают чёткие вспышки; реле не пригорает. Чтобы не тратить никелевую полосу и не практиковаться на опасном литии, мучил лезвие канцелярского ножа. На фото вы видите несколько качественных точек и несколько передержанных:
Передержанные точки видны и на изнанке лезвия:
Едем дальше. Как показал эксперимент на лезвии, выдержать необходимую длину импульса для сварки вручную невозможно, надо делать управление от тактовой кнопки или на микроконтроллере.
Сначала нагородил простую схему на мощном транзисторе, но быстро вспомнил, что соленоид в реле хочет кушать аж 3 ампера. Порылся в ящике и нашёл взамен транзистору MOSFET IRF3205 и набросал простую схему с ним:
Схема довольно нехитрая — собственно, MOSFET, два резистора — на 1К и 10К, да диод, предохраняющий цепь от индуцированного соленоидом тока в момент обесточивания реле.
Сначала пробуем схему на фольге (с радостными щелчками жжёт дырки насквозь через несколько слоёв), потом достаём из загашника никелевую ленту для соединения аккумуляторных сборок. Коротко жмём кнопку, получаем громкую вспышку, и рассматриваем прожжённую дыру. Блокноту тоже досталось — прожгло не только никель, но и пару листов под ним :)
Даже сваренную двумя точками ленту разделить руками не выходит.
Очевидно, что схема работает, дело за тонкой настройкой «выдержки и экспозиции». Если верить экспериментам с осциллографом того же товарища с YouTube, у которого я подсмотрел идею с реле стартера, то на срыв якоря уходит около 21мс — от этого времени и будем плясать.
Дополняем схему — вместо нажатий кнопки вручную доверим отсчёт миллисекунд Ардуине. Нам понадобятся:
- собственно Arduino — сойдёт Nano, ProMini или Pro Micro,
- Оптопара Sharp PC817 с токоограничивающим резистором на 220Ом — чтобы гальванически развязать Ардуино и реле,
- Понижающий напряжение модуль, например XM1584, чтобы превратить 12 вольт от батареи в безопасные для Ардуины 5 вольт
- также нам понадобятся резисторы на 1K и 10K, потенциометр на 10К, какой-нибудь диод и любой buzzer.
- Ну и, наконец, нам будет нужна никелевая лента, которой сваривают аккумуляторы.
Собираем нашу нехитрую схему. Кнопку спуска подключаем к пину D11 Ардуино, притянув к «земле» через резистор на 10К. MOSFET — к pin D10, «пищалку» — к D9. Потенциометр подключил крайними контактами к пинам VCC и GND, а средним — к пину А3 Ардуино. При желании можете подключить к пину D12 яркий сигнальный светодиод.
Заливаем в Arduino немудрёный код:
const int buttonPin = 11; // Кнопка спуска
const int ledPin = 12; // Пин с сигнальным светодиодом
const int triggerPin = 10; // MOSFET с реле
const int buzzerPin = 9; // Пищалка
const int analogPin = A3; // Переменный резистор 10К для выставления длины импульса
// Объявляем переменные:
int WeldingNow = LOW;
int buttonState;
int lastButtonState = LOW;
unsigned long lastDebounceTime = 0;
unsigned long debounceDelay = 50; // минимальное время в мс, которое надо выждать до срабатывания. Сделано для предотвращения ложных срабатываний при дребезге контактов спусковой кнопки
int sensorValue = 0; // считываем значение, выставленное на потенциометре в эту переменную...
int weldingTime = 0; // ...и на его основе выставляем задержку
void setup() {
pinMode(analogPin, INPUT);
pinMode(buttonPin, INPUT);
pinMode(ledPin, OUTPUT);
pinMode(triggerPin, OUTPUT);
pinMode(buzzerPin, OUTPUT);
digitalWrite(ledPin, LOW);
digitalWrite(triggerPin, LOW);
digitalWrite(buzzerPin, LOW);
Serial.begin(9600);
}
void loop() {
sensorValue = analogRead(analogPin); // считываем значение, выставленное на потенциометре
weldingTime = map(sensorValue, 0, 1023, 15, 255); // приводим его к миллисекундам в диапазоне от 15 до 255
Serial.print("Analog pot reads = ");
Serial.print(sensorValue);
Serial.print("t so we will weld for = ");
Serial.print(weldingTime);
Serial.println("ms. ");
// Для предотврещения ложных срабатываний кнопки убеждаемся сначала, что она зажата минимум в течение 50мс, прежде чем начать сварку:
int reading = digitalRead(buttonPin);
if (reading != lastButtonState) {
lastDebounceTime = millis();
}
if ((millis() - lastDebounceTime) > debounceDelay) {
if (reading != buttonState) {
buttonState = reading;
if (buttonState == HIGH) {
WeldingNow = !WeldingNow;
}
}
}
// Если команда получена, то начинаем:
if (WeldingNow == HIGH) {
Serial.println("== Welding starts now! ==");
delay(1000);
// Выдаём три коротких и один длинный писк в динамик:
int cnt = 1;
while (cnt <= 3) {
playTone(1915, 150); // другие ноты на выбор: 1915, 1700, 1519, 1432, 1275, 1136, 1014, 956
delay(500);
cnt++;
}
playTone(956, 300);
delay(1);
// И сразу после последнего писка приоткрываем MOSFET на нужное количество миллисекунд:
digitalWrite(ledPin, HIGH);
digitalWrite(triggerPin, HIGH);
delay(weldingTime);
digitalWrite(triggerPin, LOW);
digitalWrite(ledPin, LOW);
Serial.println("== Welding ended! ==");
delay(1000);
// И всё по-новой:
WeldingNow = LOW;
} else {
digitalWrite(ledPin, LOW);
digitalWrite(triggerPin, LOW);
digitalWrite(buzzerPin, LOW);
}
lastButtonState = reading;
}
// В эту функцию вынесен код, обслуживающий пищалку:
void playTone(int tone, int duration) {
digitalWrite(ledPin, HIGH);
for (long i = 0; i < duration * 1000L; i += tone * 2) {
digitalWrite(buzzerPin, HIGH);
delayMicroseconds(tone);
digitalWrite(buzzerPin, LOW);
delayMicroseconds(tone);
}
digitalWrite(ledPin, LOW);
}
Затем подключаемся к Ардуине с помощью Serial monitor и поворотами потенциометра выставляем длину сварочного импульса. Я опытным путём подобрал длину в 25 миллисекунд, но в вашем случае задержка может быть иной.
По нажатию на спусковую кнопку Ардуино несколько раз пропищит, после чего включит на мгновение реле. Вам потребуется извести небольшое количество ленты перед тем, как вы подберёте оптимальную длину импульса — чтобы и сваривалось, и не прожигало дыры насквозь.
В результате имеем простую бесхитростную сварочную установку, которую легко разобрать:
Несколько важных слов о технике безопасности:
- при сварке в стороны могут разлетаться микроскопические брызги металла. Не выпендривайтесь, одевайте защитные очки, они стоят три копейки.
- несмотря на мощность, реле теоретически может «пригореть» — якорь реле приплавится к месту контакта и не сможет вернуться обратно. Вы получите короткое замыкание и быстрый разогрев проводов. Заранее обдумайте, как вы в такой ситуации будете сдёргивать с АКБ клемму.
- вы можете получать разные степени сварки в зависимости от заряда АКБ. Во избежание сюрпризов настраивайте длину сварочного импульса на полностью заряженной АКБ.
- заранее подумайте, что вы будете делать, если продырявите литиевый аккумулятор 18650 — как вы будете хватать раскалившийся элемент и куда его закинете догорать. Скорее всего, у вас такого не произойдёт, но с видео последствий самовозгораний 18650 лучше ознакомьтесь заранее: www.youtube.com/watch?v=ZTzEHsJVZhA Как минимум, приготовьте металлическое ведро с крышкой.
- контролируйте заряд вашей автомобильной батареи, не допускайте её сильного разряда (ниже 11 вольт). Это не полезно батарее, да и соседа, которому срочно потребуется «прикурить» машину зимой, не выручите.
Автор: bougakov
Я не вкурил зачем тебе понижающий модуль? Для питания самой ардуино?