Меню

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



Прошивка зарядника после замены микроконтроллера Atmega32А

Приветствую!
Многие пользуются зарядниками

и я не исключение))) И вот на столе неисправный Vista Power EV-650 Charger 5A 12V
http://www.rcdrive.ru/unit.php?unit=7784
Железо у них практически одинаковое за исключением — чем дороже зарядник тем больше деталей установлено )))
При включении на дисплее в верхней строке черные прямоугольники, при нажатии кнопок звуков
никаких. В ходе поиска неисправности выявлено: неисправен контроллер (греется как печка)
неисправен дисплей (подключал его в заведомоисправный БП на дисплее прямоугольники).
В восстановлении девайса на первый взгляд нет смысла.
Дисплей есть и на удивление в магазине радиодеталей в наличии один контроллер
Atmega 32L (смутила последняя буква, в ЗУ Atmega 32А) ну попробую восстановить.

И так приступим.
На семерке KhazamaAVRProgrammer не хотел записывать fuse биты в чип, а понипрог вис
на 30-40%в ходе записи flash. Запись fuse провел в ponyprog с LPT программатором,
а прошивку залил KhazamaAVRProgrammer.
Пришлось использовать два программатора и два загрузчика
http://www.msevm.com/main/prog/lpt/
http://easyelectronics.ru/usb-programmator-avr-usbasp.html
Ponyprog v207 http://www.f1cd.ru/soft/base/ponyprog/ponyprog_207/
KhazamaAVRProgrammer http://khazama.com/project/programmer/
Сначала нужно запрограммировать fuse биты для работы чипа от внешнего генератора,
по умолчанию задействован внутренний и работает на низкой частоте.
Как заливать прошивку в чип, пропущу (в загрузчике нажать write flash тут элементарно)
Прошивки ЗУ различаются по мощности зарядника 50,80,200,400W можно скачать
https://github.com/njozsef/cheali-charger-test1/archive/master.zip
В архиве есть и обычные прошивки «сток» которые залиты с завода
(сначала заливал несколько, так менюха один в один только
названия зарядников разные в разных прошивках при включении ЗУ)
у меня зарядник 50W заливал прошивку «cheali-charger-50W-5A-0.32m»
Конфигурация fuse бит и настройка порта, распиновка подключения
картинки кликабельны для просмотра

Всё прошилось и вот первое включение

Большой плюс в прошивке — это возможность калибровки :
входное напряжение, напряжение по 6ти банкам раздельно, токи заряда и разряда.
Клоны, подделки врут в показаниях это мне очень не нравится. Теперь процесс калибровки.
Перемещение по меню кнопками как в обычных зарядках.
Подключаем акк (силовые провода и балансир) заходим в меню «option» далее «calibrate»
и далее «volt» для выбора параметра на дисплее две галки справа и слева указывают на
активную строку.

В качестве эталонного измерителя взял переносной осциллограф OWON
http://micromir.ucoz.ru/publ/hds3102m_n_cifrovoj_skopmetr_owon/85-1-0-1992
В меню «volt» доступна калибровка входного напряжения и напряжения по банкам.
Точным мультиметром замеряем напряжение и подгоняем чтоб совпадало с показаниями ЗУ.
Выбор напряжения кнопкой «старт» (значения начнут мигать) а кнопками «+,-» выставляем
что показывает мультиметр,чтоб записать в память еще раз нажимаем «старт», на дисплее
появится на пару сек «wait» ЗУ вернется в предыдущее меню и запишет в епром данные калибровки.

Далее проведем калибровку тока заряда, подключаем щупы амперметра в выходной разъем
(акк не подключен), заходим в меню «I charge» в нем доступна калибровка по току 50мА и 1А.

При входе в меню калибровки — зайцы)) «value» в ноле, при увеличении значения параметра
возрастает ток. В начале нижней строки показывается значение тока при настройке,
есть небольшое несовпадение на малом токе в 1 мА ну это не так страшно.

Теперь калибровка тока разряда.
Подключаем акк и в разрыв плюсового провода амперметр, заходим в меню
«I discharge» в этом меню доступна калибровка по току 50мА, 1А.
В ходе настройки тока разряда 300мА, во второй строке «d» осталась нулевой. почему так
не понятно, но при разряде акка с подключенным амперметром и выставленном токе 300мА
действительно всё верно в показаниях на дисплее зарядника и амперметра

