Делаю цифровую зарядку

roadster

Если ставить 32 мегу, может быть есть смысл этот проект адапртировать? rcopen.com/forum/f8/topic59625/1201 Там автор выложил исходники на с, с подробнейшими комментариями, да и сам очень добрый и отзывчивый человек. Он всегда поможет, если возникнут затруднения. Он поставил перед собой цель - сделать самый лучший зарядник и ему это удалось. Правда по той же причине, зарядник получился чрезвычайно дорогим. К стати, у него все типы аккумуляторов поддерживаются. Максимальное напряжение заряда 25 Вольт

kincom

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

ubd

Уже писали чего не хватает, но напишу ещё раз, чего хотелось бы видеть:

  1. Возможность заряжать - свинец, хотя бы до 12В.
  2. Возможность устанавливать циклирование Ni-Cd/MH аккумов, с установкой кол-ва циклов.
  3. И хотель бы видеть сервисное меню. Что бы там можно было корректировать показания вольтметра и амперметра, для зара и разряда отдельно. Т.к. программа показывает напряжение при заряде и при разряде, по разному, и подстроить это с помощью переменников ни как! У меня разница, где то 0,4В. Это связано с тем что я не нашёл мощных резисторов по 0,1ом. Смог только сделать 0,11ом, соединив в параллель резисторы других номинолов. Мало того, эти резисторы должна быть обсалютно одинаковые, тогда замер напряжение при заряде и разряже будет точный. Из-за не тех резисторов и не совпадения их по номиналу, появилась такая разница.

Если ещё одно меню сделать сложно, то тогда не стоит, хотя бы пункты 1 и 2.
Будем искать резисторы 0,1ом.

В общем то всё.

kincom

ubd и это все? из-за этого народ заново всю программу решил переписывать?
с п1 алгоритм если есть думаю проблем его добавить не будет
с п2 мне все понятно самому это нужно
с п3 вопрос антиресный, разница между напругами только? и все время 0.4? на любых напругах? а как показания тока на больших и малых амперажах?
вообчем борясь за память, коррекцию показаний логичнее сделать без меню, т.к. в работе постоянно крутить эти данные не надо, просто коррекцию пропишем в еепроме… так и места меньше и с меню не мудрить…

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

J-Tec

Вто по вот этой ссылке www.electronics-lab.com/projects/test/007/ есть вольтметр там в нем реализованно функция подстройки точности напряжения програмно + подстроечный резистор. И токо измерительный резистор с точным номиналом не надо!!!

kincom

J-Tec на сколько смог быстро понять напруга там настраивается тупо аж двумя подстроечниками
да и вопрос в другом…
если мы на заряде настраиваем вольтметр он нормально меряет нам заряд во всем промежутке напруг?
если мы настраиваем амперметр на заряде, он нормально нам меряет заряд во всем промежутке токов?
просто помню в ветке дискутировали о потерях из за различия в точках подключения измерительных концов… нужно определиться что лечим то…

ubd

просто помню в ветке дискутировали о потерях из за различия в точках подключения измерительных концов… нужно определиться что лечим то…

Там не в точках подключени дело. Разница в точках подключения, настолько мизерная, что она не поймается вольтемром и её можно пренебречь. Я да же мощные перемычки кидал, что бы свести на 0 разницу из-за разных точек подключения. Это автор программы мозги нам пудрил, говорил что разница из-за сопротивления дорожек. Когда как сопротивление дорожки шириной 6мм, да ещё и пролуженной толстым слоем припоя, ни как не должны вносить разницу. Потом до меня допёрло, что мощные резисторы, должны быть 0,1ом и ещё строго одинакове. Короче 30 мин назад, нашёл проволоку - нихром, и изготовил два одинаковых сопротивления по 0,1ом. Мерял специальным цифровым прибором, высокоточным, он измеряет сточностью до 1 миллиОма. Впаял их на место старых, которые оказались 98 млОм, а нужно 100. Теперь разница в показаниях заметно уменьшилась, стала где то 0,1В. Но всё ровно не должно быть, да же такой разницы! Мне что подбирать эти сопротивления?

Эта проблема обсолютно у всех собравших эту зарядку. У некоторых разницы почти нет, т.к. сопротивления правильные попались, а у некоторых есть, но им по барабану, на заряд настроили, лишь бы Li-po не перезарядить, а разряд не сильно важно.

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

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

Я думаю програмно можно крректировать что то одно. В принципе нет разницы что. Например на разряде подстраиваем резситором, как сейчас а заряд програмно.
Хорошо бы в меню сделать, а то прошивать еепром каждый раз, неудобно.
Но это на ваше усмотрение, если считаешь целесообразным в ЕЕПРОМе хранить, то пусть в еепроме.

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

