Очередная переделка шуруповерта на литий + решаем проблемы платы BMS

Опубликовал | 22.11.2017

Давно не было обзора переделки шуруповерта на литий :)
Обзор посвящен в основном плате BMS, но будут ссылки и еще на некоторые мелочи, задействованные в переводе моего старого шуруповерта на литиевые батареи формата 18650.
Коротко — эту плату брать можно, после небольшого допиливания она вполне нормально работает в шуруповерте.
ЗЫ: много текста, картинки без спойлеров.

Зачем все это

Трудится у меня уже несколько лет купленный в строймаге по дешевке безымянный двухскоростной шуруповерт на 14.4 вольта. Точнее, не прям совсем безымянный — на нем проставлена марка этого строймага, но и не какой-то именитый. На удивление живуч, до сих пор не сломался и выполняет все, что я от него требую — и сверление, и закручивание-раскручивание шурупов, и как намотчик трудится :)

Но вот его родные NiMH аккумуляторы так долго работать не захотели. Один из двух комплектных окончательно сдох год назад после 3 лет эксплуатации, второй в последнее время уже не жил, а существовал — полной зарядки хватало на 15-20 минут работы шуруповерта с перерывами.
Сначала я хотел обойтись малыми силами и просто заменить старые банки на такие же новые. Купил вот эти у вот этого продавца — aliexpress.com/item/Russian-seller-18-pcs-Sub-C-SC-battery-1-2V-1300mAh-Ni-Cd-NiCd-Rechargeable-Battery/32660234790.html
Они отлично работали (хотя и немного хуже родных) целых два или три месяца, после чего сдохли быстро и полностью — после полного заряда их не хватало даже на закрутить десяток шурупов. Не рекомендую брать у него аккумуляторы — хотя емкость изначально соответствовала обещанной, долго они не протянули.
И я понял, что придется все-таки заморочиться.

Ну и теперь о главном :)

Повыбирав на Али из предлагаемых плат BMS, остановился на обозреваемой, по ее размерам и параметрам:

  • Модель: 548604
  • Отключение по перезаряду при напряжении: 4.28+ 0.05 V (на ячейку)
  • Восстановление после отключение по перезаряду при напряжении: 4.095-4.195V (на ячейку)
  • Отключение по переразряду при напряжении: 2.55±0.08 (на ячейку)
  • Задержка отключения по перезаряду: 0.1s
  • Температурный диапазон: -30-80
  • Задержка отключения по КЗ: 100ms
  • Задержка отключения по превышению тока: 500 ms
  • Ток балансировки ячеек: 60mA
  • Рабочий ток: 30A
  • Максимальный ток (срабатывание защиты): 60A
  • Работа защиты по КЗ: самовосстановление после отключения нагрузки
  • Размеры: 45x56mm
  • Основные функции: защита от перезаряда, защита от переразряда, защита от КЗ, защита от перегрузки по току, балансировка.

Вроде все отлично подходит для задуманного, наивно думал я :) Нет, чтобы почитать обзоры других BMS, а главное — комментарии к ним… Но мы же предпочитаем свои грабли, и только наступив на них, узнаем, что авторство на эти грабли уже давным давно и множество раз описано в инете :)

Все компоненты платы размещены на одной стороне:

Вторая сторона пустая и покрыта белой маской:

Часть, отвечающая за балансировку при заряде:

Эта часть отвечает за защиту ячеек от перезаряда/переразряда и она же отвечает за общую защиту от КЗ:

Мосфеты:

Собрано аккуратно, откровенных разводов флюса нет, вид вполне приличный. В комплекте шел хвост с разъемом, был сразу воткнут в плату. Длина проводов в этом разъеме — около 20-25 см. К сожалению, сразу его не сфотографировал.

