Зарядное устройство-тестер аккумуляторов на Atmega8

Это устройство предназначено для измерения ёмкости аккумуляторов Li-ion и Ni-Mh , а также для заряда Li-ion аккумуляторов с выбором начального тока заряда.

Управление

Подключаем устройство к стабилизированному блоку питания 5в и током 1А (например от сотового телефона). На индикаторе в течении 2 сек отображается результат предыдущего измерения емкости "ххххmA/c" а на второй строке значение регистра   OCR1A "S.xxx". Вставляем аккумулятор. Если нужно зарядить аккумулятор то кратко жмём кнопку ЗАРЯД, если нужно измерить ёмкость то кратко жмём кнопку ТЕСТ. Если нужно изменить ток заряда (значение регистра  OCR1A) то долго(2 сек) жмем кнопку ЗАРЯД. Заходим в окно регулировки регистра. Отпускаем кнопку. Кратко нажимая на кнопку ЗАРЯД меняем по кругу значения (50-75-100-125-150-175-200-225) регистра, в первой строке показывается ток заряда пустого аккумулятора при выбранном значении (при условии что у вас в схеме стоит резистор 0,22 Ом). Кратко жмём кнопку ТЕСТ значение  регистра OCR1A запоминаются в энергонезависимой памяти.
Если вы проделывали разные манипуляции с устройством и вам надо сбросить показания часов, измеренной ёмкости то долго жмём кнопку ТЕСТ (значение  регистра OCR1A не сбрасываются). Как только заряд окончен подсветка дисплея отключается, для включения подсветки кратко нажмите кнопку ТЕСТ или ЗАРЯД.

Логика работы устройства следующая:

При подаче питания, на индикаторе отображается результат предыдущего измерения ёмкости аккумулятора и значение  регистра OCR1A, хранящееся в энергонезависимой памяти. Через 2 секунды устройство переходит в режим определения типа аккумулятора по величине напряжения на клемах.

Если напряжение более 2В то это Li-ion аккумулятор и напряжение полного разряда составит 2,9В, иначе это Ni-MH аккумулятор и напряжение полного разряда составит 1В. Только после подключения  аккумулятора доступны кнопки управления. Далее устройство ожидает нажатия кнопок Тест или Заряд. На дисплее отображается "_STOP". При нажатии кратко кнопки Тест подключается нагрузка через MOSFET.

Величина тока разряда определяется по напряжению на резисторе 5,1Ом и, каждую минуту суммируется с предыдущим значением. В устройстве используется кварц 32768Гц для работы часов.

На дисплее отображается текущая величина емкости аккумулятора "ххххmA/c" и тора разряда "А.ххх", а также время "хх:хх:хх"с момента нажатия кнопки. Показывается также анимированный значок разряда аккумулятора. По окончании теста для Ni-MH аккумулятора появляется надпись "_STOP", результат измерения отображается на дисплее "ххххmA/c" и запоминается.

Если аккумулятор Li-ion, то также результат измерения отображается на дисплее "ххххmA/c" и запоминается, но сразу включается режим заряда. На дисплее отображается содержимое регистра   OCR1A "S.xxx". Показывается также анимированный значок заряда аккумулятора.

Регулировка тока заряда осуществляется с помощью ШИМ и ограничивается резистором 0,22Ом. Апаратно ток заряда можно уменьшить увеличив сопротивление 0,22Ом до 0,5-1Ом. В начале заряда ток плавно нарастает до значения регистра OCR1A или до достижения напряжения на клемах аккумулятора 4,22В (если аккумулятор был заряжен).

Величина тока заряда зависит от значения регистра OCR1A - больше значение - больше ток заряда. При превышении напряжения на клемах аккумулятора 4,22В значение регистра OCR1A уменьшается. Процесс дозаряда продолжается до величины регистра OCR1A равного 33, что соответствует току около 40 mA. На этом заряд заканчивается. Подсветка дисплея отключается.

Настройка

1. Подключаем питание.
2. Подключаем аккумулятор.
3. Подключаем вольтметр к аккумулятору.
4. Временными кнопками + и - (PB4 и PB5)добиваемся совпадения показания вольтметра на дисплее и на эталонном вольтметре.
5. Длительно нажимаем на кнопку ТЕСТ (2 сек), происходит запоминание.
6. Извлекаем аккумулятор.
7. Подключаем вольтметр к резистору 5,1Ом (по схеме около транзистора 09N03LA).
8. Подключаем регулируемый БП к клемам аккумулятора , выставляем на БП 4В.
9. Нажимаем кратко кнопку ТЕСТ.
10. Измеряем напряжение на резисторе 5,1Ом - U.
11. Высчитываем ток разряда I=U/5,1
12. Временными кнопками + и - (PB4 и PB5) устанавливаем на индикаторе"А.ххх" рассчитанный ток разряда I.
13. Длительно нажимаем на кнопку ТЕСТ (2 сек), происходит запоминание.

