Добро пожаловать!










Новая версия.









Зарядное устройство предназначено для зарядки NiMh и NiCd аккумуляторов (АА AAA) методом быстрого заряда. В принципе сейчас много микросхем обеспечивающих быстрый заряд (например MAX712), я сделал свою зарядку вот почему:
если надо зарядить пару акк. то они включаются последовательно, если у них разная емкость, то один из них перезаряжается, другой недозаряжается, затем заряд выравнивается капельной зарядкой обеспечивая дозаряд акк с большей емкостью, другой же будет рассеивать подводимую энергию в виде тепла. На пользу аккумуляторам это не идет, уменьшается срок службы.
Далее, конец заряда определяется методом дельта V.
"dV/dt – спад напряжения. Данный критерий подразумевает определение отрицательного перепада напряжения, которое возникает у некоторых типов аккумуляторов после полного заряда. Обычно используется при зарядке постоянным током. Применим к быстрой зарядке NiCd и NiMH аккумуляторов."-AVR450.
*Здесь и далее таким образом выделены цитаты из статей.

А вот из другой статьи Немного о зарядке NiMH и NiCd аккумуляторов:
Метод –dV вызывает некоторый перезаряд аккумулятора, что ведет к снижению срока его службы.
Что и иллюстрирует следующий график.


Тем, кто интересуется по заряду аккумуляторов, советую почитать
Немного о зарядке NiMH и NiCd аккумуляторов © Ридико Леонид Иванович. http://www.caxapa.ru/faq/charge_nimh.pdf

Ниже приведены графики, снятые с помощью этого зарядного устройства.

NiMh 2200mAh зарядный ток 1300mA.

Считается, что быстрый заряд можно использовать только в диапазоне температур 0…+40°C и при напряжении на аккумуляторе 0.8…1.8 В. КПД процесса быстрой зарядки очень высок (порядка 90%), поэтому аккумулятор нагревается слабо. Однако в конце зарядки КПД этого процесса резко падает и практически вся подводимая к аккумулятору энергия начинает превращаться в тепло. Это вызывает резкий рост температуры и давления внутри аккумулятора, что может вызвать его повреждение.
Для NiMh аккумуляторов, при токах больших 0.7С, отрицательный перепад почти всегда есть, минусы - большие зарядные токи и температура в конце заряда близкая к 40°C. При зарядном токе 0.5С и емкости 2200mAh (график) , отрицательный перепад напряжения не более 2.5-5мВ, для многих аккумуляторов обычно прекращается рост напряжения.
Опять же цитата из статьи Немного о зарядке NiMH и NiCd аккумуляторов:
Как метод dT/dt, так и метод –dV вызывают некоторый перезаряд аккумулятора, что ведет к снижению срок его службы. Для того, чтобы обеспечить полный заряд аккумулятора, завершение заряда лучше проводить малым током при низкой температуре аккумулятора, так как при повышенных температурах способность принимать заряд у аккумуляторов заметно падает. Поэтому фазу быстрой зарядки желательно завершать чуть раньше. Существует так называемый inflexion метод определения окончания быстрой зарядки [3]. Суть этого метода заключается в том, что анализируется не максимум напряжения на аккумуляторе, а максимум производной напряжения по времени. Т.е. быстрая зарядка прекратится в тот момент, когда скорость роста напряжения будет максимальной. Это позволяет завершить фазу быстрой зарядке раньше, когда температура аккумулятора еще не успела значительно подняться.
В этом устройстве конец заряда определяется по уменьшению скорости нарастания напряжения. Это хорошо видно при заряде NiCd аккумулятора емкостью 700mA током 1С. На графике конец заряда помечен красным перекрестьем. В второй версии прошивки, определение окончания заряда близко к методу dV=0, синие перекрестие на графике. Для аккумуляторов большой емкости обе версии ведут себя одинаково, так как нет явно выраженого роста напряжения. В устройстве предусмотрена фаза дозарядки в течении 30 минут.

NiCd 700mAh зарядный ток 700mA.

Устройство.


Это зарядное устройство рассчитанно на зарядку двух аккумуляторов. Состоит из двух одинаковых каналов, dc/dc преобразователя и схемы измерения температуры.

