Открытый проект универсального зарядника

AlexN
GeeBee:

Я года три достаточно регулярно отовариваюсь в Тритоне именно как частное лицо проблем не было.
Правда беру все десятками…

У них какие-то свои бухгалтерские заморочки.
Два года назад приходилось покупать через ЧП - “с частными лицами не работаем”.
Пару раз одну позицию “выдавали” за другую, т.к. не могли только одну микросхему продать.

R2D2

Случайно врубил сепик без нагрузки в тестовом режиме.
Рванул один конденсатор тантал на выходе, а их там 5 штук в паралели было.
Рванул и стал нагрузкой и спас все остальные.
Через секунду после хлопка и дыма, я обесточил.

Встал вопрос:

  1. Клиент не подцепил аккум и пустил зарядку (этот вариант отслеживается)
  2. Клиент во время зарядки отцепил аккум… а потом подцепил…

Кроме программной защиты, что еще можно придумать???

Боюсь нарастание напряжения не успею отследить программно при больших токах.
Замеры делаются 35 раз в секунду, а проверяются чуть реже (не проверял пока).

rulll
R2D2:

Встал вопрос:

Привет!
Как и говорил , нужно задействовать вторую часть ТЛ494 для регулировки по напряжению. Тогда преобразователь будет “живучим” не зависимо от работы процессора( проц и подвиснуть может… )
Выставить это напряжение можно один раз, например по максимальному напряжению которое может отдать схема (типа 25 вольт), но лучше сделать полностью регулируемым.
Второй вариант (ломовой) - самостоятельно или в дополнение к первому варианту: -на выходе каждого канала поставить схему защиты от перенапряжения ( типа тиристор с порогом срабатывания например от 26 вольт)

R2D2

Первый вариант нравится. Один делитель и все! (и полное использование тл)

Еще можно попробовать использовать в делителе это:

MCP42010-I/SL Цифровой потенциометр, 2 кан., 10 кОм, 256 точек, SPI SOIC-14 $1.74 Да MICROCHIP

Для устранения зашкала.

R2D2

Ни каких делителей!!!

16 ногу тл 494 отрезаем от платы и соединяем с V0(V1) в зависимости от номера канала.
И у нас готовое ограничение на 26в

AlexN
R2D2:

Замеры делаются 35 раз в секунду, а проверяются чуть реже (не проверял пока).

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

R2D2

Все что измеряется на АЦП измеряется непрерывно в зацикленном автовызове АЦП преобразования:
125000 частота за 14 тактов одно преобразование плюс усреднение по 32 разам 8 каналов измерения.

Итого получается 35 раз в секунду на все.

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

R2D2
R2D2:

Ни каких делителей!!!

16 ногу тл 494 отрезаем от платы и соединяем с V0(V1) в зависимости от номера канала.
И у нас готовое ограничение на 26в

Ошибка вышла это не поможет! V0(V1) не может быть больше 5в. Всетаки нужны делители.
Или
При превышении 26в надо сделать ноль или +5в и подать на Ct тл494, чтобы остановить ШИМ ТЛ и перевести выходные транзисторы в закрытое состояние до особого распоряжения проца???

  1. Программа пишется и дошла до десульфации, декристаллизации, разбиении процесса на периоды.
  2. Отладка схемы уперлась в проблему уменьшения минимального тока. Пока мысли есть.
Shavelsky

Здравствуйте! Вопрос такой: залил последнюю опубликованную прошивку, включаю зарядку, а оно тут же пишет типа заряжено. В чём причина? Алгоритмы менял, но безрезультатно. Что не так делаю? И ещё: какие вы ставили дросселя? У меня sepic работает неудовлетворительно, несмотря на введёный между полевиком и ЛИ1 буфер. Думаю из-за индуктивностей. Какой у вас КПД получился реальный?

R2D2

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

Сегодня завтра выложу работающий список исправлений.
И последнюю прошивку.
Пока в режим зарядки не ходите: “кирпич башка попадет”.

