- PVSM.RU - https://www.pvsm.ru -
Воистину говорят: лень — двигатель прогресса! Вот и мне, взбудоражила голову мысль, автоматизировать процесс измерения и тренировки кислотных аккумуляторных батарей. Ведь кто, в здравом уме, будет, в наш век умных микросхем, корпеть над аккумулятором с мультиметрами и секундомером? Наверняка, многие знают «народное» зарядное устройство Imax B6. На хабре есть статья [1] про него (и даже не одна). Ниже я напишу, что я с ней сделал и зачем.

В начале, моей целью было увеличение разрядной мощности, чтобы измерить свои батареи для бесперебойника и, в перспективе, тренировать их, не подвергаясь риску преждевременной старости (меня, а, не аккумуляторов). Погонял устройство в разобранном виде.
Внутри оно щедро нашпиговано множеством дифференциальных усилителей, мультиплексором, buck-boost регулятором с высоким КПД, имеет хороший корпус, а в сети можно найти открытый исходный код очень неплохой прошивки. При токе зарядки до 5 ампер, им можно заряжать даже автомобильные аккумуляторы на 50А/ч (ток 0.1C). При всем, при этом этом, богатстве, в качестве датчиков тока, здесь используются обычные 1 Вт резисторы, которые, ко всему прочему, работают на пределе своей мощности, а значит, их сопротивление значительно уплывает под нагрузкой. Можно ли доверять такому измерительному прибору? Подув и потрогав руками эти «датчики» сомнения ушли — хочу переделать на шунты из манганина!
Манганин (есть еще константан) — специальный сплав для шунтов, который практически не изменяют своего сопротивления от нагрева. Но его сопротивление на порядок меньше заменяемых резисторов. Так же, в схеме прибора используются операционные усилители для усиления напряжения с датчика до читабельных микроконтроллером значений (я полагаю, верхняя граница оцифровки — опорное напряжение с TL431, около 2,495 вольт).
Моя доработка заключается в том, чтобы впаять шунты вместо резисторов, а разницу в уровнях компенсировать, изменив коэффициент усиления операционных усилителей на LM2904: DA2:1 и DA1:1 (см. схему).
Для переделки нам понадобятся: само устройство оригинал (я описываю переделку оригинала), манганиновые шунты (я взял от китайских мультиметров), ISP программатор, прошивка cheali-charger (для возможности калибровки), Atmel Studio для ее сборки (не обязательно), eXtreme Burner AVR для ее прошивки и опыт по созданию кирпичей успешной прошивке атмеги (Все ссылки есть в конце статьи).
А так же: умение паять SMD и непреодолимое желание восстановить справедливость.
Я нигде не учился разработке схем и вообще радиолюбительству, поэтому вносить такие изменения в работающее устройство вот так с ходу, было лениво боязно. И тут на помощь пришел мультисим! В нем возможно, не прикасаясь к паяльнику: реализовать задумку, отладить ее, исправить ошибки и понять, будет ли она вообще работать. В данном примере, я смоделировал кусок схемы, с операционным усилителем, для цепи, обеспечивающей режим заряда:

Резистор R77 создает отрицательную обратную связь. Вместе с R70 они образуют делитель, который задает коэффициент усиления, который можно посчитать примерно так (R77+R70)/R70 = коэффициент усиления. У меня шунт получился около 6,5 мОм, что при токе 5 А составит падение напряжения нем 32,5 мВ, а нам нужно получить 1,96 В, чтобы соответствовать логике работы схемы и ожиданиям её разработчика. Я взял резисторы 1 кОм и 57 кОм в качестве R70 и R77 соответственно. По симулятору получилось 1,88 вольт на выходе, что вполне приемлемо. Так же я выкинул резисторы R55 и R7, как снижающие линейность, на фото они не используются (возможно, это ошибка), а сам шунт подключил выделенными проводами к низу R70, C18, а верх шунта напрямую к "+" входу ОУ.
Лишние дорожки подрезаны, в том числе, и с обратной стороны платы. Важно хорошо припаять проводки, чтобы они не отвалились, со временем, от шунта или платы, потому что с этого датчика запитывается не только АЦП микроконтроллера, но и обратная связь по току импульсного регулятора, который, при пропадании сигнала, может перейти в максимальный режим и угробиться.
Схема для режима разрядки принципиально не отличается, но, так как я сажаю полевик VT7 на радиатор, и увеличиваю мощность разрядки до предела полевика (94Вт по даташиту), хотелось бы и максимальный ток разряда выставить по-больше.
В результате я получил: R50 – шунт 5,7 мОм, R8 и R14 — 430 Ом и 22 кОм соответственно, что дает требуемые 1,5 вольт на выходе при токе через шунт 5 А. Впрочем, я экспериментировал и с большим током — максимум вышло 5,555 А, так что зашил в прошивку ограничение до 5,5 А (в файле «cheali-chargersrchardwareatmega32targetsimaxB6-originalHardwareConfig.h»).
По ходу вылезла проблема — зарядник отказался признавать, что он откалиброван (i discharge). Связано это с тем, что для проверки используется не макроопределение MAX_DISCHARGE_I в файле «HardwareConfig.h», а вторая точка калибровки для проверки первой (точки описаны в файле «GlobalConfig.h»). Я не стал вникать в эти тонкости хитросплетения кода и просто вырезал эту проверку в функции checkAll() в файле «Calibrate.cpp».
В результате переделок, получился прибор, который обеспечил приемлемую линейность измерений в диапазоне от 100mA до 5А и который можно было бы назвать измерительным, если бы не одно но: так как я оставил мощный разрядный полевик внутри корпуса (несмотря на улучшенное охлаждение), нагрев платы от него все равно вносит искажение в результат измерения, и измерения немного «плывут» в сторону занижения… Не уверен, кто именно виноват в этом: усилитель ошибки или АЦП микроконтроллера. В любом случае, ИМХО, стоит вынести этот полевик за пределы корпуса и обеспечить там ему достаточное охлаждение (до 94Вт или заменить его на другой подходящий N-канальный).
Не хотел я писать про это, но меня заставили.