Схема измерения температуры.

Подробно описана в другом моем устройстве Уменьшение шума от кулеров компьютера.

Схема dc/dc преобразователя.

Такие навороты для управления MOSFET транзистором нужны для того, что бы быстро заряжать\разряжать емкость затвора, для транзистора IRF9530 около 1Нф. Резистор R3 немного затягивает этот процесс, но защищает Q2 и Q3 от больших токов. При расчете в микрокапе, этой схемы, импульс тока для Q2 составляет 17mA, для Q3 60mA, без R3 соответственно 50mA и 280mA. Применение "драйвера" для управления MOSFET транзистора в этой схеме обязательно. Во первых уменьшает потери на переключение, а значит и нагрев транзистора. Во вторых, зарядное устройство должно обеспечивать режим до заряда, ток trickle, если не принимать мер для разряда емкости затвора, то выходной импульс будет сильно затянут, получить маленькие токи на выходе преобразователя будет затруднительно. К примеру, в первой собранной схеме, емкость затвора, разряжалась на резистор 800 ом, при значении OCR1 = 1 входном напряжении 15V индуктивности дросселя L=240U, выходной ток был около 300мА. При этих же значениях с "драйвером" 7-10мА.
Резистор R5, при выключенном канале и отсутствующем аккумуляторе, предотвращает рост напряжения на конденсаторе C2 . Связано это с тем, что MOSFET транзистор имеет емкость сток-исток, и при работающем соседнем канале, импульсные просадки по питанию будут проходить через эту емкость и заряжать конденсатор С2.

Транзистор M2 (на разряд), лучше применить из серии Logic-level gate drive (IRL).

Вторая "трудная вещь" - это дроссель. Что читать что бы разобраться?
Мне очень помогли книги
"Б. Ю. Семенов Силовая электроника для любителей и профессианалов".
В.С. Попов, С.А. Николаев Общая электротехника с основами электроники. Глава "Электромагнитизм".
"Начальная школа построения импульсных DC/DC преобразователей" журнал "Электронные компоненты" начало в 06 номере за 2002 год.
Хорошая статья, конкретно расчеты и рекомендации:
(с) 1996, 2000, 2002 А.Кузнецов. ТРАНСФОРМАТОРЫ И ДРОССЕЛИ ДЛЯ ИМПУЛЬСНЫХ ИСТОЧНИКОВ ПИТАНИЯ
http://ferrite.com.ua/st1.html или www.compitech.ru
Хорошие расчеты есть в книге У. Титце К. Шенк Полупроводниковая схемотехника.

Свои дросселя я мотал на чем было. Феррит N48 RM5, немагнитный зазор 0,3мм, 50 витков 0,4мм, индуктивность ~280U. Индуктивность получилась выше расчетной - 80u, но в этой схеме хуже от этого не будет.
Микроконтроллер работает от внутреннего RC генератора 8 мег. Режим шима - Fast PWM, 8-bit и значит частота 31250Гц, максимальный ток дросселя 1,5А.

Схема устройства.

увеличить max_ch.png  (53 Kb)

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

Поле "R=" и "Шаг ADC" в микроконтроллере не сохраняются.
Поле "R=" - это сопротивление резистора датчика тока, поэтому их сопротивление в канале А и В должно быть одинаковым, что бы не было больших разбросов токов. Так как сопротивление довольно низкоомное померить трудно, надеемся на удачу :)
Поле "Fast" - ток быстрого заряда,
"Trickle" - Фаза дозарядки В этой фазе ток зарядки устанавливают в пределах 0.1…0.3C. При токе дозарядки 0.1C производители рекомендуют длительность дозарядки 30 мин. Более длительная дозарядка приводит к перезаряду, что увеличивает емкость аккумулятора на 5…6%, но сокращает количество циклов заряд-разряда на 10…20%. В устройстве можно отключать ток дозоряда.

Температура.