На этом калибровка зарядника завершена.
Точность измеренных напряжений зарядником до 1000х, подделки врут до 10х
Еще плюс — есть возможность занести в память настройки для разных акков, потом просто выбрать
что требуется и не вводить параметры программы заряда. На примере показано редактирование
и выбор акка. Выбрав название, нажать кн «старт» и пошла зарядка.

> номер строки : тип акка, емкость, ток заряда

Вот такая работа проведена.
Зарядник работает, балансирует акк просто «сказка»
Набор фукций зарядника чуть больше чем у заводского (еще полностью не разобрался
самое главное начал заряжать), точность показаний на высоте.
В дальнейшем планирую поставить мосфеты мощнее и зашить прошивку предназначенную
для зарядника большей мощности, токи в прошивках ограничены програмно так что железо
усилить и прошивку перезалить и будет 400W зарядник клон за 1000р)))

Благодарю за внимание. Если будут вопросы отвечу в коментариях.

Источник

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

Автоматическое зарядное устройство для стартерных батарей.

Устройство предназначено для зарядки и тренировки (десульфатации) свинцово-кислотных АКБ ёмкостью от 7 до 100 Ач, а также для приблизительной оценки уровня их заряда и емкости. ЗУ имеет защиту от неправильного включения батареи (переполюсовки) и от короткого замыкания случайно брошенных клемм. В нём применено микроконтроллерное управление, благодаря чему осуществляются безопасные и оптимальные алгоритмы зарядки: IUoU или IUIoU, с последующей «добивкой» до 100%-го уровня зарядки. Параметры зарядки можно подстроить под конкретный аккумулятор (настраиваемые профили) или выбрать уже заложенные в управляющей программе.

Достоинства данного ЗУ — его относительная простота и отсутствие трудоёмких регулировок, что особенно актуально для начинающих радиолюбителей.
Рассмотрим основные режимы работы устройства для заложенных в программу предустановок (профилей).
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. «Ток разряда». Это значение тока, которым осуществляется разряд АКБ при тренировке зарядно-разрядными циклами.

Читайте также:  Зарядное устройство ммт 7705

Схема блока управления довольно проста, так как все основные процессы выполняет микроконтроллер. В его память записывается управляющая программа, в которой и заложены все алгоритмы. Управление блоком питания осуществляется с помощью ШИМ с вывода 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.
Детали и конструкция.
Микроконтроллер. В продаже обычно встречаются в корпусе DIP-40 или TQFP-44 и маркируются так: ATMega16А-PU или ATMega16A-AU. Буква после дефиса обозначает тип корпуса: «P»- корпус DIP, «A»- корпус TQFP. Встречаются также и снятые с производства микроконтроллеры ATMega16-16PU, ATMega16-16AU или ATMega16L-8AU. В них цифра после дефиса обозначает максимальную тактовую частоту контроллера. Фирма- производитель ATMEL рекомендует использовать контроллеры ATMega16A (именно с буквой «А») и в корпусе TQFP, то есть, вот такие: ATMega16A-AU, хотя в нашем устройстве будут работать все вышеперечисленные экземпляры, что и подтвердила практика. Типы корпусов отличаются также и количеством выводов (40 или 44) и их назначением. На рис.4 изображена принципиальная схема блока управления для МК в корпусе DIP.
Резистор R8 –керамический или проволочный, мощностью не менее 10 Вт, R12 — 7-10Вт. Все остальные- 0.125Вт. Резисторы R5,R6,R10 и R11 нужно применять с допустимым отклонением 0.1-0.5%. От этого будет зависеть точность измерений и, следовательно, правильная работа всего устройства.
Транзисторы T1 и Т1 желательно применять такие, как указаны на схеме. Но если придется подбирать замену, то необходимо учитывать, что они должны открываться напряжением на затворе 5В и, конечно же, должны выдерживать ток не ниже 10А. Подойдут, например, транзисторы с маркировкой 40N03GР, которые иногда используются в тех же БП формата АТХ, в цепи стабилизации 3.3В.
Диод Шоттки D2 можно взять из того же БП, из цепи +5В, которая у нас не используется. Элементы D2,Т1 иТ2 через изолирующие прокладки размещаются на одном радиаторе площадью 40 квадратных сантиметров. Буззер EP1- со встроенным генератором, на напряжение 8-12 В, громкость звучания можно подрегулировать резистором R13.
Жидкокристаллический индикатор – WH1602 или аналогичный, на контроллере HD44780, KS0066 или совместимых с ними. К сожалению, эти индикаторы могут иметь разное расположение выводов, так что, возможно, придется разрабатывать печатную плату под свой экземпляр
Программа
Управляющая программа содержится в папке «Программа» Конфигурационные биты (фузы) устанавливаются следующие:
Запрограммированы (установлены в 0):
CKSEL0
CKSEL1
CKSEL3
SPIEN
SUT0
BODEN
BODLEVEL
BOOTSZ0
BOOTSZ1
все остальные – не запрограммированы (установлены в 1).

