No Image

Зарядное устройство на avr

608 просмотров
12 декабря 2019

Зарядное устройство для автомобильных аккумуляторов на Atmega 8.

Автор: nbo
Опубликовано 26.01.2018
Создано при помощи КотоРед.

Хочу представить вниманию зарядное устройство (ЗУ) для автомобильных аккумуляторов на Atmega 8. Данное устройство является моим вариантом ЗУ описание которого выложено в [1]. Очень рекомендую сначала прочитать описание оригинального ЗУ для снятия многих вопросов. К достоинствам ЗУ можно отнести использование силового трансформатора от бесперебойников, защиту от короткого замыкания и переполюсовки. ЗУ можно собрать в корпусе бесперебойника что снимает проблему всех устройств радиолюбителя – корпус.

После изготовления нескольких штук по оригинальному описанию я пришел к заключению что использование Atmega16 является избыточным, как по обьему памяти так и по количеству портов вводавывода. Поэтому было решено перевести проект на Atmega 8, тем более что исходники Автором были любезно выложены.

После тщательного курения даташита, а особенно замечательной книги [2] получилось переделать прошивку для Atmega 8. Также мною были внесены некоторые изменения в схему устройства для придания некоторой универсальности в части возможности использования различных компонентов. Схема того что получилось представлена ниже:

Как видно устройство разделено на две части: микроконтроллера (МК) и силовую.

Некоторые обьяснения по схеме контроллера. К разьему pow-in подключается маломощный внешний трансформатор с напряжением вторичной обмотки порядка 10-15 вольт, после выпрямления напряжение подается через развязывающий диод D9 на стабилизатор 78l12, который используется для питания операционного усилителя цепи измерения тока, и стабилизатора 7805 который питает микроконтроллер. Резисторы R32, R1 и стабилитрон D10 с напряжением стабилизации 5.1 вольт формируют сигнал прерывания МК для определения момента перехода сетевого напряжения через ноль.

На операционном усилителе (ОУ) U5 типа LM358 собраны усилитель сигнала с шунта для измерения зарядного тока и усилитель сигнала с шунта для определения перегрузки. Питание ОУ осуществляется напряжением 12 вольт и напряжением -5 вольт, которое преобразуется при помощи ICL7660 из напряжения +5 вольт. Использование ICL7660 позволяет отказаться от применения трансформатора с двумя вторичными обмотками, как в оригинальном устройстве. Кроме того предусмотрен вариант использования Rail-to-Rail ОУ, что позволяет вообще отказаться от источника питания +12 вольт, преобразователя ICL7660, а также защитных диодных сборок D6, D7. Был испытан образец на ОУ MCP6002 который себя неплохо зарекомендовал. При использовании Rail-to-Rail ОУ не устанавливается стабилизатор 78l12 и конденсатор C15. Впаивается нулевая перемычка R13 для питания ОУ от +5 вольт, а вместо конденсатора C13 впаивается нулевая перемычка на корпус. Таким образом организуется питание +5 вольт для ОУ. При сборке нужно внимательно следить какой вариант собираете дабы не повредить ОУ и МК при несоответствии типа применяемого ОУ напряжению питания.

Диодные сборки D6, D7, D11 служат для защиты портов МК от перенапряжения и напряжения обратной полярности. В оригинальной схеме для этой цели используются стабилитроны на 5.1 вольт, но при сборке устройства выяснилось что они вносят погрешность при измерении тока и напряжения, т.к. начинают приоткрываться при напряжении порядка 4.8 вольта. В устройстве АЦП МК использует в качестве опорного напряжения напряжение питания +5 вольт, а следовательно АЦП охватывает весь диапазон от 0 до 5 вольт. Установка D11 обязательна.