Поле "максимальная температура аккумулятора" - при превышении этой температуры заряд останавливается. Рекомендуется ставить 40°C,
"Максимальный прирост темереатуры за 1 минуту". чаще используют не саму температуру, а скорость ее изменения dT/dt. Считается, что при зарядном токе 1C процесс зарядки нужно завершать, когда скорость роста температуры dT/dt достигнет 1°C/мин. Нужно отметить, что при токах зарядки менее 0.5C скорость роста температуры почти не меняется и этот критерий использовать нельзя. Ввиду тепловой инерции метод dT/dt склонен вызывать некоторый перезаряд аккумулятора.
Настройка датчиков. Как сказано выше, здесь: уменьшение шума от кулеров компьютера можно прочитать подробнее. Кратко, расположить датчики (диоды) вместе, подождать немного что бы их температура выровнялась, внести эту температуру в поле "Темп", нажать кнопку присвоить. Удобно настраивать так, связать датчики вместе с датчиком ds18b20, вот две довольно простые схемы термостат, термометр. Настроить датчики, как написано выше, затем проверить, например поднести к датчикам настольную лампу, температура доходит до 40 гр. Если датчики врут в верхнем диапазоне, то скорей всего у Вас "хорошие" диоды, их надо поменять на попроще, также надо подобрать шаг ADC на 1 градус цельсия, обычно равен 7 или 8, завист от коэффециента усиления ОУ. При температуре выше 40 гр. показания датчика DS18B20 и программы (диода) будут отличатся из за разных корпусов. Температуры были бы приблизительно равны, если датчики закрепить на общем радиаторе и его разогревать.
Датчики (выяснено практическим путем) надо располагать у минуса аккумулятора.

Связь с устройством ведется через ком порт, в программе можно выбирать номер порта. Скорость 38400 бит/c. Шнур из 4 проводов, TXD, земляной, RXD, земляной, (дифф. пары). При длине 1,5 метра сбоев не наблюдалось. Связь ведется короткими посылками, поэтому кварц для работы с UART здесь не нужен, микроконтроллер тактируется от внутреннего RC генератора, 8 мег.

Управление устройством.


Переключатели.

Устройство содержит четыре переключателя (джампера).

Переключатели замкнуты:

  1. включена работа с UART
  2. аккумуляторы Ni-Cd
  3. включен импульс разряда
  4. включен дозаряд
Первый переключатель разрешает работу с UART. В режиме заряда будут передаваться данные на компьютер. Прием данных запрещен. В режиме ожидания, все светодиоды выключены, работа со страницей настроек. В эксплуатации устройства, резонно выключать работу с UART, что бы программа не тратила время на пересылку данных, если конечно не интересует статистика заряда. Графики заряда удобно строить в экселе. На комп передается напряжение и температура аккумулятора.

Второй переключатель. Отличий в алгоритме определения конца заряда нет, поэтому просто позволяет выбрать другой ток и макс. время заряда, без подключения к компьютеру. Также в этом режиме не контролируется отсутствие прироста напряжения на аккумуляторе, что дает возможность останавливать заряд по времени, нужно для проведения тренировочных циклов (0.1С, 16часов), например, при покупке новых аккумуляторов.

Третий переключатель. В анализаторах аккумуляторов Cadex 7000 и CASP/2000L (H) используются реверсивные импульсные методы заряда, при котором короткие импульсы разряда распределяются между длинными зарядными импульсами. Считается, что такой метод заряда улучшает рекомбинацию газов, возникающих в процессе заряда, и позволяет проводить заряд большим током за меньшее время. Кроме того, восстанавливается кристаллическая структура кадмиевых анодов, устраняя тем самым "эффект памяти". Величина обратного импульса нагрузки определяется в процентах от тока заряда в диапазоне от 5 до 12 %. Оптимальное значение 9 %. Так например, для NiCd аккумулятора емкостью 1800 мА*час, зарядный ток величиной в 1С равен 1800 мА. Тогда импульс нагрузочного тока будет равен 1800 мА * 0.09 = 162 мА. Выбирайте значение равное 5 % для NiCd емкостью 500 мА*час и менее.
Примечание переводчика: Был проведен единичный эксперимент по измерению параметров метода реверсивного заряда NiCd и NiMH аккумуляторов емкостью 1000 мА*час. Измерения проводились с помощью осциллографа, путем измерения параметров импульса напряжения на резисторе С5 -16В - 0.2 Ом +-1%, последовательно включенном в положительную цепь заряда аккумулятора. По результатам измерений получилось:
• длительность импульса "1" составляет ~30 мс, а период следования ~200 мс;
• амплитуды импульсов тока "1" и "2" примерно одинаковы и равны значению тока заряда.
Статья - "Аккумуляторы в мире портативных устройств. Руководство по аккумуляторам для неинженеров. Отрывок из книги “Batteries in a Portable World “by Isidor Buchmann. Перевод Владимира Васильева."