В данном случае, порядок такой:
Полевик VT7, на новом месте, приклеен на термоклей, а его теплоотвод — припаян к медной пластинке:

Охлаждение решил сделать из ненужного радиатора на тепловой трубке от мат-платы. На фото видно подходящую по размерам прижимную пластину и площадку транзистора, по периметру которой проложена изолирующая пластмасса — на всякий случай. Пяточек из жала паяльника припаян прямо к плате, к общему проводу — будет играть роль дополнительного теплоотвода от преобразователя:
Собранная конструкция не помешает стоять прибору на ножках:
Готовы к прошивке:
Я испытал эту переделку в пассивном режиме охлаждения: разряд 20 минут 6-вольтовой Pb-батареи максимальным током 5,5А. Мощность высветилась 30...31Вт. Температура на тепловой трубке, по термопаре, дошла до 91°C, корпус тоже раскалился и, в какой-то момент, экран начал становиться фиолетовым. Я, конечно, сразу прервал испытание. Экран долго не мог прийти в норму, но потом его отпустило.
Теперь уже очевидно, что выносной блок нагрузки, с разъемным соединением, был бы наилучшим решением: в нем нет ограничений на размер радиатора и вентилятора, а сама зарядка получилась бы более компактной и легкой (в поле разряд не нужен).
Надеюсь, что эта статья поможет новичкам быть смелее в экспериментах над беспомощными железяками.
Замечания и дополнения приветствуются.
Предупреждение: описанные модификации, при неумелом применении, могут повредить компоненты зарядки, превратить ее в необратимый «кирпич», а так же привести к снижению надежности устройства и создать риск пожара. Автор снимает с себя ответственность за возможный ущерб, в том числе за зря потраченное время.
Альтернативная прошивка cheali-charger: https://github.com/stawel/cheali-charger [9]
Для компиляции прошивки: Atmel Studio [10] и CMake [11]
Программа-прошивальщик: eXtreme Burner AVR [12]
ISP программатор: USBASP Programmer for ATMEL [13]
Автор: D39
Источник [14]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/akkumulyatory/83022
Ссылки в тексте:
[1] статья: http://habrahabr.ru/post/150213/
[2] Image: http://habrastorage.org/files/dde/b77/46f/ddeb7746f5214f8fa81e5d9904ede182.jpg
[3] Image: http://s04.radikal.ru/i177/1502/3a/58363ead783d.jpg
[4] Image: http://s017.radikal.ru/i407/1502/94/8d82b5523f0c.jpg
[5] Image: http://s020.radikal.ru/i707/1502/9f/27438aeae019.jpg
[6] Image: http://radikal.ru/fp/307ba0e333c140e48f9cbcde104c046e
[7] Image: http://radikal.ru/fp/b72defce17fc4a3882565b8c4d4381c5
[8] Image: http://s020.radikal.ru/i708/1502/72/f4ffeb74380e.jpg
[9] https://github.com/stawel/cheali-charger: https://github.com/stawel/cheali-charger
[10] Atmel Studio: http://www.atmel.com/tools/ATMELSTUDIO.aspx
[11] CMake: http://www.cmake.org/
[12] eXtreme Burner AVR: http://extremeelectronics.co.in/avr-tutorials/gui-software-for-usbasp-based-usb-avr-programmers/
[13] USBASP Programmer for ATMEL: http://www.ebay.com/itm/USB-ISP-USBASP-Programmer-for-ATMEL-51-AVR-Programmer-M80-/291325525791?pt=LH_DefaultDomain_0&hash=item43d45abf1f
[14] Источник: http://habrahabr.ru/post/250661/
Нажмите здесь для печати.