Проблема малых токов, про которую я уже писал решилась достаточно криво, но всеже решилась.

  1. Для измерения максимального тока 5А с максимальной точностью надо падение напряжения на 0.05 Омах усилить до 5в. U=IR=5А*0.05 Ом=0.25в следовательно коэффициент усиления 20. Перед усилением сигнал фильтруется 10к и 0.1мкф и по осциллу достаточно ровненький.

  2. Этот же сигнал (усилинный) от 0-5в идет на 1 ногу ТЛ, но не меньше 0.04в из-за краевых условий, предсказанных Psw как для RailToRail, так и для НЕ RailToRail (лично проверил).

  3. На 2 ногу тл идет опорное напряжение ШИМ фильтрованное на операционнике (, но не меньше 0.04в все по тойже причине) и затем фильтрованное на 10к и 0.1мкф.

  4. Эти два сигнала на 1 и 2 ноге тл определяют скваженность которая идет на ли1 и потом на полевик.
    Если измеренный “ток” (1 нога тл) больше опорного(2 нога тл), то скваженность уменьшается до выравнивания 1=2, иначе растет опять же до выравнивания 1=2.

  5. Из-за описанных в пункте 1 и 2 краевых условий не могу выставить ток менее 0.36А, т.к. при минимальном опорном напряжении из-за конструктивной особенности операционников независимо каких по типу минимальный сигнал на 1вой и 2ой ноге тл калышится в районе 0.04в.

  6. Я попробовал управлять 2ой ногой тл с переменника от 0 до 5в. Рулится все ок. Попробовал прижать шим делителем к 0, он прижался, но рушится точность измерений (см. п.1). Выход поднять 1ю ногу тл вверх. Чтобы поднятие не мешало процессу усиления поставим “делитель к +5” R27=10кОм и потом 2мОм к +5(14 нога тл).

Получилось криво, но работает!
Если у кого есть мысли на эту тему прошу высказаться.
Само сабой, чтоб аккуратно все сделать надо два питания и в 2 раза больше деталей, но нам это не подходит.
Для себя я решил, что цап за 45р 12 бит это проще и надежней!

Psw

Обмываю очередной трупик Стрижика, жру пиво, глубина мыслей соответственная.

R2D2:

Случайно врубил сепик без нагрузки в тестовом режиме.
<>
Боюсь нарастание напряжения не успею отследить программно при больших токах.
Замеры делаются 35 раз в секунду, а проверяются чуть реже (не проверял пока).

Натурально Замеры делаются 125 000 Гц / 8 каналов. Просто они НЕ достаточно точные - 10 битов. Но от ГРУБЫХ ошибок типа превышения макс выхода однозначно успеют спасти - я к примеру уменьшал вдвое уставку преобразователя при превышении порога - на асме команд всего -ничего. Просто контроль ГРУБЫХ ошибок надо именно в прерывании АЦП делать.
Однако тут косячок - сказанное справедливо, если время реакции преобразователя на команды проца близкое к нулю ( ЦАП или непосредственное управление ключами процом) А в случае фильтрации ШИМа время реакции будет ох каким не маленьким. Так что если продолжать мудрить с ТЛ - то ещё один довод ЗА гравиЦАПу.

  1. Для измерения максимального тока 5А <> надо падение напряжения на 0.05 Омах усилить до 5в

Имеем представленное в диапазоне 0-5 вольт значение выходного тока 0-5 А. Иными словами, коэфф пересчёта = 1 Вольт/Ампер. Которое из-за неидеальности ОУ не смогет быть ниже 0.04 вольт. Это = 40 мА. ( А не Триста Шестьдесят наблюдаемых в реале !)
Имеем напряжение уставки - которое тоже не могет быть ниже 0.04 вольт.
В итоге - в худшем случае при линейной работе остальной схемы будет 40 мА на выходе.
Ответ - и тот и другой ОУ ( измерение тока и уставка тока) НЕ МОГУТ выставить корректный сигнал на выходе. В итоге - ток на выходе достаточно превышает 40 мА.
Вывод - во всей аналоговой части желательно избегать краёв входа/выхода. При чём требование противоречивое - точность с одной стороны, простота схемы - с другой. Классически решается двух полярным ± 15 вольт питанием ОУ, однако тут енто вряд ли применимо.
Так что сдвиг к +5 вольтам 1 ноги - вполне нормально. Однако лучше, если 0 мА измерителя тока стал примерно 0.5 вольт. И Максимальные 5А стали примерно 4.5 Вольт. Тогда и отрицательные токи и перегруз по току прога будет видеть. Ну и смещение нуля ОУ тоже плавает от температуры - его дрейф тоже смогем программно обнулять.