Разьем ISP1 служит для внутрисхемного программирования МК, распиновка его стандартна для варианта 6 контактов. Реле RL1 служит для включения силового трансформатора. Транзистор управления реле любой средней мощности типа npn, ставил КТ817. Реле выпаивается из платы бесперебойника, также в зависимости от типа платы можно выпаять кварцевый резонатор на 8 Мгц, стабилизатор 7805, стабилизатор 7812 для силового модуля. Переменным резистором RV1 устанавливаем контрастность дисплея. Дисплей используется типа 0802 с кирилицей. Типоразмер всех используемых SMD резисторов и конденсаторов 1206. Конденсатор C16 танталовый SMD 10мкф 16 вольт.

В силовом модуле стабилизатор 7812 служит для питания вентилятора обдува радиатора на котором устанавливается силовой диодный мост типа KBPC5010 или аналогичный, а также тиристор 40TPS12. В данной версии прошивки обдув включается при токе зарядки 2А, выключается при 1А. В качестве радиатора идеально подходят так называемые «процессорные». Предохранитель FU1 автомобильный на 30А, впаивается прямо в плату. Такие попарно установлены на плате бесперебойника. Резисторы R1-R7, R12, R13, R16 типоразмера 1206 на 0.1 Ом впаяны параллельно и образуют шунт для измерения тока. Транзисторы ключей для управления вентилятором и тиристором использовал типа КТ816Б, можно использовать любые средней мощности типа pnp.

К точкам BATT припаиваются провода с крокодилами для подключения к батарее, к точкам BRIDGE провода с наконечниками для подключения к диодному мосту. Провода с наконечниками также из бесперебойника. К разьему FAN подключают вентилятор охлаждения.

Силовая плата и плата МК соединяются 2-мя шлейфами с 3-мя проводами: сигнал измерения напряжения – общий – сигнал измерения тока и сигнал управления тиристором – общий силовой – сигнал управления вентилятором. ВНИМАНИЕ: общий и общий силовой не долны соединятся в шлейфах они впаиваются в соответствующие места платы и никак между собой не связаны.

После сборки и проверки монтажа подключается ЗУ к сети, если все правильно собрано после экранов приветствия появится надпись «Подключи батарею». Подключаем аккумулятор или внешний источник напряжением 12 вольт к крокодилам и подстроечным резистором RV6 выставляем напряжение на экране ЗУ соответствующее напряжению аккумулятора или источника питания по контрольному вольтметру. Далее подключаем ЗУ к аккумулятору через амперметр, вращаем энкодер по часовой стрелке выставляя зарядный ток 1А и нажимаем ручку энкодера, на экране появляется надпись «Заряд начат» и зарядный ток начинает плавно увеличиваться от нуля до утановленного значения. Подстроечным резистором RV3 выставляем правильные показания тока на экране ЗУ по контрольному амперметру. Выставлять следует при установившемся значении на экране. Подстроечным резистором RV4 выставляем напряжение на входе 24 МК равным 0.09в при зарядном токе 1А.

Читайте также:  Декоративная штукатурка короед норма расхода

Для справки: для входов измерения тока и напряжения АЦП МК максимальные значения в +5 вольт соответствуют 15 амперам и 15 вольтам. Для входа измерения перегрузки по току напряжение отключения тока зарядки – 1 вольт.

Подключаем ЗУ к сети, подключаем батарею, устанавливаем требуемый ток заряда в диапазоне 0-10А вращением энкодера, нажимаем энкодер. Ток заряда плавно растет до установленного значения. При достижении на батарее 14.4 вольта ток плавно падает при условии неизменности напряжения на батарее в 14.4 вольта. При падении тока зарядки ниже 0.5А и напряжении 14.4 вольта считается что батарея заряжена и зарядка прекращается — выводится надпись «Батарея заряжена». При невозможности достижения напряжения на батарее в 14.4 вольта при токе 0.5 А в течении 4 часов выводится надпись «Проверь батарею не берет заряд» и заряд отключается. Если при включении зарядки ток не растет появляется надпись «Плохой контакт с батареей» и заряд отключается. При пробое тиристора и неконтроллируемом увеличении напряжения выше 15 вольт заряд отключается и появляется надпись «ERROR VOLTAGE». При чрезмерном увеличении тока заряда или КЗ также заряд отключается и выводится надпись «Ошибка по току». Чтобы досрочно прервать заряд энкодером уменьшаем ток до нуля и нажимаем энкодер или просто снимаем клемму с батареи. Для изменения тока заряда в процессе зарядки вращаем энкодер и нажимаем, появляется надпись «Ток изменен».

