На склад поступили жидко-кристаллические индикаторы и дисплеи от KSE

Цифровой вольтамперметр на ATmega8 для блока питания

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

Основные характеристики устройства:

Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

  • основа устройства – микроконтроллер AVR ATmega8 компании Atmel;
  • диапазон измеряемого напряжения: 0 В – 30 В, шаг 10 мВ;
  • диапазон измеряемого тока: 0 А – 99 А, шаг 10 мА (шаг зависит от значения сопротивления шунта);
  • два вариатна конструкции: с микроконтроллером в TQFP и PDIP корпусе;
  • односторонняя печатная плата;
  • компактная конструкция;
  • отображение измеряемых величин на ЖК дисплее (однострочном или двухстрочном) на базе контроллера HD44780.

Измерение тока проводится с использованием шунта, который подключен последовательно с нагрузкой в цепи отрицательной (общей) клеммы блока питания. Питание устройство получает от основного блока питания (т.е. от блока питания который вы модернизируете). Дополнительной функцией, которую выполняет микроконтроллер, является управление вентилятором охлаждения радиатора выходного транзистора (транзисторов) блока питания.

При использовании двухстрочного дисплея (и соответствующего ПО для микроконтроллера) имеется возможность отображения значения сопротивления подключенной нагрузки. А при использовании блока питания для зарядки Li-Pol аккумуляторов имеется функция отображения электрической емкости аккумуляторов, что дает возможность оценить их состояние и уровень разряда.

Внутреннее разрешение вольтамперметра по диапазону измерения тока рассчитывается согласно выражения:

Разрешение[мА] = 1/(R[Ом]×3.2)

Кроме того, падение напряжения на шунте не должно превышать 2.4 В, поэтому значение сопротивления шунта должно быть меньше 2.4/Imax[A]

Автором было разработано два варианта вольтамперметра:

  • вариант №1: применен микроконтроллер ATmega8 в корпусе TQFP32;
  • вариант №2: применен микроконтроллер ATmega8 в корпусе PDIP.

Принципиальная схема вольтамперметра (вариант №1)

Вольтамперметр на ATmega8 для блока питания
Кликните для увеличения

 Список электронных компонентов (вариант №1) 

Обозначение в схеме

Номинал

Корпус

Примечание

R1, R2

100 кОм

smd 1206

 

R3

10 кОм

 

Потенциометр

R5, R6

10 кОм

smd 1206

 

R4

30 кОм

smd 1206

 

R7, R8

7.5 кОм

smd 1206

 

R9, R10

500 Ом

 

Потенциометр

R11

5.1 кОм

smd 1206

 

C1, C2, C3

100 нФ

smd 1206

 

C4, C5, C6, C7, C8, C9

100 нФ

smd 1206

Данные конденсаторы, указанные на схеме,
устанавливать на плату не нужно.
Они были необходимы для прежней версии
ПО для микроконтроллера.

C10

22 мкФ/6 В

smd A

 

C11

10 нФ

smd 1206

Опционально. Для защиты транзистора
от помехи по напряжению при включении
вентилятора.

С12

10 мкФ/50 В

 

 

L1

47 мкГн

smd 1210

На плату не устанавливается

D1

защитный диод

smd A

Опционально. Для защиты транзистора
от помехи по напряжению при включении
вентилятора.

D2

SK310A

smd A

Диод Шоттки: 100 В, 3 А

U1

LM7805

TO252

Регулятор напряжения +5 В

U2

LM7812

TO220

Регулятор напряжения +12 В

U3

ATmega8

TQFP32

Микроконтроллер

LCD

коннектор 1×16

   

J1

коннектор 1×2

   

J2, J3

коннектор 1×1

   

J4

коннектор 1×3

   

S1

кнопка

 

 

Q1

BSS-138

smd SOT-23

N-канальный MOSFET
(ток вентилятора менее 200 мА)

 Принципиальная схема вольтамперметра (вариант №2)


Кликните для увеличения

Ниже представлена схема подключения модуля в блоке питания.

Рассмотрим подробно процесс настройки вольтамперметра.

