Comments 31
Все ШИМ-преоьразователи работают на принципе перекачки энергии из входной в выходную цепь порциями, не превышающими энергоемкости дросселя. Собственно, выходной интегрирующий элемент (конденсатор) позволяет цепям ООС управлять этой перекачкой со скоростью, порядково меньшей периода импульсов накачки дросселя. В чем преимущество управления скважностью на уровне отдельных полупериодов, если напряжение на выходном конденсаторе в течение цикла мы считаем константой? Я понимаю, например, если бы мы имели датчик мгновенного тока в цепи потребителя, и зная текущую потребность в энергии для выходной цепи, корректировали бы скважность еще до того, как напряжение на выходном конденсаторе упадет - то есть понимая возросшую потребность в энергии, увеличивали бы скважность так, чтобы к концу цикла напряжение на выходном конденсаторе оставалось бы в допуске и vice versa.
Автор похоже замаскировал контроль по току, через разницу Iset-I0. А откуда берется I0 не сказал. Если из прямого измерения, то это просто Peak/average/valley current-mode controller.
В своей практике я использую STM32G474 для full-bridge phase-shift peak-current mode преобразователя. Не знаю как на русском это коротко называется. Есть много других цифровых контроллеров подходящих для этого может быть даже лучше. Пример можно посмотреть в референс дизайне от TI TIDM-02000. Полный разбор, включая платы.
Главное преимущество предложенного регулятора - отсутствие выплесков/перерегулирования тока дросселя. Ток дросселя (за исключением аварийных режимов, связанных со сбоем аппаратуры) не превышает заданных пределов.
Регулятор же напряжения может быть любым (ПИ, ПИД, модальным и тд) и в том числе асинхронным по отношению к регулятору тока с более низкой частотой.
отсутствие выплесков/перерегулирования тока
Это обычное преимущество систем с управлением по току дросселя.
Slope compensation вам о чем нибудь говорит? Субгармонические колебания? Читайте литературу, всё это описано вдоль и поперек. С 80х годов выпускаются стандартные микросхемы для такого режима управления вроде UCC2842.
С 80х годов выпускаются стандартные микросхемы для такого режима управления вроде UCC2842.
А если преобразователь требует цифрового управления с динамическим изменением порогов стабилизации напряжения и токоограничения?
А если требуется реализовать регулятор мощности так же с динамическим изменением порога стабилизации мощности?
А для управления 3-х фазными инверторами тоже полно микросхем?
Ещё раз. Для меня самого удивительно, что подобный метод регулирования (простой и очевидный) в цифровых регуляторах я не встречал.
Я выше привел несколько микроконтроллеров которые умеют все это делать.
я не встречал.
Это не аргумент. Плохо или вообще не искали. На тему peak current mode controller много как статей и книг, так и апноутов. Все разжаловано до мелочей с примерами.
peak current mode controller требует применение аналогового компаратора и специализированных таймеров (типа HRTIM), работающих в связке.
Страница 7.
Implementing PCMC for a PSFB system requires complex PWM waveform generation with precise timing control. The Piccolo family of devices from Texas Instruments feature advanced on-chip control peripherals that make this implementation possible without any external support circuitry for this purpose. These peripherals include on-chip analog comparators, digital-to-analog converters (DAC), advanced PWM resources and unique programmable on-chip slope compensation hardware. Figure 3-4 shows the PCMC implementation. Transformer primary current is compared with the peak current reference calculated by the voltage loop using the on-chip comparator.
Предлагаемый же мной метод будет работать на стандартном таймере с функцией PWM без наворотов.
Что такое I0 в ваших формулах? Ведь ток дросселя переменный? Это средний, минимальный или пиковый ток? Судя по рисунку, вы измеряете в паузе, то есть это valley current mode control или попытка измерить средний ток. При этом измеряете вы в одном, обновляете в другом, а реальные изменения происходят только в третьем периоде. То есть у вас задержка больше одного периода.
Вы бы показали частотный отклик своей системы. Реакцию на ступеньку нагрузки и т.п.
метод будет работать на стандартном таймере
Может быть будет, но как.
Что такое I0 в ваших формулах?
Текущий ток дросселя.
Это средний, минимальный или пиковый ток?
Средний. Измеряется в середине "пилы" (середине импульса ШИМ).
При этом измеряете вы в одном, обновляете в другом, а реальные изменения происходят только в третьем периоде.
Задержка между моментом измерения тока дросселя и обновлением регистров сравнения таймера составляет половину периода ШИМ.
Вы бы показали частотный отклик своей системы.
По-моему я сделал даже честнее. )) Дал модельку для оценки. Там можно оценить (при некоторых доработках, требующих владения Simulink) все возможные реакции регулятора: сброс/наброс нагрузки, изменение питающего напряжения, чувствительность к номиналу дросселя и тд.
Может быть будет, но как.
Как в статье описано. ))
Просто. Без снобизма. Разберитесь с моделькой. Там всё очень просто.
требующих владения Simulink
Вот и именно, лицензию на матлаб вы мне тоже предоставите? Почему бы сразу не привести стандартные, общепринятые критерии оценки регуляторов, такие как передаточная функция, частотный отклик и т.п? Полюбопытствуйте, как вообще статьи пишутся на эту тему, что и с чем там сравнивается, когда утверждается преимущество одного над другим. Хотя тут скорее "Чукча не читатель, чукча писатель, однако".
Задержка между моментом измерения тока дросселя и обновлением регистров
То есть вы предлагаете использовать прямую запись, без предзагрузки (preload). Вы хоть раз так делали? Я пробовал, ничего хорошего. В целом не очень понятно, от чего такая большая задержка между измерением и получением нового Кзап.
Средний. Измеряется в середине "пилы" (середине импульса ШИМ).
Это не соответствует вашему рисунку, там указано, что "момент измерения" происходит в середине паузы. В любом случае вы "изобрели" average current mode control - очень популярный в PFC.
Вы еще попробуйте посмотреть как оно себя поведет при отсутствии нагрузки, при КЗ и т.п.
Можно ли в данном регуляторе реализовать функцию MPPT-контроллера?
По сути, MPPT контроллер является умным ограничителем выходной мощности. Т.е. на малых мощностях преобразователь работает как обычный понижающий, но на больших - при просадке напряжения источника в какой-то момент его мощность перестаёт расти и падает (в этой точке солнечные панели имеют резкий уклон ВАХ).
Контроллер должен отслеживать, по какую сторону от этой точки он находится. Теоретически, при небольшой частоте ШИМ это можно отследить по колебаниям напряжения и тока источника в моменты переключения транзистора. Если мощность выше в точке более низкого напряжения, значит можно увеличить коэффициент заполнения ШИМ, а если наоборот - значит, мы проскочили точку и его нужно уменьшить.
На самом деле идея интересная - если нагрузить панель на коммутируемую индуктивность, то в диапазоне линейности сердечника можно будет снять ее ВАХ для текущего значения освещенности прямо в цикле преобразования, а накопленную в индуктивности энергию тут же отдать в нагрузку! И уже после нескольких пробных скважностей найти максимум отдаваемой мощности.
Можно ли в данном регуляторе реализовать функцию MPPT-контроллера?
Есть модель цифрового экстремального регулятора как раз для солнечной панели. Реализовал, когда работал на "Полюсе". Там, кстати, именно подобный регулятор (что в статье) не нужен. Освежу модель (я её разработал ещё в 2010) и выложу здесь.
Очевидно, что в реальном МК момент измерения (вернее сказать момент выборки АЦП) тока в дросселе
И как же вы это сделаете? )) В смысле, как именно вы предполагаете измерить ток силами МК?
Простой способ - установить шунтирующий резистор и с помощью дифференциального усилителя (есть готовые INA321) измерять перепад напряжения на нем. Если не хочется терять энергию на резисторе, то можно поставить датчик тока на основе датчика Холла (например ASC712). Некоторые регуляторы умеют измерять ток по падению напряжения на активном сопротивлении самого дросселя.
Я-то в общем спрашивал автора статьи )) С тем чтобы понять, представляет ли он связанные с этим проблемы. Или же "А" на схеме для него некая абстракция.
Но раз уж вы начали отвечать, то:
Измерительный резистор тем точнее, чем больше его номинал. Но чем больше его номинал, тем больше энергии рассеивается на нём. На каком номинале в приведённой схеме вы предлагаете остановиться?
ASC712 или INA321 стоят кратно больше, чем условный STM32F030. То есть большая часть стоимости схемы -это будет как раз "А". Не смущает?
Очень странный вопрос, на мой взгляд. Конечно на схеме много абстракций. И конденсатор должен быть не один, и у транзисторов должны быть драйверы, и ток нужно измерять, и напряжения большие 3.3В, и фильтры перед АЦП и многое другое...
Да, конечно, номинал резистора надо считать исходя из того сколько мощности готовы рассеять и какая точность требуется. Это будет зависеть от входных в выходных данных. Вообще "классикой" токоизмерительных шунтов является падение 75мВ на номинальном токе. Но конкретное приложение считается.
Ну почему это контроллер должен быть самым дорогим элементом схемы? Да, чем более точную/мощную/компактную схему приходится применять более дорогие компоненты. А если заглянуть на цены российских компонентов вообще волосы встают дыбом. Странно что это может кого-то смущать. К тому же, в статье упоминается значительно более дорогой контроллер, по сравнению с тем что вы привели в пример.
Да, если у вас проект чуть сложнее мигания светодиодов, то конечно в нем будет несколько разных шин питания. Вы забыли, например, про 12..15В для затворов транзисторов... А что касается количества измеренных миллиампер на 1 отсчёт микроконтроллера - рассуждения сейчас бессмысленны без конкретных параметров схемы. Естественно уровни напряжения необходимо приводить к уровню АЦП, у линейки ACS есть целый ряд датчиков тока, которые подбираются под конкретную задачу.
У ASC712, как я вижу, напряжение питания 5В. У большинства современных МК 3,3В. Это потребует наличия двухуровневого дежурного питания. Но это ладно. Большей проблемой является то, что условный 12-битный АЦП внутри МК имеет 4096 отсчётов. И, соответственно, при Vref в 3,3В он будет иметь точность в 0,8мВ. ASC712 имеет чувствительность в 55мВ/А. Или 68,75 отсчётов АЦП. Или 1 отсчёт на 15мА тока дроссела. Что не то, чтобы кошмар как грубо, но накладывает ограничения. Да, можно в Vref подсунуть что-то силтно меньшее, чем 3,3В. Но у МК лишь один Vref. И его АЦП помимо тока должен заниматься измерениями напряжений. Которые будут скорее всего поболее 3,3. Их можно поделить резистивными делителями, но-но-но... В общем, метрология измерения тока в дросселе потянет на отдельную статью ))))
В последнем проекте (который 4-х канальный) для измерения тока дросселя используется связка шунт + INA240.
Да. Применять данный способ управления для обычного источника мощностью 10 Вт будет экономически не целесообразно.
А для специализированного источника тока с функциями ограничения мощности и специфической функцией ограничения тока, очень даже.
Какой номинал шунта, если не секрет? И каковы типичные токи через дроссель в том проекте?
Ток 12,5А. Шунт 3 мОм.
Ну да, у дорогих силовых устройст помимо головняка с кучей требований есть ещё и преимущества - можно обвешать их измериловкой с ног до головы. Я слышал лет 5-7 назад доклад о высокомощном усилителе, который с использованием ПЛИС корректировал свою мощность в зависимости от потока данных, поступающих на вход усилителя.
Например для задачи активного выпрямителя (одно- или трёх-фазного), когда ток переменный, в качестве датчика тока подойдут мои любимые трансформаторы тока (дешёвые, точные, быстродействующие и дубовые).
Не всё так однозначно и прямо "запредельно дорого".
Если использовать RISC-V - у них много реализаций микроконтроллеров на 5 вольт.
С другой стороны - Вы правы, метрология токов, особенно в горячей (HOT, высоковольтной) части очень даже сложна, особенно если её оптоизолировать от контроллера и низковольтной части.
Наблюдал реализации схем на спаренных оптронах, где один служил на передачу сигнала на холодную часть, второй - на обратную связь преобразователя, чтобы обеспечить линейность контрольного сигнала.
Хотел поинтересоваться: почему решили заняться разработкой своего стабилизатора? Если вы не отказываетесь от зарубежной базы (микроконтроллер же не отечественный используете), то выбор стабилизаторов достаточно велик на различные величины напряжений и токов. И частота 100кГц в этом плане достаточно низкая - сейчас они есть и 500кГц, и на 1МГц, что позволяет снизить величины дросселя и конденсаторов. Какие такие требования к стабилизатору побудили делать свой, а не взять готовую и отлаженную микросхему?
Это решение не для маломощных/дешёвых преобразователей, а для преобразователей, в которых оправдано использование цифровых схем регулирование (мощных или с какими-то специализированными требованиями к регулированию).
Статья по сути вводная для объяснения принципа заложенного: в реализации управления 3-х фазным активным выпрямителем (будет следующая статья), управления моментом синхронного двигателя.
Отлично, давно хотел почитать про активные выпрямители. Буду ждать.
Статья не столько вводная, сколько демонстрирует отсутствие прогресса за двадцать лет. Примитивная моделька в матлабе, где не учтены множество факторов реального управления хотя бы мосфетами, как начиная с роста затвора происходят переходные процессы, какие внутренние эквивалентные емкости, индуктивности. Как влияют характеристики индуктора, какие резонансные...
И, главное, все это в литературе есть, причем давно. Контроллеры созданы, ключи внешние только подбирай. И утверждать, что в дальнейшем это будет основой силовой системы крайне опрометчиво. Достаточно сделать на 50 вт преобразователь с кпд 98 процентов и многое воспримется иначе
Примитивная моделька в матлабе, где не учтены множество факторов реального управления хотя бы мосфетами
Цель модельки - дать возможность оценить сам принцип построения регулятора. Принцип совершенно не привязан к конкретной элементной базе и может применяться и на IGBT-инверторах (с частотами ШИМ 5-20 кГц), и на SiC-MOSFET-инверторах (с частотами ШИМ до 100 кГц).
Моделирование же процессов коммутации силовых ключей необходимо для:
Оценки коммутационных помех.
Оценки коммутационных потерь.
Оценки выплесков напряжений на силовых ключах.
Всё это никак не связано с самим регулятором. А потому и нет никакой надобности усложнять модель более детальными моделями силовых ключей, которые только значительно замедлят скорость моделирования.
Достаточно сделать на 50 вт преобразователь с кпд 98 процентов и многое воспримется иначе
Регуляторы они вообще не про КПД. Регулятор - это про быстродействие и величину перерегулирования.
Принцип цифрового управления непосредственным преобразователем напряжения