Что еще заказал именно для этой переделки:
Аккумуляторы — aliexpress.com/item/6pcs-lot-LiitoKala-LG-HG2-18650-18650-3000mah-electronic-cigarette-Rechargeable-batteries-power-high-discharge-30A/32793701336.html
Никелевые полоски для спайки аккумуляторов: aliexpress.com/item/100pcs-lot-0-2mm-x-6mm-x-100mm-Quality-low-resistance-99-96-pure-nickel-Strip/32334231879.html (да, знаю, что можно спаять и проводами, но полосками будет занято меньше пространства и получится эстетичнее :)) Да и изначально я хотел даже собрать контактную сварку (не только для этой переделки, конечно), поэтому и заказал полоски, но лень победила и пришлось паять.

Выбрав свободный день (точнее, нагло послав все остальные дела подальше), я взялся за переделку. Для начала разобрал батарею со сдохшими китайскими аккумуляторами, выкинул аккумуляторы и тщательно замерил пространство внутри. После чего сел рисовать держатель батарей и платы в 3D-редакторе. Плату тоже пришлось нарисовать (без подробностей) чтобы примерить все в сборе. Получилось как-то так:

По задумке плата крепится сверху, с одной стороны в пазы, вторая сторона зажимается накладкой, сама плата серединой лежит на выступающей плоскости, чтобы при ее прижатии она не прогибалась. Сам держатель рассчитан такого размера, чтобы плотно сидеть внутри корпуса батареи и не болтаться там.
Сначала подумывал сделать пружинные контакты для аккумуляторов, но отказался от этой мысли. Для больших токов это не лучший вариант, поэтому оставил в держателе вырезы для никелевых полосок, которыми аккумуляторы будут спаяны. Так же оставил вертикальные вырезы для проводов, которые выходить от межбаночных соединений за пределы крышки.
Поставил печататься на 3D-принтере из ABS и через несколько часов все было готово :)

Прикручивание всего навесного я решил не доверять шурупам и вплавил в корпус вот такие вставные гаечки М2.5:

Брал тут — aliexpress.com/item/200pcs-M2-5-x-4mm-x-OD-3-5mm-Injection-Molding-Brass-Knurled-Thread-Inserts-Nuts/32428033377.html
Отличная вещь для подобного применения! Вплавляется не спеша паяльником. Чтобы пластик не набился внутрь при вплавлении в глухие отверстия, я вкрутил в эту гайку болтик подходящей длины и грел его шляпку жалом паяльника с большой каплей олова для бОльшей площади передачи тепла. Отверстия под эти гайки оставляются чуть меньше (на 0.1-0.2 мм) диаметра внешней гладкой (средней) части гайки. Держатся очень крепко, можно сколько угодно вкручивать-выкручивать болтики и не особо стесняться с усилием затяжки.

Для того чтобы иметь возможность побаночного контроля и, при необходимости, зарядки с внешней балансировкой, в задней стенке батареи будет торчать 5-контактный разъем, для которого я быстро накидал платку и изготовил ее на станке:

Как я уже писал, аккумуляторы я спаивал никелевыми полосками. Увы, этот метод не лишен недостатков и один из аккумуляторов возмутился таким обращением с ним настолько, что оставил на своих контактах только 0.2 вольта. Пришлось его выпаивать и паять другой, благо брал их с запасом. В остальном никаких трудностей не возникло. С помощью кислоты лудим контакты аккумулятора и нарезанные по нужной длине никелевые полоски, потом тщательно протираем ватой со спиртом (хотя можно и с водой) все залуженное и вокруг него и паяем. Паяльник должен быть мощным и либо уметь очень резво реагировать на остывание жала, либо просто иметь массивное жало.
Очень важно: во время пайки и во всех последующих операциях нужно внимательнейшим образом следить за тем, чтобы не замкнуть какие-либо контакты аккумуляторов! КЗ такой батареи может привести к большим неприятностям.
К трем промежуточным соединениям между аккумуляторами припаял провода — они пойдут на разъем платы для контроля за банками и на внешний разъем. Забегая вперед, хочу сказать, что с этими проводами я проделал немного лишней работы — их можно не вести к разъему платы, а припаять к соответствующим контактам B1, B2 и B3. Эти контакты на самой плате соединены с контактами разъема.