Кнопка S1 – сброс/установка параметров.
Для входа в режим установки параметров вольамперметра необходимо, удерживая кнопку нажатой, подать питание на схему. На дисплее появится надпись «www.elfly.pl», что означает вход в режим установки.

Первый параметр для настройки – опорное напряжение для АЦП микроконтроллера. Опорное напряжение является основным фактором погрешности измерений. Пользователь должен измерить опорное напряжение на выводе 20 микроконтроллера (для микроконтроллера в корпусе PDIP – вывод 21). Измеренное значение вы и должны прописать в этом «сервисном меню» при помощи этой же кнопки S1, иначе, по умолчанию, принимается значение опорного напряжения Vref = 2.56 В (соответственно техническому описанию на микроконтроллер).

После изменения значения опорного напряжения для сохранения параметра никаких манипуляций с кнопкой S1не должно проводится в течении 5 с.

Следующий параметр – установка значения сопротивления резистора-шунта.
Если номинал шунта известен, то нажатиями на кнопку S1 необходимо добиться отображения на дисплее соответствующего значения и затем не нажимать кнопку в течении 5 с для сохранения значения.

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

После проведения этой процедуры для сохранения параметров кнопку не нажимать в течении 5 с.

Кроме того кнопка S1 используется для сброса значения электрической емкости при зарядке Li-Pol аккумуляторов.

Резистор R9 – точная настройка поддиапазона делителя напряжения.
Чтобы исключить ошибки преобразования АЦП диапазон измерений разбит на два поддиапазона 0 В – 10 В и 10 В – 30 В. Для настройки необходимо на выход блока питания подключить вольтметр и установить выходное напряжение на уровне около 9 В, и регулируя R9 добиться одинаковых показаний вольтметра и нашего устройства.

Резистор R10 – грубая настройка поддиапазона делителя напряжения.
Процедура аналогичная точной настройке, но необходимо установить выходное напряжение блока питания около 19 В, и регулируя резистор R10 добиться совпадения показаний.

Резистор R1 – регулировка контрастности LCD.
Если после сборки устройства на дисплее ничего не отображается, то сперва необходимо отрегулировать контрастность дисплея.

Коннектор J1 – подключение вентилятора.

Коннектор J2 – питание модуля вольтамперметра (+12 В)
Если ваш блок питания имеет выход стабилизированного напряжения +12 В, то его можно подключить к этому коннектору, и в таком случае можно не использовать в схеме регулятор напряжения U2. Такое решение имеет свои плюсы т.к. возможно подключить более мощный вентилятор охлаждения.

Если выхода +12 В у вашего блока питания нет, то этот коннектор необходимо оставить не подключенным.

Примечание. Во втором варианте схемы (PDIP) данный коннектор отсутствует.

Коннектор J3 – питание модуля вольтамперметра (+35 В)
Напряжение питания +35 В подается с диодного моста блока питания. Перед подключением необходимо уточнить параметры используемого регулятора напряжения U2 и уровень напряжения с диодного моста, чтобы не повредить регулятор U2. Но с другой стороны, минимальное напряжение, подаваемое на этот коннектор, не должно быть ниже 9 В или 6.5 В, если используются регуляторы с низким падением напряжения (LDO).

Данный коннектор должен быть подключен независимо от того, подключен ли коннектор J2 к питанию +12 В.

Коннектор J4 – подключение линий измерения напряжения и тока.
Выводы коннектора подключаются:

  • Вывод 1 – подключается к клемме «+» блока питания;
  • Вывод 2 – подключается к клемме «–» блока питания;
  • Вывод 3 – «общий»

Коннектор LCD – подключение индикатора
Вольтамперметр работает корректно с однострочным LCD. Дисплей необходимо использовать со светодиодной подсветкой (ток потребления до 15 мА).

Программирование микроконтроллера

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

 

Помните, что при программировании микроконтроллера в схеме, необходимо подать напряжение питания +5 В. В зависимости от используемого программатора, напряжение питания может подаваться от самого программатора, либо от внешнего источника.

Соответствие сигналов переходника, коннектора LCD, микроконтроллера и программатора

Выводы
ЖК модуля

Сигнал

Выводы
микроконтроллера

Выводы
программатора

1

GND

GND

GND

2

VCC

VCC