Это нужно проверить. Я пробовал от 0,2А, до 1А. На больших токах я зарадку не эксплуатирую.

И ещё, вспомнил что добавить нужно, точнее убавить:
Программа в режиме разряд, может устанавливать ток до 9А. На самом деле, 9А на разряде она не потянет никогда. Я пытался разряжать 2,5А, так сгорел разрядный транзистор. Правда не сразу, а где то через минут 30. Так что я думаю разряд нужно сделать ограничение до 1А, или хотя бы до 1,5А. Больше и не надо, т.к. аккумы доразряжать рекомендуется на НЕбольших токах.

kincom
ubd:

Хорошо бы в меню сделать, а то прошивать еепром каждый раз, неудобно.
Но это на ваше усмотрение, если считаешь целесообразным в ЕЕПРОМе хранить, то пусть в еепроме.

прошивать еепром потребуется всего 1 раз при калибровке зарядки
т.к. резисторы разные то у нас может получится такая ситуация что при отстроке например на заряд показания разряда могут быть как в плюс так и в минус
тогда логичнее сделать так…
4 поправочных коэффициента которые будут прибавляться к показанияц ацп
если коэфф 0 то показания не меняются
1 U разряда
2 U заряда
3 I разряда
4 I заряда
возможно еще потребуется коэффы для куска где семплированием достигается высокая точность, тогда поправочных коэффоф станет 8…
сам процесс настройки заключится в определении в каком из режимов зарядка занижает, соттветственно выставляем резистором точные показания для другого режима, а занижаемый корректируем …

wonderful
ubd:

Это нужно проверить. Я пробовал от 0,2А, до 1А. На больших токах я зарадку не эксплуатирую.

И ещё, вспомнил что добавить нужно, точнее убавить:
Программа в режиме разряд, может устанавливать ток до 9А. На самом деле, 9А на разряде она не потянет никогда. Я пытался разряжать 2,5А, так сгорел разрядный транзистор. Правда не сразу, а где то через минут 30. Так что я думаю разряд нужно сделать ограничение до 1А, или хотя бы до 1,5А. Больше и не надо, т.к. аккумы доразряжать рекомендуется на НЕбольших токах.

Я 5 ампер спокойно выжимал долго-временно (7,2в 4600мА) - радиатор был горячим и транзисторы тоже…
Транзисторы разряда надо устанавливать прямо на радиатор, только с термопастой без термо-интерфейса. Я сам сделал сначала всё на термо-интерфейсах (такие резиновые) - на 2.5 Амперах обжог о них палец.😵

У меня разница в показаниях напряжения заряд - разряд 0,1В…

Меню переработать координально надо - можно спокойно выкинуть регулировку оборотов кулера - сделать при зарядке и разрядке 100% - либо вообще повесить на контроллер этого дело на 2 транзисторах и терморезисторе…
Для гидридов и кадмия значения Дельта В можно сделать константами 5мВ и 10мВ…

kincom

вообчем что успел сделать:

  1. получил asm файл который даже компилится и запускается, таким образом уже
    есть исходник куда можно вносить изменения 7300 строк кода 😃
  2. создал в протеусе базовую модель атмега и дисплей
    на днях дорисую всю аналоговую часть
  3. заставил прогу запуститься в протеусе
    😃 тапереча начинаю плавно комментарить имеющийся код
    как разберусь с менюхой и замерами отпишу…

wonderful как ток у тебя мерится в заряде разряде верно?
и напруга если не сложно отпиши в каком режиме показывается верно а в каком врет и в какую сторону в плюс или в минус…

мне так катса что всеже калибровка должна достаточно легко всунуться…

maksi1

kincom Как я уже писал,не хватает емкости батареи для заряда авто.Максимальная возможная емкость 9А,соответственно при заряде авто (режим Ni-MH 8 батарей)
приходиться по несколько раз перезапускать,так как больше 9.9А не зальеш.
Да и контроля нет,в таком варианте. Ту предложили свинец до 12В,так этого совсем мало. Если есть возможность изменить, предлагаю добавить следующее.
1 Коррекция показаний2 Расширить диапазон емкости заряжаемой батареи.
3.Иметь возможность самостоятельно выставить ток, и нужное время (таймер отлючения) Для заряда Ni-MH малой емкости .Например заряд (после предварительного разряда) -15 часов, током 50 мА.

kincom Как я уже писал,не хватает емкости батареи для заряда авто.Максимальная возможная емкость 9А,соответственно при заряде авто (режим Ni-MH 8 батарей)
приходиться по несколько раз перезапускать,так как больше 9.9А не зальеш.
Да и контроля нет,в таком варианте. Ту предложили свинец до 12В,так этого совсем мало. Если есть возможность изменить, предлагаю добавить следующее.
1 Коррекция показаний2 Расширить диапазон емкости заряжаемой батареи.
3.Иметь возможность самостоятельно выставить ток, и нужное время (таймер отлючения) Для заряда Ni-MH малой емкости .Например заряд (после предварительного разряда) -15 часов, током 50 мА.