Стал обладателем автоматического зарядного устройства на микроконтроллере Atmega16.
Устройство предназначено для зарядки и тренировки (десульфатации) свинцово-кислотных АКБ ёмкостью от 7 до 100 Ач, а также для приблизительной оценки уровня их заряда и емкости. ЗУ имеет защиту от неправильного включения батареи (переполюсовки) и от короткого замыкания случайно брошенных клемм. В нём применено микроконтроллерное управление, благодаря чему осуществляются безопасные и оптимальные алгоритмы зарядки: IUoU или IUIoU, с последующей «добивкой» до 100%-го уровня зарядки. Параметры зарядки можно подстроить под конкретный аккумулятор (настраиваемые профили) или выбрать уже заложенные в управляющей программе. Конструктивно зарядное устройство состоит из блока питания АТ/АТХ, который нужно немного доработать и блока управления на МК ATmega16A. Всё устройство свободно монтируется в корпусе того же блока питания. Система охлаждения (штатный кулер БП) включается/отключается автоматически.
Достоинства данного ЗУ — его относительная простота и отсутствие трудоёмких регулировок, что особенно актуально для начинающих радиолюбителей. Подробнее можно прочитать тут electronics-lab.ru/blog/123.html и тут radiokot.ru/forum/viewtopic.php?f=25&t=31187

1. Режим зарядки — меню «Заряд». Для аккумуляторов емкостью от 7Ач до 12Ач по умолчанию задан алгоритм IUoU. Это значит:
— первый этап- зарядка стабильным током 0.1С до достижения напряжения14.6В
— второй этап-зарядка стабильным напряжением 14.6В, пока ток не упадет до 0,02С
— третий этап-поддержание стабильного напряжения 13.8В, пока ток не упадет до 0.01С. Здесь С — ёмкость батареи в Ач.
— четвёртый этап — «добивка». На этом этапе отслеживается напряжение на АКБ. Если оно падает ниже 12.7В, включается заряд с самого начала.
Для стартерных АКБ (от 45 Ач и выше) применяем алгоритм IUIoU. Вместо третьего этапа включается стабилизация тока на уровне 0.02C до достижения напряжения на АКБ 16В или по прошествии времени около 2-х часов. По окончанию этого этапа зарядка прекращается и начинается «добивка». Это- четвёртый этап. Процесс заряда проиллюстрирован графиками рис.1 и рис.2.