VCC

4

RS

SCK / PB.5

SCK

5

RW

MISO / PB.4

MISO

6

EN

MOSI / PB.3

 MOSI

10

D3

RESET

RESET

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

При программировании и установке Fuse-битов необходимо учитывать, что микроконтроллер должен быть настроен на работу от внутреннего RC осциллятора 1 МГц, а также необходимо установить бит BODEN. Рекомендуемый порог срабатывания Brown-Out детектора – 4 В.

 Программное обеспечение для микроконтроллера (HEX-файлы)

Описание

Вариант №1
(TQFP)

Вариант №2
(PDIP)

Дисплей 1×16

скачать

скачать

Дисплей 2×16

скачать

скачать

Дисплей 2×16
+ отображение значения сопротивления нагрузки

скачать

скачать

Дисплей 2×16 
+ отображение емкости в мАч

скачать

скачать

Дисплей 2×16 + отображение емкости в мАч
+ отображение значения сопротивления нагрузки

скачать

скачать

Рисунки печатной платы для варианта №1 и для варианта №2 (архивы содержит два изображения – обычное и в зеркальном отражении).

elfly.pl

Перевод: Vadim по заказу РадиоЛоцман

На английском языке: Multimeter on ATmega8 for power supply unit

Электронные компоненты. Бесплатная доставка по России
Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Имя
Фрагменты обсуждения (только последние 20 сообщений):Полный вариант обсуждения »
  • Приветствую коллеги! Также собрал показометр вариант №1 в корпусе TQFP32. Платка своя, точнее переделанная из имеющихся здесь, для "симметричного бутерброда" с индикатором 1602 на разъеме. Уже давненько борюсь с ситуацией, когда при увеличении тока падает измеряемое показометром напряжение в сравнении с параллельно подключеным эталонным вольтметром. Разница четко соответствует падению напряжения на шунте. Схема подключения стандартная [IMG]http://www.rlocman.ru/forum/attachment.php?attachmentid=30547&stc=1&d=1500054053[/IMG] Если чикнуть крестик и посадить "токовый" вход на общий, как показано красным, показания вольтметра становятся аналогичны эталонному и их точность на удивление достаточно неплоха. Ток измеряется нормально. Вход с выпрямителя БП не задействован, висение в воздухе и цепляние на общий не приводит к каким либо изменениям. Вчера уже ночью даже контроллер другой перепаял, прошил, скормил свежий Vref, откалибровал и.... отъимел аналогичный результат. Плата достаточно качественная, промыта многократно. На двух входах АЦП которые относятся к измерению напряжения (24, 25 лапы) напряжения неизменны как для "черного" так и для "красного" случая схемы подключения, а показания разные. Как оНо там чего-то калькулирует ума не приложу. Прошивки менял (UI/UIR). Шой-то я уже в отчаянии заблудившись в этих несчастной горстке деталек. И как оНо у кого-то из вас правильно работает ХЗ ?
  • [url]http://www.rlocman.ru/forum/showpost.php?p=68334&postcount=37[/url] Моё мнение по ваще этой затее изначально. 2011 год.
  • Спаисбо за реплику, но меня не эмоциональные а технические аспекты интересуют. Гараж отапливаемый :) Цена 1602 $1,2 + mega8 $1 - c китайским гуном 3-х сегментным в те же деньги, даже при возникшей у меня ситуации, по точности и сравнивать неприлично. Вопрос мой в том, как оНо у кого-то в варианте TQFP32 корпуса с соответствующими прошивками умудрилось корректно работать? Может не то и не тем мерили? Малоомные шунты(0.01-0.03) малые токи до 3А могли не дать ощутить эту бяку. Вычитает падение на шунте, хоть тресни...
  • Привет народ! Видимо напрасно я тут бучу поднял, хотя никто толком в нее и не сунулся. Прошивка заточена для блоков питания куда дополнительно(при его отсутствии) добавляется шунт и показания напряжения соответствуют тому, что должно быть уже на их выходных клеммах, кда цепляют нагрузку. По этому в прошивке производится вычисление падения на шунте и "косвенный" вывод его на индикацию. Я собирался использовать этот показометр в чуть других целях(как измеритель в конструкции электронной нагрузки), где этого вычисления не должно быть, и я не мог сразу догадаться, что автор беря измерительный сигнал относительно одной конкретной точки схемы будет выводить его для другой расчетной точки. По сему вопрос снят, а сам показометр, могу сказать работает более чем хорошо, и это ИМХО, единственная уникальная на просторах инета схемка на меге8, которая во всем диапазоне 0-35В способна выводить напряжение с точностью до 0,0Х. Своими результатами присоединяюсь к тем, кто подтвердил ее отличную работоспособность для варианта схемы №1 в корпусе TQFP32. Всем успехов!
  • Похоже что тема умерла. Видимо придётся написать свою программу, а для этого научиться её писать. Напишу когда, выложу.
  • Вам уже ранее советовали другие шунты использовать. Могу сказать, что я пробовал с 0,1/0,05/0,01. С 0,01 брешет конкретно. С такими малыми падениями на шунте, схема без доп усилителя не работоспособна. С 0,1/0,05 - нормально. Счетчиком я не пользуюсь и не пробовал даже.
  • При мало токе через шунт, падение тоже малое, но именно при малом падении счетчик считает и весьма корректно.
  • И все же. У кого-то работает точно индикатор с показаниями тока. И до какого предела точно показывает ток?
  • до 15 ампер гонял, показания точные, даже очень
  • Работает точно до 2 цифры после запятой. 0-28 Вольт 0-3,5 А. Шунт 0,22 Ом Блок питания с стабилизацией напряжения и тока. При нагрузке напряжение не падает.
  • Я прошил атмегу. индикатор почемуто чист .При регулировке контрастности появляются квадратики верхней строке дисплея.подскажите в чем ошибка.
  • Ищите ошибку! Тема измусолена. Или больше информации.
  • Нашел ошибку в мнонтаже.Все заработало.
  • Добрый день! Я повторил Цифровой вольтамперметр на ATmega8, мне очень понравился. А можно вопрос нет случайно у Вас "HEX-файл" чтоб отображал амперы долей 1 мА. т.е. три знака после запятой. За ранее спасибо.
  • Собрал и я этот агрегат и очень доволен... то о чем мечтал, точные показания, легко калибруется все что хотел ( особенно измерение емкости ) имеется. Есть один маленький нюанс, после сборки скакали сами по себе вольты и амперы даже при закороченных входах, оказалось что надо повесить емкость 0.1 на 21 ножку и корпус.. все стало великолепно. Калибровал в меню вольтметр чисто по напряжению которое подал, так лучше чем опорное выставлять... Редкая конструкция которая работает так как надо изначально, поэтому и темка заглохла :)
  • М..да Все вроде хорошо но столкнулся с маленькой неприятностью. Измеритель у меня стоит на разряднике автомобильных и АГМ АКБ емкостью от 40 до 100 А.ч и вот какая странность, напряжения шунта (он у меня 0.05 Ома) вычитается из показания вольтметра (естественно под нагрузкой), без нагрузки показания вольтметра верные. Вычитает именно напряжение шунта... Подключено все правильно. Пока с этими пару % измерения емкости смирился, просто выставлю отключение измерения АКБ на 10 вольт вместо 10.5 и будет более менее верно, Разрядник служит для контроля истинной емкости АКБ для электромотора лодочного, тут желательно знать сколько проплывешь а не заведется машина или нет :) Ну и для автомобильного тоже нормально.
  • С включением вентилятора, напортачили в прошивке. Задаёшь 5 Вт в меню, нагрузка 10 Ом, напряжение 7в при этом включается, увеличиваешь напряжение до 10в вентилятор отключается на 12вольтах-опять включается. А я уже обрадовался что отличный прибор получился.
  • Но основные функции, измерение напряжения и тока выполняет точно, погрешность +-0.03в и также ток, конечно выводы относителны потому что мультиметр (которым делал замеры) не проверенный.
  • Если кому интересно можем продолжить тему.
  • Тема хорошА , редко когда рабочие нормальные схемы бывают, эта рабочая и годная для повторения.. Ее преимущество конечно в измерении емкости, это главный фактор...
Полный вариант обсуждения »