Устройство питается от стабилизированного источника напряжением 5 Вольт и током 1А. Кварц на 32768Гц предназначен для точного отсчета времени. Контроллер ATmega8 тактируется от внутреннего генератора частотой 8 МГц, также необходимо установить защиту от стирания EEPROM соответствующими битами конфигурации. При написании управляющей программы были использованы обучающие статьи с данного сайта.

Текущие значения коэффициентов напряжения и тока (Ukof . Ikof) можно увидеть если подключить дисплей 16х4 (16х4 предпочтительно для отладки) на третьей строке. Или в Ponyprog если открыть файл прошивки EEPROM (считать с контроллера EEPROM).
1 байт - OCR1A , 2 байт - I_kof, 3 байт - U_kof,  4 и 5 байт результат предыдущего измерения емкости.

Видео работы прибора:

Автор: Гапонов Сергей

Архив для статьи "Зарядное устройство/тестер аккумуляторов на Atmega8" HOT
Проект AVRStudio 6
File Size 60.56 KB Download 1 413 Download

Метки: ATmega8, HD44780, Зарядное, Аккумулятор, Li-ion

Печать

Комментарии  

0 #61 sergang 10.11.2016 13:15
нашёл ошибку в плате в разводке 358 м/с .
Сообщить модератору
+1 #62 sergang 10.11.2016 13:36
Сообщить модератору
0 #63 Винер 14.11.2016 18:22
Если бы, ещё NiZn заряжал.
Сообщить модератору
0 #64 andrei913 28.01.2017 15:39
Здравствуйте! Кто нибудь собрал это устройство? Плата от gms рабочая?
Сообщить модератору
0 #65 gms 28.01.2017 21:55
Цитата:
Плата от gms рабочая?
Увы нет :-(. Заставить работать так и не удалось. Попробуйте, может Вам повезет.
Сообщить модератору
0 #66 Nikfel 26.02.2017 15:03
Можно ли как-то регулировать ток заряда от 0.5 А до 1 А(крутилкой)? Если у меня нет эталонного вольтметра - обычный подойдет и ещё нужен ли осциллограф при настройке прибора? Я пока ещё плохо разбираюсь в электронике, но всё равно планирую повторить прибор. Заранее спасибо за помощь.
Сообщить модератору
+1 #67 sergang 28.02.2017 09:56
Если нужно изменить ток заряда (значение регистра OCR1A) то долго(2 сек) жмем кнопку ЗАРЯД. Заходим в окно регулировки регистра. Отпускаем кнопку. Кратко нажимая на кнопку ЗАРЯД меняем по кругу значения (50-75-100-125- 150-175-200-225 ) регистра, в первой строке показывается ток заряда пустого аккумулятора при выбранном значении (при условии что у вас в схеме стоит резистор 0,22 Ом). Кратко жмём кнопку ТЕСТ значение регистра OCR1A запоминаются в энергонезависим ой памяти.

И обычный вольтметр подойдет, беС осциллографа.
Сообщить модератору
0 #68 Nikfel 01.03.2017 15:41
Спасибо. Ещё есть один вопрос: при зарядке не возможно отслеживать емкость аккумулятора, а только при разрядке можно?
Сообщить модератору
0 #69 sergang 02.03.2017 17:29
определить емкость аккумулятора можно только при разрядке
Сообщить модератору
0 #70 Nikfel 08.03.2017 11:41
А разрядника никакого не требуется? В аналогичной схеме видел использовалась нихромовая спираль, но там можно мерять емкость при зарядке.
Сообщить модератору
0 #71 Nikfel 04.04.2017 21:29
Можно ли использовать импульсный блок питания для настройки прибора или надо использовать линейный?
Сообщить модератору
+1 #72 sergang 07.04.2017 09:05
я использовал переделанный БП из БП компьютера РС
Сообщить модератору
0 #73 Андрейй 17.07.2017 18:28
Компиллирую проект из данной статьи в Atmel Studio 6.0, а компиллятор ругается: 16:19:21: [WARNING] The device [atmega8] is not supported in ASF Version [3.0.1] that is used in the project Li-Ion ZARMOD

Что это значит?
Сообщить модератору
0 #74 Андрей4 18.09.2017 15:27
Товарищи!

А из-за чего может не работать счетчик на дисплее? Включаю заряд/разряд, а секунды/минуты/ часы на нулях.
Сообщить модератору
0 #75 gms 18.09.2017 16:49
Интересно, есть здесь хотя бы один человек, кроме автора устройства, у которого устройство в живую заработало так, как нужно?
Сообщить модератору
0 #76 Андрей4 19.09.2017 10:25
У меня вначале работало, как у автора. Потом счетчик перестал считать время и, как следствие, емкость аккума.
Сообщить модератору

Советуем посмотреть...

Авторизация