2. Режим тренировки (десульфатации) — меню «Тренировка». Здесь осуществляется тренировочный цикл:
10 секунд — разряд током 0,01С, 5 секунд — заряд током 0.1С. Зарядно-разрядный цикл продолжается, пока напряжение на АКБ не поднимется до 14.6В. Далее — обычный заряд.
3. Режим теста батареи. Позволяет приблизительно оценить степень разряда АКБ. Батарея нагружается током 0,01С на 15 секунд, затем включается режим измерения напряжения на АКБ.
4. Контрольно-тренировочный цикл (КТЦ). Если предварительно подключить дополнительную нагрузку и включить режим «Заряд» или «Тренировка», то в этом случае, сначала будет выполнена разрядка АКБ до напряжения 10.8В, а затем включится соответствующий выбранный режим. При этом измеряются ток и время разряда, таким образом, подсчитывается примерная емкость АКБ. Эти параметры отображаются на дисплее после окончания зарядки (когда появится надпись «Батарея заряжена») при нажатии на кнопку «выбор». В качестве дополнительной нагрузки можно применить автомобильную лампу накаливания. Ее мощность выбирается, исходя из требуемого тока разряда. Обычно его задают равным 0.1С — 0.05С (ток 10-ти или 20-ти часового разряда).
Перемещение по меню осуществляется кнопками «влево», «вправо», «выбор». Кнопкой «ресет» осуществляется выход из любого режима работы ЗУ в главное меню.
Основные параметры зарядных алгоритмов можно настроить под конкретный аккумулятор, для этого в меню есть два настраиваемых профиля — П1 и П2. Настроенные параметры сохраняются в энергонезависимой памяти (EEPROM-е).
Чтобы попасть в меню настроек нужно выбрать любой из профилей, нажать кнопку «выбор», выбрать «установки», «параметры профиля», профиль П1 или П2. Выбрав нужный параметр, нажимаем «выбор». Стрелки «влево» или «вправо» сменятся на стрелки «вверх» или «вниз», что означает готовность параметра к изменению. Выбираем нужное значение кнопками «влево» или «вправо», подтверждаем кнопкой «выбор». На дисплее появится надпись «Сохранено», что обозначает запись значения в EEPROM.
Значения настроек:
1. «Алгоритм заряда». Выбирается IUoU или IUIoU. См. графики на рис.1 и рис.2.
2. «Емкость АКБ». Задавая значение этого параметра, мы задаем ток зарядки на первом этапе I=0.1C, где С- емкость АКБ В Ач. (Таким образом, если нужно задать ток заряда, например 4.5А, следует выбрать емкость АКБ 45Ач).
3. «Напряжение U1». Это напряжение, при котором заканчивается первый этап зарядки и начинается второй. По умолчанию задано значение 14.6В.
4. «Напряжение U2». Используется только, если задан алгоритм IUIoU. Это напряжение, при котором заканчивается третий этап зарядки. По умолчанию — 16В.
5. «Ток 2-го этапа I2». Это значение тока, при котором заканчивается второй этап зарядки. Ток стабилизации на третьем этапе для алгоритма IUIoU. По умолчанию задано значение 0.2С.
6. «Окончание заряда I3». Это значение тока, по достижению которого зарядка считается оконченной. По умолчанию задано значение 0.01С.
7. «Ток разряда». Это значение тока, которым осуществляется разряд АКБ при тренировке зарядно-разрядными циклами.

Читайте также:  Гладилка для бетона из канализационной трубы

Выбор и переделка блока питания.
В нашей конструкции мы используем блок питания от компьютера. Почему? Причин несколько. Во–первых, это — практически готовая силовая часть. Во-вторых, это же и корпус нашего будущего устройства. В-третьих, он имеет малые габариты и вес. И, в-четвёртых, его можно приобрести практически на любом радиорынке, барахолке и в компьютерных сервисных центрах. Как говорится, дёшево и сердито.
Из всего многообразия моделей блоков питания нам лучше всего подходит блок формата АТX, мощностью не менее 250 Вт. Нужно только учесть следующее. Подходят лишь те блоки питания, в которых применён ШИМ-контроллер TL494 или его аналоги (MB3759, КА7500, КР1114ЕУ4). Можно также применить и БП формата AT, только придется изготовить еще маломощный блок дежурного питания (дежурку) на напряжение 12В и ток 150-200мА. Разница между AT и ATX – в схеме начального запуска. АТ запускается самостоятельно, питание микросхемы ШИМ–контроллера берётся с 12-вольтовой обмотки трансформатора. В ATX для начального питания микросхемы служит отдельный источник 5В, называемый «источник дежурного питания» или «дежурка». Более подробно о блоках питания можно прочитать, например, здесь electronics-lab.ru/blog/remont/119.html#comment743, а переделка БП в зарядное устройство неплохо описана вот здесь. www.aleksandrov.ru/fr/download.php? >Итак, блок питания имеется. Сначала необходимо его проверить на исправность. Для этого его разбираем, вынимаем предохранитель и вместо него подпаиваем лампу накаливания 220 вольт мощностью 100-200Вт. Если на задней панели БП имеется переключатель сетевого напряжения, то он должен быть установлен на 220В. Включаем БП в сеть. Блок питания АТ запускается сразу, для ATX нужно замкнуть зелёный и чёрный провода на большом разъёме. Если лампочка не светится, кулер вращается, а все выходные напряжения в норме — значит, нам повезло и наш блок питания рабочий. В противном случае, придётся заняться его ремонтом. Оставляем лампочку пока на месте.
Для переделки БП в наше будущее зарядное устройство, нам потребуется немного изменить «обвязку» ШИМ-контроллера. Несмотря на огромное разнообразие схем блоков питания, схема включения TL494 стандартная и может иметь пару вариаций, в зависимости от того, как реализованы защиты по току и ограничения по напряжению. Схема переделки показана на рис.3.

