Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Возможности STM32 по стабилизации напряжения
Форум разработчиков электроники ELECTRONIX.ru > Силовая Электроника - Power Electronics > Обратная Связь, Стабилизация, Регулирование, Компенсация
Sanes
Добрый день!

Подскажите насколько качественно можно стабилизировать выходное напряжение источника питания с управлением от STM32 ?
В частности интересует компенсация переменной составляющей.
Вот, что у меня получилось выжать из источника питания с STM32.



Переменная составляющая 0.5 в , выходное напряжение 50 в.
Больше всего беспокоит форма переменной составляющей в виде треугольников.

Подробней об источнике.
Топология - полумост.
Вход - 3 ф 380 В .
На входе - мост Ларионова и пассивный фильтр. Отсюда и переменная составляющая 300 Гц.
Выходное напряжение 50 В.
Суммарная частота ШИМ ( 2 транзисторов) 200 КГц.
Частота оцифровки АЦП и прерываний 100 КГц.
Длительность прерывания составляет 3 мкс.
Счётчик таймера считает до 5760.
Микроконтроллер STM32F334.

Обработка сигнала происходит следующим образом.
По таймеру запускается прерывание по АЦП. Далее в обработчике прерывания происходят расчёты скважности ШИМ в зависимости от ошибки выходного сигнала относительного опорного.
Потом полученный результат подается на таймер для формирования ШИМ.


amiller
Вообще говоря построение качественного преобразователя с прямым микропроцессорным управлением зависит от 3 основных факторов:
1. Измерения
2. Реализация регулятора
3. Формирование ШИМ
На каком процессоре это делать, конечно важно, но на частотах сравнимых с частотой сети - не очень уж и важно.
И конечно можно сделать качественный регулятор на гораздо меньших частотах преобразования и с гораздо менее производительным МК.
1. Измерения.
1.1. Желательно исключить время, когда происходит коммутация силовых ключей. Т.е. ШИМ модуль должен формировать отдельный строб запуска АЦП в момент времени, когда коммутаций нет.
1.2. Чтобы минимизировать воздействие помех нужно производить несколько измерений и использовать простое усреднение или накладывать фильтр с определенной характеристикой в зависимости от задачи.
2. Реализация регулятора.
2.1. В простейшем случае это может быть одноконтурный ПИД регулятор, на вход которого подается сигнал ошибки, на выходе формируется задание на ШИМ.
2.2. Нужно обязательно предусмотреть ограничение интегральной составляющей.
2.3. В более сложных случаях используются многоконтурные регуляторы подчиненного или параллельного регулирования.
2.4. Иногда требуется добавить контур токоограничения, который вступает в действие при резких изменениях нагрузки или в аварийных режимах.
2.5. Иногда целесообразно добавления контура регулятора по возмущению (то о чём писал ранее - это регулятор по отклонению).
В общем тема это отдельная и сложная, решению в лоб обычно не подчиняется, литературы в сети много, в том числе приведены и методики настройки ПИД-регулятора.
3. ШИМ-модуль.
3.1. Нужно рассчитать и проверить на модели требуемую длительность "мёртвого времени" для ключей.
Я уже не говорю о том, что нужно выбрать оптимальную топологию силовой схемы, есть масса вариантов обеспечения мягкой коммутации силовых ключей.
3.2. Обязательно предусмотреть несколько каналов программно-аппаратных защит разных уровней.
4. Ну и последнее, с точки зрения МК, при управлении силовым преобразователем важен абсолютный real time. Т.е. вы чётко должны представлять сколько времени у Вас выполняется тот или иной кусок кода, когда и в какой последовательности что у Вас выполняется и что никакие события в системе не повлияют а скорость обработки критически важного кода.
Ydaloj
стабилизация выходного напряжения может быть а) по току нагрузки, б) по изменению питающей сети, в) по температуре, курсу валют, цене барреля нефти и др.
Вам же надо не стабилизировать, а убрать пульсацию выпрямленного напряжения. Если петля работает должным образом, то лезть в неё не надо, а просто добавить LC фильтр. У вас 0,5/50 = 1% пульсаций, для начала неплохо. Добавьте фильтр и подавите ещё децибел на 20.