Наладка устройства заключается в проверке и калибровке измерительной части. Подключаем к клеммам аккумулятор, либо блок питания напряжением 12-15В и вольтметр. Заходим в меню «Калибровка». Сверяем показания напряжения на индикаторе с показаниями вольтметра, при необходимости, корректируем кнопками « ». Нажимаем «Выбор». Далее идет калибровка по току при КУ=10. Теми же кнопками « » нужно выставить нулевые показания тока. Нагрузка (аккумулятор) при этом автоматически отключается, так что ток заряда отсутствует. В идеальном случае там должны быть нули или очень близкие к нулю значения. Если это так, это говорит о точности резисторов R5,R6,R10,R11,R8 и хорошем качестве дифференциального усилителя. Нажимаем «Выбор». Аналогично — калибровка для КУ=200. «Выбор». На дисплее отобразится «Готово» и через 3 сек. устройство перейдет в главное меню.
Калибровка окончена. Поправочные коэффициенты хранятся в энергонезависимой памяти. Здесь стоит отметить, что если при самой первой калибровке значение напряжения на ЖКИ сильно отличается от показаний вольтметра, а токи при каком — либо КУ сильно отличаются от нуля, нужно применить (подобрать) другие резисторы делителя R5,R6,R10,R11,R8, иначе в работе устройства возможны сбои. При точных резисторах (с допуском 0,1-0,5%) поправочные коэффициенты равны нулю или минимальны. На этом наладка заканчивается. И в заключение. Если же напряжение или ток зарядного устройства на каком-то этапе не возрастает до положенного уровня или устройство «выскакивает» в меню, нужно ещё раз внимательно проверить правильность доработки блока питания. Возможно, срабатывает защита.

Читайте также:  Купить зарядное устройство для акб 12 24 вольта

Источник

ЗУ для автомобильных аккумуляторов SIRIUS 8A

Технические характеристики

Напряжение питания платы: 17-24 В
Зарядный ток: до 8А
Микроконтроллер: ATMEGA88PA
Возможность перепрошивать: Да
Размеры: 110×80

Описание

Все технические вопросы на dmalash@gmail.com
Схему и печатную плату скачиваем отсюда.
Силовой внешний транзистор IRF540N и вентилятор в комплект не входит.

Любой автовладелец рано или поздно сталкивается с задачей заряда своего аккумулятора. Это бывает по разным причинам. Например при похолоданиях, когда емкость батареи падает из-за низкой температуры окружающей среды. Либо если батарея долго стояла без использования и напряжение на ней упало до критической отметки. Или она просто состарилась. В таких случаях часто используют купленное зарядное устройство(ЗУ), либо самодельное ЗУ изготовленное своими руками.

Часто автовладельцы изготавливают ЗУ не потому что, отсутствуют деньги на приобретение готового, а потому что, сделать своими руками что то, это очень интересно и увлекательно и полезно. По этой причине интернет завален многочисленными схемами зарядных устройств, от простейших на одном транзисторе до сложнейших с управлением на микроконтроллерах.

