Измеритель напряжениея, тока и заряда.


Автор: Александр
  При "домашней" зарядке автомобильных аккумуляторов бывает сильно полезно видеть текущие напряжение на батарее, ток текущий через неё, время процесса и влившийся в батарею заряд.
Меня и попросили сделать такое устройство.
last update: Апрель 19 2008г.



  Устройство предназначается для контроля процесса зарядки кислотных свинцовых аккумуляторов.
ТТХ:
  • Контролируемое напряжение: 9..17,5 Вольт (верхний предел зависит от тока протекающего через измерительны шунт; может снижаться до 16,5В при токе до 9,9А)
  • Контролируемый ток: 0..6А (ток может быть до 9,99А, но для этого нужен шунт мощностью 10Вт)
  • Контролируемый протекший заряд: 0..99А/ч.
  • Отображение времени процесса: 00:00:00 .. 99:59:59.
  Устройство содержит в себе: цепи питания, измерительны шунт, делитель напряжения, источник опорного напряжения, микроконтроллер и lcd-индикатор.
Принципиальная схема:

Кликабельно

Цепи питания - LM7805.
Источник опорного напряжения - TL431. Нужен исключительно потому, что его номинальное напряжение известно, в отличие от напряжения ИОН меги (оно хоть и стабильно, но точное значение напряжения может варьироваться от кристалла к кристаллу в довольно широких пределах).
Микроконтроллер - ATMEGA8.
Индикатор - LCD обычный двустрочный индикатор 2х40 символов.

Устройство имеет 2 режима отображения:
 1. Напряжение и ток большими цифрами (цифры высотой в 2 строки)
Средняя
Полноразмерная
 2. Напряжение, ток, время, заряд (значения с наименованиями высотой в 1 строку)
Средняя
Полноразмерная
  Первый режим так же может быть полезен, скажем, при использовании в лабораторном блоке питания. Переключаются режимы с помощью переключателя на линии PB0 микроконтроллера. Замкнутое состояние включает первый режим.

  Выполнено устройство на макетной плате, соединение с индикатором выполнено гибким 16-ти жильным шлейфом. Из особенностей можно упоминуть разве что о исполнении измерительного шунта: его роль выполняют 20 резисторов 0,125/0,25 Вт по 2 Ома включённые в параллель (сделано это за неимением под рукой мощного резистора подходящего номинала).

Шунт включён в минусовой провод!

 

  Питается устройство от источника тока заряжающего аккумулятор, хотя это и не обязательно.

  Работает очень просто: по таймеру 10 раз в секунду производит измерение тока и напряжения. При этом напряжение на выходе измеряется косвенно (непосредственно измеряется входное). Выходное = Входное - Напряжение_на_шунте.
Заряд считается так: заряд в 1 А/ч протекает, разумеется, за час при токе в 1 А. Это значит, что за секунду протекает 1/3600 А/ч. Тоесть, протекающий ток умножается на коэффициэнт и добавляется в счётчик заряда. Тут только одна хитрость. Цена деления АЦП получается 2,443 мА. Тоесть, за 1/10 сек протекает 244,3 мкА на один отсчёт АЦП. Если считать протекший заряд в микроамперах, даже переменной типа long на долго не хватает. Если загрубить и считать в десятках микроампер, получается довольно большая ошибка. Было принято такое решение: измерять заряд в отсчётах ацп, а перед отображением переводить уже это значение в амперчасы.

  Исходник на Си написанный в AVR Studio + WinAVR здесь.   При программировании надо фьюзами задать тактирование от внутреннего RC генератора на 8МГц.

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

  PPS Категорически рекомендую на входе поставить плавкий предохранитель на максимальный ток зарядки.

  PPPS дальнейшим развитием видится возможность измерения как втекающего, так и вытекающего заряда. Это значительно усложнит схему, к сожалению.

  За сим прощаюсь.


the end