Перейти к содержанию

Стабилизатор мощности для 10W светодиода на ATtiny13


COKPOWEHEU

Рекомендуемые сообщения

Пытаюсь собрать импульсный стабилизатор мощности для 10-ваттного светодиода для питания от литий-ионного аккумулятора 3.6 В на основе контроллера ATtiny13A. Тактирование от встроенного RC-генератора на 9.6 МГц с делителем на 8 (то есть 1.2 МГц), сброс по напряжению (BOD) выключен, собака (WDT) тоже.

При включении яркость нарастает, потом сбрасывается до нуля, потом снова нарастает и так далее. Похоже на защиту от слишком большой мощности (строчка кода if(cur_pwr > pwr2hex(PWR_MAX_W))OCR0A = 1;  ). Если увеличить делей до 100 мс, даже не зажигается, просто мерцает на высокой частоте и минимальной яркости. Вывод ресета болтается в воздухе, но на тестовой прошивке (фиксированное значение OCR0A) не сбрасывается. Заметных просадок по напряжению на аккумуляторе нет (пульсации от 4 до 3.6 В), но вот на питании контроллера чуть ли не 8 В непонятно откуда: индуктивностей в схеме нет, добавление керамического конденсатора параллельно электролиту или параллельно диоду эффекта не дает. Также иногда при включении слышен высокочастотный звон, хотя детали вроде не болтаются, даже резистор.

По схеме: диод - диод Шоттки, парные конденсаторы C3:C4, C2:C5 это просто посадочные площадки под пленочные конденсаторы (по одной штуке) 10 мкФ, транзисторы IRLML0030 вроде, диод LED - тот самый мощный диод. Разъем программирования подпаян на проводках (МГТФы на фотках). Плата и светодиод (последний - через термопасту) прижаты к толстому латунному диску, соединенному с "землей".

Предполагаемая логика работы устройства: АЦП контроллера измеряет напряжение питания (через делитель R3-R4) и ток (падение напряжения на R1 с RC-фильтром R2-C2). Используется встроенная опора 1.1 В. Регулировка осуществляется ШИМом на OC0A (PB0) самым примитивным образом: если произведение тока на напряжение (в единицах АЦП) больше желаемого значения, уменьшаем заполнение, если меньше - увеличиваем. Если произведение напряжения на ток оказывается больше критического значения (10 Вт), заполнение сбрасывается в ноль - защита от недостатков регулировки. Длительность основного цикла увеличивается "тупой" задержкой чтобы напряжения на RC-фильтрах успевали выравниваться. На прерывании по спаду INT0 реализован приемник UART чтобы задавать другие желаемые значения мощности. Теоретически, не стоило затягивать это прерывание на время всего приема, но изменение яркости - операция редкая, а тайминги надо выдерживать строго, так что в данном случае это оправдано.

По отдельности все работает: изменение заполнения ШИМ меняет яркость диода, измеряются ток и напряжение, байты с UART принимаются. Но вот почему срабатывает защита от перегрузки, откуда может доноситься звон и откуда берется 8 В на контроллере - непонятно.

frlight1.jpg

frlight2.jpg

circ.jpeg

firmware.rar

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

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

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

У Вас коэффициент для расчёта мощности неправильный, с точностью до наоборот. Его гигантская величина при любых значениях acur*avcc даёт в результате  pwr2hex() гигантскую мощность в Ваттах, поэтому система затыкается сразу.

По-моему, коэффициент должен быть таким, что-то типа 6*10-5

P_koeff = U_ref_mV * U_ref_mV * (R_DH_Ohm + R_DL_Ohm) / R_DL_Ohm / R_sh_mOhm / 1024 / 1024 / 1000

 

А, не , всё нормально, у Вас ватты в код преобразуются, тогда обратная величина для P_koeff.

Тут просто можно прикинуть. Для 10Вт будет ток 3А, на 0.1Оме будет 0.3В, то есть в коде получим 300 для тока. Напряжение 3.6В делится в 6 раз, получим 0.6В или 600 в коде.

То есть при 10Вт мощность получим произведение 180000. То есть P_koeff должен быть порядка 18000.

Сколько у Вас в программе для коэффициент определено - я затруднился перемножить.

 

И, потом, провода до аккумулятора длинные и имеют какую-никакую индуктивность. Ток LED в несколько ампер коммутируется полевиками, получаем выбросы на индуктивности проводов, эти импульсы успешно выпрямляются диодом и накапливаются на конденсаторе питания. Я бы заменил диод на резистор в пару десятков Ом.

Изменено пользователем Yurkin2015
Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Вот что-то, а коэффициент я проверял несколько раз. Дизассемблер говорит, что число умножается на 0x497B = 18`811.

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

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

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

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

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Вместо диода резистор стоит поставить. Поможет решить проблемы с помехами от шим . А диод применять в этой схеме даже особого смысла нет. 

Что может быть лучше в радиоэлектронике, чем программирование микроконтроллеров ?

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

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

Настоящему коту и в декабре март!

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

А чего ему проседать то? :)  Косяки схемы и тонкие провода не в счет .

Что может быть лучше в радиоэлектронике, чем программирование микроконтроллеров ?

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

А вдруг? Я и не предполагал, что такое включение может работать как step-up. Теперь задумался, что может резистор лучше диода...

Настоящему коту и в декабре март!

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

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

неоткуда взяться 8в. Осциллограф что говорит.

Вот и мне удивительно откуда берется 8 В, но и цифровой прибор и электромагнитный показывают явно выше 4 В. Осциллограф показывает порядка 6 В с выбросами. Точную амплитуду выбросов не замерял, что-то около 1-2 В.

13 минуты назад, artos5 сказал:

А чего ему проседать то?

Если у аккумулятора высокое сопротивление, при замыкании на низкоомную нагрузку напряжение может сильно просесть, там же нет сглаживающего конденсатора или других фильтров. От этого диод и должен защищать. Правда, высокое внутреннее сопротивление это не про Li-ion.

Может, у самой батарейки  высокая индуктивность? Ну там, электроды спирально намотаны, не знаю.

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

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

Поменял диод на резистор 10 Ом, вроде полет нормальный. При полностью заряженном аккумуляторе (порядка 4 В) ток около 1.5 А, то есть мощность как раз 6 Вт, как настроено. Цифровой амперметр вместо тока показывает хз что.

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

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

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

Присоединяйтесь к обсуждению

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...