• Объявления

    • admin

      Просьба всем принять участие!   24.11.2017

      На форуме разыгрывается спектроанализатор Arinst SSA-TG LC (цена 18500 руб). Просьба всем перейти по ссылке ниже и принять участие!
oner

Не понимаю, как работает зарядник на МК

23 сообщения в этой теме

oner    3

Всем привет!

На просторах сети нашел статью с описанием зарядного устройства на Atmega8. Описание устройства в статье недостаточно для меня. Допустим, я хочу на базе материала данной статьи сделать зарядное устройство на ток ампер в 10 с защитой от перегрева аккумулятора при заряде. Правильно ли я понимаю, что зарядное устройство в этой статье:

а) одни порты АЦП использует по назначению, а другие - как выход?

б) не замеряет непосредственно ток заряда аккумулятора, а контроллирует только ток разряда?

 

624-01.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Быстрый заказ печатных плат

Полный цикл производства PCB по низким ценам!

  • x
    мм
Заказать Получить купон на $5.00
KomSoft    128

Все порты используются по назначению, просто одни как входы (в т.ч. АЦП), а другие - как выходы. Да, измеряется напряжение на акб (через adc1), а не ток заряда и ток разряда путем измерения напряжения на резисторе 5.1ом через adc0

  • Одобряю 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
oner    3
12 минуты назад, KomSoft сказал:

Все порты используются по назначению, просто одни как входы (в т.ч. АЦП), а другие - как выходы. Да, измеряется напряжение на акб (через adc1), а не ток заряда и ток разряда путем измерения напряжения на резисторе 5.1ом через adc0

Т.е. все-таки PC0 и PC1 используются, как каналы АЦП, а PC2  и PC3 - совсем нет? А PC4 вообще используется, как выход ШИМ?Очень смущает это, потому что в программе из статьи инициализация АЦП выглядит так:

ADCSRA |= (1 << ADEN)|(1 << ADSC)|(1 << ADPS2)|(1 << ADPS1)|(1 << ADPS0)|(1 << ADIE);

 

И правильно ли я понимаю, что ток заряда устанавливается эмпирически. т.е. после замеров падения напряжения на эмиттерном резисторе транзистора 2SA614 и соотнесения его с некими коэффициентами. забитыми в контроллер?

Изменено пользователем oner

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
GOR23    35

Есть же микросхемы специально для заряда Li-ion, в основном разряжать не умеют, только заряжать, для li ion разрядка и ненужна. Самая простая TP4056.  Насчёт NiMg решение сомнительное, так как только один канал, не очень то удобно по одной батарейки заряжать...

Падение на резисторе ведь не меряется. Максимум что можно измерить это напряжение на акуме при открытом 2sa614 и сравнить его с напряжением питания. Получится падение на диоде + резисторе + транзисторе. Толку от этого 0.

Изменено пользователем GOR23

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
oner    3
7 минут назад, GOR23 сказал:

Есть же микросхемы специально для заряда Li-ion, в основном разряжать не умеют, только заряжать, для li ion разрядка и ненужна. Самая простая TP4056.  Насчёт NiMg решение сомнительное, так как только один канал, не очень то удобно по одной батарейки заряжать...

Я хочу расширить это устройство до свинцовых аккумов

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
GOR23    35

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
oner    3

Если не секрет - чем заряд свинцовых АКБ радикально отличается от заряда остальных?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
GOR23    35
Цитата

ADCSRA |= (1 << ADEN)|(1 << ADSC)|(1 << ADPS2)|(1 << ADPS1)|(1 << ADPS0)|(1 << ADIE);

Сейчас точно не вспомню про мегу восьмую, но помоему этот регистр к портам контролера не имеет никаого отношения, входа АЦП, ADMUX настраиваются.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
oner    3
14 минуты назад, GOR23 сказал:

Сейчас точно не вспомню про мегу восьмую, но помоему этот регистр к портам контролера не имеет никаого отношения, входа АЦП, ADMUX настраиваются.

ISR(ADC_vect)// Обработчик прерывания от АЦП
{
	ADCSRA = 0; // Выключаем АЦП
	if((ADMUX & 0x0F)==1) // Если был выбран канал ADC1
	{
		voltage_value = voltage_value + ADC; // Суммируем измеренные значения напряжения и помещаем в буфер
		ADMUX = (ADMUX & 0xF0) | 0; // Выбираем канал ADC0
	}
	else
	{
		current_value = current_value + ADC; // Суммируем измеренные значения тока и помещаем в буфер
		ADMUX = (ADMUX & 0xF0) | 1; // Выбираем канал ADC1
		adc_counter++; // Увеличиваем счетчик выборок АЦП на 1
	}
	// Включаем АЦП
	ADCSRA |= (1 << ADEN)|(1 << ADSC)|(1 << ADPS2)|(1 << ADPS1)|(1 << ADPS0)|(1 << ADIE);
}

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
KomSoft    128