R2D2
  1. Отслеживать превышение напряжения в прерывании на АЦП - сделаем.
  2. 4.5в=Максимальный измеренный ток на 1 ноге тл - сделаем.

Можно всетаки задействовать 15, 16 ногу: На 15 ногу подать поделенный Vref например до 4.9, а на 16 ногу V0 (который равен 5в, если на выходе 26в). Это остановит рост напряжения на 26в. А у проца и шим фильтра будет время осмыслить и исправить ситуацию.

40 мА - это достаточно.
Проблема в том, что при 0.04в и на 1 и на 2 ноге тл возникают какието автоколебания или хз что еще в результате которых на выходе силовом при шиме 1/65536 получается 0.36А.
Если вторая нога тупо управляется от переменника, то все ок.

Я еще поэксперементировал с подтяжной к +5 (10кОм/5мОм) 1 ноги тл, в результате:
при шиме <59/65536 ток 0А далее (>59/65536) резкий скачек до 0.36А(может быть и меньше), при проходе через 59 наблюдается гистерезис. Видно как лампочка с задержкой в несколько секунд гаснет или загорается, пока ток нагревает волосок, там же и сопротивление скачет.

Короче когда и 1 и 2 нога тл формируются на операционнике однополярном, то вблизи нуля жди траблов. Попробую более точно подобрать мегаомы (это уменьшит 59), может ступенька пропадет или уменьшится тоже.

Psw

Протрезвел.

Psw:

Однако лучше, если 0 мА измерителя тока стал примерно 0.5 вольт. И Максимальные 5А стали примерно 4.5 Вольт. Тогда и отрицательные токи и перегруз по току прога будет видеть. Ну и смещение нуля ОУ тоже плавает от температуры - его дрейф тоже смогем программно обнулять.

Детальный Ответ таков - кроме уменьшения усиления DA3:2&4 c примерно 20 до примерно 16 разиков (что-бы 5 А диапазон вместить примерно в 4 вольта размаха) надо резистором примерно 800 КОм 5&12 ноги DA3 тянуть к +5 вольтам так, что-бы на выходе датчика тока при НУЛЕВОМ токе было 0.1-0.5 Вольтика. Тогда ТЛка будет уверенно запираться (скважность=0%) 0.04 Вольта минимальным выходом фильтра ШИМа.
Это на мой взгляд лучше, чем тянуть к 5 Вольтам ВЫХОД токового датчика на 1 ноге ТЛ. Именно потому, что из-за неидеальности ОУ токового датчика (напряжение смещения нуля и его дрейф и разброс от экземпляра) будет проблема измерить малые токи. А уж стабилизировать их - тем более проблема.
А программиста мне совершенно не жаль - потому как смещённый ноль тока придётся учитывать в расчётах и он будет менятся во времени и его придётся периодически калибровать. Однако - мне кажется что все так делают - когда проге известно, что выходной ток должен быть нулевым (например уставка преобразователя=0 или ещё какие случаи) - она и засекает выходное значение токового преобразователя как смещение нуля. Что-бы потом его отнимать от измеренных токовых результатов.
Зато прога пишется один раз, даже сложная, а копируется потом легко и не принуждённо. В чём и радость народа. В чём и радость максимального количества цифры в проектиках. Кто в своё время вволю помучился с аналогом, тот начинает искренне и неподдельно любить цифру. Это я про непосредственное управление ключами процом. Даже в текущем проектике - просто попробовать подать на затвор ключа сепика C1_G выход ШИМа PWM1 напрямую.Выход ШИМ разумеется перепрограммировать на 10 бит/скока-то там килогерц, ну и номиналы силовых деталек пересчитать соответственно.