На ней показан только один канал выходного напряжения: +12В. Остальные каналы: +5В, -5В, +3,3В не используются. Их обязательно нужно отключить, перерезав соответствующие дорожки или выпаяв из их цепей элементы. Которые, кстати, нам могут и пригодиться для блока управления. Об этом — чуть позже. Красным цветом обозначены элементы, которые устанавливаются дополнительно. Конденсатор С2 должен иметь рабочее напряжение не ниже 35В и устанавливается взамен существующего в БП. После того, как «обвязка» TL494 приведена к схеме на рис.3, включаем БП в сеть. Напряжение на выходе БП определяется по формуле: Uвых=2,5*(1+R3/R4) и при указанных на схеме номиналах должно составлять около 10В. Если это не так, придется проверить правильность монтажа. На этом переделка закончена, можно убирать лампочку и ставить на место предохранитель.

Схема и принцип работы.
Схема блока управления показана на рис.4.

Она довольно проста, так как все основные процессы выполняет микроконтроллер. В его память записывается управляющая программа, в которой и заложены все алгоритмы. Управление блоком питания осуществляется с помощью ШИМ с вывода PD7 МК и простейшего ЦАП на элементах R4,C9,R7,C11. Измерение напряжения АКБ и зарядного тока осуществляется средствами самого микроконтроллера — встроенным АЦП и управляемым дифференциальным усилителем. Напряжение АКБ на вход АЦП подается с делителя R10R11, Зарядный и разрядный ток измеряются следующим образом. Падение напряжения с измерительного резистора R8 через делители R5R6R10R11 подается на усилительный каскад, который находится внутри МК и подключен к выводам PA2, PA3. Коэффициент его усиления устанавливается программно, в зависимости от измеряемого тока. Для токов меньше 1А коэффициент усиления (КУ) задается равным 200, для токов выше 1А КУ=10. Вся информация выводится на ЖКИ, подключенный к портам РВ1-РВ7 по четырёхпроводной шине. Защита от переполюсовки выполнена на транзисторе Т1, сигнализация неправильного подключения — на элементах VD1,EP1 , R13. При включении зарядного устройства в сеть транзистор Т1 закрыт низким уровнем с порта РС5, и АКБ отключена от зарядного устройства. Подключается она только при выборе в меню типа АКБ и режима работы ЗУ. Этим обеспечивается также отсутствие искрения при подключении батареи. При попытке подключить аккумулятор в неправильной полярности сработает зуммер ЕР1 и красный светодиод VD1, сигнализируя о возможной аварии. В процессе заряда постоянно контролируется зарядный ток. Если он станет равным нулю (сняли клеммы с АКБ), устройство автоматически переходит в главное меню, останавливая заряд и отключая батарею. Транзистор Т2 и резистор R12 образуют разрядную цепь, которая участвует в зарядно-разрядном цикле десульфатирующего заряда (режим тренировки) и в режиме теста АКБ. Ток разряда 0.01С задается с помощью ШИМ с порта PD5. Кулер автоматически выключается, когда ток заряда падает ниже 1,8А. Управляет кулером порт PD4 и транзистор VT1.

Читайте также:  Вес самого большого арбуза

Дата публикации: 19 августа 2016 .

Это устройство предназначено для измерения ёмкости аккумуляторов 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 байт результат предыдущего измерения емкости.

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

Комментировать
608 просмотров
Комментариев нет, будьте первым кто его оставит

Это интересно
Adblock detector