Однако важно помнить, что все таки правильный заряд аккумуляторной батареи это сложный электрохимический процесс. И зачастую простые радиолюбительские схемы не в состоянии отследить важнейшие праметры заряда. Токи, напряжение подъема и спада, временные интервалы, отключение батареи в конце цикла заряда и др. процессы. И частое использование таких не совсем корректных схем, может привести к значительному сокращению жизни батареи. Собрать же более сложное ЗУ порой бывает не под силу каждому.

Данная плата поможет сократить разрыв, между желанием и возможностью сделать свое ЗУ. Плата представляет собой полуфабрикат ЗУ автомобильной батареи. В данном полуфабрикате уже реализована самая сложная часть зарядного устройства, а именно микроконтроллероное управление процессом заряда. Сердце, платы это микроконтроллер Atmega88. Как известно сам микроконтроллер ничего не может делать, так как это программируемая микросхема. И чтобы устройство управляемое микроконтроллером начало работать, необходимо написать программу и залить ее в чип. Сделать это не так просто, нужен и опыт и знание в написании программ. Онако этот самый сложный этап, уже реализован в плате, остается только правильно собрать оставшуюся часть схемы. И вот тут автолюбитель уже может приложить сою руку, навыки и умение. Итак что же останется сделать после приобретения платы?

1. Подключить питание к плате (17-24B, не менее 8А).

2. Подключить силовой транзистор в согласии со схемой.

3. Подключить вентилятор на 12 вольт.

4. Придумать и собрать свой корпус для ЗУ из железа, дерева, картона, бумаги, это уже кто во что горазд.

5. Подключить батарею и порадоваться проделанному труду.


Вместо силового транзистора IRF540N подойдет любой другой N канальный транзистор, который выдерживает не менее 10А. Вообще можно поставить два силовых полевых транзистора подключив их параллельно. Это улучшит теплоотдачу. Если нету полевого транзистора, можно попробовать поставить какой нибудь биполярный npn структуры. Должно работать так же как и с полевым, хотя я сам не пробовал ставить.

Алгоритм работы зарядного устройства.

1. Подключаем батарею. Если ошиблись полярностью, то ничего страшного. Заряд просто не включится.
2. Выбираем ток заряда батареи, для этого вращаем энкодер по часовой стрелке. Ток выбирается делением емкости батареи на 10. Если емкость 70 А/ч, то максимальный ток заряда можем выбрать 7А. Заряд более эффективен, если ток заряда не слишком большой, хотя это и займет больше времени.
3. Плата автоматически зарядит батарею до 14.4 вольта, далее снизит ток заряда до 400мА и отключит батарею. На этом заряд будет закончен.

Смотрим график заряда.

Обсуждение схемы ЗУ

Для лучшего понимания разобъем схему на отдельные узлы и обсудим каждый из них. Питание самой платы осуществляется напряжением от 17 до 24 вольт. Чем выше напряжение питания, тем сильнее будет греться силовой транзистор. Стабилизация тока то линейная, поэтому и выделяемая тепловая мощность на транзисторе будет равна произведению тока заряда на напряжение которое высадится на транзисторе. Поэтому берем радиатор побольше и про наличие вентилятора не забываем. Питаем плату импульсным источником. Например таким

Если нет такого, то можно взять любой другой, хоть от ноутбука, главное чтоб напряжение было в диапазоне от 17 до 24 вольта. Конечно блок питания от ноутбука не потянет 8А заряда, максимум 3-4 А. Но в таком случае можно просто выставить ток не больше 3А, просто батарея будет заряжаться чуть дольше. Трансформаторный блок питания в данном случае не подойдет.

Это узел питания платы.

В узле питания имеем два стабилизатора напряжения на 12 и 5 вольт. 12 вольт питаем реле, вентилятор охлажденгия, операционные усилители. 5 вольт питаем микроконтроллер (МК) Atmega88 и дисплей LCD

Дисплей подключен по 4х битной шине, экономим выводы МК. Вентилятор подключен через npn транзистор BCP56-16 который выдержит даже мощный вентилятор с током потребления до 0.5 ампера. Чем мощнее вентилятор, тем сильнее будет греться стабилизатор напряжения на плате на 12 вольт. Это естественно, стабилизатор же линенйный. Если вентилятор будет мощный, то неплохо чтоб часть потока воздуха от него попадало и на саму плату, чтоб охлаждать и стабилизаторы. Как вариант можно подключить два вентилятора, один для силового транзистора, а второй направить на плату. Реле защиты так же подключено через транзистор к МК. Контакты реле подключают плюс батареи к питанию . Если батарея подключена не правильно, то реле не включится. Цепочка из диодов шоттки BAT54S и двух конденсаторов по 0.1 uF создают отрицательное напряжение -4 вольта относительно земли. Этим напряжением питаем операционные усилители (ОУ), они то у нас ведь не из серии RAIL to RAIL.