naumovich

Ух, ты! А, народ то, уже куда урулил с проектом!
Поклон создателю темы! Очень импонирует последовательная настойчивость автора.
Грешен, а я, задвинул всю работу на край стола! Мой осцелоскоп (ОМЛ-72) уже месяц не включался. Но не от безделья: - весенне- полевые работы…!

Psw:

Мартини Россо сегодня душу греет слегка.

Хотелось, бы, впечатлений от ощущения приятного. Наверное и я сего дня разговеюсь.
А, у нас из косорыловки, тока самогоновка. Правда, качество отменное, продукт натуральный, пшеница твердых сорто. И местное население качество контролирует. Бабушки опасаются менять состав рецепта, … себе сомой чревато, ну в обчем у нас так.
Н.С.П
Алтай

R2D2

При увеличении шунта до 0.1 Ома (от 0.05) схема заработала нормально.
Мин Ток упал менее 0.1 А.
Пробы на акках 3.6 NiMh показали тотже эффект.

Сейчас у меня стоят дросселя L1=L2=200мкГн для ограничения маx тока.
А должно быть L1=10мкГн L2=22мкГн
Думаю это тоже сильно повлияет на работу схемы, поэтому перед регулировкой усилителей надо заделать первую итерацию (подбор дросселей).

В связи с этим встал вопрос что и на чем мотать. Варианты ответа:

  1. Обычные кольца со щелью 0.2-0.8мм из материала M2000-M4000 d=30-35мм
    1а. Броневой или Ш сердечник со щелью.
  2. Пермаллой без щели (т.к. щель типа распределена по всему объему), размеры теже.
  3. Альсифер ???

L1 и L2 (SEPIC) рассчитаны для 250 кГц.
L1 и L2 можно мотать на одном сердечнике (тогда следите за точками на схеме), а можно на разных.
На указанных размерах для L1 надо 7 витков, для L2 - 14 витков.

Недавно видел преобразователь 12в->3в 200 кГц (20-40А) для питания светодиодных табло.
Там дроселя из пермаллоя диаметром с 10мм и 10 витков d=1мм.
Так что при некоторой потере КПД прям их можно и задействовать (тока чуть домотать).
Выпаивают их из старых мамок или БП, надо знать цвета (светло зеленый с синей полоской например).

R2D2

Опять соврал не 34, а 24 мм диаметр кольца.

Приобрел пермаллой двух типов:

  1. MAGNETICS d24 крашеное черное кольцо сбоку два многозначных числа значатся, намотал 7 витков получилось 5мкг.
  2. Вероятно китай в полукольцах (торойд разрезанный вдоль на две части) без маркировки запакован как таблетки состыковал два полукольца и намотал 7 витков получилось 11 мкГн.

Взял обычное колцо из М2000 тогоже размера намотал 7 витков получилось 100 мкГн.
Взял броневой сердечник сечение чуть больше намотал 7 витков и сильно сжал обе половины 150 мкГн
ослабил сжатие 100 мкГн, проложил а4 лист 50 мкГн, 3 листа в звисимости от сжатия 10-20 мкГн

Итак намотал на китайские сдвоенные таблетки 7 и 14 витков 10,5 и 21 мкГн(измерено LC-метром).
Воткнул в схему вместо 200 и 200 мкГн. Дал 5*1/65536 вольт опору и компутерный БП вырубил ток по перегрузке (200/200 работало нормально). Опять надо искать БП нормальный. Индуктивности рассчитаны на 5А*26в максимальной мощности. А КПД пока дай боже. Вот БП и не справляется.

Забыл сказать у меня после ли1 в каналах зарядки стоит ir4427 (от 9 вольт питается и перед затвором 50 ом)