Кстати, кстати, тут я везде использовал провода в силиконовой изоляции — совершенно не реагируют на нагрев и очень гибкие. Покупал на Ебее нескольких сечений, но точную ссылку уже не помню…

Примерил аккумуляторы и плату в держателе — все превосходно:

А вот для чего я оставлял запас по глубине пазов для аккумуляторов:

Это силиконовые самоклеящиеся ножки. Такие же наклеены и на дно пазов, глубина которых рассчитана так, что при закручивании крышки эти ножки прижимают с обеих сторон аккумуляторы, не давая им болтаться и не оказывая существенного давления на них. Кстати, эти ножки очень хороши и в качестве именно ножек (как ни странно :)) — упругие и совершенно не скользят. Маст хейв в арсенале самодельщика :)
Брал эти ножки тут — aliexpress.com/item/500pcs-8-4mm-3M-self-adhesive-soft-clear-anti-slip-bumpers-silicone-rubber-feet-pads-high/32241890556.html

Примерил платку с разъемом, выпилил в корпусе батареи отверстие под разъем… и промахнулся по высоте, не от той плоскости взял размер. Получилась приличная такая щель:

Теперь остается спаять все в кучу.
На свою платку припаял идущий в комплекте хвост, обрезав его по нужной длине:

Туда же впаял провода от межбаночных соединений. Хотя, как я уже писал, можно было припаять их на соответствующие контакты платы BMS, но тут есть и неудобство — чтобы вытащить аккумуляторы нужно будет отпаивать от BMS не только плюс и минус, но и еще три провода, а сейчас можно просто выдернуть разъем.
Немного повозиться пришлось с контактами батареи: в родном исполнении пластиковая деталь с самими контактами внутри ножки батареи поджимается одним аккумулятором, стоящим внутри ножки, а сейчас пришлось думать чем эту деталь зафиксировать, да так чтобы не намертво. Вот эта деталь:

В конце концов взял кусок силикона (осталось когда заливал им какую-то форму), отрезал от него примерно подходящий кусок и вставил в ножку, поджав ту деталь. Заодно этот же кусок силикона прижимает держатель с платой, ничего болтаться не будет.
На всякий случай проложил поверх контактов каптоновую изоленту, провода прихватил несколькими соплями каплями термоклея, чтобы они не попали между половинками корпуса при его сборке.

Зарядка и балансировка

Зарядку я оставил родную от шуруповерта, она как раз выдает на холостом ходу около 17 вольт. Правда, зарядка тупа и никакой стабилизации тока или напряжения в ней нет, есть только таймер, отключающий ее примерно через час после начала заряда. Ток выдает около 1.7А, что хоть и многовато, но допустимо для этих аккумуляторов. Но это пока я не доделаю ее до нормальной, со стабилизацией тока и напряжения. Потому что сейчас плата отказывается балансировать одну из ячеек, имевшую изначально заряд на 0.2 вольта больше. BMS отключает заряд когда напряжение на этой ячейке доходит до 4.3 вольта, соответственно на остальных оно остается в пределах 4.1 вольта.
Читал где-то утверждение, что эта BMS нормально балансирует только с зарядкой CV/CC, когда ток под конец заряда постепенно снижается. Возможно, это так и есть, так что впереди меня ждет модернизация зарядки :)
Разряжать до конца не пробовал, но уверен, что защита по разряду сработает. На Ютубе есть ролики с тестами этой платы, все работает как положено.

А теперь о граблях