Узел измерение тока.

Ток измеряем через падение напряжения на шунте. Настоящие шунты выполнены из специального сплава, удельное сопротивление которго не меняется или почти не меняется от нагрева (а шунты греются сильно). Это необходимо чтоб изменение сопротивления шунта не вляло на точность измерения напряжения на нем. Но в нашем случае супер точность не нужна, плюс/минус пару сотен миллиампер не вопрос. Поэтому роль шунта играет дешовый как грязь цементный резистор 0.01 Ом. Резистор соединен с батареей последовательно. При токе 10А на резисторе будет падение напряжение по закону Ома 0.1 вольта. При 1А напряжение будет 0.01В. Такие маленькие величины измерять с помощью узла АЦП МК не получится. Значит надо крохотное значение на шунте как то усилить до адекватной величины. Здесь без ОУ не обойтись. Измеряем напряжения на шунте по схеме — неинвертированный усилитель. Соотношения резисторов подобраны таким образом, когда на шунте 0.1 вольт на выходе ОУ 5 вольт. Значит если ток заряда будет меняться от 0 до 10А, напряжение на выходе ОУ будет менятся от 0 до 5 вольт. Теперь другое дело, можно измерить данное напряжение , оцифровать его с помощью АЦП в МК и выводить его показания на дисплей LCD.

Читайте также:  Зарядное устройство для aa 700mah

Напряжение на батарее измеряем так же с помощью ОУ но уже по дифференциальной схеме. Соотношение резисторов выбрано 1:6. Это значит когда на батарее будет 15 вольт на выходе ОУ будет 2.5 вольта. Точность резисторов в дифференциальной схеме должна быть не менее 1%.

Осталось обмозговать последний узел, это управление силовым транзистором. Им тоже управляет ОУ.

Работает это дело следующим образом. При вращении энкодера на выводе МК PB2 образуется ШИМ сигнал со скважностью от 0 до 100%.Проходя через интегрирующую цепочку и делиттель R44, R48, C34 он сглаживается и поступает на вход ОУ в виде опорного напряжения. С R48 и снимается это опорное напряжение. Величина этого опорного напряжения меняется в зависимости от вращения энкодера от 0 до 0.1 вольта. Одно из свойств ОУ это то, что ОУ напряжением на своем выходе пытается всегда сделать так, чтоб напряжение между его входами было равно 0. Если мы накрутили энкодером на входе (+) ОУ опорное напряжение равное к примеру 0.05 вольта, то ОУ начнет открывать транзистор, и будет открывать его до тех пор пока на шунте на будет падение напряжения тоже 0.05 вольт. Данное падение напряжения I=U/R=0.05/0.01=5А. 5А это и есть выставленный зарядный ток энкодером.

Вот вроде бы и все. Немного сжато и без сильных подробностей.

Источник

Автоматическое зарядно-тренирующее устройство и измеритель ёмкости для 12V герметичных аккумуляторов (ATMEGA8)

Немного лирики

Я давно хотел собрать прибор для проверки 12В/7Аh аккумуляторных батарей (АКБ), т.к. на работе их накопилось немало, а качество закупаемых батарей не всегда доходит до приемлемого уровня. И вдруг я наткнулся на датагорскую статью от koan51. Идея прибора проста: заряжать и разряжать батарею фиксированным током, измеряя время в процессе работы при контроле напряжения. Зная все три величины, можно измерить ток по простой формуле — время, умноженное на ток.
Набросал схему, основываясь на статье Александра.

Принципиальная схема автоматического зарядно-тренирующего устройства на МК

Как видно по схеме, управляющие/контролирующие цепи тока заряда и разряда АКБ остались прежними, только собраны они на регуляторах LM317 вместо LM7805 и MOSFET ключи Q1, Q3 применены несколько иной марки.