Попробую увеличить индуктивность, упадет мощность.
Тяжкая же же работа - метод научного тыка!

R2D2

Может это то самое место где народ ограничился 150 кГц???

Psw

Прикольная ссылка.
И метода тестирования дросселей прикольная и простая.
Ну и осциллограммы поучительные.
А компенсацию смещения нуля токо измерительного ОУ зря не захотел сделать для эксперимента.
Калибровку смещения нуля можно с замером внутреннего батарейки совместить, когда зарядный ток до нуля сбрасывается. Просто смещение нуля ОУ всё-равно есть, и оно действительно зависит от марки/экземпляра/температуры. А прога/конструкция должна быть мало зависима от деталей.
Ну или хотя бы (для пробы изменения поведения) заменить ОУ на более качественный инструментал OP491, у которого напряжение смещения нуля вместо 2 мВ будет 0,7 мВольтика в среднем, а если повезёт с экземпляром, то и 0,1 мВольтик. Минимальный ток при ентом снизится должон.
Ну и интересное противопоставление трансформаторных и индуктивно накопительных преобразователей с точки зрения индуктивности обмоток.
Ну то есть в трансформаторном на выходе по любому придётся дроссель ставить для невскипания вых электролитов.
Так быть могет не мудрствуя лукаво объединить габарит трансформатора и дросселя в едином намоточном узле с одной обмоткой ? В конечном итоге при похожих габаритах намоточного узла будем иметь всего одну обмотку.
Ну и про частоты хорошо сказали.
Прочитал и ещё раз убедился, что 40 КГц прямое управление ключами с выхода ШИМ 10 бит - очень хорошее решение.
И вообще я на очередных запусках Стрижика убедился, что мне тестер нужен.
Который побаночное напряжение в сборке меряет и (быть могет) лог использования батареек ведёт.
И ещё непонятно, почему на Гиперионе 1210 нельзя выставить ёмкость лития более 20 А*Часов. Потому как я все батарейки в параллель на ночь запускаю, а там более 20 а*час получается. Отсекает зараза по перезаливу ёмкости.

R2D2

Оказалось что, то что я называл полукольцами и таблетками и есть МП 140. На бумажке которую дал продавец было написано.

Покупной на рынке БП(за полцены COLORIF… 400Va) оказывается глючил (отрубая защиту по току), а может он дохлый.

Запитал ЗУ от 12в7Ач аккума и фсё зафунциклило.

Вот и закончился очередной этап проекта:
Схема принципиально заработала с расчетными номиналами L1 и L2 (на частоте 250 Гц).
Пока дает от нуля до целых 12в 1,5А (ничего не греется кроме лампочки) далее не пробовал лампочку жалко.

Еще какоето время займет прилизывание и потом выложу последний вариант статьи и проги.
Компенсацию нуля делать надо, только жалко падения точности измерения напряжения еще на 1/5.

AlexN
R2D2:

Вот и закончился очередной этап проекта:
Схема принципиально заработала с расчетными номиналами L1 и L2 (на частоте 250 Гц).

250 кило герц наверное? 😃
Какие пульсации на выходе?
Еще бы пару лампочек в параллель - и проверить на более ходовых токах.

AlexAndr=
R2D2:

Покупной на рынке БП(за полцены COLORIF… 400Va) оказывается глючил (отрубая защиту по току), а может он дохлый.

+5В нагружали?

R2D2

Да 250 кГц. Пульсации пока не мерил.

БП АТХ +5в прицеплено к цифровой части ЗУ (Мега32 и ли1).
В АТХксе кажись от нагрузки 5 вольтов 12 не зависит.

AlexN
R2D2:

БП АТХ +5в прицеплено к цифровой части ЗУ (Мега32 и ли1).
В АТХксе кажись от нагрузки 5 вольтов 12 не зависит.

Нагрузка слишком мала по 5 вольтам.
12 вольт от 5 в АТХ еще как зависит, там групповая стабилизация.

R2D2

Попробую другой БП и верну подсветку ЖКИ с 12в на 5в, тогда питание 5в будет 1А