Данное самодельное устройство настраивается через терминал с компьютера и помимо информации о емкости, позволяет строить графики разряда тестируемых батарей.
Разберем его функционал на примере теста аккумулятора от ROBITON выполненного в формате батарейки "Крона".
Тестер емкости батарей имеет две вручную задаваемых уставки:
- отключение батареи от цепи при снижении напряжения ниже определенного уровня (устанавливается отправкой в терминал символа 'u' и значения напряжения в милливольтах) - пример u3300;
- отключение батареи от цепи при снижении тока в цепи ниже определенного уровня (устанавливается отправкой в терминал символа 'i' и значения напряжения в миллиамперах) - пример i50;
Насколько настроен контроллер от глубокого разряда в этой батарее в документации не указано - поэтому предположим, что там 2 банки и на всякий случай поставим 5V - батарея должна превратиться в кирпич контроллером гораздо раньше, чем она разрядится до этого значения.
Команда u5000. Ток нас не интересует - оставляем 0.
При входном напряжении больше 3V, устройство может поддерживать постоянный ток разряда батареи. Ток разряда устанавливается с помощью переключателей (примерно по 100mA на каждый переключатель) - емкость будет посчитана по факту энергопотребления.
Данные тестирования пишутся в энергонезависимую память Arduino - так что гонять компьютер во время тестирования не обязательно, можно воспользоваться зарядкой для телефона.
После подключения батареи, нажимаем красную кнопку которая, уничтожит весь мир удаляет предыдущие результаты измерений и начинает записывать новый журнал разряда АКБ. Встроенный в Arduino светодиод светится.
В левой колонке дисплея отображаются:
- U напряжение на выходе батареи
- I разрядный ток
- Статус (Test идет тестирование)
- Время тестирования
- Cb емкость отданная батареей с начала тестирования
Справа на дисплее:
- Umin - напряжение на выходе батареи при котором она будет отключена
- Imin - при снижении тока в цепи ниже этого значения, батарея будет отключена
- Tgraph интервал точек графика (пока не настаивается, планирую реализовать позже для тестирования более емких батарей)
- Tend - количество свободной памяти (доступные минуты тестирования)
Вся энергия аккумулятора идет на обогрев помещения, поэтому не забываем иногда щупать радиатор на микросхеме.
После окончания тестирования встроенный светодиод на Arduino начинает мигать, можно подключать плату к ПК и снимать результаты:
Сводная информация: (запрашивается отправкой в терминал символа S)
- Us = 8.0V напряжение в начале тестирования
- Uf = 5.8V напряжение в конце тестирования (при этом значении встроенный в батарею контроллер защиты снял питание)
- Is = 302mA ток в начале тестирования
- If = 305mA ток в конце тестирования
- Tb =130min (время тестирования, до срабатывания защиты)
- Cb = 653mAh емкость батареи
Отсюда видим, что контроллер защиты АКБ от глубокого разряда настроен на напряжение 5.8V, а емкость АКБ полностью соответствует тому, что написано на корпусе.
Данные для постройки графика тока в цепи в процессе разряда:
(запрашиваются отправкой в терминал символа 'I'):
Здесь полезной информации мало, разве что демонстрация того, что стабилизатор на LM338 отработал штатно.
Данные для постройки графика напряжения на АКБ в процессе разряда: (запрашивается отправкой в терминал символа 'U'):
Он более информативен. На основании его можно рассчитать устройство, для точного определения уровня оставшегося в батарее заряда, или если самоделка питаемая от АКБ чувствительна к снижению входного напряжения - понять сколько % заряда можно будет выжимать из данной батарее если разряжать её не полностью. Например:
- >7.0V было ~70 минут;
- >6.5V было ~120 минут;
Конкретно по этой батарее вопросов нет. Емкость - соответствует емкости указанной производителем, а защита от глубокого разряда включается при напряжении 5.8V последняя точка на графике. Получается 2.9V на банку.
Сами графики несложно построить в любом табличном процессоре (я делал в Excel).
При условии, что напряжении на батарее больше 2.9V (Li-ion, Li-Pol, кроны и другие), батарея может разряжаться постоянным разрядным током в зависимости от количества установленных переключателей (включать и калибровать схему строго сверху вниз) - измерения сняты по факту, так как любые резисторы имеют погрешность.
- 1 - 106mA
- 2 - 208mA
- 3 - 305mA
- 4 - 408mA
- 5 - 505mA
- 6 - 608mA
- 7 - 712mA
- 8 - 814mA
- 9 - 916mA
Если напряжение батареи меньше 2.9V (пальчики, мизинчики, Ni-Mn, Ni-Cd и другие) стабилизатор на LM338 можно отключить тумблером SA1. Тогда разрядный ток можно установить с помощью резисторов используя закон Ома (12Om/количество переключателей) или по показаниям амперметра на дисплее. График тока в процессе измерений будет не такой красивый, но Arduino в любом случае посчитает все правильно.
Работа всех отдельных элементов данной схемы была разобрана в предыдущих статьях:
В устройстве есть есть еще одна уставка: при превышении тока в цепи через токовый сенсор INA219 значения в 1000mA - реле разомкнет цепь. Случиться это может либо из-за теплового пробоя на входе/выходе LM338, или если была набрана неверная комбинация переключателей и тумблера при установке тока разряда. Данная опция срабатывает в любом режиме работы!!!
На дисплее будет гореть надпись "авария" и значение силы тока, который успела намерять INA219 до момента размыкания контактов. После устранения неисправности, Arduino нужно будет перезагрузить кнопкой Reset или по питанию.
Код для Arduino и графики можно скачать тут:
Пусть жизнь будет без "аварий". Всем удачи!