Токами зарядки и разрядки можно управлять резисторами R1, R9. При данных на схеме сопротивлениях в 1,25 Ом, ток через стабилизатор составит около 1 Ампера. Я нашёл в магазине лишь 1,5 Омные резисторы, которые выдали мне 833 мА, его и запишем в прибор, т.к. в программе заложен функционал для калибровки всех токов, но об этом позже.

Элементы U1, U2, U3 прикреплены на радиатор с маленьким вентилятором, который питается от двух ножек МК в 5 В (решил, что особо сильно крутить кулер не нужно, нагрев радиатора не такой сильный, да и шума много будет, а две ноги от МК с запасом покрывают максимально допустимый нагрузочный на порт МК ток).

Питание прибора осуществляется от импульсного БП, который ранее обеспечивал питанием какой-то небольшой ЖК монитор. Однако мне пришлось поднять ему напряжение, немного изменив делитель напряжения на TL431, т.к. он выдавал всего 19 В (3А) и также понадобилось перепаять выходные конденсаторы на 35 В, после чего он стал выжимать все 24 В на ура!

Сам микроконтроллер ATMEGA8 питается стабилизированным в 5 В напряжением от 7805 (U3). Защитный диод D1 служит для предотвращения протекания тока от АКБ обратно в импульсник при отсутствии внешнего источника питания.

Дополнительно в схему был давлен зуммер LS1, который пищит на каждом шаге работы устройства, что удобно при длительной его работе, сидишь рядом, не глядя на него, и слышишь, как он переходит от этапа к этапу, удобно.

Также была добавлена индикации состояния ключей (идёт зарядка – горит зелёный или разрядка – горит красный) состоящая из двух светодиодов.

Управление

Управление реализовано на трёх кнопках «MODE», «START» и «RESET». Кнопкой «MODE» можно переключать шаги работы с 1 до 4, кнопка «START» служит для начало проведения замеров (во время проведения замеров, при нажатии данной кнопки, прибор покажет историю токов на каждом шаге), а кнопка «RESET» (её нужно удерживать пару секунд) сбрасывает программу устройства, в начальное состояние, очищая также историю.

Логика работы программы

Логика работы проста и состоит из 4 этапов:
STEP 1 — разряд АКБ до напряжения 10.7В;
STEP 2 — заряд АКБ до напряжения 15В;
STEP 3 — разряд АКБ до напряжения 10.7В;
STEP 4 — заряд АКБ до напряжения 15В.
— На каждом этапе, происходит измерение времени.
— Контролируется напряжение на АКБ.
— Можно пропустить не нужные шаги, перейдя сразу на 2, 3 или 4 шаг.
— Основным показателем состояния АКБ будет емкость, измеренная на третьем шаге.

В случае пропадания контакта с АКБ или же короткого замыкания клемм, прибор остановит свою работу и высветит «ERROR» ошибку.

Технические характеристики

Программу я изначально старался писать как можно более универсальной. Прочитав про реализацию калибровки на основе EEPROM из статьи Александра, я решил завести специальное меню калибровки т.к. LCD позволяет всё красиво нарисовать и показать.
— Максимальное время таймера: до 100 часов.
— Диапазон калибровки напряжений: 3.0 – 20.0 В, шаг 100 мВ.
— Диапазон калибровки тока заряда/разряда: 100 – 10 000 мА, шаг 1 мА.
— Максимальный ток заряда/разряда: ограничен LM317, в 1,5А. (можно добавить мощный транзистор с увеличенными по мощности резисторами R1 и R9, который увеличит его вплоть до 10А).

Конструкция устройства

Так как я любитель упаковывать все детали в как можно меньший корпус, мне пришла на ум идея опробовать «буржуйский» способ производства корпусов из текстолита Алексея (AlexD). :yahoo:

Процесс производства мне показался несколько утомительным, однако результат впечатляет. После покраски корпус стал прям как заводской! Но, пожалуй, я буду использовать данный метод только для маленьких корпусов, всё-таки цена на текстолит кусается.
Не обращайте внимания на особые текстуры моих стен, у меня идёт ремонт!

Первые шаги разработки или прототип устройства, замеры все вручную.

Источник