ubd

У меня разница в показаниях напряжения заряд - разряд 0,1В…

Ну вот, как я сделал резисторы по 100 млОм, разница в показаниях, то же стала 0,1V.

приходиться по несколько раз перезапускать,так как больше 9.9А не зальеш.

Ну в принципе да, для заряда автомобильных аккумов нужно больше ёмкость. Но всё таки эта зарядка делалась не для заряда авто аккумов. Да же на заводских модельных зарядках, с функцией заряда свинца, то же ограничение по ёмкости до 5000 или 9000 мАч.

Я 5 ампер спокойно выжимал долго-временно (7,2в 4600мА) - радиатор был горячим и транзисторы тоже…
Транзисторы разряда надо устанавливать прямо на радиатор, только с термопастой без термо-интерфейса. Я сам сделал сначала всё на термо-интерфейсах (такие резиновые) - на 2.5 Амперах обжог о них палец.

У меня транзисоры все стоят на одном радиаторе от Пентиум 2, и конечно через изоляционную прокладку. А по другому, можно конечно разрядный транзистор наглухо к радиатору прикрутить, через пасту конечно, а остальные через изоляйционную прокладку. Ну буду иметь в виду. Спасибо за совет.

kincom

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

ubd

как вариант попробовать сделать отключение контроля емкости…

Поддерживаю.

J-Tec
kincom:

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

И кроме этого в программе изменяется напряжение на ацп, вроде от 1.8 до 2.54

sergee

почти собрал зарядку по этой схеме www.seven-segments.com/index.php?action=menucats&i… . Вот результат работы ее вольтметра после калибровки

150 135 15
517 506 11
709 699 10
1397 1396 1
2668 2666 2
3646 3659 -13
5103 5120 -17
6229 6245 -16
7673 7700 -27
9050 9085 -35
10144 10177 -33
11303 11323 -20
12250 12258 -8
13662 13653 9
14691 14683 8
15462 15438 24
16470 16458 12
17530 17513 17
18072 18072 0
19094 19100 -6

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

wonderful
kincom:

wonderful как ток у тебя мерится в заряде разряде верно?
и напруга если не сложно отпиши в каком режиме показывается верно а в каком врет и в какую сторону в плюс или в минус…

мне так катса что всеже калибровка должна достаточно легко всунуться…

Ток нормально меряется, в принципе там очень высокая точность не так критична как напряжение для лития…
При зарядке напряжение показывает точно, а при разряде показывает Uзарядки=3,6В -> Uприбора=3,7В, подстроеником настраивал и такой режим что при зарядке напряжение Uзарядки=4,25В - Uприбора=4,2В, а при разрядке показывает Uзарядки=3,65В - Uприбора=3,7В - всё тестил на одной банке 3,7В LiON от мобилы…

Может кто может даст данные по 2S и 3S?

strong
kincom:

Собственно в честь праздника выкладываю ништяки…
проверить всю ништяковость сам не могу, по причине того что из за фьюзов
перешить avr своим программатором не могу, а паралельного нету 😦
кто подскажет как перешивать аврку в данном случае с меня огромный респект…

ps шить комплектом как обычно область программы и область еепрома плюс потом фьюзы…

Во вложении Zar_rus_patch.zip (14.1 Кб, ) присутствует только HEX а ЕЕР.тоже надо записывать? Если надо то откуда?

J-Tec
strong:

Во вложении Zar_rus_patch.zip (14.1 Кб, ) присутствует только HEX а ЕЕР.тоже надо записывать? Если надо то откуда?

Вот держи. Можешь шить и Коде Вижионам и Вин Авэром

eep.rar

kincom

Proteus великая весчь 😃
разбираюсь с АЦП, нашел куски кода отвечающие за считывания значения АЦП для входной напруги и напруги на аккуме, значения считываемые спокойно корректируются , однако нужно найти кусок где считанные данные преобразуются в соответствии с установленным резисторами делителем…
для входного и выходного 2 разных делителя, 2 куска проги…

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

ubd

для входного и выходного 2 разных делителя, 2 куска проги…

Это ты про входы АЦП ADC1 и ADC2? Я когда с автором прошивки общался на эту тему, он сказал, что замер напряжения производиться обоими входами АЦП, как при заряде так и при разряде. Говорит, что это для точности измерения. А я думал, что для заряда и для разряда, разные входы АЦП используются, оказалось не так.

Слушай kincom, а тебе реально 11 лет?