Не силен в МК, так - по верхам. Насколько я понимаю, каждый порт МК имеет несколько функций на вход и на выход. С философской точки зрения - все порты используются по назначению. Но, если считать МК сугубо цифровым устройством, которое на вход-выход может подавать 0 или 1 -  тогда эти порты используются НЕ по назначению (кроме, разве что ШИМ).

Я вижу так: PC0, PC1 используются как входы АЦП, PC2 - вход чтения состояния кнопки (при этом должен быть включен внутренний подтягивающий резистор). PC3 - выход ШИМ, управляет яркостью индикатора (для данной схемы, извините, вые#он, или автор тренировался). PC4 - логический выход (0/1) управления включением/выключением разряда.

@GOR23 прав, для свинцовых придется переделать все, начиная от программы, потом всю аналоговую часть (измерение токов от малых до 10А) и т.д. и наконец - всю силовую блока питания под напряжение 8-16В и ток до 10А для заряда свинцовых АКБ.

Лет много назад я собирал и дорабатывал "Автоматическое зарядное устройство для свинцово-кислотных аккумуляторных батарей" (аппаратное, без МК). Оно получило продолжение, за которым я не следил, но его нашел - http://radiokot.ru/forum/viewtopic.php?f=25&t=31187. Можете глянуть. Кстати, вот не форум а статья про него на Mega16, но аппартную часть можете позаимтсвовать и покопаться с прошивкой.

 

Изменено пользователем KomSoft
дополнил

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
GOR23    35

Ну так, меряет он только только ток разряда, как вы и говорили, и напряжение на акб. Вот это сомнительно:

if((ADMUX & 0x0F)==1) // Если был выбран канал ADC1

Если все биты MUX (MUX0 - MUX3) еденици, то ацп посажен на землю.

Изменено пользователем GOR23

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
oner    3
17 минут назад, KomSoft сказал:

 

@GOR23 прав, для свинцовых придется переделать все, начиная от программы, потом всю аналоговую часть (измерение токов от малых до 10А) и т.д. и наконец - всю силовую блока питания под напряжение 8-16В и ток до 10А для заряда свинцовых АКБ.

 

Может вы все же уточните - чем зарядка свинцовых АКБ радикально отличается от остальных, кроме величин токов и напряжений?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
KomSoft    128

Никогда не изучал этот вопрос, доверял производителям зарядок. Особенно с той точки зрения, что в автомобиле (пуски, езда на короткие дистанции и пр. прелести) все эти изощренные алгоритмы идут псу под хвост. Этой информации про алгоритмы зарядки полно в интернете.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
oner    3

Простите, но на каком основании тогда Вы утверждаете, что Li-Ion и свинцовые нельзя зарядить одним устройством?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
KomSoft    128

Почему же, IMAX B6 заряжает все. И я встречал еще разработки похожме по функционалу, но у них нампого сложнее схема и применяется внешняя память (поскольку в МК не всегда хватает) для записи алгоритмов заряда. У моего товарища есть такой, так он выпаивает со всего, чего можно то ли 24с04, то ли 93схх, чтобы не вводить параметры каждого АКБ вручную.  Если мы говорим конкретно про схему из первого поста - то в ней АКБ заряжается от +5В, следовательно вы сможете заряжать NiCd, NiMh, LiIon - короче все, у чего напряжение меньше 5В. Например, сборку из 2 или 3 LiIon уже не потянет. Иначе, как я уже говорил - переделывать  "силовую блока питания под напряжение 8-16В". И переписывать программу с выбором типа АКБ (набором параметров процесса и окнчания заряда - ток, напряжение). А это будет уже совсем другое устройство. Хотя сама по себе идея очень полезная в смысле развития навыков схемотехники и программирования.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IMXO    1 096

да можно никто не запрещает, только есть одно маленькое НО, если речь идет о 100% заряде свинцовых АКБ , еще никто не придумал как это сделать в автоматическом режиме.

теория гласит что заряд АКБ проводится постоянным током 0,1С с контролем температуры, газовыделения и плотности электролита в конце заряда,  без наличия аккумуляторщика контролирующего эти процессы достижение 100% заряда АКБ без выхода его из строя невозможно 

  • Одобряю 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
oner    3
19 минут назад, KomSoft сказал:

Иначе, как я уже говорил - переделывать  "силовую блока питания под напряжение 8-16В". 

Это просто.

 

19 минут назад, KomSoft сказал:

 И переписывать программу с выбором типа АКБ (набором параметров процесса и окнчания заряда - ток, напряжение).

Это сложнее, но, думаю, полезно 

 

20 минут назад, KomSoft сказал:

 в смысле развития навыков схемотехники и программирования.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IMXO    1 096
Только что, oner сказал:

Это просто.

и не только силовую... 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
GOR23    35

Объясните, в чём ценность схемы, если всё нужно переделать, что бы добиться желаемого результата. Если цель подтянуть знания в схемотехнике и програмировании МК тогда ясно, только за основу в схемотехническом плане я бы взял что нибудь другое, велосипед уже давно изобрели. А по программе - исходник у вас сомнительный, я уже писал почему. При переделке нужно быть внимательным, как бы там других косяков небыло.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
oner    3
2 минуты назад, GOR23 сказал:

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

То, что схема и код Вам не понравились, я понял давно. А что конкретное Вы можете предложить в качестве лучшей альтернативы?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
KomSoft    128

Например -    http://pic.[пытался спамить но не получилось]/shemotehnika/ustroystva-dlya-doma/264-universalnoe-zaryadnoe-ustroystvo-na-pic16f877a.html, это перевод отсюда http://sergiols.blogspot.com/search/label/Univ-Battery-Charger. Вроде в архиве есть схемы и исходник

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
GOR23    35

Я когда то эту собирал.

Изменено пользователем GOR23

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
BARS_    573
13 часа назад, GOR23 сказал:

для li ion разрядка и ненужна

Так девайс определяет емкость аккума.

 

12 часа назад, oner сказал:

чем заряд свинцовых АКБ радикально отличается от заряда остальных?

Как бы всем. У каждого типа аккумов свои строго определенные условия зарядки. У лития зарядка вообще в 2 стадии идет, сначала стабилизированным током, а потом стабилизированным напряжением. Для АКБ такого не требуется, там все гораздо проще.

 

13 часа назад, KomSoft сказал:

измеряется напряжение на акб

На АКБ тут ничего не измеряется, ибо их девайс не умеет заряжать...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Сообщения

    • Если речь о рабочем включении-отключении АС, то это нужно делать в отсутствие сигнала. Если речь об аварийном отключении АС (плечо ВК "прошило" или, что то же самое, на входе-выходе есть сигнал), то нужно не забывать, что приходится "рвать" цепь с существенной индуктивной составляющей (АС). В этом случае дугу между контактами лучше всего гасить варистором или RC-цепью. Кроме того, качество контактов реле "с базара" не мешает проверить (попадались 20-и-амперные реле с сопротивлением 0,2Ом и "на 250В", которые не разрывали цепь ~220В, но могли работать при низком напряжении). Если речь о "мягком" включении, то алгоритм я описАл выше. Конструктивное решение ЭТОГО - "проще пареной репы". С уважением В.
    •   Было бы где взять... Да и размеры мне неподходят
    • МОС 3021 нету:( а можно поставить то125-12.5, так же подключать?
    • Дело то пошло! Как говорится: если начать сначала, то есть большая вероятность дойти до нужного результата!   А еще мне нравится: "В волшебно-ингредиентном супе Нет волшебного ингредиента!"
    • Термопредохранитель. Без проблем есть в каждом магазине. Можно.
    • Не получится, поскольку в обратном направлении стабилитрон ведет себя как диод. Если уж городить аналог с минимумом деталек, то вот так: Но с другой стороны, если учесть стоимость стабилитронов, особенно мощных, то дешевле будет собрать по моей схемке, которая всего на одну детальку больше ))))) А балластные конденсаторы поставил, чтоб при резких скачках тока, которые в шуруповертах - норма и которые аналогично скачут во вторичных обмотках, правда уменьшенных на коэффициент трансформации, случайно не пробились стабилитроны. Это, как бы, страховка стабилитронов, особенно от скачков, близких или даже равных КЗ. Кроме того конденсаторы, в отличии от резисторов, не греются, да и на работу мосфетов не влияют.
    • А регулятор собрали? Как работает? В каком устройстве применили? Теория есть теория.Нужен конечный результат.