100мВ пульсаций для 12-вольтовых источников - норма для простых минвелов и иже с ними.
wim
Цитата(Sanes @ Nov 11 2017, 00:50) *
Переменная составляющая 0.5 в , выходное напряжение 50 в.
Больше всего беспокоит форма переменной составляющей в виде треугольников.
Не очень понятно, какая из осциллограмм переменная составляющая и какая у нее частота.
Из контекста это вроде бы 300 Гц, т.е. выпрямленное сетевое напряжение?
Если так, то причина может быть в недостаточной глубине ООС на частоте переменной составляющий.
Но это может быть и наводка на вход АЦП.
Или глюк в программе - как у потерпевшего в соседней теме.
На нечеткий вопрос можно дать множество нечетких ответов.
AlexandrY
Цитата(Sanes @ Nov 10 2017, 22:50) *
Обработка сигнала происходит следующим образом.
По таймеру запускается прерывание по АЦП. Далее в обработчике прерывания происходят расчёты скважности ШИМ в зависимости от ошибки выходного сигнала относительного опорного.
Потом полученный результат подается на таймер для формирования ШИМ.

Надо обрабатывать не сигнал ошибки, а сигнал производной ошибки, но отфильтрованный.
А сигнал ошибки обратывать в цикле 10 КГц.
iosifk
Цитата(AlexandrY @ Nov 11 2017, 15:45) *
Надо обрабатывать не сигнал ошибки, а сигнал производной ошибки, но отфильтрованный.
А сигнал ошибки обратывать в цикле 10 КГц.

Это называется фазоопережающая коррекция.
Удивляет только то, что я предложил ТС все это рассказать еще неделю назад, но он проигнорировал... Сказал, что ТАУ не любит... sad.gif
AlexandrY
Цитата(iosifk @ Nov 11 2017, 14:49) *
Это называется фазоопережающая коррекция.
Удивляет только то, что я предложил ТС все это рассказать еще неделю назад, но он проигнорировал... Сказал, что ТАУ не любит... sad.gif

Не, как это называть еще не ясно, я же не сказал как обрабатывать, а сказал пока только что обрабатывать.
Не факт что обработка должна быть линейной. Поэтому про фазу рано.
Ждем дальнейшего обсуждения.
Sanes
Спасибо всем за комментарии!

amiller. Подскажите, есть ли какая-то методика расчёта ограничения интегральной составляющей. Или оно находиться только экспериментальным путём?

YdaloJ. У меня уже стоит на выходе LC фильтр. Или вы про другой фильтр ? Меня больше чем числовые значения настораживает форма скомпенсированной переменной составляющей (на фото нижняя осциллограмма). Слишком большие "треугольники" на гребне осциллограммы. Соответственно и ток на трансформаторе пилообразной формы. Если сравнивать с ИП на ШИМ контроллере, то там ток на трансформаторе без пилообразной формы.

win. Нижняя - это осциллограмма переменной составляющей выходного напряжения.
Верхние - огибающие ШИМ на транзисторах.
300 Гц это выпрямленное сетевое напряжение. На нижней осциллограмме 300 Гц это частота между минимумами переменки. А верхняя "пила" получилась при компенсации переменной составляющей.

AlexandrY. "Надо обрабатывать не сигнал ошибки, а сигнал производной ошибки, но отфильтрованный. А сигнал ошибки обрабатывать в цикле 10 КГц."
Вы имеете ввиду дифференциальную составляющую?
Почему 10КГц?

iosifk. Вы наверное не правильно меня поняли. Я хотел сказать ,что теория ТАУ для меня тяжела и по этому я попросил поподробней рассказать об указанном методе .
amiller
Цитата(Sanes @ Nov 13 2017, 00:48) *
amiller. Подскажите, есть ли какая-то методика расчёта ограничения интегральной составляющей. Или оно находиться только экспериментальным путём?

Алгоритм очень простой:
Если выходной код ПИДа у Вас упирается в ограничение (снизу или сверху), то Вы должны блокировать дальнейшее изменение интегральной составляющей.
Это примерно эквивалентно насыщению ОУ в аналоговой схеме.
Как только выход возвращается в диапазон регулирования, интегральная составляющая разблокируется и снова может изменятся.
Нужно только не забывать про полярность ошибки. Если ошибка меняет знак, то блокировка тоже снимается.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2024 Invision Power Services, Inc.