Векторное управление АД
С наступающим который, я не хочу проводить в этой проге
Задача у меня была сделать обратку для векторного управления АД.
У меня сама схема двигателя в неподвижной двухфазной системе координат альфа-бета-ноль. Векторное управление происходит по вектору поля ротора, поэтому надо перейти к СК, ориентированной по потокосцеплению ротора - вращательной (qd0).
Вот начал собирать обратную связь с учётом переходов между системами координат, но если на входе получается 2 преобразования Парка - потокосцепление ротора и ток статора, то на выходе происходит только одно преобразование Парка... а мне по идеи нужно вернуть сигналы (потокосцепление и ток) на свои места, т.е. замкнуть цепь.
Я где-то промахнулся или выходной сигнал надо просто блоком Demux разбить на 2?
P.S. Или может, у кого-то есть схема векторного управления в СК "альфа-бета-ноль"? Это было бы проще, если вообще реально.
Ответы
У TI есть хорошее руководство, где описан принцип работы FOC. Я на его основе написал программу и довольно плавно вращал настоящий двигатель. Единственное, что пришлось добавить - это изменение параметров SMO в зависимости от оборотов двигателя ( это уже специфика конкретной реализации). Кроме того, насколько мне известно, в примерах есть куча готовых моделей FOC.
p.s. ну и если совсем не хочется проводить новый год в матлабе - напишите модель на python все уравнения есть.
А что значат TI, FOC, SMO на повседневно-пигмейском?
Я же не программист. Тут хоть на блоках символы есть, по которым хоть что-то понятно, а там будет очень много английских букав на программистском языке - слишком ядрёная непонятная смесь для меня.
"А что значат TI, FOC, SMO на повседневно-пигмейском?" - это означает отсутствие желания вбить незнакомые слова в Гугл.
Ну я Вам помогу.
1. На английском - сразу мимо.
2. Ну все эти схемы, шо надо типо перевести из одной СК в другую и т.д. я видел и в Усольцеве. Оно как бэ ничего не даёт, потому что там не матлабовские блоки, мне б нормальную инструкцию, как это всё в матлабе реализовать, потому что как я понял эти схемы, я вон выше на скрине собрал, только вошли 2 величины, вышла - 1.
Не важно в какой системе координат у вас модель двигателя.
В реальной реализации весь вектор выглядит
1. Измерили А Б С
2. Измерили угол ротора
3. Преобразование Кларк АБС->Альфа Бета
4. Преобразование Парка Альфа Бета-> DQ
Здесь важно что угол этого преобразования Угол ротора+ Угол скольжения
5. Модель поля ротора Расчет скольжения
6. Регуляторы Id Iq Im.
7. Обратный Парк
А далее если у вас ШИМ векторный то туда задания по АЛьфа Бета
Если у вас шим на пиле то Обратный Кларк и задания в А Б С
тоже самое и с электро машиной.
У тексаса есть pdf докумен, где это все есть с формулами, картинками, описанием и кодом. Единственный минус - на английском.
А процесс перехода между вращающийся системой координат и неподвижной вы уже описали.
мне кажется пдф тут не помогут=)
ДА естати есть книжка Юры Калачева, Векторное управление заметки практика, в пдф в сети на русском.
Видел такую, если честно мне не понравилась. Мануала статьи у ТИ лучше написаны.
Ну мне не ведомо как у ТИ написано=) , но книжка на русском что многое меняет.
Смыслеее? Как это не важно, если одна вращается, другая нет? А вообще я пробовал забить на различность СК и проводить управление в альфа-бета, но там лютая чушь получилась, так что проверено: СК имеет значение.
Не понял, вы предлагайте саму модель двигателя перевести в qd? Но-но, ща ещё и она работать перестанет, мне этого не надо. Давайте пусть сам двигатель останется в альфа-бета.
А Help пишет, что угол "тета" - это w*t, я так его вон и задал. Чё, хелп опять по факту бесполезный?
Не воспринимаю поток. У меня схема по рисунку 2.1 на стр. 23. Там просто интегрирование частоты по времени. Я его пытаюсь заключить между двумя преобразователями Парка - прямым и обратным, чтобы сам двигатель оставался в неподвижно СК.
Да проблема в том что вы вообще не понимаете что должно быть на выходе.
Модель двигателя в АЛьфа Беата питается наряжениями после InversePark.
Модель двигателя в DQ просто выходами регулятора.
Интегрирование частоты по времени дает угол, если у вас частота потокосцепления ротора то ок, используйте ее.
На рис 2.1 подробно представлена структура СУ для управления током.
Нееееее, у мя модель движка питается от преобразователя Кларка, пушто напряжения я задаю в СК нормального человека, т.е. в abc, а там уже через преобразователь Кларка делаю из трёхфазной двухфазную и запитываю двигатель альфа-бета.
Ну вот у меня эта частота - это потокосцепление ротора "альфа" поделить на ток статора "бета". Только вопрос этой темы остаётся - у меня на "входе" две трансформации Парка, а на "выходе" одна, так и должно быть? И если да, то куда именно я её должен вернуть в двигателе (в этом пособии она возвращается непонятно во что - я к этому и веду, что было бы там в блоках матлаба, было бы понятнее)?
Да, я прочёл название рисунка, там ещё было управление напряжениями (но схема громоздкая, а я иду на упрощение). Мне не особо важно, через что конкретно управлять машиной - током, напряжением, да хоть ломом - мне надо, чтобы при изменении нагрузки на валу не менялась скорость ротора. Вернее менялась сначала, но быстренько возвращалась на ту же величину, что и была... ну короче, не мне вас учить тому что такое управление - вы и так знайте про это больше меня...
Если вы можете посоветовать способ регулировки попроще, то я сердечно вас прошу - буду только рад, мне не доставляет мучаться с этой прогой. Я векторное выбрал просто потому, что вот нашёл более менее приближённые к матлабовским схемы его формирования, но всё равно всё пошло как обычно. Так что если посоветуйте другой метод, то, пожалуйста, так же с максимально приближенными к матлабу схемами.
Не понимаю в чем вопрос +) после регуляторов инверсный парк будет Алфа бета ее на вашу модель
Да вон он этот обратный преобразователь на скриншоте самый левый. Суть всей этой темы в её шапке:
Вопрос в том, что если я правильно собрал обратную связь, то КУДА надо возвращать единственный сигнал от инверсивного преобразователя Парка.
На входе у меня два Парка.
На выходе у меня один Парк.
Понимайте???
Во что он выходит??? Я думал, что входят потокосцепление ротора и ток статора, то и выходят они же, но нет - выходит что-то одно, а что именно? Я не понимаю, что в этой методичке значит блок "е-jθ". Вернее я понимаю его, как там в этой методичке он описан. Но какое место, какой блок... что является этой экспонентой в Матлабе я не понимаю!
я вам по пунктам расписал что откуда выходит в классической структуре управления, что вы там делаете мне не ведомо. Обратные преобразования дают 2 сигнала ( альфа бета) напряженией для управления, или 2 сигнала токов или 2 сигнала потоков. Один инверсный парк в simulink это 3 мультиплексированных сигнала Alpha Beta Zero вы в хелп то по блоку загляните.
Ну то есть у меня обратная связь собрана неправильно? Ну вот почему сразу так и не написать?