Четвертый переключатель. После детектирования окончания заряда включает ток дозаряда продолжительность 30 мин. При замкнутом первом переключателе, данные на компьютер передаются раз в минуту.


Кнопки и индикация.

Каждый канал управляется двумя кнопками и имеет индикацию двумя светодиодами.
При включении, проверяется контрольная сумма всех параметров сохраняемых в EEPROM, если контрольная сумма не совпадает, то горят все светодиоды. Работа устройства запрещена, необходимо подключение к компьютеру и переиницилизация параметров. Если контрольная сумма в норме, то светодиоды горят одну секунду затем гаснут. Устройство переходит в режим ожидание \ настройка параметров (при замкнутом 1 перк.).

  • Первая кнопка - старт. Соответственно первый зеленый светодиод.
  • Вторая кнопка - разряд. Соответственно красный светодиод.
    1. Нажатие кнопки старт, включает программу заряда.
      Зажигается зеленый светодиод.
    2. Нажать разряд, затем старт - разряд до одного вольта и вкл. программы заряда.
      Если в режиме разряда, нажать кнопку разряд, то разряд выключается и программа переходит в режим ожидания.
      Мигают зеленый и красный светодиоды с периодом 2 сек. При включенной работе с UART, данные посылаются через 4 сек. При достижении на аккумуляторе одного вольта, гаснет красный, включается зеленый светодиод. Включается программа заряда.
    Если замкнут 3 переключатель, при импульсе разряда мигает красный светодиод.
    По окончании заряда, горит красный светодиод. Зеленый выключен.
    Eсли включен переключатель 4 "дозаряд", то включается красный светодиод, зеленый мигает с периодом 0,2 сек.. При включенной работе с UART, в статистику добавляется строка "End", данные посылаются раз в минуту. По истечении ~30 минут, дозаряд прекращается, горит красный светодиод. Зеленый выключен.

    При индикации конца заряда или ошибок, нажатие кнопки разряд переводит устройство (А или В) в режим ожидания.


    Индикация ошибок.

    Зеленый светодиод выключен. Мигает красный светодиод.

    Количество миганий красного светодиода

    1. Превышено максимальное время заряда.
    2. Большая температура или большой рост температуры за одну минуту.
    3. Высокое напряжение аккумулятора. (U>1.7V)
    4. Высокое сопротивление аккумулятора. (напряжение, при вкл. токе больше 1,85V)
    5. Ошибка при установлении тока. (OCR1>200)
    6. Низкое напряжение аккумулятора. (U<0.4V)
    7. Нет роста напряжения на аккумуляторе.
      Для NiCd аккумуляторов эта ошибка отключена, что позволяет заряжать аккумуляторы током 0,1С, окончание заряда производить по времени (тренеровочные циклы, для 0,1С 16 часов).
    При индикации конца заряда или ошибок, нажатие кнопки разряд переводит устройство (А или В) в режим ожидания.


    Описание алгоритма.

    Функции измерения напряжения скопированы из appnotes AVR450.
    Каждое измерение напряжения выполняется 8 раз, результаты суммируются, делятся на 8, возвращается усредненное значение. Для измерения напряжения на аккумуляторе, выключается ШИМ, вызывается функция Stable_ADC(), в ней происходит ожидание стабилизации напряжения на аккумуляторе, в функции добавлена задержка перед вызовом функции измерения напряжения, как только четыре последних измерения возвращают одинаковый результат, функция завершается, измеряется напряжение на аккумуляторе.

    При включении программы, проверяется напряжение на аккумуляторе, если оно выше 0,4 и ниже 1,7 включается ток около 100 mА на пять секунд. Проверяется напряжение при включенном токе, если оно выше 1,85 в., то генерируется ошибка 4 Высокое сопротивление аккумулятора. Ток отключается, если напряжение выше 1 вольта, то программа переходит к старту быстрой зарядки. Если напряжение на аккумуляторе ниже 1 в., включается ток ~100mA и программа ждет пока напряжение достигнет 1 вольта, если этого не происходит за 30 минут, генерируется ошибка 1 превышено максимальное время заряда. Все время контролируется температура аккумулятора.

    Далее ток в течение 3-4 минут плавно нарастает до установленного значения. Время зависит от напряжения питания преобразователя, чем оно больше тем меньше время. Затем через 4 секунды измеряется напряжение на аккумуляторе. При замкнутом 3 переключателе каждую секунду включается импульс разряда. В свою очередь измеренное напряжение усредняется на 8, что позволяет избавиться от помех, наводимых соседним каналом и прочих. Усредненное значение также лучше отражает характер изменения напряжения. В результате данные, участвующие в алгоритме, получаем примерно через 40 секунд, они же отправляются на компьютер. Все время происходит контроль, на все семь ошибок.

    Алгоритм определения конца заряда основан на вычислении роста напряжения на аккумуляторе. В программе есть массив в котором накапливаются измерения. Новое измерение смещает старые. Затем вычисляется приращение. Выглядит это примерно так:
       for ( large.a=tmp.a=0; tmp.a<размер_массива ; tmp.a++ )
         large.a+= (signed char)(Uakk.A[tmp.a]-Uakk.A[tmp.a+1]);
    В результате имеем приращение в каждом измерении.
    Здесь можно посмотреть на работу алгоритма. Первая колонка в таблице значение ADC, вторая вычисленое приращение.


    Для нормальной работы устройства, нужна грамотная разводка печатной платы. Разделение цифровой и силовой земель.
    Хорошие статьи по этим темам:
    Помехоустойчивые устройства
    Техника разводки печатных плат.

    Здесь можно посмотреть мою монтажную плату (далекую от идеала :)) и скачать файл в формате SprintLaout5. Переключатели выполнены в виде джамперов, с кнопками и светодиодами вынесены в отдельную плату "пульта".


    Микроконтроллер работает от внутреннего RC генератора 8 мег. (CKSEL3..0 0100; SUT1..0 00).
    Запрограммировать бит BODEN, BODLEVEL.

    Для более точного отсчета времени в программе, необходимо с помощью программатора считать значение калибровочного байта для 8 мег, затем сохранить его значение во флэш-память, адрес 0x0026.
    Например, для ponyprog можно создать скрипт, файл с расширением .e2s.
     SELECTDEVICE ATMEGA8
     CLEARBUFFER
     LOAD-PROG nimh8.hex
     PAUSE "Прошить мк?"
     READ-CALIBRATION 0x0026 DATA 3
     ERASE-ALL
     WRITE&VERIFY-PROG
     PAUSE "Прошить fuse биты?"
     #Fuse High Byte: RSTDISBL WDTON SPIEN CKOPT EESAVE BOOTSZ1 BOOTSZ0 BOOTRST
     # 1101 1111 (в формате atmel)
     #Fuse Low Byte: BODLEVEL BODEN SUT1 SUT0 CKSEL3 CKSEL2 CKSEL1 CKSEL0
     # 0000 0100
     # note that a 1 means programmed. (для понипрог инвертируем)
     WRITE-FUSE 0x20FB

    Страница зугрузок / историй.


    Внимание!

    Автор не несет ни какой ответственности! Но! С этим зарядным устройством не было взорвано или испорчено ни одного аккумулятора, пока:).
    В избежание ошибок работы алгоритма, время заряда должно быть больше 40 минут. Зарядное устройство лучше работает с хорошими аккумуляторами. Старые аккумуляторы имеют высокое внутренние сопротивление и "корявый" профиль напряжения. Что может приводить ложному детектированию конца заряда, или ошибкам 3 и 4.


    На главную - startcd.narod.ru



    Hosted by uCoz