Все банки заряжены до 3.6 вольт, все готово к запуску. Вставляю батарею в шуруповерт, нажимаю курок и… Уверен, что не один человек, знакомый с этими граблями, сейчас подумал «И хрен стартанул у тебя шуруповерт» :) Абсолютно верно, шуруповерт слегка дернулся и все. Отпускаю курок, нажимаю снова — то же самое. Нажимаю плавно — стартует и разгоняется, но стоит стартануть его чуть порезче — отказ.
«Вот же …», подумал я. Китаец, наверное, указал в спецификации китайские амперы. Ну да ладно, у меня есть отличная толстая нихромовая проволока, сейчас я напаяю ее кусок поверх резисторов-шунтов (стоят два по 0.004 Ома в параллель) и настанет мне если и не счастье, то хотя бы какое-то улучшение ситуации. Улучшение не настало. Даже когда я вообще исключил из работы шунт, просто припаяв минус батареи после него. То есть не то что улучшений не настало, а не настало вообще никаких изменений.
И вот тогда я полез в инет и обнаружил, что копирайт на эти грабли мне не светит — они давно уже исхожены другими. Но вот решения как-то не было видно, кроме кардинального — покупать плату, подходящую именно для шуруповертов.

И решил я попробовать все же доковыряться до корня проблемы.

Предположения что срабатывает защита от перегрузки при пусковых токах я отмел, так как даже без шунта ничего не менялось.
Но все же посмотрел осциллографом на самодельном шунте 0.077 ома между аккумуляторами и платой — да, ШИМ видно, резкие пики потребления с частотой примерно 4 кГц, через 10-15 мс после начала пиков плата отрубает нагрузку. Но эти пики показывали меньше 15 ампер (исходя из сопротивления шунта), так что точно дело не в токовой перегрузке (как оказалось впоследствии, это не совсем верно). Да и керамическое сопротивление 1 Ом не вызывало отключения, а ведь ток тоже под 15 ампер.
Был еще вариант кратковременной просадки на банках при пуске, от чего срабатывает защита от переразряда и я полез смотреть что творится на банках. Ну да, там ужас творится — пиковая просадка до 2.3 вольта на всех банках, но она очень короткая — меньше миллисекунды, тогда как плата обещает ждать сотню миллисекунд перед тем как врубит защиту от переразряда. «Китайцы указали китайские миллисекунды», подумал я и полез смотреть схему контроля напряжения банок. Оказалось, что в ней стоят RC-фильтры, сглаживающие резкие изменения (R=100 Om, C=3.3 uF). После этих фильтров — уже на входе микросхем, контролирующих банки, просадка была поменьше — всего до 2.8 вольт. Кстати, вот даташит на микросхемы контроля банок на этой плате DW01B — www.zahranvane.com/Download?file=298&name=DW01B.pdf
По даташиту время реакции на переразряд тоже немалое — от 40 до 100 мс, что не вписывается в картину. Но ладно, предположить больше нечего, поэтому поменяю-ка я сопротивления в RC-фильтрах со 100 Ом на 1 кОм. Это кардинально улучшило картину на входе микросхем, просадок меньше 3.2 вольт там больше не было. Но ничуть не изменило поведение шуруповерта — чуть более резкий старт — и затык.
«Пойдем простым логическим ходом»©. Отрубать нагрузку могут только эти микросхемы DW01B, которые контролируют все параметры разряда. И я просмотрел осциллографом управляющие выходы всех четырех микросхем. Все четыре микросхемы никаких попыток отключить нагрузку при старте шуруповерта не делают. А с затворов мосфетов управляющее напряжение пропадает. Или мистика или китайцы что-то навертели в простой схеме, которая должна быть между микросхемами и мосфетами.
И начал я реверс-инжиниринг этой части платы. С матюками и бегая от микроскопа к компьютеру.
Вот что нарисовалось в итоге:

В зеленом прямоугольнике — это сами аккумуляторы. В синем — ключи с выходов микросхем защиты, тоже ничего интересного, в нормальной ситуации их выходы на R2,R10 просто «висят в воздухе». Самая интересная часть — в красном квадрате, вот тут-то, как оказалось, собака и порылась. Мосфеты я нарисовал по одному для упрощения, левый отвечает за разряд в нагрузку, правый за заряд.
Насколько я понял, причина отключения в резисторе R6. Через него организована «железная» защита от токовой перегрузки за счет падения напряжения на самом мосфете. Причем эта защита работает как триггер — стоит напряжению на базе VT1 начать повышаться, как он начинает снижать напряжение на затворе VT4, от чего тот начинает снижать проводимость, на нем повышается падение напряжения, что приводит к еще большему увеличению напряжения на базе VT1 и пошел лавинообразный процесс, приводящий к полному открытию VT1 и, соответственно, закрытию VT4. Почему это происходит при пуске шуруповерта, когда пики тока не достигают и 15А, тогда как постоянная нагрузка в 15А работает — я не знаю. Возможно тут играет роль емкость элементов схемы или индуктивность нагрузки.
Для проверки я сначала сделал симуляцию этой части схемы:

И вот что получил по результатам ее работы:

По оси X — время в миллисекундах, по Y — напряжение в вольтах.
На нижнем графике — включение нагрузки (на цифры по Y можно не смотреть, они условны, просто вверх — нагрузка включена, вниз — выключена). Нагрузкой является сопротивление 1 Ом.
На верхнем графике красным — ток нагрузки, синим — напряжение на затворе мосфета. Как видно, напряжение на затворе (синим) снижается с каждым импульсом тока нагрузки и в конце концов падает до нуля, а значит нагрузка отключается. И не восстанавливается даже когда нагрузка перестает пытаться что-то потреблять (после 2 миллисекунд). И хотя здесь применены другие мосфеты с другими параметрами, картина один в один как в плате BMS — попытка старта и отключение через считанные миллисекунды.
Ну что ж, примем это за рабочую гипотезу и вооружившись новыми знаниями попробуем разгрызть этот кусок науки китайца :)
Тут есть два варианта:
1. Поставить небольшой конденсатор параллельно резистору R1, это:

Конденсатор 0.1 мкф, по симуляции можно и меньше, до 1 нф.
Результат симуляции в таком варианте:

2. Убрать вообще резистор R6:

Результат симуляции этого варианта:

Я попробовал оба варианта — оба работают. Во втором варианте шуруповерт не отключается ни при каких обстоятельствах — старт, блокировка вращения — крутит (или изо всех сил пытается). Но как-то не совсем спокойно жить с отключенной защитой, хотя еще и остается защита от КЗ на микросхемах.
При первом варианте шуруповерт уверенно стартует при любом нажатии. Добиться отключения я смог только когда стартовал его на второй скорости (повышенная для сверления) с заблокированным патроном. Но и то он довольно сильно дергает перед отключением. На первой скорости я не смог добиться его отключения. Этот вариант я и оставил себе, меня он полностью устраивает.

На плате даже есть пустые места для компонентов и одно из них как будто специально предназначено для этого конденсатора. Рассчитано оно под размер SMD 0603, сюда я и впаял 01 мкф (обвел его красным):

ИТОГ

Плата вполне оправдала ожидания, хотя и преподнесла сюрприз :)
Плюсы и минусы расписывать не вижу смысла, все это в ее параметрах, укажу только одно достоинство: совершенно незначительная доработка превращает эту плату в полноценно работающую с шуруповертами :)

ЗЫ: блин, я шуруповерт переделывал меньше времени, чем писал этот обзор :)
ЗЗЫ: возможно меня поправят в чем-то более опытные в силовой и аналоговой схемотехнике товарищи, сам-то я цифровик и аналог воспринимаю через пень колоду :)

Планирую купить +1 Добавить в избранное +2 +3

(c) 2017 Источник материала

Рекламные ссылки